summary refs log tree commit diff
path: root/manual/creature.texi
diff options
context:
space:
mode:
authorRical Jasan <ricaljasan@pacific.net>2018-02-19 04:37:16 -0800
committerRical Jasan <ricaljasan@pacific.net>2018-02-21 02:38:42 -0800
commit862b45026fa67277a554eb329538a7d536311eca (patch)
tree70b0265c55a4af5b4c11563ce536f19014bc8fe5 /manual/creature.texi
parent999a6dab3ee1c8e77bb348ba2389e7aeb5c062b2 (diff)
downloadglibc-862b45026fa67277a554eb329538a7d536311eca.tar.gz
glibc-862b45026fa67277a554eb329538a7d536311eca.tar.xz
glibc-862b45026fa67277a554eb329538a7d536311eca.zip
manual: Update _DEFAULT_SOURCE. [BZ #22862]
The description of the interplay between feature test macros and
compiler options in the description of _DEFAULT_SOURCE is a little
confusing, and dated, so clarify the situation, and don't assume a
specific value for _DEFAULT_SOURCE.

Also, _DEFAULT_SOURCE is supposed to be defined if none of the C/POSIX
feature test macros are defined, but the condition was lacking a test
for _ISOC11_SOURCE, so that is also addressed.

	[BZ #22862]
	* include/features.h: Add _ISOC11_SOURCE to test for whether
	to define _DEFAULT_SOURCE.
	* manual/creature.texi (_DEFAULT_SOURCE): Improve
	documentation.
Diffstat (limited to 'manual/creature.texi')
-rw-r--r--manual/creature.texi21
1 files changed, 14 insertions, 7 deletions
diff --git a/manual/creature.texi b/manual/creature.texi
index fe7a7790a2..8876b2ab77 100644
--- a/manual/creature.texi
+++ b/manual/creature.texi
@@ -221,13 +221,20 @@ precedence.
 If you define this macro, most features are included apart from
 X/Open, LFS and GNU extensions: the effect is to enable features from
 the 2008 edition of POSIX, as well as certain BSD and SVID features
-without a separate feature test macro to control them.  Defining this
-macro, on its own and without using compiler options such as
-@option{-ansi} or @option{-std=c99}, has the same effect as not
-defining any feature test macros; 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.
+without a separate feature test macro to control them.
+
+Be aware that compiler options also affect included features:
+
+@itemize
+@item
+If you use a strict conformance option, features beyond those from the
+compiler's language version will be disabled, though feature test
+macros may be used to enable them.
+
+@item
+Features enabled by compiler options are not overridden by feature
+test macros.
+@end itemize
 @end defvr
 
 @defvr Macro _ATFILE_SOURCE