This is the mail archive of the mailing list for the glibc project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PING] [PATCH v2] manual: Document missing feature test macros.

On 08/10/2017 03:26 PM, Joseph Myers wrote:
> OK, but suggested followups:
> * In the description of _DEFAULT_SOURCE, note that features from the C 
> standard version used by the compiler are also enabled by default.  (With 
> GCC 5 and later, which defaults to -std=gnu11, that means C11 features are 
> enabled, but unlike C99 they aren't part of the 2008 edition of POSIX, so 
> aren't already included in the description of default features.)

How would you like that said?  That whole paragraph refers to /either/
feature test macros /or/ compiler options, and uses examples of the
latter, so I already read it as implying if you use a specific compiler
option such as -std=gnu11, you get what it entails, along with anything
that is "default":

"defining it together with other feature test macros, or when options
such as @option{-ansi} are used, enables those features even when the
other options would otherwise cause them to be disabled."

Documenting the compiler's defaults is probably out of scope.

> * Remove the statement about C99 not being widely adopted from the 
> description of _ISOC99_SOURCE.  By now, C99 is widely adopted (in the Unix 
> world; I'm not sure about the state of Microsoft's compiler in that 
> regard, they've historically been better at keeping up with C++ than with 
> C).

How is this:

"@Theglibc{} has a complete implementation of the @w{ISO C99} standard,
and to enable its features, the macro @code{_ISOC99_SOURCE} should be

> * Consider obsoleting _ATFILE_SOURCE and making it into an alias for 
> _POSIX_C_SOURCE = 200809L if _POSIX_C_SOURCE is undefined or has a lower 
> value (similar to the _REENTRANT obsoletion); I don't think we really need 
> a separate feature test macro for this subset of POSIX features.

As this requires more extensive changes throughout, I'll do this
separately, but I think the other issues can be incorporated in a v3.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]