summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/template/recurse1.C
blob: 4789983affe2babc3d8cd7831c57135c73804183 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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);
  }