tree.c (cp_tree_equal): Deal with TRAIT_EXPR.
authorPaolo Carlini <pcarlini@suse.de>
Mon, 9 Apr 2007 16:33:33 +0000 (16:33 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Mon, 9 Apr 2007 16:33:33 +0000 (16:33 +0000)
2007-04-09  Paolo Carlini  <pcarlini@suse.de>

* tree.c (cp_tree_equal): Deal with TRAIT_EXPR.

From-SVN: r123673

gcc/cp/ChangeLog
gcc/cp/tree.c

index 2dd5fe4..9f21ddc 100644 (file)
@@ -1,3 +1,7 @@
+2007-04-09  Paolo Carlini  <pcarlini@suse.de>
+
+       * tree.c (cp_tree_equal): Deal with TRAIT_EXPR.
+
 2007-04-08  Steven Bosscher  <steven@gcc.gnu.org>
 
        * cp-objcp-common.h (LANG_HOOKS_TREE_INLINING_ADD_PENDING_FN_DECLS):
index 30aa359..a8ff6f6 100644 (file)
@@ -1828,6 +1828,12 @@ cp_tree_equal (tree t1, tree t2)
        return false;
       return cp_tree_equal (OVL_CHAIN (t1), OVL_CHAIN (t2));
 
+    case TRAIT_EXPR:
+      if (TRAIT_EXPR_KIND (t1) != TRAIT_EXPR_KIND (t2))
+       return false;
+      return same_type_p (TRAIT_EXPR_TYPE1 (t1), TRAIT_EXPR_TYPE1 (t2))
+       && same_type_p (TRAIT_EXPR_TYPE2 (t1), TRAIT_EXPR_TYPE2 (t2));
+
     default:
       break;
     }