diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/template/recurse1.C')
-rw-r--r-- | gcc/testsuite/g++.dg/template/recurse1.C | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/template/recurse1.C b/gcc/testsuite/g++.dg/template/recurse1.C new file mode 100644 index 000000000..4789983af --- /dev/null +++ b/gcc/testsuite/g++.dg/template/recurse1.C @@ -0,0 +1,16 @@ +// PR c++/5050 +// Origin: georg.wild@gmx.de +// Reduced by: tbagot@bluearc.com and Nathanael C. Nerode <neroden@twcny.rr.com> +// Test for that excessive template recursion does not occur +// because of optimization. +// { dg-options "-ftemplate-depth-1 -O" } + + struct ostream { + template<class T> ostream& foo( const T & ) + { return *this; } + }; + + void foo() { + ostream os; + (os.foo(1)).foo(2); + } |