aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/g++.old-deja/g++.pt/typename1.C
blob: c3b07ff80ec8ba6d7c21387f79f773c658fb21e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// { dg-do assemble  }

template<class T>
struct A {
    typedef T T1;
};

template<class T>
struct B {
    typedef T T2;
};

template<class T>
struct C {
};

template<class E>
C<typename E::T2::T1>
foo (E)
{
    return C<typename E::T2::T1>();
}

void test()
{
    foo(B<A<int> >());
}