1// { dg-do assemble  }
2// GROUPS passed templates default-arguments
3template <class I>
4class Class {
5public:
6  void func1(int n=1);
7  void func2(int d) {}
8};
9template <class I>
10void Class<I>::func1(int n) {}
11
12//if this is replaced by:
13//void Class<I>::func1(int n=1) {}
14//the code compiles.
15
16int main() {
17  Class<int> C;
18  return 0;
19}
20