aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/g++.dg/warn/implicit-typename1.C
blob: 2952e6fd001db72a0fb31d863ae0e7c51b7517a3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// The -pedantic option must be omitted to trigger the crash.
// { dg-do compile }
// { dg-options "" }

// PR c++/7982: Crash warning about implicit typename.
// The base class refers to another typename, while the
// name lookup finds a template.

template <typename T> struct X {};

template <typename T> struct C {
  typedef typename T::X X;
};

template <typename T> struct A : public C<T> {
  typedef ::X<int> X;
};