blob: a0f5e39b6e9eae869e3ae07225a59bb9f4fae118 [file] [log] [blame]
// { dg-do compile }
// Contributed by Matt Austern <austern at apple dot com>
// PR c++/13407: Gracefully handle keyword typename in base class specifier.
struct A { };
struct B { typedef A Type; };
template <typename T>
struct X :
public typename T::Type // { dg-error "not allowed in this context" }
{ };
X<B> x;
struct C :
public typename A // { dg-error "not allowed outside of templates" }
{ };