OSDN Git Service

2010-04-28 Manuel López-Ibáñez <manu@gcc.gnu.org>
authormanu <manu@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 28 Apr 2010 08:34:01 +0000 (08:34 +0000)
committerMasaki Muranaka <monaka@monami-software.com>
Sun, 23 May 2010 05:36:45 +0000 (14:36 +0900)
PR c++/9335
cp/
        * error.c (print_instantiation_partial_context_line): Handle
recursive instantiation.
        (print_instantiation_partial_context): Likewise.

testsuite/
        * g++.dg/template/recurse2.C: Update
        * g++.dg/template/recurse.C: Update.
        * g++.dg/template/pr23510.C: Update.
        * lib/prune.exp: Filter out 'recursively instantiated'.

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

gcc/cp/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/template/recurse2.C
gcc/testsuite/lib/prune.exp

index 59a59d0..de65677 100644 (file)
@@ -1,3 +1,10 @@
+2010-04-28  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       PR c++/9335
+        * error.c (print_instantiation_partial_context_line): Handle
+       recursive instantiation.
+        (print_instantiation_partial_context): Likewise.
+
 2010-04-27  Jason Merrill  <jason@redhat.com>
 
        * init.c (perform_member_init): Check CLASS_TYPE_P.
 2010-04-27  Jason Merrill  <jason@redhat.com>
 
        * init.c (perform_member_init): Check CLASS_TYPE_P.
index 5277e71..da595b4 100644 (file)
@@ -1,3 +1,11 @@
+2010-04-28  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       PR c++/9335
+        * g++.dg/template/recurse2.C: Update
+        * g++.dg/template/recurse.C: Update.
+        * g++.dg/template/pr23510.C: Update.
+        * lib/prune.exp: Filter out 'recursively instantiated'.
+
 2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
 
        PR c++/29043
 2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
 
        PR c++/29043
index cf085e0..b9767df 100644 (file)
@@ -3,5 +3,6 @@
 
 template <int N> struct X {
     static const int value = X<N-1>::value; // { dg-error "instantiation|incomplete" }
 
 template <int N> struct X {
     static const int value = X<N-1>::value; // { dg-error "instantiation|incomplete" }
+  // { dg-message "recursively instantiated" "" { target *-*-* } 5 }
 };
 template struct X<1000>;
 };
 template struct X<1000>;
index 160f651..769169d 100644 (file)
@@ -22,7 +22,7 @@ proc prune_gcc_output { text } {
 
     regsub -all "(^|\n)(\[^\n\]*: )?In ((static member |lambda )?function|member|method|(copy )?constructor|destructor|instantiation|program|subroutine|block-data)\[^\n\]*" $text "" text
     regsub -all "(^|\n)\[^\n\]*(: )?At (top level|global scope):\[^\n\]*" $text "" text
 
     regsub -all "(^|\n)(\[^\n\]*: )?In ((static member |lambda )?function|member|method|(copy )?constructor|destructor|instantiation|program|subroutine|block-data)\[^\n\]*" $text "" text
     regsub -all "(^|\n)\[^\n\]*(: )?At (top level|global scope):\[^\n\]*" $text "" text
-    regsub -all "(^|\n)\[^\n\]*:   instantiated from \[^\n\]*" $text "" text
+    regsub -all "(^|\n)\[^\n\]*:   (recursively )?instantiated from \[^\n\]*" $text "" text
     regsub -all "(^|\n)\[^\n\]*:   . skipping \[0-9\]* instantiation contexts \[^\n\]*" $text "" text
     regsub -all "(^|\n)    inlined from \[^\n\]*" $text "" text
     regsub -all "(^|\n)collect2: ld returned \[^\n\]*" $text "" text
     regsub -all "(^|\n)\[^\n\]*:   . skipping \[0-9\]* instantiation contexts \[^\n\]*" $text "" text
     regsub -all "(^|\n)    inlined from \[^\n\]*" $text "" text
     regsub -all "(^|\n)collect2: ld returned \[^\n\]*" $text "" text