feature_test_macros.7: Further tweaks to _REENTRANT description

Reviewed-by: Zack Weinberg <zackw@panix.com>
Reported-by: Zack Weinberg <zackw@panix.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
This commit is contained in:
Michael Kerrisk 2016-12-10 12:58:31 +01:00
parent 26719dcfce
commit 03fb4543fd
1 changed files with 12 additions and 6 deletions

View File

@ -529,8 +529,13 @@ and
.BR _SVID_SOURCE .
.TP
.B _REENTRANT
Historically, it was necessary to define this macro in all
Historically, on various C libraries
it was necessary to define this macro in all
multithreaded code.
.\" Zack Weinberg
.\" There did once exist C libraries where it was necessary. The ones
.\" I remember were proprietary Unix vendor libcs from the mid-1990s
.\" You would get completely unlocked stdio without _REENTRANT.
(Some C libraries may still require this.)
In glibc,
this macro also exposed definitions of certain reentrant functions.
@ -543,10 +548,11 @@ are also enabled by defining
.BR _POSIX_C_SOURCE
with a value of 199606L or greater.
In glibc 2.25 and later,
.B _REENTRANT
is deprecated.
Defining it is equivalent to defining
is now obsolete.
In glibc 2.25 and later, defining
.B _REENTRANT
is equivalent to defining
.B _POSIX_C_SOURCE
with the value 199606L.
If a higher POSIX conformance level is
@ -557,11 +563,11 @@ itself,
.BR _DEFAULT_SOURCE ,
or
.BR _GNU_SOURCE ),
then
then defining
.B _REENTRANT
has no effect.
This flag is automatically defined if one compiles with
This macro is automatically defined if one compiles with
.IR "cc\ \-pthread" .
.TP
.B _THREAD_SAFE