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

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #2)
> The C23 spec says:
> any token other than a parenthesis, a bracket, or a brace
> 
> But # is not a token in C; it is only a preprocessor token ...

I was wrong there, it is a C token but I suspect it is considered either the
`#` or `##` pp operator which case then would be invalid here.
And that is why GCC, EDG and MSVC all reject this because those 2 pp operators
are processed earlier than attribute processing.

But I could be reading the spec wrong still.

Reply via email to