GNU bug report logs -
#78903
[PATCH] ISO C99 does not support _Noreturn
Previous Next
Reported by: Helmut Eller <eller.helmut <at> gmail.com>
Date: Thu, 26 Jun 2025 07:22:01 UTC
Severity: normal
Tags: patch
Done: Paul Eggert <eggert <at> cs.ucla.edu>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
On Thu, Jun 26 2025, Eli Zaretskii wrote:
>> From: Helmut Eller <eller.helmut <at> gmail.com>
>> Cc: Paul Eggert <eggert <at> cs.ucla.edu>, 78903 <at> debbugs.gnu.org
>> Date: Thu, 26 Jun 2025 10:08:54 +0200
>>
>> On Thu, Jun 26 2025, Eli Zaretskii wrote:
>>
>> >> From: Helmut Eller <eller.helmut <at> gmail.com>
>> >> Date: Thu, 26 Jun 2025 09:20:51 +0200
>> >>
>> >> When I use gcc 14 with -std=gnu99 -Wpedantic I get lots of warnings of
>> >> the form
>> >>
>> >> warning: ISO C99 does not support ‘_Noreturn’ [-Wpedantic].
>> >
>> > Why did you use -Wpedantic?
>>
>> To get warnings when I use a non-C99 feature. Emacs' C code should be
>> written in C99. It would be easier to follow that rule it were checked
>> automatically.
>
> AFAIK, Emacs is written in C99 with extensions.
It would still be easier if the somewhat arbitrary set of extensions
would be checked automatically.
> Can you tell why the definition of _Noreturn in src/config.in doesn't
> work for you? AFAIU, it exactly defines _Noreturn to use
> __attribute__ ((__noreturn__)), but I'm probably missing something.
Without the patch, the case with the comment /* _Noreturn works as-is.
*/ is used. That causes the warnings.
> is the problem that you use clang, and config.in currently doesn't
> cater to that?
No. I don't use clang.
> If so, the change should be in config.in, I think.
I don't think so, because config.in is generated by autogen.sh.
Helmut
This bug report was last modified 14 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.