view gcc/testsuite/g++.dg/template/access6.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
line wrap: on
line source

// { dg-do compile }
// Origin: Detlef Vollmann <dv@vollmann.ch>

// PR c++/8389
// Access control ICE for typename during instantiation and name mangling

template <class> class Base {
  protected:
    typedef int Type;
};
    
template <class T> struct Derived : public Base<T> {
  typedef typename Base<T>::Type Type;
  template <class Arg> void f(Type = Type()) {}
};
    
template void Derived<char>::f<int> (Type);