111
|
1 // { dg-do compile { target c++11 } }
|
|
2
|
|
3 inline namespace N __attribute__((__abi_tag__ ("foo"))) {}
|
|
4 template <typename> struct A;
|
|
5 namespace N {
|
|
6 template <typename> class B;
|
|
7 }
|
|
8 template <typename> class C {};
|
|
9 template <typename> struct D {
|
|
10 template <typename _Up> using G = C<_Up>;
|
|
11 };
|
|
12 template <typename T> struct F {
|
|
13 template <typename U> struct H {
|
|
14 typedef typename D<T>::template G<U> I;
|
|
15 };
|
|
16 };
|
|
17 template <typename T, typename = C<T>> struct J {
|
|
18 C<A<const B<char>>> L;
|
|
19 typedef F<C<int>>::H<A<const B<char>>>::I M;
|
|
20 J<M> *a;
|
|
21 };
|