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

--- Comment #4 from YuFei Zhou <stuzyf at 163 dot com> ---
(In reply to Andrew Pinski from comment #2)
> That is if do:
> ```
> int main(){
>     box<true> a;
>     a.fun();
> }
> ```
> GCC will correctly reject the code.
> 
> This is just a QOI issue where the dot operator is not rejected for a
> dependent pointer right away but only during instantiate.
> 
> That is:
> ```
> template <class V>
> struct box{
>     void fun(){
>         a.value;
>     }
>     V *a;
> };
> ```
> Also be rejected.

Thanks for the explanation! I understand now.

Reply via email to