https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113620

--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Patrick Palka from comment #5)
> 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!
>   };
> };

That would make sense on why it was rejected before GCC 4.9 even.

Now I wonder if this is related to the diagnostic issue mentioned in
https://gcc.gnu.org/pipermail/gcc-patches/2024-January/643811.html even.

Reply via email to