On Thu, Apr 16, 2026 at 08:38:50AM +0200, Matthias Andree via Mutt-dev wrote:
Am 16.04.26 um 06:52 schrieb Kevin J. McCarthy:

So... I guess this is C23.  Which I know almost nothing about :-D.  In any case, we're a long ways away from getting to that level of C standard support in Mutt.

It's actually a C11 feature that is finally leveraged in the C23 stdlib.h, see https://en.cppreference.com/w/c/language/generic.html or https://stackoverflow.com/questions/9804371/syntax-and-sample-usage-of-generic-in-c11 or https://learn.microsoft.com/en-us/cpp/c-language/generic-selection?view=msvc-170

Thank you, Matthias. Those links are really helpful. Starts to turn line noise into something I can understand!

1. C23 CHANGES INCOMPATIBLY how a function _declaration_ without arguments is interpreted.

As of C23, int func() means the same as int func(void), must/will not take arguments, where C18 and before interpreted "has no prototype, any number of arguments is fine", although that had been deprecated since C99 or so.

It wasn't that long ago that I start converting some func() declarations inside mutt to func(void). I'll count myself lucky that we didn't happen to have those kinds of problems in our configure.ac too!

--
Kevin J. McCarthy
GPG Fingerprint: 8975 A9B3 3AA3 7910 385C  5308 ADEF 7684 8031 6BDA

Attachment: signature.asc
Description: PGP signature

Reply via email to