https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113620
Patrick Palka <ppalka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ppalka at gcc dot gnu.org --- Comment #5 from Patrick Palka <ppalka at gcc dot gnu.org> --- Seems to be a name lookup issue ultimately: struct A { template<class T, class U> struct B; template<class V> struct B<int, V> { int x = V::value; // error: 'V' has not been declared int y = T::value; // no error! int z = U::value; // no error! }; };