1 // Testcase from cxx-abi-dev.
2 // { dg-do compile { target c++11 } }
3 // { dg-options "-fabi-version=9" }
4 
5 struct A {
6   template<int...T> using N = int[sizeof...(T)];
7   template<int...A> void f(N<A...> &);
8 
9   template<typename...T> using M = int[sizeof...(T)];
10   template<typename...A> void g(M<A...> &);
11 };
g(A a)12 void g(A a)
13 {
14   int arr[3];
15   // { dg-final { scan-assembler "_ZN1A1fIJLi1ELi2ELi3EEEEvRAszspT__i" } }
16   a.f<1,2,3>(arr);
17   // { dg-final { scan-assembler "_ZN1A1gIJiiiEEEvRAstDpT__i" } }
18   a.g<int,int,int>(arr);
19 }
20