> From: Michael Richardson <m...@sandelman.ca>
> Sent: Friday, 1 April, 2022 07:40
> 
> Michael Wojcik <michael.woj...@microfocus.com> wrote:
>     > Actually, in the context of #if expressions, unrecognized tokens
> expand to 0 anyway:
> 
>     > After all replacements due to macro expansion and the defined unary
>     > operator have been performed, all remaining identifiers are replaced
>     > with the pp-number 0...
> 
>     > (ISO 9899:1999 6.10.1 #3)
> 
> Yes, but that generates a warning, and then error via -Werror with some
> set
> of compile options that at least one CI run uses.

Oh, well. An implementation is allowed to generate any diagnostics it wishes, 
and is allowed to fail to translate even a conforming program.

Ultimately we're at the mercy of the implementation, and GCC is not a 
particularly good C implementation. (Of course, in its default mode, it doesn't 
implement C; it implements a language similar to, but not, C.)

Reply via email to