1 // { dg-options -std=c++0x }
2 // { dg-prune-output "note" }
3 // PR c++/33509
4 template<int M, int N> struct pair
5 {
6 int i, j;
pairpair7 pair() : i(M), j(N) {}
8 };
9
10 template<int... M> struct S
11 {
fooS12 template<int... N> static int foo() throw (pair <M, N>...) // { dg-error "mismatched" }
13 {
14 return 1;
15 }
16 };
17
bar()18 int bar ()
19 {
20 return S<0, 1, 2>::foo<0, 1, 3> ();
21 }
22
wibble()23 int wibble()
24 {
25 return S<0, 1, 2>::foo<0, 1> (); // { dg-error "no matching" }
26 }
27