Date: Mon, 1 Sep 2003 12:17:13 +0930 From: Malcolm Kay <malcolm.kay@internode.on.net> To: Garrett Wollman <wollman@khavrinen.lcs.mit.edu>, troy@twisted.net Cc: stable@freebsd.org Subject: Re: POSIX_C_SOURCE Message-ID: <200309011217.13428.malcolm.kay@internode.on.net> In-Reply-To: <200308301649.h7UGnF5H042361@khavrinen.lcs.mit.edu> References: <200308301649.h7UGnF5H042361@khavrinen.lcs.mit.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 31 Aug 2003 02:19, Garrett Wollman wrote: > In article <20030830161813.GA28890@twisted.net> you write: > >Any chance that someone will finally commit the fixes to prevent the > >POSIX_C_SOURCE warnings from showing up? I saw a number of posts on th= is > >topic, but it still seems like it's not "officially committed" > > > >/usr/include/sys/cdefs.h:273: warning: `_POSIX_C_SOURCE' is not define= d > >/usr/include/sys/cdefs.h:279: warning: `_POSIX_C_SOURCE' is not define= d > > The warnings are wrong,[1] so you should probably ask the GCC people > about that. > > -GAWollman > > [1] That is to say, any identifier used in a preprocessor expression > (after macro expansion) is defined to have a value of zero, and GCC > should not be complaining about this. > The warnings are only wrong in your personal interpretation of right and=20 wrong. Many gcc options generate warnings with legal C source and this is= =20 permitted by the C standard (whether or not it is controlled by a compile= r=20 option) provided it does not prevent generation of correct code. The warning is true: that is _POSIX_C_SOURCE is not defined (and is evalu= ated in an #if preprocessor statement). The warning only appears when -Wundef option is used which relates=20 specifically to this circumstance. GCC people surely cannot be criticised= =20 for an option that works precisely as documented. No-one individually has it wrong. The problem is one of incompatibility between the header files and the=20 compiler options selected. Since the compiler options are probably set fo= r a=20 range of environments it is probably best to adapt the system header file= s to=20 circumvent the difficulty. Malcolm Kay
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200309011217.13428.malcolm.kay>