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

--- Comment #1 from Drea Pinski <pinskia at gcc dot gnu.org> ---
Are you sure this is not valid?


6.10.1/7 has:
```
When in a group that is skipped (6.10.2), the directive syntax is relaxed to
allow any sequence of
preprocessing tokens to occur between the directive name and the following
new-line character.
```

But then 6.10.5/5 has:
```
 The identifiers __VA_ARGS__ and __VA_OPT__ shall occur only in the
replacement-list of a functionlike macro that uses the ellipsis notation in the
parameters
```

I think GCC is correct here because "the directive syntax is relaxed to allow
any sequence of preprocessing tokens". Note the use of any. Or there is defect
in the standard. Because the way I am reading this is the identifiers should be
allowed.

Reply via email to