On Tue, Nov 07, 2023 at 04:01:12PM +0000, Lucretia wrote: > I read the whole file top to bottom, slowly and with care, and saw no > comments about __dead. Unless by chance they've been added since > 7.4 release.
Immediately above where __dead and __pure are defined is the following comment: /* * GCC1 and some versions of GCC2 declare dead (non-returning) and * pure (no side effects) functions using "volatile" and "const"; * unfortunately, these then cause warnings under "-ansi -pedantic". * GCC >= 2.5 uses the __attribute__((attrs)) style. All of these * work for GNU C++ (modulo a slight glitch in the C++ grammar in * the distribution version of 2.5.5). */ This, with a few updates and changes, has been in the source code for > 30 years. For reference, the same comment in the same file in the NetBSD tree is a bit more verbose and gives some examples of what pure and const are used for.