1 // The -pedantic option must be omitted to trigger the crash. 2 // { dg-do compile } 3 // { dg-options "" } 4 5 // PR c++/7982: Crash warning about implicit typename. 6 // The base class refers to another typename, while the 7 // name lookup finds a template. 8 9 template <typename T> struct X {}; 10 11 template <typename T> struct C { 12 typedef typename T::X X; 13 }; 14 15 template <typename T> struct A : public C<T> { 16 typedef ::X<int> X; 17 }; 18