From 8b6d51826caceb9ab1777a4d11c093af65951ac1 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Wed, 15 Nov 2017 23:55:10 +0100 Subject: [PATCH] [macros] Introduce \indexhdr and apply it for all headers. --- source/algorithms.tex | 6 +-- source/atomics.tex | 3 +- source/basic.tex | 2 +- source/compatibility.tex | 70 ++++++++++++++++----------------- source/containers.tex | 33 ++++++---------- source/declarators.tex | 2 +- source/diagnostics.tex | 21 ++++------ source/expressions.tex | 6 +-- source/future.tex | 58 +++++++++++----------------- source/iostreams.tex | 83 ++++++++++++++-------------------------- source/iterators.tex | 3 +- source/lex.tex | 4 +- source/lib-intro.tex | 43 ++++++++------------- source/locales.tex | 15 +++----- source/macros.tex | 1 + source/numerics.tex | 32 +++++----------- source/regex.tex | 2 +- source/strings.tex | 42 +++++++------------- source/support.tex | 60 ++++++++++------------------- source/threads.tex | 15 +++----- source/utilities.tex | 59 ++++++++++------------------ 21 files changed, 207 insertions(+), 353 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 9a11ce228d..68d01d419c 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -23,8 +23,7 @@ \end{libsumtab} \rSec1[algorithm.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{algorithm}}% -\indexlibrary{\idxhdr{algorithm}}% +\indexhdr{algorithm}% \begin{codeblock} #include @@ -5716,8 +5715,7 @@ \rSec1[alg.c.library]{C library algorithms} \pnum -\indextext{\idxhdr{cstdlib}}% -\indexlibrary{\idxhdr{cstdlib}}% +\indexhdr{cstdlib}% \begin{note} The header \tcode{}\iref{cstdlib.syn} declares the functions described in this subclause. diff --git a/source/atomics.tex b/source/atomics.tex index 198d7d0662..4656ec8068 100644 --- a/source/atomics.tex +++ b/source/atomics.tex @@ -28,8 +28,7 @@ \rSec1[atomics.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{atomic}}% -\indexlibrary{\idxhdr{atomic}}% +\indexhdr{atomic}% \begin{codeblock} namespace std { // \ref{atomics.order}, order and consistency diff --git a/source/basic.tex b/source/basic.tex index 4e9b6d70b8..0a51b89ef6 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -5548,7 +5548,7 @@ \indexlibrary{\idxcode{abort}}% \indextext{termination!program}% Calling the function \tcode{std::abort()} declared in -\indextext{\idxhdr{cstdlib}}% +\indexhdr{cstdlib}% \tcode{} terminates the program without executing any destructors and without calling the functions passed to \tcode{std::atexit()} or \tcode{std::at_quick_exit()}.% diff --git a/source/compatibility.tex b/source/compatibility.tex index cb10076017..ee91977cab 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -1915,23 +1915,23 @@ \pnum There are no \Cpp headers for the C headers -\tcode{}\indextext{\idxhdr{stdatomic.h}}, -\tcode{}\indextext{\idxhdr{stdnoreturn.h}}, -and \tcode{}\indextext{\idxhdr{threads.h}}, +\tcode{}\indexhdr{stdatomic.h}, +\tcode{}\indexhdr{stdnoreturn.h}, +and \tcode{}\indexhdr{threads.h}, nor are the C headers themselves part of \Cpp. \pnum -The \Cpp headers \tcode{}\indextext{\idxhdr{ccomplex}}\iref{depr.ccomplex.syn} -and \tcode{}\indextext{\idxhdr{ctgmath}}\iref{depr.ctgmath.syn}, as well -as their corresponding C headers \tcode{}\indextext{\idxhdr{complex.h}} -and \tcode{}\indextext{\idxhdr{tgmath.h}}, do not contain any of the +The \Cpp headers \tcode{}\indexhdr{ccomplex}\iref{depr.ccomplex.syn} +and \tcode{}\indexhdr{ctgmath}\iref{depr.ctgmath.syn}, as well +as their corresponding C headers \tcode{}\indexhdr{complex.h} +and \tcode{}\indexhdr{tgmath.h}, do not contain any of the content from the C standard library and instead merely include other headers from the \Cpp standard library. \pnum -The headers \tcode{}\indextext{\idxhdr{ciso646}}, -\tcode{}\indextext{\idxhdr{cstdalign}}\iref{depr.cstdalign.syn}, -and \tcode{}\indextext{\idxhdr{cstdbool}}\iref{depr.cstdbool.syn} +The headers \tcode{}\indexhdr{ciso646}, +\tcode{}\indexhdr{cstdalign}\iref{depr.cstdalign.syn}, +and \tcode{}\indexhdr{cstdbool}\iref{depr.cstdbool.syn} are meaningless in \Cpp. Use of the \Cpp headers \tcode{}, \tcode{}, \tcode{}, and \tcode{} is deprecated\iref{depr.c.headers}. @@ -1946,7 +1946,7 @@ The tokens \tcode{char16_t} and \tcode{char32_t} are keywords in this International Standard\iref{lex.key}. They do not appear as macro names defined in -\tcode{}\indexlibrary{\idxhdr{cuchar}}\iref{cuchar.syn}. +\tcode{}\indexhdr{cuchar}\iref{cuchar.syn}. \rSec3[diff.wchar.t]{Type \tcode{wchar_t}} @@ -1956,20 +1956,20 @@ The token \tcode{wchar_t} is a keyword in this International Standard\iref{lex.key}. It does not appear as a type name defined in any of -\tcode{}\iref{cstddef.syn}\indexlibrary{\idxhdr{cstddef}}, -\tcode{}\iref{cstdlib.syn}\indexlibrary{\idxhdr{cstdlib}}, -or \tcode{}\iref{cwchar.syn}\indexlibrary{\idxhdr{cwchar}}. +\tcode{}\iref{cstddef.syn}\indexhdr{cstddef}, +\tcode{}\iref{cstdlib.syn}\indexhdr{cstdlib}, +or \tcode{}\iref{cwchar.syn}\indexhdr{cwchar}. \rSec3[diff.header.assert.h]{Header \tcode{}} -\indexlibrary{\idxhdr{assert.h}}% +\indexhdr{assert.h}% \pnum The token \tcode{static_assert} is a keyword in this International Standard\iref{lex.key}. It does not appear as a macro name defined -in \tcode{}\indexlibrary{\idxhdr{cassert}}\iref{cassert.syn}. +in \tcode{}\indexhdr{cassert}\iref{cassert.syn}. \rSec3[diff.header.iso646.h]{Header \tcode{}} -\indexlibrary{\idxhdr{iso646.h}}% +\indexhdr{iso646.h}% \pnum The tokens @@ -1989,24 +1989,24 @@ Standard\iref{lex.key}. They do not appear as macro names defined in \tcode{}. -\indexlibrary{\idxhdr{ciso646}}% +\indexhdr{ciso646}% \rSec3[diff.header.stdalign.h]{Header \tcode{}} -\indexlibrary{\idxhdr{stdalign.h}}% +\indexhdr{stdalign.h}% \pnum The token \tcode{alignas} is a keyword in this International Standard\iref{lex.key}. It does not appear as a macro name defined -in \tcode{}\indexlibrary{\idxhdr{cstdalign}}\iref{depr.cstdalign.syn}. +in \tcode{}\indexhdr{cstdalign}\iref{depr.cstdalign.syn}. \rSec3[diff.header.stdbool.h]{Header \tcode{}} -\indexlibrary{\idxhdr{stdbool.h}}% +\indexhdr{stdbool.h}% \pnum The tokens \tcode{bool}, \tcode{true}, and \tcode{false} are keywords in this International Standard\iref{lex.key}. They do not appear as macro names defined in -\tcode{}\indexlibrary{\idxhdr{cstdbool}}\iref{depr.cstdbool.syn}. +\tcode{}\indexhdr{cstdbool}\iref{depr.cstdbool.syn}. \rSec3[diff.null]{Macro \tcode{NULL}} @@ -2014,20 +2014,20 @@ The macro \tcode{NULL}, defined in any of -\tcode{}\iref{c.locales}\indexlibrary{\idxhdr{clocale}}, -\tcode{}\iref{cstddef.syn}\indexlibrary{\idxhdr{cstddef}}, -\tcode{}\iref{cstdio.syn}\indexlibrary{\idxhdr{cstdio}}, -\tcode{}\iref{cstdlib.syn}\indexlibrary{\idxhdr{cstdlib}}, -\tcode{}\iref{cstring.syn}\indexlibrary{\idxhdr{cstring}}, -\tcode{}\iref{ctime.syn}\indexlibrary{\idxhdr{ctime}}, -or \tcode{}\iref{cwchar.syn}\indexlibrary{\idxhdr{cwchar}}, +\tcode{}\iref{c.locales}\indexhdr{clocale}, +\tcode{}\iref{cstddef.syn}\indexhdr{cstddef}, +\tcode{}\iref{cstdio.syn}\indexhdr{cstdio}, +\tcode{}\iref{cstdlib.syn}\indexhdr{cstdlib}, +\tcode{}\iref{cstring.syn}\indexhdr{cstring}, +\tcode{}\iref{ctime.syn}\indexhdr{ctime}, +or \tcode{}\iref{cwchar.syn}\indexhdr{cwchar}, is an \impldef{definition of \tcode{NULL}} \Cpp null pointer constant in this International Standard\iref{support.types}. \rSec2[diff.mods.to.declarations]{Modifications to declarations} \pnum -Header \tcode{}\iref{cstring.syn}\indexlibrary{\idxhdr{cstring}}: +Header \tcode{}\iref{cstring.syn}\indexhdr{cstring}: The following functions have different declarations: \begin{itemize} @@ -2041,7 +2041,7 @@ Subclause \ref{cstring.syn} describes the changes. \pnum -Header \tcode{}\iref{cwchar.syn}\indexlibrary{\idxhdr{cwchar}}: +Header \tcode{}\iref{cwchar.syn}\indexhdr{cwchar}: The following functions have different declarations: \begin{itemize} @@ -2055,14 +2055,14 @@ Subclause \ref{cwchar.syn} describes the changes. \pnum -Header \tcode{}\iref{cstddef.syn}\indexlibrary{\idxhdr{cstddef}} +Header \tcode{}\iref{cstddef.syn}\indexhdr{cstddef} declares the name \tcode{nullptr_t} in addition to the names declared in \tcode{} in the C standard library. \rSec2[diff.mods.to.behavior]{Modifications to behavior} \pnum -Header \tcode{}\iref{cstdlib.syn}\indexlibrary{\idxhdr{cstdlib}}: +Header \tcode{}\iref{cstdlib.syn}\indexhdr{cstdlib}: The following functions have different behavior: \begin{itemize} @@ -2074,7 +2074,7 @@ Subclause \ref{support.start.term} describes the changes. \pnum -Header \tcode{}\iref{csetjmp.syn}\indexlibrary{\idxhdr{csetjmp}}: +Header \tcode{}\iref{csetjmp.syn}\indexhdr{csetjmp}: The following functions have different behavior: \begin{itemize} @@ -2088,7 +2088,7 @@ \pnum The macro \tcode{offsetof}, defined in -\tcode{}\iref{cstddef.syn}\indexlibrary{\idxhdr{cstddef}}, +\tcode{}\iref{cstddef.syn}\indexhdr{cstddef}, accepts a restricted set of \tcode{\placeholder{type}} arguments in this International Standard. Subclause \ref{support.types.layout} describes the change. diff --git a/source/containers.tex b/source/containers.tex index 1c6cf1742e..185b538bbb 100644 --- a/source/containers.tex +++ b/source/containers.tex @@ -2923,8 +2923,7 @@ \rSec2[array.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{array}}% -\indexlibrary{\idxhdr{array}}% +\indexhdr{array}% \begin{codeblock} #include @@ -2966,8 +2965,7 @@ \rSec2[deque.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{deque}}% -\indexlibrary{\idxhdr{deque}}% +\indexhdr{deque}% \begin{codeblock} #include @@ -3002,8 +3000,7 @@ \rSec2[forward_list.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{forward_list}}% -\indexlibrary{\idxhdr{forward_list}}% +\indexhdr{forward_list}% \begin{codeblock} #include @@ -3038,8 +3035,7 @@ \rSec2[list.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{list}}% -\indexlibrary{\idxhdr{list}}% +\indexhdr{list}% \begin{codeblock} #include @@ -3074,8 +3070,7 @@ \rSec2[vector.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{vector}}% -\indexlibrary{\idxhdr{vector}}% +\indexhdr{vector}% \begin{codeblock} #include @@ -5812,8 +5807,7 @@ \rSec2[associative.map.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{map}}% -\indexlibrary{\idxhdr{map}}% +\indexhdr{map}% \begin{codeblock} #include @@ -5890,8 +5884,7 @@ \rSec2[associative.set.syn]{Header \tcode{} synopsis}% -\indextext{\idxhdr{set}}% -\indexlibrary{\idxhdr{set}}% +\indexhdr{set}% \begin{codeblock} #include @@ -7353,8 +7346,7 @@ defined in \ref{associative.general} may appear in deduction guides for unordered containers. \rSec2[unord.map.syn]{Header \tcode{} synopsis}% -\indextext{\idxhdr{unordered_map}}% -\indexlibrary{\idxhdr{unordered_map}}% +\indexhdr{unordered_map}% \indexlibrary{\idxcode{unordered_map}}% \indexlibrary{\idxcode{unordered_multimap}}% \begin{codeblock} @@ -7422,8 +7414,7 @@ \end{codeblock} \rSec2[unord.set.syn]{Header \tcode{} synopsis}% -\indextext{\idxhdr{unordered_set}}% -\indexlibrary{\idxhdr{unordered_set}}% +\indexhdr{unordered_set}% \indexlibrary{\idxcode{unordered_set}}% \indexlibrary{\idxcode{unordered_multiset}}% \begin{codeblock} @@ -9018,8 +9009,7 @@ \end{itemize} \rSec2[queue.syn]{Header \tcode{} synopsis}% -\indextext{\idxhdr{queue}}% -\indexlibrary{\idxhdr{queue}} +\indexhdr{queue}% \begin{codeblock} #include @@ -9052,8 +9042,7 @@ \end{codeblock} \rSec2[stack.syn]{Header \tcode{} synopsis}% -\indextext{\idxhdr{stack}}% -\indexlibrary{\idxhdr{stack}} +\indexhdr{stack}% \begin{codeblock} #include diff --git a/source/declarators.tex b/source/declarators.tex index db79db35e1..a55ed66450 100644 --- a/source/declarators.tex +++ b/source/declarators.tex @@ -1386,7 +1386,7 @@ \begin{note} The standard header \tcode{} -\indextext{\idxhdr{cstdarg}}% +\indexhdr{cstdarg}% contains a mechanism for accessing arguments passed using the ellipsis (see~\ref{expr.call} and~\ref{support.runtime}). \end{note} diff --git a/source/diagnostics.tex b/source/diagnostics.tex index 1910c723ee..febd032749 100644 --- a/source/diagnostics.tex +++ b/source/diagnostics.tex @@ -43,14 +43,12 @@ They cannot be easily predicted in advance. The header \tcode{} -\indextext{\idxhdr{stdexcept}}% -\indexlibrary{\idxhdr{stdexcept}}% +\indexhdr{stdexcept}% defines several types of predefined exceptions for reporting errors in a \Cpp program. These exceptions are related by inheritance. \rSec2[stdexcept.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{stdexcept}}% -\indexlibrary{\idxhdr{stdexcept}}% +\indexhdr{stdexcept}% \indexlibrary{\idxcode{logic_error}}% \indexlibrary{\idxcode{domain_error}}% \indexlibrary{\idxcode{invalid_argument}}% @@ -545,16 +543,14 @@ \rSec2[cassert.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cassert}}% -\indexlibrary{\idxhdr{cassert}}% +\indexhdr{cassert}% \indexlibrary{\idxcode{assert}}% \begin{codeblock} #define assert(E) @\seebelow@ \end{codeblock} \pnum -\indextext{\idxhdr{assert.h}}% -\indexlibrary{\idxhdr{assert.h}}% +\indexhdr{assert.h}% \indextext{static_assert@\tcode{static_assert}!not macro}% The contents are the same as the C standard library header \tcode{}, @@ -580,8 +576,7 @@ \rSec1[errno]{Error numbers} \pnum -\indextext{\idxhdr{errno.h}}% -\indexlibrary{\idxhdr{errno.h}}% +\indexhdr{errno.h}% The contents of the header \tcode{} are the same as the POSIX header \tcode{}, except that \tcode{errno} shall be defined as a macro. \begin{note} @@ -591,8 +586,7 @@ \rSec2[cerrno.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cerrno}}% -\indexlibrary{\idxhdr{cerrno}}% +\indexhdr{cerrno}% \indexlibrary{\idxcode{errno}}% \indexlibrary{\idxcode{E2BIG}}% \indexlibrary{\idxcode{EACCES}}% @@ -774,8 +768,7 @@ libraries unchanged. \rSec2[system_error.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{system_error}}% -\indexlibrary{\idxhdr{system_error}}% +\indexhdr{system_error}% \indexlibrary{\idxcode{error_category}}% \indexlibrary{\idxcode{error_code}}% \indexlibrary{\idxcode{error_condition}}% diff --git a/source/expressions.tex b/source/expressions.tex index 7eea6f9271..d36447bdce 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -3649,7 +3649,7 @@ \indextext{\idxcode{size_t}}% \indexlibrary{\idxcode{size_t}}% \tcode{std::size_t} is defined in the standard header -\indextext{\idxhdr{cstddef}}% +\indexhdr{cstddef}% \tcode{}~(\ref{cstddef.syn}, \ref{support.types.layout}). \end{note} @@ -4775,7 +4775,7 @@ \indextext{\idxcode{ptrdiff_t}!implementation-defined type of}% \indextext{subtraction!implementation-defined pointer}% \indextext{\idxcode{ptrdiff_t}}% -\indextext{\idxhdr{cstddef}}% +\indexhdr{cstddef}% \indextext{comparison!undefined pointer}% When two pointers to elements of the same array object are subtracted, the type of the result is an \impldef{type of \tcode{ptrdiff_t}} signed @@ -5004,7 +5004,7 @@ \tcode{std::partial_ordering}) are not predefined; if the header -\indextext{\idxhdr{compare}}\tcode{} +\indexhdr{compare}\tcode{} is not included prior to a use of such a class type -- even an implicit use in which the type is not named (e.g., via the \tcode{auto} specifier\iref{dcl.spec.auto} diff --git a/source/future.tex b/source/future.tex index 7e1bcaad77..f1ed9437ac 100644 --- a/source/future.tex +++ b/source/future.tex @@ -60,7 +60,7 @@ The use of these headers is deprecated. \rSec2[depr.ccomplex.syn]{Header \tcode{} synopsis} -\indexlibrary{\idxhdr{ccomplex}}% +\indexhdr{ccomplex}% \begin{codeblock} #include @@ -74,14 +74,14 @@ \rSec2[depr.cstdalign.syn]{Header \tcode{} synopsis} \indexlibrary{\idxcode{__alignas_is_defined}}% -\indexlibrary{\idxhdr{cstdalign}}% +\indexhdr{cstdalign}% \begin{codeblock} #define @\xname{alignas_is_defined}@ 1 \end{codeblock} \pnum -\indexlibrary{\idxhdr{cstdalign}}% -\indexlibrary{\idxhdr{stdalign.h}}% +\indexhdr{cstdalign}% +\indexhdr{stdalign.h}% The contents of the header \tcode{} are the same as the C standard library header \tcode{}, with the following changes: The header \tcode{} and the header \tcode{} shall not @@ -91,14 +91,14 @@ \rSec2[depr.cstdbool.syn]{Header \tcode{} synopsis} -\indexlibrary{\idxhdr{cstdbool}}% +\indexhdr{cstdbool}% \indexlibrary{\idxcode{__bool_true_false_are_defined}}% \begin{codeblock} #define @\xname{bool_true_false_are_defined}@ 1 \end{codeblock} \pnum -\indexlibrary{\idxhdr{stdbool.h}}% +\indexhdr{stdbool.h}% The contents of the header \tcode{} are the same as the C standard library header \tcode{}, with the following changes: The header \tcode{} and the header \tcode{} shall not @@ -108,7 +108,7 @@ \rSec2[depr.ctgmath.syn]{Header \tcode{} synopsis} -\indexlibrary{\idxhdr{ctgmath}}% +\indexhdr{ctgmath}% \begin{codeblock} #include #include @@ -196,10 +196,8 @@ \pnum \begin{example} The header -\indextext{\idxhdr{cstdlib}}% -\indexlibrary{\idxhdr{cstdlib}}% -\indextext{\idxhdr{stdlib.h}}% -\indexlibrary{\idxhdr{stdlib.h}}% +\indexhdr{cstdlib}% +\indexhdr{stdlib.h}% \tcode{} assuredly provides its declarations and definitions within the namespace \tcode{std}. It may also provide these names within the @@ -216,7 +214,7 @@ \pnum The header \tcode{} -\indextext{\idxhdr{utility}}% +\indexhdr{utility}% has the following additions: \begin{codeblock} @@ -297,8 +295,7 @@ \pnum The header -\indextext{\idxhdr{strstream}}% -\indexlibrary{\idxhdr{strstream}}% +\indexhdr{strstream}% \tcode{} defines three types that associate stream buffers with character array objects and assist reading and writing such objects. @@ -517,14 +514,12 @@ \indexlibrary{\idxcode{strlen}}% \tcode{strlen(const char*)} is declared in -\indextext{\idxhdr{cstring}}% -\indexlibrary{\idxhdr{cstring}}% +\indexhdr{cstring}% \tcode{}\iref{cstring.syn}. The macro \tcode{INT_MAX} is defined in -\indextext{\idxhdr{climits}}% -\indexlibrary{\idxhdr{climits}}% +\indexhdr{climits}% \tcode{}\iref{climits.syn}.} \end{itemize} @@ -1126,8 +1121,7 @@ \indexlibrary{\idxcode{strlen}}% \tcode{strlen(const char*)} is declared in -\indextext{\idxhdr{cstring}}% -\indexlibrary{\idxhdr{cstring}}% +\indexhdr{cstring}% \tcode{}\iref{cstring.syn}.} \end{itemize} \end{itemdescr} @@ -1340,8 +1334,7 @@ \pnum The header -\indextext{\idxhdr{exception}}% -\indexlibrary{\idxhdr{exception}}% +\indexhdr{exception}% \tcode{} has the following addition: \indexlibrary{\idxcode{iterator}}% @@ -1730,8 +1723,7 @@ \pnum The header -\indextext{\idxhdr{functional}}% -\indexlibrary{\idxhdr{functional}}% +\indexhdr{functional}% \tcode{} has the following additions: \indexlibrary{\idxcode{unary_negate}}% @@ -1944,8 +1936,7 @@ \pnum The header -\indextext{\idxhdr{memory}}% -\indexlibrary{\idxhdr{memory}}% +\indexhdr{memory}% \tcode{} has the following addition: \indexlibrary{\idxcode{raw_storage_iterator}}% @@ -2079,8 +2070,7 @@ \pnum The header -\indextext{\idxhdr{memory}}% -\indexlibrary{\idxhdr{memory}}% +\indexhdr{memory}% \tcode{} has the following additions: \begin{codeblock} @@ -2151,8 +2141,7 @@ \pnum The header -\indextext{\idxhdr{type_traits}}% -\indexlibrary{\idxhdr{type_traits}}% +\indexhdr{type_traits}% \tcode{} has the following addition: \indexlibrary{\idxcode{is_literal_type}}% @@ -2198,8 +2187,7 @@ \pnum The header -\indextext{\idxhdr{iterator}}% -\indexlibrary{\idxhdr{iterator}}% +\indexhdr{iterator}% \tcode{} has the following addition: \indexlibrary{\idxcode{iterator}}% @@ -2512,8 +2500,7 @@ \rSec1[depr.locale.stdcvt]{Deprecated standard code conversion facets} \pnum -\indextext{\idxhdr{codecvt}}% -\indexlibrary{\idxhdr{codecvt}}% +\indexhdr{codecvt}% The header \tcode{} provides code conversion facets for various character encodings. \rSec2[depr.codecvt.syn]{Header \tcode{} synopsis} @@ -3031,12 +3018,11 @@ \end{itemdescr} \rSec1[depr.ispod]{Identification of POD types} -\indextext{\idxhdr{}}% \indexlibrary{\idxcode{is_pod}}% \pnum The following type property -is defined in header \tcode{} +is defined in header \indexhdr{type_traits}\tcode{} in addition to those defined in \ref{meta.unary.prop}: \begin{itemdecl} diff --git a/source/iostreams.tex b/source/iostreams.tex index 3b88948f63..1e8186e521 100644 --- a/source/iostreams.tex +++ b/source/iostreams.tex @@ -117,8 +117,7 @@ \rSec1[iostream.forward]{Forward declarations} \rSec2[iosfwd.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{iosfwd}}% -\indexlibrary{\idxhdr{iosfwd}}% +\indexhdr{iosfwd}% \indexlibrary{\idxcode{basic_ios}}% \indexlibrary{\idxcode{basic_streambuf}}% @@ -383,8 +382,7 @@ \rSec1[iostream.objects]{Standard iostream objects} \rSec2[iostream.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{iostream}}% -\indexlibrary{\idxhdr{iostream}}% +\indexhdr{iostream}% \begin{codeblock} #include // see \ref{ios.syn} @@ -412,8 +410,7 @@ the type \tcode{FILE} declared in -\indextext{\idxhdr{cstdio}}% -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \tcode{}\iref{cstdio.syn}. \pnum @@ -423,7 +420,7 @@ standard C streams provided for by the functions declared in \tcode{}\iref{c.files}, and includes all the headers necessary to use these objects. -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \pnum The objects are constructed and the associations are established at some @@ -469,8 +466,7 @@ associated with the object \tcode{stdin}, declared in -\indextext{\idxhdr{cstdio}}% -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \tcode{}\iref{cstdio.syn}. \pnum @@ -497,8 +493,7 @@ associated with the object \tcode{stdout}, declared in -\indextext{\idxhdr{cstdio}}% -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \tcode{}\iref{cstdio.syn}. \end{itemdescr} @@ -515,8 +510,7 @@ associated with the object \tcode{stderr}, declared in -\indextext{\idxhdr{cstdio}}% -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \tcode{}\iref{cstdio.syn}. \pnum @@ -542,8 +536,7 @@ associated with the object \tcode{stderr}, declared in -\indextext{\idxhdr{cstdio}}% -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \tcode{}\iref{cstdio.syn}. \end{itemdescr} @@ -562,8 +555,7 @@ associated with the object \tcode{stdin}, declared in -\indextext{\idxhdr{cstdio}}% -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \tcode{}\iref{cstdio.syn}. \pnum @@ -590,8 +582,7 @@ associated with the object \tcode{stdout}, declared in -\indextext{\idxhdr{cstdio}}% -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \tcode{}\iref{cstdio.syn}. \end{itemdescr} @@ -608,8 +599,7 @@ associated with the object \tcode{stderr}, declared in -\indextext{\idxhdr{cstdio}}% -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \tcode{}\iref{cstdio.syn}. \pnum @@ -635,16 +625,14 @@ associated with the object \tcode{stderr}, declared in -\indextext{\idxhdr{cstdio}}% -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \tcode{}\iref{cstdio.syn}. \end{itemdescr} \rSec1[iostreams.base]{Iostreams base classes} \rSec2[ios.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{ios}}% -\indexlibrary{\idxhdr{ios}}% +\indexhdr{ios}% \indexlibrary{\idxcode{io_errc}}% \begin{codeblock} @@ -2799,8 +2787,7 @@ \rSec1[stream.buffers]{Stream buffers} \rSec2[streambuf.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{streambuf}}% -\indexlibrary{\idxhdr{streambuf}}% +\indexhdr{streambuf}% \indexlibrary{\idxcode{streambuf}}% \indexlibrary{\idxcode{basic_streambuf}}% @@ -4055,8 +4042,7 @@ \rSec1[iostream.format]{Formatting and manipulators} \rSec2[istream.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{istream}}% -\indexlibrary{\idxhdr{istream}}% +\indexhdr{istream}% \begin{codeblock} namespace std { @@ -4086,8 +4072,7 @@ \indexlibrary{\idxcode{basic_istream}}% \rSec2[ostream.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{ostream}}% -\indexlibrary{\idxhdr{ostream}}% +\indexhdr{ostream}% \begin{codeblock} namespace std { @@ -4115,8 +4100,7 @@ \indexlibrary{\idxcode{basic_ostream}}% \rSec2[iomanip.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{iomanip}}% -\indexlibrary{\idxhdr{iomanip}}% +\indexhdr{iomanip}% \begin{codeblock} namespace std { @@ -7200,8 +7184,7 @@ \rSec1[string.streams]{String-based streams} \rSec2[sstream.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{sstream}}% -\indexlibrary{\idxhdr{sstream}}% +\indexhdr{sstream}% \indexlibrary{\idxcode{stringbuf}}% \indexlibrary{\idxcode{basic_stringbuf}}% @@ -8349,8 +8332,7 @@ \rSec1[file.streams]{File-based streams} \rSec2[fstream.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{fstream}}% -\indexlibrary{\idxhdr{fstream}}% +\indexhdr{fstream}% \indexlibrary{\idxcode{filebuf}}% \indexlibrary{\idxcode{basic_filebuf}}% \indexlibrary{\idxcode{wfilebuf}}% @@ -8721,8 +8703,7 @@ \tcode{fseek(FILE*, long, int)} \indexlibrary{\idxcode{fseek}}% are declared, in -\indextext{\idxhdr{cstdio}}% -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \tcode{}\iref{cstdio.syn}.} \pnum @@ -9953,8 +9934,7 @@ \rSec1[syncstream]{Synchronized output streams} \rSec2[syncstream.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{}}% -\indexlibrary{\idxhdr{}}% +\indexhdr{syncstream}% \indexlibrary{\idxcode{syncbuf}}% \indexlibrary{\idxcode{wsyncbuf}}% @@ -10699,8 +10679,7 @@ subclause are assumed to be qualified with \tcode{::std::filesystem::}. \rSec2[fs.filesystem.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{filesystem}}% -\indexlibrary{\idxhdr{filesystem}}% +\indexhdr{filesystem}% \begin{codeblock} namespace std::filesystem { @@ -15835,8 +15814,7 @@ \rSec1[c.files]{C library files} \rSec2[cstdio.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cstdio}}% -\indextext{\idxhdr{cstdio}}% +\indexhdr{cstdio}% \indexlibrary{\idxcode{size_t}}% \indexlibrary{\idxcode{FILE}}% \indexlibrary{\idxcode{fpos_t}}% @@ -15976,10 +15954,8 @@ \end{codeblock} \pnum -\indextext{\idxhdr{stdio.h}}% -\indexlibrary{\idxhdr{stdio.h}}% -\indextext{\idxhdr{cstdio}}% -\indexlibrary{\idxhdr{cstdio}}% +\indexhdr{stdio.h}% +\indexhdr{cstdio}% The contents and meaning of the header \tcode{} are the same as the C standard library header \tcode{}. @@ -15992,8 +15968,7 @@ \rSec2[cinttypes.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cinttypes}}% -\indexlibrary{\idxhdr{cinttypes}}% +\indexhdr{cinttypes}% \indexlibrary{\idxcode{imaxdiv_t}}% \indexlibrary{\idxcode{imaxabs}}% \indexlibrary{\idxcode{imaxdiv}}% @@ -16133,10 +16108,8 @@ \end{codeblock} \pnum -\indextext{\idxhdr{inttypes.h}}% -\indexlibrary{\idxhdr{inttypes.h}}% -\indextext{\idxhdr{cinttypes}}% -\indexlibrary{\idxhdr{cinttypes}}% +\indexhdr{inttypes.h}% +\indexhdr{cinttypes}% The contents and meaning of the header \tcode{} are the same as the C standard library header \tcode{}, with the following changes: diff --git a/source/iterators.tex b/source/iterators.tex index f71f74839d..4b8dfadce6 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -686,8 +686,7 @@ \rSec1[iterator.synopsis]{Header \tcode{}\ synopsis} -\indextext{\idxhdr{iterator}}% -\indexlibrary{\idxhdr{iterator}}% +\indexhdr{iterator}% \begin{codeblock} namespace std { // \ref{iterator.primitives}, primitives diff --git a/source/lex.tex b/source/lex.tex index 258d40918b..3099046d3b 100644 --- a/source/lex.tex +++ b/source/lex.tex @@ -1177,7 +1177,7 @@ \pnum \indextext{literal!character!wide}% \indextext{wide-character}% -\indextext{\idxhdr{stddef.h}}% +\indexhdr{stddef.h}% \indextext{type!\idxcode{wchar_t}}% A character literal that begins with the letter \tcode{L}, such as \tcode{L'z'}, @@ -1581,7 +1581,7 @@ A \grammarterm{string-literal} that begins with \tcode{L}, \indextext{prefix!\idxcode{L}}% such as \tcode{L"asdf"}, is a \defn{wide string literal}. -\indextext{\idxhdr{stddef.h}}% +\indexhdr{stddef.h}% \indextext{type!\idxcode{wchar_t}}% \indextext{literal!string!wide}% \indextext{prefix!\idxcode{L}}% diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 9137e6bc45..574bdd709a 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -761,8 +761,8 @@ \tcode{}\iref{c.locales}. \indextext{\idxcode{setlocale}}% \indexlibrary{\idxcode{setlocale}}% -\indextext{\idxhdr{clocale}}% -\indexlibrary{\idxhdr{clocale}}} +\indexhdr{clocale}% +\indexhdr{clocale}} or by a change to a \tcode{locale} object, as described in \ref{locales} and \ref{input.output}. @@ -799,13 +799,11 @@ (the \term{terminating null} character); no other element in the sequence has the value zero.% -\indextext{\idxhdr{cstring}}% -\indexlibrary{\idxhdr{cstring}}% +\indexhdr{cstring}% \indextext{NTBS}\footnote{Many of the objects manipulated by function signatures declared in \tcode{}\iref{c.strings} are character sequences or \ntbs{}s. -\indextext{\idxhdr{cstring}}% -\indexlibrary{\idxhdr{cstring}}% +\indexhdr{cstring}% The size of some of these character sequences is limited by a length value, maintained separately from the character sequence.} @@ -1134,9 +1132,9 @@ additional headers shown in Table~\ref{tab:cpp.c.headers}.% \footnote{It is intentional that there is no \Cpp header for any of these C headers: -\indextext{\idxhdr{stdatomic.h}}% -\indextext{\idxhdr{stdnoreturn.h}}% -\indextext{\idxhdr{threads.h}}% +\indexhdr{stdatomic.h}% +\indexhdr{stdnoreturn.h}% +\indexhdr{threads.h}% \tcode{}, \tcode{}, \tcode{}.} @@ -1374,8 +1372,7 @@ \pnum The supplied version of the header \tcode{} -\indextext{\idxhdr{cstdlib}}% -\indexlibrary{\idxhdr{cstdlib}}% +\indexhdr{cstdlib}% shall declare at least the functions \indexlibrary{\idxcode{abort}}% \tcode{abort}, @@ -1420,10 +1417,8 @@ or \tcode{} depends each time on the lexically -\indextext{\idxhdr{cassert}}% -\indexlibrary{\idxhdr{cassert}}% -\indextext{\idxhdr{assert.h}}% -\indexlibrary{\idxhdr{assert.h}}% +\indexhdr{cassert}% +\indexhdr{assert.h}% current definition of \indextext{\idxcode{NDEBUG}}% \indexlibrary{\idxcode{NDEBUG}}% @@ -2375,8 +2370,7 @@ \indextext{linkage!external}\footnote{The list of such reserved names includes \tcode{errno}, declared or defined in -\indextext{\idxhdr{cerrno}}% -\indexlibrary{\idxhdr{cerrno}}% +\indexhdr{cerrno}% \tcode{}.} both in namespace \tcode{std} @@ -2395,16 +2389,14 @@ \indexlibrary{\idxcode{setjmp}}% \tcode{setjmp(jmp_buf)}, declared or defined in -\indextext{\idxhdr{csetjmp}}% -\indexlibrary{\idxhdr{csetjmp}}% +\indexhdr{csetjmp}% \tcode{}, and \indexlibrary{\idxcode{va_end}}% \indexlibrary{\idxcode{va_list}}% \tcode{va_end(va_list)}, declared or defined in -\indextext{\idxhdr{cstdarg}}% -\indexlibrary{\idxhdr{cstdarg}}% +\indexhdr{cstdarg}% \tcode{}.} \pnum @@ -2430,12 +2422,9 @@ \tcode{extern "C++"} linkage,\footnote{The function signatures declared in \indextext{Amendment 1}% -\indextext{\idxhdr{cuchar}}% -\indexlibrary{\idxhdr{cuchar}}% -\indextext{\idxhdr{cwchar}}% -\indexlibrary{\idxhdr{cwchar}}% -\indextext{\idxhdr{cwctype}}% -\indexlibrary{\idxhdr{cwctype}}% +\indexhdr{cuchar}% +\indexhdr{cwchar}% +\indexhdr{cwctype}% \tcode{}, \tcode{}, and diff --git a/source/locales.tex b/source/locales.tex index 17b9e684aa..fdc940fe66 100644 --- a/source/locales.tex +++ b/source/locales.tex @@ -24,8 +24,7 @@ \rSec1[locale.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{locale}}% -\indexlibrary{\idxhdr{locale}}% +\indexhdr{locale}% \begin{codeblock} namespace std { // \ref{locale}, locale @@ -108,16 +107,14 @@ the information peculiar to a locale.\footnote{In this subclause, the type name \tcode{struct tm} is an incomplete type that is defined in -\indextext{\idxhdr{ctime}}% -\indexlibrary{\idxhdr{ctime}}% +\indexhdr{ctime}% \tcode{}.} \rSec1[locales]{Locales} \rSec2[locale]{Class \tcode{locale}} -\indextext{\idxhdr{locale}}% -\indexlibrary{\idxhdr{locale}}% +\indexhdr{locale}% \begin{codeblock} namespace std { class locale { @@ -5254,8 +5251,7 @@ \rSec2[clocale.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cassert}}% -\indexlibrary{\idxhdr{cassert}}% +\indexhdr{cassert}% \indexlibrary{\idxcode{lconv}}% \indexlibrary{\idxcode{setlocale}}% \indexlibrary{\idxcode{localeconv}}% @@ -5284,8 +5280,7 @@ \end{codeblock} \pnum -\indextext{\idxhdr{locale.h}}% -\indexlibrary{\idxhdr{locale.h}}% +\indexhdr{locale.h}% The contents and meaning of the header \tcode{} are the same as the C standard library header \tcode{}. diff --git a/source/macros.tex b/source/macros.tex index a6e6707a0d..841a6b72ff 100644 --- a/source/macros.tex +++ b/source/macros.tex @@ -113,6 +113,7 @@ % locations \newcommand{\indextext}[1]{\index[generalindex]{#1}} \newcommand{\indexlibrary}[1]{\index[libraryindex]{#1}} +\newcommand{\indexhdr}[1]{\indextext{\idxhdr{#1}}\indexlibrary{\idxhdr{#1}}} \newcommand{\indexgram}[1]{\index[grammarindex]{#1}} % Collation helper: When building an index key, replace all macro definitions diff --git a/source/numerics.tex b/source/numerics.tex index e204a22f1a..469a050e7d 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -151,8 +151,7 @@ \rSec1[cfenv]{The floating-point environment} \rSec2[cfenv.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cfenv}}% -\indexlibrary{\idxhdr{cfenv}}% +\indexhdr{cfenv}% \indexlibrary{\idxcode{fenv_t}}% \indexlibrary{\idxcode{fexcept_t}}% @@ -249,8 +248,7 @@ \pnum The header -\indextext{\idxhdr{complex}}% -\indexlibrary{\idxhdr{complex}}% +\indexhdr{complex}% \tcode{} defines a class template, @@ -288,8 +286,7 @@ \rSec2[complex.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{complex}}% -\indexlibrary{\idxhdr{complex}}% +\indexhdr{complex}% \begin{codeblock} namespace std { // \ref{complex}, class template \tcode{complex} @@ -2505,8 +2502,7 @@ \rSec2[rand.synopsis]{Header \tcode{} synopsis}% -\indextext{\idxhdr{random}|(}% -\indexlibrary{\idxhdr{random}|(}% +\indexhdr{random} \indextext{random number generation!synopsis|(} \begin{codeblock} @@ -2644,8 +2640,6 @@ } \end{codeblock}% \indextext{random number generation!synopsis|)}% -\indextext{\idxhdr{random}|)}% -\indexlibrary{\idxhdr{random}|)} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -6383,8 +6377,7 @@ \rSec2[c.math.rand]{Low-quality random number generation} \pnum -\indextext{\idxhdr{cstdlib}}% -\indexlibrary{\idxhdr{cstdlib}}% +\indexhdr{cstdlib}% \begin{note} The header \tcode{}\iref{cstdlib.syn} declares the functions described in this subclause. @@ -6431,8 +6424,7 @@ \rSec1[numarray]{Numeric arrays} \rSec2[valarray.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{valarray}}% -\indexlibrary{\idxhdr{valarray}}% +\indexhdr{valarray}% \begin{codeblock} #include @@ -8531,8 +8523,7 @@ \rSec2[numeric.ops.overview]{Header \tcode{} synopsis} -\indextext{\idxhdr{numeric}}% -\indexlibrary{\idxhdr{numeric}}% +\indexhdr{numeric}% \begin{codeblock} namespace std { // \ref{accumulate}, accumulate @@ -9689,8 +9680,7 @@ \rSec2[cmath.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cmath}}% -\indexlibrary{\idxhdr{cmath}}% +\indexhdr{cmath}% \indexlibrary{\idxcode{FP_FAST_FMA}}% \indexlibrary{\idxcode{FP_FAST_FMAF}}% \indexlibrary{\idxcode{FP_FAST_FMAL}}% @@ -10478,10 +10468,8 @@ \rSec2[c.math.abs]{Absolute values} \pnum -\indextext{\idxhdr{cstdlib}}% -\indexlibrary{\idxhdr{cstdlib}}% -\indextext{\idxhdr{cmath}}% -\indexlibrary{\idxhdr{cmath}}% +\indexhdr{cstdlib}% +\indexhdr{cmath}% \begin{note} The headers \tcode{}\iref{cstdlib.syn} and \tcode{}\iref{cmath.syn} diff --git a/source/regex.tex b/source/regex.tex index 8948c1ae7b..19c93ef41d 100644 --- a/source/regex.tex +++ b/source/regex.tex @@ -254,7 +254,7 @@ \rSec1[re.syn]{Header \tcode{} synopsis} -\indexlibrary{\idxhdr{regex}}% +\indexhdr{regex}% \indexlibrary{\idxcode{basic_regex}}% \indexlibrary{\idxcode{regex}}% \indexlibrary{\idxcode{wregex}}% diff --git a/source/strings.tex b/source/strings.tex index 25011c4dca..9f557039e8 100644 --- a/source/strings.tex +++ b/source/strings.tex @@ -590,8 +590,7 @@ \tcode{basic_string<\brk{}wchar_t>}, respectively. \rSec2[string.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{string}}% -\indexlibrary{\idxhdr{string}}% +\indexhdr{string}% \begin{codeblock} #include @@ -4612,8 +4611,7 @@ \rSec2[string.view.synop]{Header \tcode{} synopsis} -\indextext{\idxhdr{string_view}}% -\indexlibrary{\idxhdr{string_view}}% +\indexhdr{string_view}% \begin{codeblock} namespace std { // \ref{string.view.template}, class template \tcode{basic_string_view} @@ -5733,8 +5731,7 @@ \rSec2[cctype.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cctype}}% -\indexlibrary{\idxhdr{cctype}}% +\indexhdr{cctype}% \indexlibrary{\idxcode{isalnum}}% \indexlibrary{\idxcode{isalpha}}% \indexlibrary{\idxcode{isblank}}% @@ -5769,8 +5766,7 @@ \end{codeblock} \pnum -\indextext{\idxhdr{ctype.h}}% -\indexlibrary{\idxhdr{ctype.h}}% +\indexhdr{ctype.h}% The contents and meaning of the header \tcode{} are the same as the C standard library header \tcode{}. @@ -5778,8 +5774,7 @@ \rSec2[cwctype.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cwctype}}% -\indexlibrary{\idxhdr{cwctype}}% +\indexhdr{cwctype}% \indexlibrary{\idxcode{wint_t}}% \indexlibrary{\idxcode{wctrans_t}}% \indexlibrary{\idxcode{wctype_t}}% @@ -5832,8 +5827,7 @@ \end{codeblock} \pnum -\indextext{\idxhdr{wctype.h}}% -\indexlibrary{\idxhdr{wctype.h}}% +\indexhdr{wctype.h}% The contents and meaning of the header \tcode{} are the same as the C standard library header \tcode{}. @@ -5841,8 +5835,7 @@ \rSec2[cstring.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cstring}}% -\indexlibrary{\idxhdr{cstring}}% +\indexhdr{cstring}% \indexlibrary{\idxcode{memchr}}% \indexlibrary{\idxcode{memcmp}}% \indexlibrary{\idxcode{memcpy}}% @@ -5903,8 +5896,7 @@ \end{codeblock} \pnum -\indextext{\idxhdr{string.h}}% -\indexlibrary{\idxhdr{string.h}}% +\indexhdr{string.h}% The contents and meaning of the header \tcode{} are the same as the C standard library header \tcode{}. @@ -5929,8 +5921,7 @@ \rSec2[cwchar.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cwchar}}% -\indexlibrary{\idxhdr{cwchar}}% +\indexhdr{cwchar}% \indexlibrary{\idxcode{NULL}}% \indexlibrary{\idxcode{WCHAR_MAX}}% \indexlibrary{\idxcode{WCHAR_MIN}}% @@ -6081,8 +6072,7 @@ \end{codeblock} \pnum -\indextext{\idxhdr{wchar.h}}% -\indexlibrary{\idxhdr{wchar.h}}% +\indexhdr{wchar.h}% The contents and meaning of the header \tcode{} are the same as the C standard library header \tcode{}, except that it does not declare a type \tcode{wchar_t}. @@ -6099,8 +6089,7 @@ \rSec2[cuchar.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cuchar}}% -\indexlibrary{\idxhdr{cuchar}}% +\indexhdr{cuchar}% \indexlibrary{\idxcode{mbstate_t}}% \indexlibrary{\idxcode{size_t}}% \indexlibrary{\idxcode{mbrtoc16}}% @@ -6120,8 +6109,7 @@ \end{codeblock} \pnum -\indextext{\idxhdr{uchar.h}}% -\indexlibrary{\idxhdr{uchar.h}}% +\indexhdr{uchar.h}% The contents and meaning of the header \tcode{} are the same as the C standard library header \tcode{}, except that it does not declare types \tcode{char16_t} nor @@ -6132,10 +6120,8 @@ \rSec2[c.mb.wcs]{Multibyte / wide string and character conversion functions} \pnum -\indextext{\idxhdr{cstdlib}}% -\indexlibrary{\idxhdr{cstdlib}}% -\indextext{\idxhdr{cwchar}}% -\indexlibrary{\idxhdr{cwchar}}% +\indexhdr{cstdlib}% +\indexhdr{cwchar}% \begin{note} The headers \tcode{}\iref{cstdlib.syn} and \tcode{}\iref{cwchar.syn} diff --git a/source/support.tex b/source/support.tex index c26f1518bd..bdbf175709 100644 --- a/source/support.tex +++ b/source/support.tex @@ -98,8 +98,7 @@ \rSec2[cstdlib.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cstdlib}}% -\indexlibrary{\idxhdr{cstdlib}}% +\indexhdr{cstdlib}% \indexlibrary{\idxcode{EXIT_FAILURE}}% \indexlibrary{\idxcode{EXIT_SUCCESS}}% \indexlibrary{\idxcode{MB_CUR_MAX}}% @@ -507,8 +506,7 @@ arithmetic types\iref{basic.fundamental}. \rSec2[limits.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{limits}}% -\indexlibrary{\idxhdr{limits}}% +\indexhdr{limits}% \indextext{\idxcode{numeric_limits}}% \indexlibrary{\idxcode{numeric_limits}}% \indexlibrary{\idxcode{float_round_style}}% @@ -1507,8 +1505,7 @@ \rSec1[cstdint]{Integer types} \rSec2[cstdint.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cstdint}}% -\indexlibrary{\idxhdr{cstdint}}% +\indexhdr{cstdint}% \indexlibrary{\idxcode{int8_t}}% \indexlibrary{\idxcode{int16_t}}% \indexlibrary{\idxcode{int32_t}}% @@ -1605,7 +1602,7 @@ \rSec1[support.start.term]{Start and termination} \pnum -\indextext{\idxhdr{cstdlib}}% +\indexhdr{cstdlib}% \begin{note} The header \tcode{}\iref{cstdlib.syn} declares the functions described in this subclause. @@ -1814,8 +1811,7 @@ It also defines components for reporting storage management errors. \rSec2[new.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{new}}% -\indexlibrary{\idxhdr{new}}% +\indexhdr{new}% \indexlibrary{\idxcode{align_val_t}}% \indexlibrary{\idxcode{nothrow_t}}% \indexlibrary{\idxcode{nothrow}}% @@ -2813,8 +2809,7 @@ It also defines two types for reporting dynamic type identification errors. \rSec2[typeinfo.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{typeinfo}}% -\indexlibrary{\idxhdr{typeinfo}}% +\indexhdr{typeinfo}% \indexlibrary{\idxcode{type_info}}% \indexlibrary{\idxcode{bad_cast}}% \indexlibrary{\idxcode{bad_typeid}}% @@ -3078,8 +3073,7 @@ defines several types and functions related to the handling of exceptions in a \Cpp program. \rSec2[exception.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{exception}}% -\indexlibrary{\idxhdr{exception}}% +\indexhdr{exception}% \begin{codeblock} namespace std { @@ -3582,8 +3576,7 @@ \rSec1[support.initlist]{Initializer lists} -\indextext{\idxhdr{initializer_list}}% -\indexlibrary{\idxhdr{initializer_list}}% +\indexhdr{initializer_list}% \pnum The header \tcode{} defines a class template and several support functions related to list-initialization~(see \ref{dcl.init.list}). @@ -3715,7 +3708,7 @@ for use primarily in connection with the three-way comparison operator\iref{expr.spaceship}. -\indextext{\idxhdr{compare}}% +\indexhdr{compare}% \indexlibrary{\idxcode{is_eq}}% \indexlibrary{\idxcode{is_neq}}% \indexlibrary{\idxcode{is_lt}}% @@ -4562,16 +4555,11 @@ \rSec1[support.runtime]{Other runtime support} \pnum -\indextext{\idxhdr{cstdarg}}% -\indexlibrary{\idxhdr{cstdarg}}% -\indextext{\idxhdr{csetjmp}}% -\indexlibrary{\idxhdr{csetjmp}}% -\indextext{\idxhdr{ctime}}% -\indexlibrary{\idxhdr{ctime}}% -\indextext{\idxhdr{csignal}}% -\indexlibrary{\idxhdr{csignal}}% -\indextext{\idxhdr{cstdlib}}% -\indexlibrary{\idxhdr{cstdlib}}% +\indexhdr{cstdarg}% +\indexhdr{csetjmp}% +\indexhdr{ctime}% +\indexhdr{csignal}% +\indexhdr{cstdlib}% \indexlibrary{\idxcode{getenv}}% \indexlibrary{\idxcode{system}}% Headers @@ -4604,8 +4592,7 @@ \rSec2[cstdarg.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{cstdarg}}% -\indexlibrary{\idxhdr{cstdarg}}% +\indexhdr{cstdarg}% \indexlibrary{\idxcode{va_list}}% \indexlibrary{\idxcode{va_start}}% \indexlibrary{\idxcode{va_copy}}% @@ -4623,15 +4610,14 @@ \end{codeblock} \pnum -\indextext{\idxhdr{stdarg.h}}% -\indexlibrary{\idxhdr{stdarg.h}}% +\indexhdr{stdarg.h}% The contents of the header \tcode{} are the same as the C standard library header \tcode{}, with the following changes: The restrictions that ISO C places on the second parameter to the \indexlibrary{\idxcode{va_start}}% \tcode{va_start} macro in header -\indexlibrary{\idxhdr{stdarg.h}}% +\indexhdr{stdarg.h}% \tcode{} are different in this document. The parameter @@ -4657,8 +4643,7 @@ \rSec2[csetjmp.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{csetjmp}}% -\indexlibrary{\idxhdr{csetjmp}}% +\indexhdr{csetjmp}% \indexlibrary{\idxcode{jmp_buf}}% \indexlibrary{\idxcode{longjmp}}% \indexlibrary{\idxcode{setjmp}}% @@ -4672,8 +4657,7 @@ \end{codeblock} \pnum -\indextext{\idxhdr{setjmp.h}}% -\indexlibrary{\idxhdr{setjmp.h}}% +\indexhdr{setjmp.h}% The contents of the header \tcode{} are the same as the C standard library header \tcode{}. @@ -4691,8 +4675,7 @@ \rSec2[csignal.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{csignal}}% -\indexlibrary{\idxhdr{csignal}}% +\indexhdr{csignal}% \indexlibrary{\idxcode{sig_atomic_t}}% \indexlibrary{\idxcode{signal}}% \indexlibrary{\idxcode{raise}}% @@ -4728,8 +4711,7 @@ \end{codeblock} \pnum -\indextext{\idxhdr{signal.h}}% -\indexlibrary{\idxhdr{signal.h}}% +\indexhdr{signal.h}% The contents of the header \tcode{} are the same as the C standard library header \tcode{}. diff --git a/source/threads.tex b/source/threads.tex index 11f5675f54..2d9cd4962f 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -291,8 +291,7 @@ \end{note} \rSec2[thread.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{thread}}% -\indexlibrary{\idxhdr{thread}}% +\indexhdr{thread}% \begin{codeblock} namespace std { @@ -823,8 +822,7 @@ programs\iref{intro.multithread}. \rSec2[mutex.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{mutex}}% -\indexlibrary{\idxhdr{mutex}}% +\indexhdr{mutex}% \begin{codeblock} namespace std { @@ -859,8 +857,7 @@ \end{codeblock} \rSec2[shared_mutex.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{shared_mutex}}% -\indexlibrary{\idxhdr{shared_mutex}}% +\indexhdr{shared_mutex}% \begin{codeblock} namespace std { @@ -2877,8 +2874,7 @@ Condition variable construction and destruction need not be synchronized. \rSec2[condition_variable.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{condition_variable}}% -\indexlibrary{\idxhdr{condition_variable}}% +\indexhdr{condition_variable}% \indexlibrary{\idxcode{cv_status}}% \begin{codeblock} @@ -3598,8 +3594,7 @@ \rSec2[future.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{future}}% -\indexlibrary{\idxhdr{future}}% +\indexhdr{future}% \indexlibrary{\idxcode{future_errc}}% \begin{codeblock} namespace std { diff --git a/source/utilities.tex b/source/utilities.tex index 2681a0e21b..3b4ce07db3 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -38,8 +38,7 @@ This subclause contains some basic function and class templates that are used throughout the rest of the library. -\indextext{\idxhdr{utility}}% -\indexlibrary{\idxhdr{utility}}% +\indexhdr{utility}% \indexlibrary{\idxcode{rel_ops}}% \rSec2[utility.syn]{Header \tcode{} synopsis} @@ -987,8 +986,7 @@ \rSec2[tuple.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{tuple}}% -\indexlibrary{\idxhdr{tuple}}% +\indexhdr{tuple}% \begin{codeblock} namespace std { // \ref{tuple.tuple}, class template \tcode{tuple} @@ -2112,8 +2110,7 @@ \rSec2[optional.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{optional}}% -\indexlibrary{\idxhdr{optional}}% +\indexhdr{optional}% \begin{codeblock} namespace std { // \ref{optional.optional}, class template \tcode{optional} @@ -3677,8 +3674,7 @@ These template arguments are called alternatives. \rSec2[variant.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{variant}}% -\indexlibrary{\idxhdr{variant}}% +\indexhdr{variant}% \begin{codeblock} namespace std { @@ -4997,8 +4993,7 @@ \rSec2[any.synop]{Header \tcode{} synopsis} -\indextext{\idxhdr{any}}% -\indexlibrary{\idxhdr{any}}% +\indexhdr{any}% \begin{codeblock} namespace std { @@ -5603,8 +5598,7 @@ \rSec2[bitset.syn]{Header \tcode{} synopsis}% -\indextext{\idxhdr{bitset}}% -\indexlibrary{\idxhdr{bitset}}% +\indexhdr{bitset}% \begin{codeblock} #include @@ -6487,8 +6481,7 @@ \tcode{unique_ptr}, \tcode{shared_ptr}, \tcode{weak_ptr}, and various function templates that operate on objects of these types\iref{smartptr}. -\indextext{\idxhdr{memory}}% -\indexlibrary{\idxhdr{memory}}% +\indexhdr{memory}% \begin{codeblock} namespace std { // \ref{pointer.traits}, pointer traits @@ -7855,7 +7848,7 @@ \rSec2[c.malloc]{C library memory allocation} \pnum -\indextext{\idxhdr{cstdlib}}% +\indexhdr{cstdlib}% \begin{note} The header \tcode{}\iref{cstdlib.syn} declares the functions described in this subclause. @@ -11129,8 +11122,7 @@ \rSec2[mem.res.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{memory_resource}}% -\indexlibrary{\idxhdr{memory_resource}}% +\indexhdr{memory_resource}% \begin{codeblock} namespace std::pmr { // \ref{mem.res.class}, class \tcode{memory_resource} @@ -12340,8 +12332,7 @@ \rSec2[allocator.adaptor.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{scoped_allocator}}% -\indexlibrary{\idxhdr{scoped_allocator}}% +\indexhdr{scoped_allocator}% \begin{codeblock} namespace std { // scoped allocator adaptor @@ -12961,8 +12952,7 @@ \rSec2[functional.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{functional}}% -\indexlibrary{\idxhdr{functional}}% +\indexhdr{functional}% \begin{codeblock} namespace std { // \ref{func.invoke}, invoke @@ -15332,8 +15322,7 @@ \rSec2[meta.type.synop]{Header \tcode{} synopsis} -\indextext{\idxhdr{type_traits}}% -\indexlibrary{\idxhdr{type_traits}}% +\indexhdr{type_traits}% \begin{codeblock} namespace std { // \ref{meta.help}, helper class @@ -17233,8 +17222,7 @@ \rSec2[ratio.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{ratio}}% -\indexlibrary{\idxhdr{ratio}}% +\indexhdr{ratio}% \begin{codeblockdigitsep} namespace std { // \ref{ratio.ratio}, class template \tcode{ratio} @@ -17461,8 +17449,7 @@ \rSec2[time.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{chrono}}% -\indexlibrary{\idxhdr{chrono}}% +\indexhdr{chrono}% \begin{codeblock} namespace std { namespace chrono { @@ -19075,8 +19062,7 @@ \rSec2[ctime.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{ctime}}% -\indexlibrary{\idxhdr{ctime}}% +\indexhdr{ctime}% \indexlibrary{\idxcode{CLOCKS_PER_SEC}}% \indexlibrary{\idxcode{NULL}}% \indexlibrary{\idxcode{TIME_UTC}}% @@ -19122,10 +19108,8 @@ \end{codeblock} \pnum -\indextext{\idxhdr{time.h}}% -\indexlibrary{\idxhdr{time.h}}% -\indextext{\idxhdr{ctime}}% -\indexlibrary{\idxhdr{ctime}}% +\indexhdr{time.h}% +\indexhdr{ctime}% The contents of the header \tcode{} are the same as the C standard library header \tcode{}.% \footnote{\tcode{strftime} supports the C conversion specifiers \tcode{C}, \tcode{D}, \tcode{e}, \tcode{F}, \tcode{g}, \tcode{G}, \tcode{h}, @@ -19143,8 +19127,7 @@ \rSec2[type.index.synopsis]{Header \tcode{} synopsis} -\indextext{\idxhdr{typeindex}}% -\indexlibrary{\idxhdr{typeindex}}% +\indexhdr{typeindex}% \begin{codeblock} namespace std { class type_index; @@ -19325,8 +19308,7 @@ \rSec2[execution.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{execution}}% -\indexlibrary{\idxhdr{execution}}% +\indexhdr{execution}% \begin{codeblock} namespace std { // \ref{execpol.type}, execution policy type trait @@ -19464,8 +19446,7 @@ \rSec2[charconv.syn]{Header \tcode{} synopsis} -\indextext{\idxhdr{charconv}}% -\indexlibrary{\idxhdr{charconv}}% +\indexhdr{charconv}% \begin{codeblock} @% \indexlibrary{\idxcode{chars_format}}%