https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79516
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |pinskia at gcc dot gnu.org --- Comment #8 from Andrew Pinski <pinskia at gcc dot gnu.org> --- The problem is PRAGMA_EOL is being injected into the stream of tokens at the end of the `#pragma message` for the first one and was not eaten otherwise (it was done because `#pragma message` expects an expanded token stream. So when we go to process the next directive of `#if` there is still a token of PRAGMA_EOL there and is used. It is the injection of the PRAGMA_EOL which is not needed I think; maybe.