summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/parse/operator2.C
blob: a9ebde0d4f5954493a2b55ec83fdae94c846379a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// PR c++/7906
// Origin: Marcel Loose <loose@astron.nl>
// { dg-do compile }

template <typename> struct A { typedef int X; };

template <typename T> struct B
{
    typedef A<T> Y;
    struct C { operator typename Y::X() const; };
};

template <typename T> B<T>::C::operator typename B<T>::Y::X() const { return 0; }

B<int> b;