Re: Discussion about why GNU/Linux system upgrades cause old programs to break
Richard Stallman <[email protected]>
| Newsgroups | gmane.emacs.devel |
|---|---|
| Message-ID | <[email protected]> |
[[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > No, the reason this fails is because 'gets' was pulled from C and POSIX > at some point (I think C11 and POSIX 2008, but I did not double check > the latter). Thank you. I don't keep close track of changes in those standards. > When compiling with -std=c11 or newer, or when compiling with > _GNU_SOURCE (as that enables the newest set of features despite the > dialect flag), the declaration is not provided, thus this fails. I think that is a mistake. _GNU_SOURCE means to enable GNU extensions. It should NOT mean to exclude anything! > Especially as glibc already marks 'gets' as deprecated, and emits a > warning on use: The helpful thing to do about `gets' is to issue a warning when anyone calls it. Since glibc is already doing this, omitting `gets' entirely can only cause extra breakage, it can't help anyone. > I am not sure, but I have a feeling that the removal from C99 with > _GNU_SOURCE was likely not intended (at least, I don't see the use in > doing so personally). It seems we agree. -- Dr Richard Stallman (https://stallman.org) Chief GNUisance of the GNU Project (https://gnu.org) Founder, Free Software Foundation (https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org)