/cp
[official-gcc.git] / gcc / testsuite / g++.dg / other / default5.C
blob87acb765e6d61014e741517e9b19e4b06a92439b
1 // PR c++/28274
2 // { dg-do compile }
4 void f1(int, int, int, int, int = 0);
5 void f1(int, int, int, int = 0, int);
6 void f1(int, int, int = 0, int, int);
7 void f1(int = 0, int, int, int, int);    // { dg-error "default" }
9 void f2(int, int, int, int, int = 0) {}
10 void f2(int, int, int, int = 0, int);
11 void f2(int, int, int = 0, int, int);
12 void f2(int = 0, int, int, int, int);    // { dg-error "default" }
14 void f3(int, int, int, int, int = 0);
15 void f3(int, int, int, int = 0, int) {}
16 void f3(int, int, int = 0, int, int);
17 void f3(int = 0, int, int, int, int);    // { dg-error "default" }
19 void f4(int, int, int, int, int = 0);
20 void f4(int, int, int, int = 0, int);
21 void f4(int, int, int = 0, int, int) {}
22 void f4(int = 0, int, int, int, int);    // { dg-error "default" }
24 void f5(int, int, int, int, int = 0);
25 void f5(int, int, int, int = 0, int);
26 void f5(int, int, int = 0, int, int);
27 void f5(int = 0, int, int, int, int) {}  // { dg-error "default" }
30 struct A
32   void F1(int, int, int = 0);
33   void F2(int, int, int = 0);
36 void A::F1(int, int = 0, int) {}
37 void A::F2(int = 0, int, int) {}  // { dg-error "default" }
40 template<int> struct B
42   void F1(int, int, int = 0);
43   void F2(int, int, int = 0);
46 template<int N> void B<N>::F1(int, int = 0, int) {}  // { dg-error "default arguments" }
47 template<int N> void B<N>::F2(int = 0, int, int) {}  // { dg-error "default arguments|parameter 2" }