2 // Origin: Detlef Vollmann <dv@vollmann.ch>
5 // Access control ICE for typename during instantiation and name mangling
7 template <class> class Base {
12 template <class T> struct Derived : public Base<T> {
13 typedef typename Base<T>::Type Type;
14 template <class Arg> void f(Type = Type()) {}
17 template void Derived<char>::f<int> (Type);