summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.pt/defarg8.C
blob: a72e85c4394dc236bd9372ab75a4b7c527f56691 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// { dg-do assemble  }

// Default arguments containing more than one non-nested explicit
// template argument leads to parse error

// This might be ill formed. See DR 325 (one proposed resolution is to make
// it so)

template <class T> class foo1;
template <class T, class U> class foo2;

struct bar {
  template <class T, class U>
  bar(int i = foo1<T>::baz, // { dg-bogus "" }  - 
      int j = int(foo2<T, U>::baz), // ok
      int k = foo2<T, U>::baz) {} // ok?
};