OSDN Git Service

Fix PR c++/43800
authordodji <dodji@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 20 Apr 2010 19:23:45 +0000 (19:23 +0000)
committerMasaki Muranaka <monaka@monami-software.com>
Sun, 23 May 2010 05:34:26 +0000 (14:34 +0900)
gcc/cp/ChangeLog:
PR c++/43800
PR c++/43704
* typeck.c (incompatible_dependent_types_p): If one of the
compared types if not a typedef then honour their main variant
equivalence.

gcc/testsuite/ChangeLog:
PR c++/43800
PR c++/43704
* g++.dg/template/typedef32.C: Adjust.
* g++.dg/template/typedef33.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158571 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/cp/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/template/typedef32.C

index d54b21d..656c88f 100644 (file)
@@ -1,3 +1,11 @@
+2010-04-20  Dodji Seketeli  <dodji@redhat.com>
+
+       PR c++/43800
+       PR c++/43704
+       * typeck.c (incompatible_dependent_types_p): If one of the
+       compared types if not a typedef then honour their main variant
+       equivalence.
+
 2010-04-20  Jakub Jelinek  <jakub@redhat.com>
 
        * cp-tree.h (TYPE_REF_IS_RVALUE): Remove.
index f1396df..3716d47 100644 (file)
@@ -1,3 +1,10 @@
+2010-04-20  Dodji Seketeli  <dodji@redhat.com>
+
+       PR c++/43800
+       PR c++/43704
+       * g++.dg/template/typedef32.C: Adjust.
+       * g++.dg/template/typedef33.C: New test.
+
 2010-04-20  Paul Thomas  <pault@gcc.gnu.org>
 
        PR fortran/43227
index b3c4b90..b32e66c 100644 (file)
@@ -10,12 +10,13 @@ struct if_
 template<class I1>
 struct iterator_restrict_traits
 {
+    struct iterator_category {};
 };
 
 template<class T>
-class matrix
+struct matrix
 {
class ci {};
struct ci {struct ic {};};
  class i {};
 };