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)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.