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)12void 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