Re: Discussion about why GNU/Linux system upgrades cause old programs to break
Eli Zaretskii <[email protected]> Wed, 12 Aug 2026 14:54:40 +0300
| Newsgroups | gmane.emacs.devel |
|---|---|
| Message-ID | <[email protected]> |
> From: Richard Stallman <[email protected]> > Cc: [email protected], [email protected] > Date: Tue, 11 Aug 2026 23:49:14 -0400 > > > Not necessarily, no. A C99+ program using K&R-exclusive syntax is, > > however. > > Could you explain precisely what it means, here, to describe a program > as "a C99+ program"? I can imagine various possible meanings, and > that could make a difference here. > > Does Emacs 27 specify an option that implies "reject K&R syntax" > or "complain about anything that doesn't satisfy the C99 spec?" > > Does GCC offer an option to allow K&R function definitions along with > the features of C99, which could have been used in compiling Emacs 27? There's a certain confusion here (and elsewhere in this message): the issue with K&R syntax happens in Emacs 23 and older, not in Emacs 27. We switched from K&R syntax to C89 syntax in Emacs 24.1, so any newer release, including Emacs 27, should have no problems due to K&R syntax. If someone has the latest GCC (v16.1, I believe) installed, it would be interesting to see what happens if it is used to build Emacs 23.2 and what kind of warnings/errors are emitted by GCC in that case. The problems with Emacs 27 are different: they are due to the change in how glibc headers define SIGSTKSZ -- it is no longer a constant expression, so this source line we had: static unsigned char sigsegv_stack[SIGSTKSZ]; would no longer compile.