fix empty lines around pages, change arrow and sqrt translit
authornsz <nsz@port70.net>
Mon, 4 Jul 2011 14:42:47 +0000 (16:42 +0200)
committernsz <nsz@port70.net>
Mon, 4 Jul 2011 14:42:47 +0000 (16:42 +0200)
n1256.html
n1256.txt
n1548.html
n1548.txt
translit.sh

index 6261683..edd1a81 100644 (file)
@@ -43,7 +43,6 @@ WG14/N1256                Committee Draft -- Septermber 7, 2007
 <a href="#6.4.9">        6.4.9 Comments         . . . . . . . . .         .   .   .   .   .   .    .   .   .   .   .   .   66</a>
 <a href="#6.5">   6.5 Expressions     . . . . . . . . . . . .           .   .   .   .   .   .    .   .   .   .   .   .   67</a>
 
-
 [page iii]
 
 <a href="#6.5.1">          6.5.1   Primary expressions      . . .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    69</a>
@@ -307,13 +306,9 @@ WG14/N1256                Committee Draft -- Septermber 7, 2007
 <a href="#Bibliography">Bibliography      . . . . . . . . . . . . . . . . . . . . . . . . . . . 516</a>
 <a href="#Index">Index     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519</a>
 
-
-
-
 [<a name="pix" href="#pix">page ix</a>] (<a href="#Contents">Contents</a>)
 
 
-
 [<a name="px" href="#px">page x</a>] (<a href="#Contents">Contents</a>)
 
 <a name="Foreword" href="#Foreword"><b>    Foreword</b></a>
@@ -354,7 +349,6 @@ WG14/N1256                Committee Draft -- Septermber 7, 2007
     -- type-generic math macros in <a href="#7.22">&lt;tgmath.h&gt;</a>
     -- the long long int type and library functions
 
-
 [<a name="pxi" href="#pxi">page xi</a>] (<a href="#Contents">Contents</a>)
 
 -- increased minimum translation limits
@@ -389,7 +383,6 @@ WG14/N1256                Committee Draft -- Septermber 7, 2007
 -- idempotent type qualifiers
 -- empty macro arguments
 
-
 [<a name="pxii" href="#pxii">page xii</a>] (<a href="#Contents">Contents</a>)
 
     -- new structure type compatibility rules (tag compatibility)
@@ -412,9 +405,6 @@ WG14/N1256                Committee Draft -- Septermber 7, 2007
     ISO/IEC Directives, this foreword, the introduction, notes, footnotes, and examples are
     also for information only.
 
-
-
-
 [<a name="pxiii" href="#pxiii">page xiii</a>] (<a href="#Contents">Contents</a>)
 
 <a name="Introduction" href="#Introduction"><b>    Introduction</b></a>
@@ -441,9 +431,6 @@ WG14/N1256                Committee Draft -- Septermber 7, 2007
 5   The language clause (clause 6) is derived from ''The C Reference Manual''.
 6   The library clause (clause 7) is based on the 1984 /usr/group Standard.
 
-
-
-
 [<a name="pxiv" href="#pxiv">page xiv</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -505,9 +492,6 @@ WG14/N1256                Committee Draft -- Septermber 7, 2007
 8   IEC 60559:1989, Binary floating-point arithmetic for microprocessor systems (previously
     designated IEC 559:1989).
 
-
-
-
 [<a name="p2" href="#p2">page 2</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -552,7 +536,6 @@ WG14/N1256                Committee Draft -- Septermber 7, 2007
     behavior that depends on local conventions of nationality, culture, and language that each
     implementation documents
 
-
 [<a name="p3" href="#p3">page 3</a>] (<a href="#Contents">Contents</a>)
 
 2   EXAMPLE An example of locale-specific behavior is whether the islower function returns true for
@@ -601,6 +584,7 @@ WG14/N1256                Committee Draft -- Septermber 7, 2007
 1   character
     single-byte character
     &lt;C&gt; bit representation that fits in a byte
+
 [<a name="p4" href="#p4">page 4</a>] (<a href="#Contents">Contents</a>)
 
 <a name="3.7.2" href="#3.7.2"><b>    3.7.2</b></a>
@@ -682,9 +666,6 @@ WG14/N1256                Committee Draft -- Septermber 7, 2007
     floor of x: the greatest integer less than or equal to x
 2   EXAMPLE       ???2.4??? is 2, ???-2.4??? is -3.
 
-
-
-
 [<a name="p6" href="#p6">page 6</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -995,9 +976,6 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
      that the result would be the same as if it were executed using double-precision arithmetic (for example, if d
      were replaced by the constant 2.0, which has type double).
 
-
-
-
 [<a name="p14" href="#p14">page 14</a>] (<a href="#Contents">Contents</a>)
 
 12   EXAMPLE 4 Implementations employing wide registers have to take care to honor appropriate
@@ -1045,9 +1023,6 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
      above expression statement can be rewritten by the implementation in any of the above ways because the
      same result will occur.
 
-
-
-
 [<a name="p15" href="#p15">page 15</a>] (<a href="#Contents">Contents</a>)
 
 15   EXAMPLE 7 The grouping of an expression does not completely determine its evaluation. In the
@@ -1066,9 +1041,6 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
      Forward references: expressions (<a href="#6.5">6.5</a>), type qualifiers (<a href="#6.7.3">6.7.3</a>), statements (<a href="#6.8">6.8</a>), the
      signal function (<a href="#7.14">7.14</a>), files (<a href="#7.19.3">7.19.3</a>).
 
-
-
-
 [<a name="p16" href="#p16">page 16</a>] (<a href="#Contents">Contents</a>)
 
 <a name="5.2" href="#5.2"><b>    5.2 Environmental considerations</b></a>
@@ -1186,6 +1158,7 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
        tabulation position, the behavior of the display device is unspecified.
     \v (vertical tab) Moves the active position to the initial position of the next vertical
         tabulation position. If the active position is at or past the last defined vertical
+
 [<a name="p19" href="#p19">page 19</a>] (<a href="#Contents">Contents</a>)
 
          tabulation position, the behavior of the display device is unspecified.
@@ -1296,7 +1269,6 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
 -- maximum value for an object of type unsigned long int
   ULONG_MAX                         4294967295 // 232 - 1
 
-
 [<a name="p22" href="#p22">page 22</a>] (<a href="#Contents">Contents</a>)
 
     -- minimum value for an object of type long long int
@@ -1462,6 +1434,7 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
      implementation-defined (positive) values that are less than or equal to those shown:
      -- the difference between 1 and the least value greater than 1 that is representable in the
         given floating point type, b1- p
+
 [<a name="p26" href="#p26">page 26</a>] (<a href="#Contents">Contents</a>)
 
          FLT_EPSILON                                         1E-5
@@ -1548,9 +1521,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 (<a href="#7.24">7.24</a>), floating-point environment <a href="#7.6">&lt;fenv.h&gt;</a> (<a href="#7.6">7.6</a>), general utilities <a href="#7.20">&lt;stdlib.h&gt;</a>
 (<a href="#7.20">7.20</a>), input/output <a href="#7.19">&lt;stdio.h&gt;</a> (<a href="#7.19">7.19</a>), mathematics <a href="#7.12">&lt;math.h&gt;</a> (<a href="#7.12">7.12</a>).
 
-
-
-
 [<a name="p28" href="#p28">page 28</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -1590,6 +1560,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     declares the identifier appears inside a block or within the list of parameter declarations in
     a function definition, the identifier has block scope, which terminates at the end of the
     associated block. If the declarator or type specifier that declares the identifier appears
+
 [<a name="p29" href="#p29">page 29</a>] (<a href="#Contents">Contents</a>)
 
     within the list of parameter declarations in a function prototype (not part of a function
@@ -2052,9 +2023,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     The resulting composite type for the function is:
              int f(int (*)(char *), double (*)[3]);
 
-
-
-
 [<a name="p41" href="#p41">page 41</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.3" href="#6.3"><b>    6.3 Conversions</b></a>
@@ -2301,9 +2269,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     Forward references: cast operators (<a href="#6.5.4">6.5.4</a>), equality operators (<a href="#6.5.9">6.5.9</a>), integer types
     capable of holding object pointers (<a href="#7.18.1.4">7.18.1.4</a>), simple assignment (<a href="#6.5.16.1">6.5.16.1</a>).
 
-
-
-
 [<a name="p48" href="#p48">page 48</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.4" href="#6.4"><b>    6.4 Lexical elements</b></a>
@@ -2537,9 +2502,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
              octal-digit: one of
                      0 1 2 3         4     5     6   7
 
-
-
-
 [<a name="p54" href="#p54">page 54</a>] (<a href="#Contents">Contents</a>)
 
            hexadecimal-digit:   one of
@@ -2571,9 +2533,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 5   The type of an integer constant is the first of the corresponding list in which its value can
     be represented.
 
-
-
-
 [<a name="p55" href="#p55">page 55</a>] (<a href="#Contents">Contents</a>)
 
                                                                      Octal or Hexadecimal
@@ -2611,9 +2570,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     may be signed or unsigned. If an integer constant cannot be represented by any type in
     its list and has no extended integer type, then the integer constant has no type.
 
-
-
-
 [<a name="p56" href="#p56">page 56</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.4.4.2" href="#6.4.4.2"><b>    6.4.4.2 Floating constants</b></a>
@@ -2731,8 +2687,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                    \x hexadecimal-digit
                    hexadecimal-escape-sequence hexadecimal-digit
 
-
-
 [<a name="p59" href="#p59">page 59</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -2820,9 +2774,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
      Forward references: common definitions <a href="#7.17">&lt;stddef.h&gt;</a> (<a href="#7.17">7.17</a>), the mbtowc function
      (<a href="#7.20.7.2">7.20.7.2</a>).
 
-
-
-
 [<a name="p61" href="#p61">page 61</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.4.5" href="#6.4.5"><b>    6.4.5 String literals</b></a>
@@ -2896,9 +2847,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     in which case it is known as an operator (other forms of operator also exist in some
     contexts). An operand is an entity on which an operator acts.
 
-
-
-
 [<a name="p63" href="#p63">page 63</a>] (<a href="#Contents">Contents</a>)
 
 3   In all aspects of the language, the six tokens<sup><a href="#note67"><b>67)</b></a></sup>
@@ -3165,9 +3113,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     Forward references: additive operators (<a href="#6.5.6">6.5.6</a>), address and indirection operators
     (<a href="#6.5.3.2">6.5.3.2</a>), array declarators (<a href="#6.7.5.2">6.7.5.2</a>).
 
-
-
-
 [<a name="p70" href="#p70">page 70</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.2.2" href="#6.5.2.2"><b>    6.5.2.2 Function calls</b></a>
@@ -3248,9 +3193,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
      structure'' or ''pointer to qualified or unqualified union'', and the second operand shall
      name a member of the type pointed to.
 
-
-
-
 [<a name="p72" href="#p72">page 72</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Semantics</b>
@@ -3340,9 +3282,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     Forward references: address and indirection operators (<a href="#6.5.3.2">6.5.3.2</a>), structure and union
     specifiers (<a href="#6.7.2.1">6.7.2.1</a>).
 
-
-
-
 [<a name="p74" href="#p74">page 74</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.2.4" href="#6.5.2.4"><b>    6.5.2.4 Postfix increment and decrement operators</b></a>
@@ -3468,9 +3407,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 
      Forward references: type names (<a href="#6.7.6">6.7.6</a>), initialization (<a href="#6.7.8">6.7.8</a>).
 
-
-
-
 [<a name="p77" href="#p77">page 77</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.3" href="#6.5.3"><b>    6.5.3 Unary operators</b></a>
@@ -3710,6 +3646,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     object of type ptrdiff_t. Moreover, if the expression P points either to an element of
     an array object or one past the last element of an array object, and the expression Q points
     to the last element of the same array object, the expression ((Q)+1)-(P) has the same
+
 [<a name="p83" href="#p83">page 83</a>] (<a href="#Contents">Contents</a>)
 
      value as ((Q)-(P))+1 and as -((P)-((Q)+1)), and has the value zero if the
@@ -3897,9 +3834,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     the result is set if and only if at least one of the corresponding bits in the converted
     operands is set).
 
-
-
-
 [<a name="p88" href="#p88">page 88</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.13" href="#6.5.13"><b>    6.5.13 Logical AND operator</b></a>
@@ -3929,9 +3863,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     a sequence point after the evaluation of the first operand. If the first operand compares
     unequal to 0, the second operand is not evaluated.
 
-
-
-
 [<a name="p89" href="#p89">page 89</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.15" href="#6.5.15"><b>    6.5.15 Conditional operator</b></a>
@@ -4012,7 +3943,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     the result of an assignment operator or to access it after the next sequence point, the
     behavior is undefined.
 
-
 [<a name="p91" href="#p91">page 91</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.16.1" href="#6.5.16.1"><b>    6.5.16.1 Simple assignment</b></a>
@@ -4090,9 +4020,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 3   A compound assignment of the form E1 op = E2 differs from the simple assignment
     expression E1 = E1 op (E2) only in that the lvalue E1 is evaluated only once.
 
-
-
-
 [<a name="p93" href="#p93">page 93</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.17" href="#6.5.17"><b>    6.5.17 Comma operator</b></a>
@@ -4304,7 +4231,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     -- unsigned short, or unsigned short int
     -- int, signed, or signed int
 
-
 [<a name="p99" href="#p99">page 99</a>] (<a href="#Contents">Contents</a>)
 
     -- unsigned, or unsigned int
@@ -4378,7 +4304,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 4   A bit-field shall have a type that is a qualified or unqualified version of _Bool, signed
     int, unsigned int, or some other implementation-defined type.
 
-
 [<a name="p101" href="#p101">page 101</a>] (<a href="#Contents">Contents</a>)
 
 <b>     Semantics</b>
@@ -4459,9 +4384,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
      not be the same).
 18   Following the above declaration:
 
-
-
-
 [<a name="p103" href="#p103">page 103</a>] (<a href="#Contents">Contents</a>)
 
               struct s t1 = { 0 };                        //   valid
@@ -4809,9 +4731,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
      function call and an equivalent nested block. With one exception, only ''outer-to-inner'' assignments
      between restricted pointers declared in nested blocks have defined behavior.
 
-
-
-
 [<a name="p111" href="#p111">page 111</a>] (<a href="#Contents">Contents</a>)
 
               {
@@ -4856,6 +4775,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
      implementation-defined.<sup><a href="#note121"><b>121)</b></a></sup>
 6    Any function with internal linkage can be an inline function. For a function with external
      linkage, the following restrictions apply: If a function is declared with an inline
+
 [<a name="p112" href="#p112">page 112</a>] (<a href="#Contents">Contents</a>)
 
     function specifier, then it shall also be defined in the same translation unit. If all of the
@@ -4943,6 +4863,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     scope, storage duration, and type indicated by the declaration specifiers.
 3   A full declarator is a declarator that is not part of another declarator. The end of a full
     declarator is a sequence point. If, in the nested sequence of declarators in a full
+
 [<a name="p114" href="#p114">page 114</a>] (<a href="#Contents">Contents</a>)
 
     declarator, there is a declarator specifying a variable length array type, the type specified
@@ -4978,9 +4899,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 3   EXAMPLE The following pair of declarations demonstrates the difference between a ''variable pointer
     to a constant value'' and a ''constant pointer to a variable value''.
 
-
-
-
 [<a name="p115" href="#p115">page 115</a>] (<a href="#Contents">Contents</a>)
 
              const int *ptr_to_constant;
@@ -5195,9 +5113,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
      The pointer returned by fpfi points to a function that has one int parameter and accepts zero or more
      additional arguments of any type.
 
-
-
-
 [<a name="p120" href="#p120">page 120</a>] (<a href="#Contents">Contents</a>)
 
 20   EXAMPLE 4        The following prototype has a variably modified parameter.
@@ -5233,9 +5148,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 
      Forward references: function definitions (<a href="#6.9.1">6.9.1</a>), type names (<a href="#6.7.6">6.7.6</a>).
 
-
-
-
 [<a name="p121" href="#p121">page 121</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.7.6" href="#6.7.6"><b>    6.7.6 Type names</b></a>
@@ -5321,9 +5233,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     type t1 and the type pointed to by tp1 are compatible. Type t1 is also compatible with type struct
     s1, but not compatible with the types struct s2, t2, the type pointed to by tp2, or int.
 
-
-
-
 [<a name="p123" href="#p123">page 123</a>] (<a href="#Contents">Contents</a>)
 
 6   EXAMPLE 3       The following obscure constructions
@@ -5368,9 +5277,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                         a[i-1] = b[i];
             }
 
-
-
-
 [<a name="p124" href="#p124">page 124</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.7.8" href="#6.7.8"><b>    6.7.8 Initialization</b></a>
@@ -5408,6 +5314,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
              . identifier
     then the current object (defined below) shall have structure or union type and the
     identifier shall be the name of a member of that type.
+
 [<a name="p125" href="#p125">page 125</a>] (<a href="#Contents">Contents</a>)
 
 <b>     Semantics</b>
@@ -5446,6 +5353,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 17   Each brace-enclosed initializer list has an associated current object. When no
      designations are present, subobjects of the current object are initialized in order according
      to the type of the current object: array elements in increasing subscript order, structure
+
 [<a name="p126" href="#p126">page 126</a>] (<a href="#Contents">Contents</a>)
 
      members in declaration order, and the first named member of a union.<sup><a href="#note129"><b>129)</b></a></sup> In contrast, a
@@ -5582,8 +5490,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                int a[] = { 1, 2 }, b[] = { 3, 4, 5 };
      due to the rules for incomplete types.
 
-
-
 [<a name="p129" href="#p129">page 129</a>] (<a href="#Contents">Contents</a>)
 
 32   EXAMPLE 8       The declaration
@@ -5626,9 +5532,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 
      Forward references: common definitions <a href="#7.17">&lt;stddef.h&gt;</a> (<a href="#7.17">7.17</a>).
 
-
-
-
 [<a name="p130" href="#p130">page 130</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.8" href="#6.8"><b>    6.8 Statements and blocks</b></a>
@@ -5667,7 +5570,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 2   A case or default label shall appear only in a switch statement. Further
     constraints on such labels are discussed under the switch statement.
 
-
 [<a name="p131" href="#p131">page 131</a>] (<a href="#Contents">Contents</a>)
 
 3   Label names shall be unique within a function.
@@ -5903,9 +5805,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                     /* ... */
             }
 
-
-
-
 [<a name="p137" href="#p137">page 137</a>] (<a href="#Contents">Contents</a>)
 
 4   EXAMPLE 2 A goto statement is not allowed to jump past any declarations of objects with variably
@@ -6071,7 +5970,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                   int (*fp)(void);                              //   fp points to a function that has type F
                   F *Fp;                                        //   Fp points to a function that has type F
 
-
 [<a name="p141" href="#p141">page 141</a>] (<a href="#Contents">Contents</a>)
 
 <b>     Semantics</b>
@@ -6154,9 +6052,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 3    If the declaration of an identifier for an object is a tentative definition and has internal
      linkage, the declared type shall not be an incomplete type.
 
-
-
-
 [<a name="p143" href="#p143">page 143</a>] (<a href="#Contents">Contents</a>)
 
 4   EXAMPLE 1
@@ -6181,9 +6076,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     the array i still has incomplete type, the implicit initializer causes it to have one element, which is set to
     zero on program startup.
 
-
-
-
 [<a name="p144" href="#p144">page 144</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.10" href="#6.10"><b>    6.10 Preprocessing directives</b></a>
@@ -6214,9 +6106,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
              endif-line:
                      # endif      new-line
 
-
-
-
 [<a name="p145" href="#p145">page 145</a>] (<a href="#Contents">Contents</a>)
 
              control-line:
@@ -6539,9 +6428,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     string literal corresponding to an empty argument is "". The order of evaluation of # and
     ## operators is unspecified.
 
-
-
-
 [<a name="p153" href="#p153">page 153</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.10.3.3" href="#6.10.3.3"><b>    6.10.3.3 The ## operator</b></a>
@@ -6620,9 +6506,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
             #define max(a, b) ((a) &gt; (b) ? (a) : (b))
     The parentheses ensure that the arguments and the resulting expression are bound properly.
 
-
-
-
 [<a name="p155" href="#p155">page 155</a>] (<a href="#Contents">Contents</a>)
 
 5   EXAMPLE 3     To illustrate the rules for redefinition and reexamination, the sequence
@@ -6670,9 +6553,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
              xglue(HIGH, LOW)
     results in
 
-
-
-
 [<a name="p156" href="#p156">page 156</a>] (<a href="#Contents">Contents</a>)
 
              printf("x" "1" "= %d, x" "2" "= %s", x1, x2);
@@ -6723,7 +6603,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
              showlist(The first, second, and third items.);
              report(x&gt;y, "x is %d but y is %d", x, y);
 
-
 [<a name="p157" href="#p157">page 157</a>] (<a href="#Contents">Contents</a>)
 
     results in
@@ -6758,9 +6637,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     tokens). The directive resulting after all replacements shall match one of the two
     previous forms and is then processed as appropriate.
 
-
-
-
 [<a name="p158" href="#p158">page 158</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.10.5" href="#6.10.5"><b>    6.10.5 Error directive</b></a>
@@ -6877,6 +6753,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 2   EXAMPLE       A directive of the form:
              #pragma listing on "..\listing.dir"
     can also be expressed as:
+
 [<a name="p161" href="#p161">page 161</a>] (<a href="#Contents">Contents</a>)
 
         _Pragma ( "listing on \"..\\listing.dir\"" )
@@ -6886,9 +6763,6 @@ replacement, as in:
         #define PRAGMA(x) _Pragma(#x)
         LISTING ( ..\listing.dir )
 
-
-
-
 [<a name="p162" href="#p162">page 162</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.11" href="#6.11"><b>    6.11 Future language directions</b></a>
@@ -6919,9 +6793,6 @@ replacement, as in:
 <a name="6.11.9" href="#6.11.9"><b>    6.11.9 Predefined macro names</b></a>
 1   Macro names beginning with __STDC_ are reserved for future standardization.
 
-
-
-
 [<a name="p163" href="#p163">page 163</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -7110,9 +6981,6 @@ replacement, as in:
                 /* ... */
                 i = atoi(str);
 
-
-
-
 [<a name="p168" href="#p168">page 168</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.2" href="#7.2"><b>    7.2 Diagnostics &lt;assert.h&gt;</b></a>
@@ -7151,7 +7019,6 @@ replacement, as in:
     <sup><a name="note165" href="#note165"><b>165)</b></a></sup> The message written might be of the form:
          Assertion failed: expression, function abc, file xyz, line nnn.
 
-
 [<a name="p169" href="#p169">page 169</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.3" href="#7.3"><b>    7.3 Complex arithmetic &lt;complex.h&gt;</b></a>
@@ -7225,7 +7092,7 @@ replacement, as in:
     <sup><a name="note169" href="#note169"><b>169)</b></a></sup> The purpose of the pragma is to allow the implementation to use the formulas:
              (x + iy) x (u + iv) = (xu - yv) + i(yu + xv)
              (x + iy) / (u + iv) = [(xu + yv) + i(yu - xv)]/(u2 + v 2 )
-             | x + iy | = sqrt: x 2 + y 2
+             | x + iy | = (sqrt) x 2 + y 2
                           ???????????????
          where the programmer can determine they are safe.
 
@@ -7339,7 +7206,6 @@ replacement, as in:
 2   The casinh functions compute the complex arc hyperbolic sine of z, with branch cuts
     outside the interval [-i, +i] along the imaginary axis.
 
-
 [<a name="p174" href="#p174">page 174</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -7376,7 +7242,6 @@ replacement, as in:
            float complex csinhf(float complex z);
            long double complex csinhl(long double complex z);
 
-
 [<a name="p175" href="#p175">page 175</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -7411,8 +7276,6 @@ replacement, as in:
            float complex clogf(float complex z);
            long double complex clogl(long double complex z);
 
-
-
 [<a name="p176" href="#p176">page 176</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -7447,9 +7310,6 @@ replacement, as in:
 <b>    Returns</b>
 3   The cpow functions return the complex power function value.
 
-
-
-
 [<a name="p177" href="#p177">page 177</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.3.8.3" href="#7.3.8.3"><b>    7.3.8.3 The csqrt functions</b></a>
@@ -7483,9 +7343,6 @@ replacement, as in:
            float cimagf(float complex z);
            long double cimagl(long double complex z);
 
-
-
-
 [<a name="p178" href="#p178">page 178</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -7685,9 +7542,6 @@ replacement, as in:
     the tolower function returns one of the corresponding characters (always the same one
     for any given locale); otherwise, the argument is returned unchanged.
 
-
-
-
 [<a name="p184" href="#p184">page 184</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.4.2.2" href="#7.4.2.2"><b>    7.4.2.2 The toupper function</b></a>
@@ -7702,9 +7556,6 @@ replacement, as in:
     the toupper function returns one of the corresponding characters (always the same one
     for any given locale); otherwise, the argument is returned unchanged.
 
-
-
-
 [<a name="p185" href="#p185">page 185</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.5" href="#7.5"><b>    7.5 Errors &lt;errno.h&gt;</b></a>
@@ -8018,7 +7869,6 @@ replacement, as in:
 3   The fesetround function returns zero if and only if the requested rounding direction
     was established.
 
-
 [<a name="p193" href="#p193">page 193</a>] (<a href="#Contents">Contents</a>)
 
 4   EXAMPLE Save, set, and restore the rounding direction. Report an error and abort if setting the
@@ -8121,9 +7971,6 @@ replacement, as in:
                 return result;
           }
 
-
-
-
 [<a name="p196" href="#p196">page 196</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.7" href="#7.7"><b>    7.7 Characteristics of floating types &lt;float.h&gt;</b></a>
@@ -8132,9 +7979,6 @@ replacement, as in:
 2   The macros, their meanings, and the constraints (or restrictions) on their values are listed
     in <a href="#5.2.4.2.2">5.2.4.2.2</a>.
 
-
-
-
 [<a name="p197" href="#p197">page 197</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.8" href="#7.8"><b>    7.8 Format conversion of integer types &lt;inttypes.h&gt;</b></a>
@@ -8250,8 +8094,6 @@ replacement, as in:
     Forward references: the strtol, strtoll, strtoul, and strtoull functions
     (<a href="#7.20.1.4">7.20.1.4</a>).
 
-
-
 [<a name="p200" href="#p200">page 200</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.8.2.4" href="#7.8.2.4"><b>    7.8.2.4 The wcstoimax and wcstoumax functions</b></a>
@@ -8275,9 +8117,6 @@ replacement, as in:
     Forward references: the wcstol, wcstoll, wcstoul, and wcstoull functions
     (<a href="#7.24.4.1.2">7.24.4.1.2</a>).
 
-
-
-
 [<a name="p201" href="#p201">page 201</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.9" href="#7.9"><b>    7.9 Alternative spellings &lt;iso646.h&gt;</b></a>
@@ -8295,9 +8134,6 @@ replacement, as in:
           xor          ^
           xor_eq       ^=
 
-
-
-
 [<a name="p202" href="#p202">page 202</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.10" href="#7.10"><b>    7.10 Sizes of integer types &lt;limits.h&gt;</b></a>
@@ -8306,9 +8142,6 @@ replacement, as in:
 2   The macros, their meanings, and the constraints (or restrictions) on their values are listed
     in <a href="#5.2.4.2.1">5.2.4.2.1</a>.
 
-
-
-
 [<a name="p203" href="#p203">page 203</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.11" href="#7.11"><b>    7.11 Localization &lt;locale.h&gt;</b></a>
@@ -8344,9 +8177,6 @@ replacement, as in:
            char   int_p_sign_posn;                //   CHAR_MAX
            char   int_n_sign_posn;                //   CHAR_MAX
 
-
-
-
 [<a name="p204" href="#p204">page 204</a>] (<a href="#Contents">Contents</a>)
 
 3   The macros defined are NULL (described in <a href="#7.17">7.17</a>); and
@@ -8463,7 +8293,6 @@ char n_cs_precedes
           Set to 1 or 0 if the currency_symbol respectively precedes or
           succeeds the value for a negative locally formatted monetary quantity.
 
-
 [<a name="p207" href="#p207">page 207</a>] (<a href="#Contents">Contents</a>)
 
 char p_sep_by_space
@@ -8502,9 +8331,6 @@ char int_p_sep_by_space
           sign string, and the value for a nonnegative internationally formatted
           monetary quantity.
 
-
-
-
 [<a name="p208" href="#p208">page 208</a>] (<a href="#Contents">Contents</a>)
 
     char int_n_sep_by_space
@@ -8542,7 +8368,6 @@ char int_p_sep_by_space
     3   The sign string immediately precedes the currency symbol.
     4   The sign string immediately succeeds the currency symbol.
 
-
 [<a name="p209" href="#p209">page 209</a>] (<a href="#Contents">Contents</a>)
 
 7    The implementation shall behave as if no library function calls the localeconv
@@ -8589,9 +8414,6 @@ char int_p_sep_by_space
      int_p_sign_posn                   1                     1                    1                   1
      int_n_sign_posn                   4                     1                    4                   2
 
-
-
-
 [<a name="p210" href="#p210">page 210</a>] (<a href="#Contents">Contents</a>)
 
 11   EXAMPLE 2 The following table illustrates how the cs_precedes, sep_by_space, and sign_posn members
@@ -8612,9 +8434,6 @@ char int_p_sep_by_space
                                           3         +$1.25             +$ <a href="#1.25">1.25</a>             + $1.25
                                           4         $+1.25             $+ <a href="#1.25">1.25</a>             $ +1.25
 
-
-
-
 [<a name="p211" href="#p211">page 211</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12" href="#7.12"><b>    7.12 Mathematics &lt;math.h&gt;</b></a>
@@ -8927,7 +8746,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The atan2 functions return arctan y/x in the interval [-pi , +pi ] radians.
 
-
 [<a name="p219" href="#p219">page 219</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.4.5" href="#7.12.4.5"><b>    7.12.4.5 The cos functions</b></a>
@@ -8961,9 +8779,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The tan functions return tan x.
 
-
-
-
 [<a name="p220" href="#p220">page 220</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.5" href="#7.12.5"><b>    7.12.5 Hyperbolic functions</b></a>
@@ -8999,8 +8814,6 @@ char int_p_sep_by_space
     for arguments not in the interval [-1, +1]. A range error may occur if the argument
     equals -1 or +1.
 
-
-
 [<a name="p221" href="#p221">page 221</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -9036,8 +8849,6 @@ char int_p_sep_by_space
 <b>    Description</b>
 2   The tanh functions compute the hyperbolic tangent of x.
 
-
-
 [<a name="p222" href="#p222">page 222</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -9072,9 +8883,6 @@ char int_p_sep_by_space
            float expm1f(float x);
            long double expm1l(long double x);
 
-
-
-
 [<a name="p223" href="#p223">page 223</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -9148,9 +8956,6 @@ char int_p_sep_by_space
            float log10f(float x);
            long double log10l(long double x);
 
-
-
-
 [<a name="p225" href="#p225">page 225</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -9216,9 +9021,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The modf functions return the signed fractional part of value.
 
-
-
-
 [<a name="p227" href="#p227">page 227</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.6.13" href="#7.12.6.13"><b>    7.12.6.13 The scalbn and scalbln functions</b></a>
@@ -9255,7 +9057,6 @@ char int_p_sep_by_space
 <b>    Description</b>
 2   The fabs functions compute the absolute value of a floating-point number x.
 
-
 [<a name="p228" href="#p228">page 228</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -9270,7 +9071,7 @@ char int_p_sep_by_space
 2   The hypot functions compute the square root of the sum of the squares of x and y,
     without undue overflow or underflow. A range error may occur.
 3   Returns
-4   The hypot functions return sqrt:x2 + y2 .
+4   The hypot functions return (sqrt)x2 + y2 .
                                ???
                                ???????????????
 <a name="7.12.7.4" href="#7.12.7.4"><b>    7.12.7.4 The pow functions</b></a>
@@ -9293,16 +9094,13 @@ char int_p_sep_by_space
            float sqrtf(float x);
            long double sqrtl(long double x);
 
-
-
-
 [<a name="p229" href="#p229">page 229</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
 2   The sqrt functions compute the nonnegative square root of x. A domain error occurs if
     the argument is less than zero.
 <b>    Returns</b>
-3   The sqrt functions return sqrt:x.
+3   The sqrt functions return (sqrt)x.
                               ???
                               ???
 <a name="7.12.8" href="#7.12.8"><b>    7.12.8 Error and gamma functions</b></a>
@@ -9322,7 +9120,7 @@ char int_p_sep_by_space
                                                       2
 
 
-                                       sqrt:pi
+                                       (sqrt)pi
                                        ???
                                        ???    0
 
@@ -9343,13 +9141,10 @@ char int_p_sep_by_space
                                                                              2
 
 
-                                                              sqrt:pi
+                                                              (sqrt)pi
                                                               ???
                                                               ???    x
 
-
-
-
 [<a name="p230" href="#p230">page 230</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.8.3" href="#7.12.8.3"><b>    7.12.8.3 The lgamma functions</b></a>
@@ -9386,7 +9181,6 @@ char int_p_sep_by_space
 <b>    Description</b>
 2   The ceil functions compute the smallest integer value not less than x.
 
-
 [<a name="p231" href="#p231">page 231</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -9423,6 +9217,7 @@ char int_p_sep_by_space
 2   The rint functions differ from the nearbyint functions (<a href="#7.12.9.3">7.12.9.3</a>) only in that the
     rint functions may raise the ''inexact'' floating-point exception if the result differs in
     value from the argument.
+
 [<a name="p232" href="#p232">page 232</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -9456,9 +9251,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The round functions return the rounded integer value.
 
-
-
-
 [<a name="p233" href="#p233">page 233</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.9.7" href="#7.12.9.7"><b>    7.12.9.7 The lround and llround functions</b></a>
@@ -9489,9 +9281,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The trunc functions return the truncated integer value.
 
-
-
-
 [<a name="p234" href="#p234">page 234</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.10" href="#7.12.10"><b>    7.12.10 Remainder functions</b></a>
@@ -9561,9 +9350,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The copysign functions return a value with the magnitude of x and the sign of y.
 
-
-
-
 [<a name="p236" href="#p236">page 236</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.11.2" href="#7.12.11.2"><b>    7.12.11.2 The nan functions</b></a>
@@ -9756,6 +9542,7 @@ char int_p_sep_by_space
     (x) &lt; (y) || (x) &gt; (y); however, islessgreater(x, y) does not raise
     the ''invalid'' floating-point exception when x and y are unordered (nor does it evaluate x
     and y twice).
+
 [<a name="p241" href="#p241">page 241</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -9769,9 +9556,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The isunordered macro returns 1 if its arguments are unordered and 0 otherwise.
 
-
-
-
 [<a name="p242" href="#p242">page 242</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.13" href="#7.13"><b>    7.13 Nonlocal jumps &lt;setjmp.h&gt;</b></a>
@@ -9874,9 +9658,6 @@ char int_p_sep_by_space
              longjmp(buf, 2);   // might cause memory loss
        }
 
-
-
-
 [<a name="p245" href="#p245">page 245</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.14" href="#7.14"><b>    7.14 Signal handling &lt;signal.h&gt;</b></a>
@@ -9981,9 +9762,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The raise function returns zero if successful, nonzero if unsuccessful.
 
-
-
-
 [<a name="p248" href="#p248">page 248</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.15" href="#7.15"><b>    7.15 Variable arguments &lt;stdarg.h&gt;</b></a>
@@ -10095,9 +9873,6 @@ char int_p_sep_by_space
                   char *array[MAXARGS];
                   int ptr_no = 0;
 
-
-
-
 [<a name="p251" href="#p251">page 251</a>] (<a href="#Contents">Contents</a>)
 
                       if (n_ptrs &gt; MAXARGS)
@@ -10140,9 +9915,6 @@ char int_p_sep_by_space
                       f4(n_ptrs, array);
              }
 
-
-
-
 [<a name="p252" href="#p252">page 252</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.16" href="#7.16"><b>    7.16 Boolean type and values &lt;stdbool.h&gt;</b></a>
@@ -10200,9 +9972,6 @@ char int_p_sep_by_space
     large enough to make this necessary.
     Forward references: localization (<a href="#7.11">7.11</a>).
 
-
-
-
 [<a name="p254" href="#p254">page 254</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.18" href="#7.18"><b>    7.18 Integer types &lt;stdint.h&gt;</b></a>
@@ -10345,9 +10114,7 @@ char int_p_sep_by_space
     -- maximum value of pointer-holding signed integer type
           INTPTR_MAX                                       215 - 1
 
-
-
-[<a name="p258" href="#p258">page 258</a>] (<a href="#Contents">Contents</a>)
+[<a name="p258" href="#p258">page 258</a>] (<a href="#Contents">Contents</a>)
 
     -- maximum value of pointer-holding unsigned integer type
         UINTPTR_MAX                                                   216 - 1
@@ -10440,9 +10207,6 @@ char int_p_sep_by_space
     by its argument and the type uintmax_t:
            UINTMAX_C(value)
 
-
-
-
 [<a name="p261" href="#p261">page 261</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.19" href="#7.19"><b>    7.19 Input/output &lt;stdio.h&gt;</b></a>
@@ -10478,8 +10242,6 @@ char int_p_sep_by_space
     which expands to an integer constant expression that is the size needed for an array of
     char large enough to hold the longest file name string that the implementation
 
-
-
 [<a name="p262" href="#p262">page 262</a>] (<a href="#Contents">Contents</a>)
 
     guarantees can be opened;<sup><a href="#note231"><b>231)</b></a></sup>
@@ -10713,9 +10475,6 @@ char int_p_sep_by_space
      old is no longer accessible by that name. If a file named by the string pointed to by new
      exists prior to the call to the rename function, the behavior is implementation-defined.
 
-
-
-
 [<a name="p268" href="#p268">page 268</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -10790,9 +10549,6 @@ char int_p_sep_by_space
 1          #include <a href="#7.19">&lt;stdio.h&gt;</a>
            int fflush(FILE *stream);
 
-
-
-
 [<a name="p270" href="#p270">page 270</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -10870,9 +10626,6 @@ char int_p_sep_by_space
 2   The freopen function opens the file whose name is the string pointed to by filename
     and associates the stream pointed to by stream with it. The mode argument is used just
 
-
-
-
 [<a name="p272" href="#p272">page 272</a>] (<a href="#Contents">Contents</a>)
 
     as in the fopen function.<sup><a href="#note238"><b>238)</b></a></sup>
@@ -11072,7 +10825,6 @@ char int_p_sep_by_space
             with leading zeros. The default precision is 1. The result of converting a
             zero value with a precision of zero is no characters.
 
-
 [<a name="p277" href="#p277">page 277</a>] (<a href="#Contents">Contents</a>)
 
 f,F          A double argument representing a floating-point number is converted to
@@ -11365,6 +11117,7 @@ s             If no l length modifier is present, the argument shall be a pointe
                  for the subject sequence of the strtol function with the value 0 for the
                  base argument. The corresponding argument shall be a pointer to signed
                  integer.
+
 [<a name="p284" href="#p284">page 284</a>] (<a href="#Contents">Contents</a>)
 
 o             Matches an optionally signed octal integer, whose format is the same as
@@ -11538,9 +11291,6 @@ p        Matches an implementation-defined set of sequences, which should be the
      entry into the alternate shift state.
 23   After the call:
 
-
-
-
 [<a name="p288" href="#p288">page 288</a>] (<a href="#Contents">Contents</a>)
 
                #include <a href="#7.19">&lt;stdio.h&gt;</a>
@@ -11581,9 +11331,6 @@ p        Matches an implementation-defined set of sequences, which should be the
      strtol, strtoll, strtoul, and strtoull functions (<a href="#7.20.1.4">7.20.1.4</a>), conversion state
      (<a href="#7.24.6">7.24.6</a>), the wcrtomb function (<a href="#7.24.6.3.3">7.24.6.3.3</a>).
 
-
-
-
 [<a name="p289" href="#p289">page 289</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.19.6.3" href="#7.19.6.3"><b>    7.19.6.3 The printf function</b></a>
@@ -11657,9 +11404,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     items assigned, which can be fewer than provided for, or even zero, in the event of an
     early matching failure.
 
-
-
-
 [<a name="p291" href="#p291">page 291</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.19.6.8" href="#7.19.6.8"><b>    7.19.6.8 The vfprintf function</b></a>
@@ -11731,9 +11475,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 3   The vprintf function returns the number of characters transmitted, or a negative value
     if an output or encoding error occurred.
 
-
-
-
 [<a name="p293" href="#p293">page 293</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.19.6.11" href="#7.19.6.11"><b>    7.19.6.11 The vscanf function</b></a>
@@ -11771,9 +11512,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     value if an encoding error occurred. Thus, the null-terminated output has been
     completely written if and only if the returned value is nonnegative and less than n.
 
-
-
-
 [<a name="p294" href="#p294">page 294</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.19.6.13" href="#7.19.6.13"><b>    7.19.6.13 The vsprintf function</b></a>
@@ -11810,9 +11548,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     items assigned, which can be fewer than provided for, or even zero, in the event of an
     early matching failure.
 
-
-
-
 [<a name="p295" href="#p295">page 295</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.19.7" href="#7.19.7"><b>    7.19.7 Character input/output functions</b></a>
@@ -11887,9 +11622,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     may evaluate stream more than once, so the argument should never be an expression
     with side effects.
 
-
-
-
 [<a name="p297" href="#p297">page 297</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -11924,9 +11656,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     indeterminate and a null pointer is returned.
     Forward references: future library directions (<a href="#7.26.9">7.26.9</a>).
 
-
-
-
 [<a name="p298" href="#p298">page 298</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.19.7.8" href="#7.19.7.8"><b>    7.19.7.8 The putc function</b></a>
@@ -11961,9 +11690,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 3   The puts function returns EOF if a write error occurs; otherwise it returns a nonnegative
     value.
 
-
-
-
 [<a name="p299" href="#p299">page 299</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.19.7.11" href="#7.19.7.11"><b>    7.19.7.11 The ungetc function</b></a>
@@ -12037,9 +11763,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     error occurs, the resulting value of the file position indicator for the stream is
     indeterminate.
 
-
-
-
 [<a name="p301" href="#p301">page 301</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -12144,9 +11867,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 <b>    Returns</b>
 3   The clearerr function returns no value.
 
-
-
-
 [<a name="p304" href="#p304">page 304</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.19.10.2" href="#7.19.10.2"><b>    7.19.10.2 The feof function</b></a>
@@ -12182,7 +11902,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 3   The perror function returns no value.
     Forward references: the strerror function (<a href="#7.21.6.2">7.21.6.2</a>).
 
-
 [<a name="p305" href="#p305">page 305</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.20" href="#7.20"><b>    7.20 General utilities &lt;stdlib.h&gt;</b></a>
@@ -12250,8 +11969,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     Forward references: the strtol, strtoll, strtoul, and strtoull functions
     (<a href="#7.20.1.4">7.20.1.4</a>).
 
-
-
 [<a name="p307" href="#p307">page 307</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.20.1.3" href="#7.20.1.3"><b>    7.20.1.3 The strtod, strtof, and strtold functions</b></a>
@@ -12291,6 +12008,7 @@ p        Matches an implementation-defined set of sequences, which should be the
 4   If the subject sequence has the expected form for a floating-point number, the sequence of
     characters starting with the first digit or the decimal-point character (whichever occurs
     first) is interpreted as a floating constant according to the rules of <a href="#6.4.4.2">6.4.4.2</a>, except that the
+
 [<a name="p308" href="#p308">page 308</a>] (<a href="#Contents">Contents</a>)
 
     decimal-point character is used in place of a period, and that if neither an exponent part
@@ -12414,9 +12132,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     LLONG_MAX, ULONG_MAX, or ULLONG_MAX is returned (according to the return type
     and sign of the value, if any), and the value of the macro ERANGE is stored in errno.
 
-
-
-
 [<a name="p311" href="#p311">page 311</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.20.2" href="#7.20.2"><b>    7.20.2 Pseudo-random sequence generation functions</b></a>
@@ -12453,8 +12168,6 @@ p        Matches an implementation-defined set of sequences, which should be the
                  return (unsigned int)(next/65536) % 32768;
            }
 
-
-
 [<a name="p312" href="#p312">page 312</a>] (<a href="#Contents">Contents</a>)
 
             void srand(unsigned int seed)
@@ -12531,9 +12244,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     value as a pointer to the old object), or a null pointer if the new object could not be
     allocated.
 
-
-
-
 [<a name="p314" href="#p314">page 314</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.20.4" href="#7.20.4"><b>    7.20.4 Communication with the environment</b></a>
@@ -12569,6 +12279,7 @@ p        Matches an implementation-defined set of sequences, which should be the
 <b>    Description</b>
 2   The exit function causes normal program termination to occur. If more than one call to
     the exit function is executed by a program, the behavior is undefined.
+
 [<a name="p315" href="#p315">page 315</a>] (<a href="#Contents">Contents</a>)
 
 3   First, all functions registered by the atexit function are called, in the reverse order of
@@ -12636,9 +12347,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     command processor is available. If the argument is not a null pointer, and the system
     function does return, it returns an implementation-defined value.
 
-
-
-
 [<a name="p317" href="#p317">page 317</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.20.5" href="#7.20.5"><b>    7.20.5 Searching and sorting utilities</b></a>
@@ -12679,7 +12387,6 @@ p        Matches an implementation-defined set of sequences, which should be the
                   (char *)p &gt;= (char *)base
                   (char *)p &lt; (char *)base + nmemb * size
 
-
 [<a name="p318" href="#p318">page 318</a>] (<a href="#Contents">Contents</a>)
 
     size of each element of the array is specified by size.
@@ -12887,9 +12594,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     returns the number of bytes modified, not including a terminating null character, if
     any.267)
 
-
-
-
 [<a name="p324" href="#p324">page 324</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.21" href="#7.21"><b>    7.21 String handling &lt;string.h&gt;</b></a>
@@ -12964,9 +12668,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 2   The strncpy function copies not more than n characters (characters that follow a null
     character are not copied) from the array pointed to by s2 to the array pointed to by
 
-
-
-
 [<a name="p326" href="#p326">page 326</a>] (<a href="#Contents">Contents</a>)
 
     s1.<sup><a href="#note269"><b>269)</b></a></sup> If copying takes place between objects that overlap, the behavior is undefined.
@@ -13117,6 +12818,7 @@ p        Matches an implementation-defined set of sequences, which should be the
 <b>    Returns</b>
 3   The strchr function returns a pointer to the located character, or a null pointer if the
     character does not occur in the string.
+
 [<a name="p330" href="#p330">page 330</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.21.5.3" href="#7.21.5.3"><b>    7.21.5.3 The strcspn function</b></a>
@@ -13151,9 +12853,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 3   The strrchr function returns a pointer to the character, or a null pointer if c does not
     occur in the string.
 
-
-
-
 [<a name="p331" href="#p331">page 331</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.21.5.6" href="#7.21.5.6"><b>    7.21.5.6 The strspn function</b></a>
@@ -13226,9 +12925,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 <b>    Returns</b>
 3   The memset function returns the value of s.
 
-
-
-
 [<a name="p333" href="#p333">page 333</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.21.6.2" href="#7.21.6.2"><b>    7.21.6.2 The strerror function</b></a>
@@ -13254,9 +12950,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 3   The strlen function returns the number of characters that precede the terminating null
     character.
 
-
-
-
 [<a name="p334" href="#p334">page 334</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.22" href="#7.22"><b>    7.22 Type-generic math &lt;tgmath.h&gt;</b></a>
@@ -13369,9 +13062,6 @@ p        Matches an implementation-defined set of sequences, which should be the
                 carg(dc)                            carg(dc), the function
                 cproj(ldc)                          cprojl(ldc)
 
-
-
-
 [<a name="p337" href="#p337">page 337</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.23" href="#7.23"><b>    7.23 Date and time &lt;time.h&gt;</b></a>
@@ -13559,9 +13249,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     broken-down time as argument.
     Forward references: the localtime function (<a href="#7.23.3.4">7.23.3.4</a>).
 
-
-
-
 [<a name="p342" href="#p342">page 342</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.23.3.3" href="#7.23.3.3"><b>    7.23.3.3 The gmtime function</b></a>
@@ -13599,6 +13286,7 @@ p        Matches an implementation-defined set of sequences, which should be the
     consists of a % character, possibly followed by an E or O modifier character (described
     below), followed by a character that determines the behavior of the conversion specifier.
     All ordinary multibyte characters (including the terminating null character) are copied
+
 [<a name="p343" href="#p343">page 343</a>] (<a href="#Contents">Contents</a>)
 
     unchanged into the array. If copying takes place between objects that overlap, the
@@ -13684,7 +13372,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     %OH is replaced by the hour (24-hour clock), using the locale's alternative numeric
         symbols.
 
-
 [<a name="p345" href="#p345">page 345</a>] (<a href="#Contents">Contents</a>)
 
     %OI is replaced by the hour (12-hour clock), using the locale's alternative numeric
@@ -13726,7 +13413,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     %X    equivalent to %T.
     %Z    implementation-defined.
 
-
 [<a name="p346" href="#p346">page 346</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -13735,9 +13421,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     into the array pointed to by s not including the terminating null character. Otherwise,
     zero is returned and the contents of the array are indeterminate.
 
-
-
-
 [<a name="p347" href="#p347">page 347</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.24" href="#7.24"><b>    7.24 Extended multibyte and wide character utilities &lt;wchar.h&gt;</b></a>
@@ -13935,6 +13618,7 @@ p        Matches an implementation-defined set of sequences, which should be the
                [-]nan or [-]nan(n-wchar-sequence) -- which style, and the meaning of
                any n-wchar-sequence, is implementation-defined. The F conversion
                specifier produces INF, INFINITY, or NAN instead of inf, infinity, or
+
 [<a name="p352" href="#p352">page 352</a>] (<a href="#Contents">Contents</a>)
 
              nan, respectively.<sup><a href="#note283"><b>283)</b></a></sup>
@@ -14099,8 +13783,6 @@ p            The argument shall be a pointer to void. The value of the pointer i
      -- An optional decimal integer greater than zero that specifies the maximum field width
        (in wide characters).
 
-
-
 [<a name="p356" href="#p356">page 356</a>] (<a href="#Contents">Contents</a>)
 
      -- An optional length modifier that specifies the size of the receiving object.
@@ -14180,6 +13862,7 @@ p            The argument shall be a pointer to void. The value of the pointer i
      i          Matches an optionally signed integer, whose format is the same as expected
                 for the subject sequence of the wcstol function with the value 0 for the
                 base argument. The corresponding argument shall be a pointer to signed
+
 [<a name="p358" href="#p358">page 358</a>] (<a href="#Contents">Contents</a>)
 
             integer.
@@ -14261,6 +13944,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
          from the input stream so far by this call to the fwscanf function. Execution
          of a %n directive does not increment the assignment count returned at the
          completion of execution of the fwscanf function. No argument is
+
 [<a name="p360" href="#p360">page 360</a>] (<a href="#Contents">Contents</a>)
 
                     converted, but one is consumed. If the conversion specification includes an
@@ -14340,9 +14024,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     items assigned, which can be fewer than provided for, or even zero, in the event of an
     early matching failure.
 
-
-
-
 [<a name="p362" href="#p362">page 362</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.24.2.5" href="#7.24.2.5"><b>    7.24.2.5 The vfwprintf function</b></a>
@@ -14421,7 +14102,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     counting the terminating null wide character, or a negative value if an encoding error
     occurred or if n or more wide characters were requested to be generated.
 
-
 [<a name="p364" href="#p364">page 364</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.24.2.8" href="#7.24.2.8"><b>    7.24.2.8 The vswscanf function</b></a>
@@ -14456,9 +14136,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 3   The vwprintf function returns the number of wide characters transmitted, or a negative
     value if an output or encoding error occurred.
 
-
-
-
 [<a name="p365" href="#p365">page 365</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.24.2.10" href="#7.24.2.10"><b>    7.24.2.10 The vwscanf function</b></a>
@@ -14495,7 +14172,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 2   The wscanf function is equivalent to fwscanf with the argument stdin interposed
     before the arguments to wscanf.
 
-
 [<a name="p366" href="#p366">page 366</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -14681,9 +14357,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     wide character sequences returns zero, and a function that copies wide characters copies
     zero wide characters.
 
-
-
-
 [<a name="p371" href="#p371">page 371</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.24.4.1" href="#7.24.4.1"><b>    7.24.4.1 Wide string numeric conversion functions</b></a>
@@ -14723,6 +14396,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
                      n-wchar-sequence nondigit
     The subject sequence is defined as the longest initial subsequence of the input wide
     string, starting with the first non-white-space wide character, that is of the expected form.
+
 [<a name="p372" href="#p372">page 372</a>] (<a href="#Contents">Contents</a>)
 
     The subject sequence contains no wide characters if the input wide string is not of the
@@ -14872,7 +14546,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 <b>    Returns</b>
 3   The wcscpy function returns the value of s1.
 
-
 [<a name="p376" href="#p376">page 376</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.24.4.2.2" href="#7.24.4.2.2"><b>    7.24.4.2.2 The wcsncpy function</b></a>
@@ -15021,7 +14694,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 4   EXAMPLE The value of the following expression is the length of the array needed to hold the
     transformation of the wide string pointed to by s:
 
-
 [<a name="p380" href="#p380">page 380</a>] (<a href="#Contents">Contents</a>)
 
            1 + wcsxfrm(NULL, s, 0)
@@ -15058,8 +14730,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     string pointed to by s1 which consists entirely of wide characters not from the wide
     string pointed to by s2.
 
-
-
 [<a name="p381" href="#p381">page 381</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -15095,7 +14765,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 <b>    Returns</b>
 3   The wcsspn function returns the length of the segment.
 
-
 [<a name="p382" href="#p382">page 382</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.24.4.5.6" href="#7.24.4.5.6"><b>    7.24.4.5.6 The wcsstr function</b></a>
@@ -15134,6 +14803,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     the start of the first token.
 5   The wcstok function then searches from there for a wide character that is contained in
     the current separator wide string. If no such wide character is found, the current token
+
 [<a name="p383" href="#p383">page 383</a>] (<a href="#Contents">Contents</a>)
 
     extends to the end of the wide string pointed to by s1, and subsequent searches in the
@@ -15169,9 +14839,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 3   The wmemchr function returns a pointer to the located wide character, or a null pointer if
     the wide character does not occur in the object.
 
-
-
-
 [<a name="p384" href="#p384">page 384</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.24.4.6" href="#7.24.4.6"><b>    7.24.4.6 Miscellaneous functions</b></a>
@@ -15207,7 +14874,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     -- The argument s points to the initial element of an array of wide characters into which
       the generated output is to be placed.
 
-
 [<a name="p385" href="#p385">page 385</a>] (<a href="#Contents">Contents</a>)
 
     -- The argument maxsize indicates the limiting number of wide characters.
@@ -15285,6 +14951,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 <b>    Description</b>
 2   If ps is not a null pointer, the mbsinit function determines whether the pointed-to
     mbstate_t object describes an initial conversion state.
+
 [<a name="p387" href="#p387">page 387</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -15316,9 +14983,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     or (size_t)(-1).
     Forward references: the mbrtowc function (<a href="#7.24.6.3.2">7.24.6.3.2</a>).
 
-
-
-
 [<a name="p388" href="#p388">page 388</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.24.6.3.2" href="#7.24.6.3.2"><b>    7.24.6.3.2 The mbrtowc function</b></a>
@@ -15394,9 +15058,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     when dst is not a null pointer), the pointer object pointed to by this parameter is updated
     to reflect the amount of the source processed by that invocation.
 
-
-
-
 [<a name="p390" href="#p390">page 390</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.24.6.4.1" href="#7.24.6.4.1"><b>    7.24.6.4.1 The mbsrtowcs function</b></a>
@@ -15652,7 +15313,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 3   Each of the following expressions has a truth-value equivalent to the call to the wide
     character classification function (<a href="#7.25.2.1">7.25.2.1</a>) in the comment that follows the expression:
 
-
 [<a name="p397" href="#p397">page 397</a>] (<a href="#Contents">Contents</a>)
 
            iswctype(wc,       wctype("alnum"))             //   iswalnum(wc)
@@ -15685,9 +15345,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     category of the current locale, the wctype function returns a nonzero value that is valid
     as the second argument to the iswctype function; otherwise, it returns zero.              *
 
-
-
-
 [<a name="p398" href="#p398">page 398</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.25.3" href="#7.25.3"><b>    7.25.3 Wide character case mapping utilities</b></a>
@@ -15722,9 +15379,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     well as case mapping equivalent to that performed by the functions described in the
     previous subclause (<a href="#7.25.3.1">7.25.3.1</a>).
 
-
-
-
 [<a name="p399" href="#p399">page 399</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.25.3.2.1" href="#7.25.3.2.1"><b>    7.25.3.2.1 The towctrans function</b></a>
@@ -15756,9 +15410,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     category of the current locale, the wctrans function returns a nonzero value that is valid
     as the second argument to the towctrans function; otherwise, it returns zero.
 
-
-
-
 [<a name="p400" href="#p400">page 400</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.26" href="#7.26"><b>    7.26 Future library directions</b></a>
@@ -15794,6 +15445,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     types defined in the <a href="#7.18">&lt;stdint.h&gt;</a> header. Macro names beginning with INT or UINT
     and ending with _MAX, _MIN, or _C may be added to the macros defined in the
     <a href="#7.18">&lt;stdint.h&gt;</a> header.
+
 [<a name="p401" href="#p401">page 401</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.26.9" href="#7.26.9"><b>    7.26.9 Input/output &lt;stdio.h&gt;</b></a>
@@ -15818,9 +15470,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 1   Function names that begin with is or to and a lowercase letter may be added to the
     declarations in the <a href="#7.25">&lt;wctype.h&gt;</a> header.
 
-
-
-
 [<a name="p402" href="#p402">page 402</a>] (<a href="#Contents">Contents</a>)
 
 <a name="A" href="#A"><b>                                                   Annex A</b></a>
@@ -15857,9 +15506,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
                   double                    long             typedef
                   else                      register         union
 
-
-
-
 [<a name="p403" href="#p403">page 403</a>] (<a href="#Contents">Contents</a>)
 
 <a name="A.1.3" href="#A.1.3"><b>A.1.3 Identifiers</b></a>
@@ -15898,6 +15544,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 (<a href="#6.4.4.1">6.4.4.1</a>) decimal-constant:
               nonzero-digit
               decimal-constant digit
+
 [<a name="p404" href="#p404">page 404</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.4.4.1">6.4.4.1</a>) octal-constant:
@@ -15934,9 +15581,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
               fractional-constant exponent-partopt floating-suffixopt
               digit-sequence exponent-part floating-suffixopt
 
-
-
-
 [<a name="p405" href="#p405">page 405</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.4.4.2">6.4.4.2</a>) hexadecimal-floating-constant:
@@ -15973,9 +15617,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
               ' c-char-sequence '
               L' c-char-sequence '
 
-
-
-
 [<a name="p406" href="#p406">page 406</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.4.4.4">6.4.4.4</a>) c-char-sequence:
@@ -16012,9 +15653,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
                             the double-quote ", backslash \, or new-line character
                escape-sequence
 
-
-
-
 [<a name="p407" href="#p407">page 407</a>] (<a href="#Contents">Contents</a>)
 
 <a name="A.1.7" href="#A.1.7"><b>A.1.7 Punctuators</b></a>
@@ -16054,7 +15692,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
               pp-number   P sign
               pp-number   .
 
-
 [<a name="p408" href="#p408">page 408</a>] (<a href="#Contents">Contents</a>)
 
 <a name="A.2" href="#A.2"><b>A.2 Phrase structure grammar</b></a>
@@ -16167,9 +15804,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
               auto
               register
 
-
-
-
 [<a name="p411" href="#p411">page 411</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.7.2">6.7.2</a>) type-specifier:
@@ -16208,9 +15842,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
                declarator
                declaratoropt : constant-expression
 
-
-
-
 [<a name="p412" href="#p412">page 412</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.7.2.2">6.7.2.2</a>) enum-specifier:
@@ -16288,8 +15919,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 (<a href="#6.7.8">6.7.8</a>) designation:
               designator-list =
 
-
-
 [<a name="p414" href="#p414">page 414</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.7.8">6.7.8</a>) designator-list:
@@ -16325,9 +15954,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
                if ( expression ) statement else statement
                switch ( expression ) statement
 
-
-
-
 [<a name="p415" href="#p415">page 415</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.8.5">6.8.5</a>) iteration-statement:
@@ -16366,7 +15992,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 (<a href="#6.10">6.10</a>) if-section:
                 if-group elif-groupsopt else-groupopt endif-line
 
-
 [<a name="p416" href="#p416">page 416</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.10">6.10</a>) if-group:
@@ -16404,9 +16029,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 (<a href="#6.10">6.10</a>) replacement-list:
               pp-tokensopt
 
-
-
-
 [<a name="p417" href="#p417">page 417</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.10">6.10</a>) pp-tokens:
@@ -16415,9 +16037,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 (<a href="#6.10">6.10</a>) new-line:
               the new-line character
 
-
-
-
 [<a name="p418" href="#p418">page 418</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B" href="#B"><b>                                Annex B</b></a>
@@ -16457,6 +16076,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
        double complex catanh(double complex z);
        float complex catanhf(float complex z);
        long double complex catanhl(long double complex z);
+
 [<a name="p419" href="#p419">page 419</a>] (<a href="#Contents">Contents</a>)
 
       double complex ccosh(double complex z);
@@ -16500,7 +16120,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
       float crealf(float complex z);
       long double creall(long double complex z);
 
-
 [<a name="p420" href="#p420">page 420</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B.3" href="#B.3"><b>B.3 Character handling &lt;ctype.h&gt;</b></a>
@@ -16540,8 +16159,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
        int fesetenv(const fenv_t *envp);
        int feupdateenv(const fenv_t *envp);
 
-
-
 [<a name="p421" href="#p421">page 421</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B.6" href="#B.6"><b>B.6 Characteristics of floating types &lt;float.h&gt;</b></a>
@@ -16580,9 +16197,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
       uintmax_t wcstoumax(const wchar_t * restrict nptr,
               wchar_t ** restrict endptr, int base);
 
-
-
-
 [<a name="p422" href="#p422">page 422</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B.8" href="#B.8"><b>B.8 Alternative spellings &lt;iso646.h&gt;</b></a>
@@ -16622,6 +16236,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
       float asinf(float x);
       long double asinl(long double x);
       double atan(double x);
+
 [<a name="p423" href="#p423">page 423</a>] (<a href="#Contents">Contents</a>)
 
       float atanf(float x);
@@ -16830,9 +16445,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
       false
       __bool_true_false_are_defined
 
-
-
-
 [<a name="p428" href="#p428">page 428</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B.16" href="#B.16"><b>B.16 Common definitions &lt;stddef.h&gt;</b></a>
@@ -16872,7 +16484,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
         void setbuf(FILE * restrict stream,
              char * restrict buf);
 
-
 [<a name="p429" href="#p429">page 429</a>] (<a href="#Contents">Contents</a>)
 
       int setvbuf(FILE * restrict stream,
@@ -16916,7 +16527,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
       int puts(const char *s);
       int ungetc(int c, FILE *stream);
 
-
 [<a name="p430" href="#p430">page 430</a>] (<a href="#Contents">Contents</a>)
 
         size_t fread(void * restrict ptr,
@@ -16957,9 +16567,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
              const char * restrict nptr,
              char ** restrict endptr, int base);
 
-
-
-
 [<a name="p431" href="#p431">page 431</a>] (<a href="#Contents">Contents</a>)
 
       unsigned long long int strtoull(
@@ -16998,9 +16605,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
       size_t wcstombs(char * restrict s,
            const wchar_t * restrict pwcs, size_t n);
 
-
-
-
 [<a name="p432" href="#p432">page 432</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B.20" href="#B.20"><b>B.20 String handling &lt;string.h&gt;</b></a>
@@ -17036,9 +16640,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
         char *strerror(int errnum);
         size_t strlen(const char *s);
 
-
-
-
 [<a name="p433" href="#p433">page 433</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B.21" href="#B.21"><b>B.21 Type-generic math &lt;tgmath.h&gt;</b></a>
@@ -17073,9 +16674,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
            const char * restrict format,
            const struct tm * restrict timeptr);
 
-
-
-
 [<a name="p434" href="#p434">page 434</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B.23" href="#B.23"><b>B.23 Extended multibyte/wide character utilities &lt;wchar.h&gt;</b></a>
@@ -17117,8 +16715,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
         wint_t putwchar(wchar_t c);
         wint_t ungetwc(wint_t c, FILE *stream);
 
-
-
 [<a name="p435" href="#p435">page 435</a>] (<a href="#Contents">Contents</a>)
 
       double wcstod(const wchar_t * restrict nptr,
@@ -17205,6 +16801,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
         int   iswupper(wint_t wc);
         int   iswxdigit(wint_t wc);
         int   iswctype(wint_t wc, wctype_t desc);
+
 [<a name="p437" href="#p437">page 437</a>] (<a href="#Contents">Contents</a>)
 
       wctype_t wctype(const char *property);
@@ -17213,9 +16810,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
       wint_t towctrans(wint_t wc, wctrans_t desc);
       wctrans_t wctrans(const char *property);
 
-
-
-
 [<a name="p438" href="#p438">page 438</a>] (<a href="#Contents">Contents</a>)
 
 <a name="C" href="#C"><b>                                          Annex C</b></a>
@@ -17238,9 +16832,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
       also between any call to a comparison function and any movement of the objects
       passed as arguments to that call (<a href="#7.20.5">7.20.5</a>).
 
-
-
-
 [<a name="p439" href="#p439">page 439</a>] (<a href="#Contents">Contents</a>)
 
 <a name="D" href="#D"><b>                                         Annex D</b></a>
@@ -17277,6 +16868,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
                       0AC7-0AC9, 0ACB-0ACD, 0AD0, 0AE0
     Oriya:            0B01-0B03, 0B05-0B0C, 0B0F-0B10, 0B13-0B28, 0B2A-0B30,
                       0B32-0B33, 0B36-0B39, 0B3E-0B43, 0B47-0B48, 0B4B-0B4D,
+
 [<a name="p440" href="#p440">page 440</a>] (<a href="#Contents">Contents</a>)
 
                 0B5C-0B5D, 0B5F-0B61
@@ -17312,9 +16904,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
                    2107, 210A-2113, 2115, 2118-211D, 2124, 2126, 2128, 212A-2131,
                    2133-2138, 2160-2182, 3005-3007, 3021-3029
 
-
-
-
 [<a name="p441" href="#p441">page 441</a>] (<a href="#Contents">Contents</a>)
 
 <a name="E" href="#E"><b>                                         Annex E</b></a>
@@ -17354,6 +16943,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 4   The values given in the following list shall be replaced by implementation-defined
     constant expressions that are greater or equal in magnitude (absolute value) to those
     shown, with the same sign:
+
 [<a name="p442" href="#p442">page 442</a>] (<a href="#Contents">Contents</a>)
 
            #define    DBL_DIG                                        10
@@ -17390,9 +16980,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
            #define    LDBL_EPSILON                               1E-9
            #define    LDBL_MIN                                  1E-37
 
-
-
-
 [<a name="p443" href="#p443">page 443</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F" href="#F"><b>                                               Annex F</b></a>
@@ -17627,7 +17214,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
          efficiency of translation-time evaluation through static initialization, such as
                   const static double one_third = 1.0/3.0;
 
-
 [<a name="p449" href="#p449">page 449</a>] (<a href="#Contents">Contents</a>)
 
     execution time.
@@ -17707,32 +17293,33 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     floating-point exceptions need not be precise: the actual order and number of occurrences
     of floating-point exceptions (&gt; 1) may vary from what the source code expresses. Thus,
     the preceding loop could be treated as
+
 [<a name="p451" href="#p451">page 451</a>] (<a href="#Contents">Contents</a>)
 
             if (0 &lt; n) x + 1;
 <a name="F.8.2" href="#F.8.2"><b>    F.8.2 Expression transformations</b></a>
-1   x / 2 (&lt;-&gt;) x * 0.5                         Although similar transformations involving inexact
+1   x / 2 &lt;-&gt; x * 0.5                         Although similar transformations involving inexact
                                             constants generally do not yield numerically equivalent
                                             expressions, if the constants are exact then such
                                             transformations can be made on IEC 60559 machines
                                             and others that round perfectly.
-    1 * x and x / 1 (-&gt;) x                     The expressions 1 * x, x / 1, and x are equivalent
+    1 * x and x / 1 -&gt; x                     The expressions 1 * x, x / 1, and x are equivalent
                                             (on IEC 60559 machines, among others).<sup><a href="#note317"><b>317)</b></a></sup>
-    x / x (-&gt;) 1.0                             The expressions x / x and 1.0 are not equivalent if x
+    x / x -&gt; 1.0                             The expressions x / x and 1.0 are not equivalent if x
                                             can be zero, infinite, or NaN.
-    x - y (&lt;-&gt;) x + (-y)                        The expressions x - y, x + (-y), and (-y) + x
+    x - y &lt;-&gt; x + (-y)                        The expressions x - y, x + (-y), and (-y) + x
                                             are equivalent (on IEC 60559 machines, among others).
-    x - y (&lt;-&gt;) -(y - x)                        The expressions x - y and -(y - x) are not
+    x - y &lt;-&gt; -(y - x)                        The expressions x - y and -(y - x) are not
                                             equivalent because 1 - 1 is +0 but -(1 - 1) is -0 (in the
                                             default rounding direction).<sup><a href="#note318"><b>318)</b></a></sup>
-    x - x (-&gt;) 0.0                             The expressions x - x and 0.0 are not equivalent if
+    x - x -&gt; 0.0                             The expressions x - x and 0.0 are not equivalent if
                                             x is a NaN or infinite.
-    0 * x (-&gt;) 0.0                             The expressions 0 * x and 0.0 are not equivalent if
+    0 * x -&gt; 0.0                             The expressions 0 * x and 0.0 are not equivalent if
                                             x is a NaN, infinite, or -0.
-    x + 0(-&gt;)x                                 The expressions x + 0 and x are not equivalent if x is
+    x + 0-&gt;x                                 The expressions x + 0 and x are not equivalent if x is
                                             -0, because (-0) + (+0) yields +0 (in the default
                                             rounding direction), not -0.
-    x - 0(-&gt;)x                                 (+0) - (+0) yields -0 when rounding is downward
+    x - 0-&gt;x                                 (+0) - (+0) yields -0 when rounding is downward
                                             (toward -(inf)), but +0 otherwise, and (-0) - (+0) always
                                             yields -0; so, if the state of the FENV_ACCESS pragma
                                             is ''off'', promising default rounding, then the
@@ -17751,13 +17338,13 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 [<a name="p452" href="#p452">page 452</a>] (<a href="#Contents">Contents</a>)
 
                                              might be zero.
-    -x (&lt;-&gt;) 0 - x                               The expressions -x and 0 - x are not equivalent if x
+    -x &lt;-&gt; 0 - x                               The expressions -x and 0 - x are not equivalent if x
                                              is +0, because -(+0) yields -0, but 0 - (+0) yields +0
                                              (unless rounding is downward).
 <a name="F.8.3" href="#F.8.3"><b>    F.8.3 Relational operators</b></a>
-1   x != x (-&gt;) false                           The statement x != x is true if x is a NaN.
-    x == x (-&gt;) true                            The statement x == x is false if x is a NaN.
-    x &lt; y (-&gt;) isless(x,y)                      (and similarly for &lt;=, &gt;, &gt;=) Though numerically
+1   x != x -&gt; false                           The statement x != x is true if x is a NaN.
+    x == x -&gt; true                            The statement x == x is false if x is a NaN.
+    x &lt; y -&gt; isless(x,y)                      (and similarly for &lt;=, &gt;, &gt;=) Though numerically
                                              equal, these expressions are not equivalent because of
                                              side effects when x or y is a NaN and the state of the
                                              FENV_ACCESS pragma is ''on''. This transformation,
@@ -17787,9 +17374,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
                      f();
     nor, unless the state of the FENV_ACCESS pragma is ''off'', to
 
-
-
-
 [<a name="p453" href="#p453">page 453</a>] (<a href="#Contents">Contents</a>)
 
              // calls g without raising ''invalid'' if a and b are unordered
@@ -17932,9 +17516,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 1   -- tanh((+-)0) returns (+-)0.
     -- tanh((+-)(inf)) returns (+-)1.
 
-
-
-
 [<a name="p457" href="#p457">page 457</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.9.3" href="#F.9.3"><b>    F.9.3 Exponential and logarithmic functions</b></a>
@@ -17966,9 +17547,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 1   If the correct result is outside the range of the return type, the numeric result is
     unspecified and the ''invalid'' floating-point exception is raised.
 
-
-
-
 [<a name="p458" href="#p458">page 458</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.9.3.6" href="#F.9.3.6"><b>    F.9.3.6 The ldexp functions</b></a>
@@ -17998,9 +17576,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 1   -- logb((+-)0) returns -(inf) and raises the ''divide-by-zero'' floating-point exception.
     -- logb((+-)(inf)) returns +(inf).
 
-
-
-
 [<a name="p459" href="#p459">page 459</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.9.3.12" href="#F.9.3.12"><b>    F.9.3.12 The modf functions</b></a>
@@ -18034,9 +17609,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 1   -- fabs((+-)0) returns +0.
     -- fabs((+-)(inf)) returns +(inf).
 
-
-
-
 [<a name="p460" href="#p460">page 460</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.9.4.3" href="#F.9.4.3"><b>    F.9.4.3 The hypot functions</b></a>
@@ -18066,9 +17638,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- pow(+(inf), y) returns +0 for y &lt; 0.
     -- pow(+(inf), y) returns +(inf) for y &gt; 0.
 
-
-
-
 [<a name="p461" href="#p461">page 461</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.9.4.5" href="#F.9.4.5"><b>    F.9.4.5 The sqrt functions</b></a>
@@ -18099,9 +17668,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- ceil((+-)(inf)) returns (+-)(inf).
 2   The double version of ceil behaves as though implemented by
 
-
-
-
 [<a name="p462" href="#p462">page 462</a>] (<a href="#Contents">Contents</a>)
 
            #include <a href="#7.12">&lt;math.h&gt;</a>
@@ -18137,9 +17703,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     exception and the result differs from the argument, they raise the ''inexact'' floating-point
     exception.
 
-
-
-
 [<a name="p463" href="#p463">page 463</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.9.6.6" href="#F.9.6.6"><b>    F.9.6.6 The round functions</b></a>
@@ -18175,9 +17738,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- trunc((+-)0) returns (+-)0.
     -- trunc((+-)(inf)) returns (+-)(inf).
 
-
-
-
 [<a name="p464" href="#p464">page 464</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.9.7" href="#F.9.7"><b>    F.9.7 Remainder functions</b></a>
@@ -18209,9 +17769,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 <a name="F.9.8.2" href="#F.9.8.2"><b>    F.9.8.2 The nan functions</b></a>
 1   All IEC 60559 implementations support quiet NaNs, in all floating formats.
 
-
-
-
 [<a name="p465" href="#p465">page 465</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.9.8.3" href="#F.9.8.3"><b>    F.9.8.3 The nextafter functions</b></a>
@@ -18279,9 +17836,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     of its parts is a finite number (neither infinite nor NaN). A complex or imaginary value is
     a zero if each of its parts is a zero.
 
-
-
-
 [<a name="p467" href="#p467">page 467</a>] (<a href="#Contents">Contents</a>)
 
 <a name="G.4" href="#G.4"><b>    G.4 Conversions</b></a>
@@ -18503,7 +18057,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     shown. Unless otherwise specified, where the symbol ''(+-)'' occurs in both an argument
     and the result, the result has the same sign as the argument.
 3   The functions are continuous onto both sides of their branch cuts, taking into account the
-    sign of zero. For example, csqrt(-2 (+-) i0) = (+-)isqrt:2.  ???
+    sign of zero. For example, csqrt(-2 (+-) i0) = (+-)i(sqrt)2.  ???
 4   Since complex and imaginary values are composed of real values, each function may be
     regarded as computing real values from real values. Except as noted, the functions treat
     real infinities, NaNs, signed zeros, subnormals, and the floating-point exception flags in a
@@ -18570,7 +18124,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- cacosh(+(inf) + i (inf)) returns +(inf) + ipi /4.
     -- cacosh((+-)(inf) + iNaN) returns +(inf) + iNaN.
 
-
 [<a name="p474" href="#p474">page 474</a>] (<a href="#Contents">Contents</a>)
 
     -- cacosh(NaN + iy) returns NaN + iNaN and optionally raises the ''invalid''
@@ -18640,6 +18193,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
       unspecified) and raises the ''invalid'' floating-point exception.
     -- csinh(+0 + iNaN) returns (+-)0 + iNaN (where the sign of the real part of the result is
       unspecified).
+
 [<a name="p476" href="#p476">page 476</a>] (<a href="#Contents">Contents</a>)
 
     -- csinh(x + i (inf)) returns NaN + iNaN and raises the ''invalid'' floating-point
@@ -18673,9 +18227,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
       point exception, for all nonzero numbers y.
     -- ctanh(NaN + iNaN) returns NaN + iNaN.
 
-
-
-
 [<a name="p477" href="#p477">page 477</a>] (<a href="#Contents">Contents</a>)
 
 <a name="G.6.3" href="#G.6.3"><b>    G.6.3 Exponential and logarithmic functions</b></a>
@@ -18770,9 +18321,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
            asinh(iy)    =   i asin(y)
            atanh(iy)    =   i atan(y)
 
-
-
-
 [<a name="p480" href="#p480">page 480</a>] (<a href="#Contents">Contents</a>)
 
 <a name="H" href="#H"><b>                                          Annex H</b></a>
@@ -18804,9 +18352,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 3   The parameter ''bounded'' is always true, and is not provided. The parameter ''minint''
     is always 0 for the unsigned types, and is not provided for those types.
 
-
-
-
 [<a name="p481" href="#p481">page 481</a>] (<a href="#Contents">Contents</a>)
 
 <a name="H.2.2.1" href="#H.2.2.1"><b>    H.2.2.1 Integer operations</b></a>
@@ -18840,7 +18385,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     emin           FLT_MIN_EXP, DBL_MIN_EXP, LDBL_MIN_EXP
 2   The derived constants for the floating point types are accessed by the following:
 
-
 [<a name="p482" href="#p482">page 482</a>] (<a href="#Contents">Contents</a>)
 
     fmax          FLT_MAX, DBL_MAX, LDBL_MAX
@@ -18882,14 +18426,14 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     in all relevant LIA-1 operations, not just addition as in C.
 <a name="H.2.4" href="#H.2.4"><b>    H.2.4 Type conversions</b></a>
 1   The LIA-1 type conversions are the following type casts:
-    cvtI' (-&gt;) I      (int)i, (long int)i, (long long int)i,
+    cvtI' -&gt; I      (int)i, (long int)i, (long long int)i,
                    (unsigned int)i, (unsigned long int)i,
                    (unsigned long long int)i
-    cvtF (-&gt;) I       (int)x, (long int)x, (long long int)x,
+    cvtF -&gt; I       (int)x, (long int)x, (long long int)x,
                    (unsigned int)x, (unsigned long int)x,
                    (unsigned long long int)x
-    cvtI (-&gt;) F       (float)i, (double)i, (long double)i
-    cvtF' (-&gt;) F      (float)x, (double)x, (long double)x
+    cvtI -&gt; F       (float)i, (double)i, (long double)i
+    cvtF' -&gt; F      (float)x, (double)x, (long double)x
 2   In the above conversions from floating to integer, the use of (cast)x can be replaced with
     (cast)round(x), (cast)rint(x), (cast)nearbyint(x), (cast)trunc(x),
     (cast)ceil(x), or (cast)floor(x). In addition, C's floating-point to integer
@@ -18909,9 +18453,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 5   C's conversions (casts) from integer to floating-point can meet LIA-1 requirements if an
     implementation uses round-to-nearest.
 
-
-
-
 [<a name="p484" href="#p484">page 484</a>] (<a href="#Contents">Contents</a>)
 
 <a name="H.3" href="#H.3"><b>    H.3 Notification</b></a>
@@ -18948,6 +18489,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     where i is an expression of type int representing a subset of the LIA-1 indicators.
 4   C allows an implementation to provide the following LIA-1 required behavior: at
     program termination if any indicator is set the implementation shall send an unambiguous
+
 [<a name="p485" href="#p485">page 485</a>] (<a href="#Contents">Contents</a>)
 
     and ''hard to ignore'' message (see LIA-1 subclause <a href="#6.1.2">6.1.2</a>)
@@ -18967,9 +18509,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     terminate (either default implementation behavior or user replacement for it) or trap-and-
     resume, at the programmer's option.
 
-
-
-
 [<a name="p486" href="#p486">page 486</a>] (<a href="#Contents">Contents</a>)
 
 <a name="I" href="#I"><b>                                           Annex I</b></a>
@@ -19005,15 +18544,13 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- A statement with no apparent effect is encountered (<a href="#6.8">6.8</a>).
     -- A constant expression is used as the controlling expression of a selection statement
       (<a href="#6.8.4">6.8.4</a>).
+
 [<a name="p487" href="#p487">page 487</a>] (<a href="#Contents">Contents</a>)
 
 -- An incorrectly formed preprocessing group is encountered while skipping a
   preprocessing group (<a href="#6.10.1">6.10.1</a>).
 -- An unrecognized #pragma directive is encountered (<a href="#6.10.6">6.10.6</a>).
 
-
-
-
 [<a name="p488" href="#p488">page 488</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J" href="#J"><b>                                            Annex J</b></a>
@@ -19048,6 +18585,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- The order in which subexpressions are evaluated and the order in which side effects
       take place, except as specified for the function-call (), &amp;&amp;, ||, ?:, and comma
       operators (<a href="#6.5">6.5</a>).
+
 [<a name="p489" href="#p489">page 489</a>] (<a href="#Contents">Contents</a>)
 
 -- The order in which the function designator, arguments, and subexpressions within the
@@ -19121,8 +18659,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- Whether conversion of non-integer IEC 60559 floating values to integer raises the
   ''inexact'' floating-point exception (<a href="#F.4">F.4</a>).
 
-
-
 [<a name="p491" href="#p491">page 491</a>] (<a href="#Contents">Contents</a>)
 
     -- Whether or when library functions in <a href="#7.12">&lt;math.h&gt;</a> raise the ''inexact'' floating-point
@@ -19196,7 +18732,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- Two identifiers differ only in nonsignificant characters (<a href="#6.4.2.1">6.4.2.1</a>).
 -- The identifier __func__ is explicitly declared (<a href="#6.4.2.2">6.4.2.2</a>).
 
-
 [<a name="p493" href="#p493">page 493</a>] (<a href="#Contents">Contents</a>)
 
 -- The program attempts to modify a string literal (<a href="#6.4.5">6.4.5</a>).
@@ -19273,7 +18808,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
   than extern (<a href="#6.7.1">6.7.1</a>).
 -- A structure or union is defined as containing no named members (<a href="#6.7.2.1">6.7.2.1</a>).
 
-
 [<a name="p495" href="#p495">page 495</a>] (<a href="#Contents">Contents</a>)
 
 -- An attempt is made to access, or generate a pointer to just past, a flexible array
@@ -19312,6 +18846,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
    compatible return types, or their parameters disagree in use of the ellipsis terminator
    or the number and type of parameters (after default argument promotion, when there
     is no parameter type list or when one type is specified by a function definition with an
+
 [<a name="p496" href="#p496">page 496</a>] (<a href="#Contents">Contents</a>)
 
    identifier list) (<a href="#6.7.5.3">6.7.5.3</a>).
@@ -19386,6 +18921,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- The argument to the assert macro does not have a scalar type (<a href="#7.2">7.2</a>).
 -- The CX_LIMITED_RANGE, FENV_ACCESS, or FP_CONTRACT pragma is used in
   any context other than outside all external declarations or preceding all explicit
+
 [<a name="p498" href="#p498">page 498</a>] (<a href="#Contents">Contents</a>)
 
    declarations and statements inside a compound statement (<a href="#7.3.4">7.3.4</a>, <a href="#7.6.1">7.6.1</a>, <a href="#7.12.2">7.12.2</a>).
@@ -19462,6 +18998,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- The parameter parmN of a va_start macro is declared with the register
   storage class, with a function or array type, or with a type that is not compatible with
   the type that results after application of the default argument promotions (<a href="#7.15.1.4">7.15.1.4</a>).
+
 [<a name="p500" href="#p500">page 500</a>] (<a href="#Contents">Contents</a>)
 
 -- The member designator parameter of an offsetof macro is an invalid right
@@ -19500,7 +19037,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- A conversion specification for a formatted output function uses a # or 0 flag with a
   conversion specifier other than those described (<a href="#7.19.6.1">7.19.6.1</a>, <a href="#7.24.2.1">7.24.2.1</a>).
 
-
 [<a name="p501" href="#p501">page 501</a>] (<a href="#Contents">Contents</a>)
 
 -- A conversion specification for one of the formatted input/output functions uses a
@@ -19540,6 +19076,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
   <a href="#7.24.2.5">7.24.2.5</a>, <a href="#7.24.2.6">7.24.2.6</a>, <a href="#7.24.2.7">7.24.2.7</a>, <a href="#7.24.2.8">7.24.2.8</a>, <a href="#7.24.2.9">7.24.2.9</a>, <a href="#7.24.2.10">7.24.2.10</a>).
 -- The contents of the array supplied in a call to the fgets, gets, or fgetws function
   are used after a read error occurred (<a href="#7.19.7.2">7.19.7.2</a>, <a href="#7.19.7.7">7.19.7.7</a>, <a href="#7.24.3.2">7.24.3.2</a>).
+
 [<a name="p502" href="#p502">page 502</a>] (<a href="#Contents">Contents</a>)
 
 -- The file position indicator for a binary stream is used after a call to the ungetc
@@ -19577,7 +19114,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
   contents of the array being searched or sorted, or returns ordering values
   inconsistently (<a href="#7.20.5">7.20.5</a>).
 
-
 [<a name="p503" href="#p503">page 503</a>] (<a href="#Contents">Contents</a>)
 
 -- The array being searched by the bsearch function does not have its elements in
@@ -19614,9 +19150,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
   one in effect for the call to the wctrans function that returned the description
   (<a href="#7.25.3.2.1">7.25.3.2.1</a>).
 
-
-
-
 [<a name="p504" href="#p504">page 504</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.3" href="#J.3"><b>    J.3 Implementation-defined behavior</b></a>
@@ -19648,9 +19181,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
       correspondence to universal character names (<a href="#6.4.2">6.4.2</a>).
     -- The number of significant initial characters in an identifier (<a href="#5.2.4.1">5.2.4.1</a>, <a href="#6.4.2">6.4.2</a>).
 
-
-
-
 [<a name="p505" href="#p505">page 505</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.3.4" href="#J.3.4"><b>    J.3.4 Characters</b></a>
@@ -19687,8 +19217,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- The result of, or the signal raised by, converting an integer to a signed integer type
       when the value cannot be represented in an object of that type (<a href="#6.3.1.3">6.3.1.3</a>).
 
-
-
 [<a name="p506" href="#p506">page 506</a>] (<a href="#Contents">Contents</a>)
 
     -- The results of some bitwise operations on signed integers (<a href="#6.5">6.5</a>).
@@ -19720,9 +19248,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- The size of the result of subtracting two pointers to elements of the same array
       (<a href="#6.5.6">6.5.6</a>).
 
-
-
-
 [<a name="p507" href="#p507">page 507</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.3.8" href="#J.3.8"><b>    J.3.8 Hints</b></a>
@@ -19795,8 +19320,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- The base-2 logarithm of the modulus used by the remquo functions in reducing the
       quotient (<a href="#7.12.10.3">7.12.10.3</a>).
 
-
-
 [<a name="p509" href="#p509">page 509</a>] (<a href="#Contents">Contents</a>)
 
 -- Whether a domain error occurs or zero is returned when a remquo function has a
@@ -19833,6 +19356,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- The interpretation of a - character that is neither the first nor the last character, nor
     the second where a ^ character is the first, in the scanlist for %[ conversion in the
    fscanf or fwscanf function (<a href="#7.19.6.2">7.19.6.2</a>, <a href="#7.24.2.1">7.24.2.1</a>).
+
 [<a name="p510" href="#p510">page 510</a>] (<a href="#Contents">Contents</a>)
 
     -- The set of sequences matched by a %p conversion and the interpretation of the
@@ -19867,9 +19391,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
       in this International Standard) (<a href="#6.2.6.1">6.2.6.1</a>).
     -- The value of the result of the sizeof operator (<a href="#6.5.3.4">6.5.3.4</a>).
 
-
-
-
 [<a name="p511" href="#p511">page 511</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.4" href="#J.4"><b>    J.4 Locale-specific behavior</b></a>
@@ -19898,9 +19419,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- Character mappings that are supported by the towctrans function (<a href="#7.25.1">7.25.1</a>).
     -- Character classifications that are supported by the iswctype function (<a href="#7.25.1">7.25.1</a>).
 
-
-
-
 [<a name="p512" href="#p512">page 512</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.5" href="#J.5"><b>    J.5 Common extensions</b></a>
@@ -19932,9 +19450,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     more range or precision than long double, may be used for evaluating expressions of
     other floating types, and may be used to define float_t or double_t.
 
-
-
-
 [<a name="p513" href="#p513">page 513</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.5.7" href="#J.5.7"><b>    J.5.7 Function pointer casts</b></a>
@@ -19966,9 +19481,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     registered by the atexit function have been made (see <a href="#7.20.4.3">7.20.4.3</a>), the implementation
     writes some diagnostics indicating the fact to the stderr stream, if it is still open,
 
-
-
-
 [<a name="p514" href="#p514">page 514</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.5.14" href="#J.5.14"><b>    J.5.14 Extra arguments for signal handlers</b></a>
@@ -19987,9 +19499,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     instead of, or in addition to, setting errno or raising floating-point exceptions (<a href="#7.3">7.3</a>,
 <a name="7.12)" href="#7.12)"><b>    7.12).</b></a>
 
-
-
-
 [<a name="p515" href="#p515">page 515</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -20056,13 +19565,9 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
  33. ISO/IEC 10967-1:1994, Information technology -- Language independent
      arithmetic -- Part 1: Integer and floating point arithmetic.
 
-
-
-
 [<a name="p517" href="#p517">page 517</a>] (<a href="#Contents">Contents</a>)
 
 
-
 [<a name="p518" href="#p518">page 518</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -20117,6 +19622,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 ++ (prefix increment operator), <a href="#6.3.2.1">6.3.2.1</a>, <a href="#6.5.3.1">6.5.3.1</a>                <a href="#7.18">&lt;stdint.h&gt;</a> header, <a href="#4">4</a>, <a href="#5.2.4.2">5.2.4.2</a>, <a href="#6.10.1">6.10.1</a>, <a href="#7.8">7.8</a>,
 += (addition assignment operator), <a href="#6.5.16.2">6.5.16.2</a>                         <a href="#7.18">7.18</a>, <a href="#7.26.8">7.26.8</a>
 , (comma operator), <a href="#6.5.17">6.5.17</a>
+
 [<a name="p519" href="#p519">page 519</a>] (<a href="#Contents">Contents</a>)
 
 <a href="#7.19">&lt;stdio.h&gt;</a> header, <a href="#5.2.4.2.2">5.2.4.2.2</a>, <a href="#7.19">7.19</a>, <a href="#7.26.9">7.26.9</a>, <a href="#F">F</a>                 __cplusplus macro, <a href="#6.10.8">6.10.8</a>
index 3eeb1c7..7ea055b 100644 (file)
--- a/n1256.txt
+++ b/n1256.txt
@@ -42,7 +42,6 @@ Introduction     . . . . . . . . . . . . . . . . . . . . . . . . . . . .
         6.4.9 Comments         . . . . . . . . .         .   .   .   .   .   .    .   .   .   .   .   .   66
    6.5 Expressions     . . . . . . . . . . . .           .   .   .   .   .   .    .   .   .   .   .   .   67
 
-
 [page iii]
 
           6.5.1   Primary expressions      . . .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    69
@@ -306,13 +305,9 @@ Annex J (informative) Portability issues      . . . .         .   .   .   .   .
 Bibliography      . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
 Index     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
 
-
-
-
 [page ix]
 
 
-
 [page x]
 
     Foreword
@@ -353,7 +348,6 @@ Index     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
     -- type-generic math macros in <tgmath.h>
     -- the long long int type and library functions
 
-
 [page xi]
 
 -- increased minimum translation limits
@@ -388,7 +382,6 @@ Index     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
 -- idempotent type qualifiers
 -- empty macro arguments
 
-
 [page xii]
 
     -- new structure type compatibility rules (tag compatibility)
@@ -411,9 +404,6 @@ Index     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
     ISO/IEC Directives, this foreword, the introduction, notes, footnotes, and examples are
     also for information only.
 
-
-
-
 [page xiii]
 
     Introduction
@@ -440,9 +430,6 @@ Index     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
 5   The language clause (clause 6) is derived from ''The C Reference Manual''.
 6   The library clause (clause 7) is based on the 1984 /usr/group Standard.
 
-
-
-
 [page xiv]
 
 
@@ -504,9 +491,6 @@ Index     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
 8   IEC 60559:1989, Binary floating-point arithmetic for microprocessor systems (previously
     designated IEC 559:1989).
 
-
-
-
 [page 2]
 
 
@@ -551,7 +535,6 @@ Index     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
     behavior that depends on local conventions of nationality, culture, and language that each
     implementation documents
 
-
 [page 3]
 
 2   EXAMPLE An example of locale-specific behavior is whether the islower function returns true for
@@ -600,6 +583,7 @@ Index     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
 1   character
     single-byte character
     <C> bit representation that fits in a byte
+
 [page 4]
 
     3.7.2
@@ -681,9 +665,6 @@ Index     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
     floor of x: the greatest integer less than or equal to x
 2   EXAMPLE       ???2.4??? is 2, ???-2.4??? is -3.
 
-
-
-
 [page 6]
 
 
@@ -994,9 +975,6 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
      that the result would be the same as if it were executed using double-precision arithmetic (for example, if d
      were replaced by the constant 2.0, which has type double).
 
-
-
-
 [page 14]
 
 12   EXAMPLE 4 Implementations employing wide registers have to take care to honor appropriate
@@ -1044,9 +1022,6 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
      above expression statement can be rewritten by the implementation in any of the above ways because the
      same result will occur.
 
-
-
-
 [page 15]
 
 15   EXAMPLE 7 The grouping of an expression does not completely determine its evaluation. In the
@@ -1065,9 +1040,6 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
      Forward references: expressions (6.5), type qualifiers (6.7.3), statements (6.8), the
      signal function (7.14), files (7.19.3).
 
-
-
-
 [page 16]
 
     5.2 Environmental considerations
@@ -1185,6 +1157,7 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
        tabulation position, the behavior of the display device is unspecified.
     \v (vertical tab) Moves the active position to the initial position of the next vertical
         tabulation position. If the active position is at or past the last defined vertical
+
 [page 19]
 
          tabulation position, the behavior of the display device is unspecified.
@@ -1295,7 +1268,6 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
 -- maximum value for an object of type unsigned long int
   ULONG_MAX                         4294967295 // 232 - 1
 
-
 [page 22]
 
     -- minimum value for an object of type long long int
@@ -1461,6 +1433,7 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
      implementation-defined (positive) values that are less than or equal to those shown:
      -- the difference between 1 and the least value greater than 1 that is representable in the
         given floating point type, b1- p
+
 [page 26]
 
          FLT_EPSILON                                         1E-5
@@ -1547,9 +1520,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 (7.24), floating-point environment <fenv.h> (7.6), general utilities <stdlib.h>
 (7.20), input/output <stdio.h> (7.19), mathematics <math.h> (7.12).
 
-
-
-
 [page 28]
 
 
@@ -1589,6 +1559,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     declares the identifier appears inside a block or within the list of parameter declarations in
     a function definition, the identifier has block scope, which terminates at the end of the
     associated block. If the declarator or type specifier that declares the identifier appears
+
 [page 29]
 
     within the list of parameter declarations in a function prototype (not part of a function
@@ -2051,9 +2022,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     The resulting composite type for the function is:
              int f(int (*)(char *), double (*)[3]);
 
-
-
-
 [page 41]
 
     6.3 Conversions
@@ -2300,9 +2268,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Forward references: cast operators (6.5.4), equality operators (6.5.9), integer types
     capable of holding object pointers (7.18.1.4), simple assignment (6.5.16.1).
 
-
-
-
 [page 48]
 
     6.4 Lexical elements
@@ -2536,9 +2501,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
              octal-digit: one of
                      0 1 2 3         4     5     6   7
 
-
-
-
 [page 54]
 
            hexadecimal-digit:   one of
@@ -2570,9 +2532,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 5   The type of an integer constant is the first of the corresponding list in which its value can
     be represented.
 
-
-
-
 [page 55]
 
                                                                      Octal or Hexadecimal
@@ -2610,9 +2569,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     may be signed or unsigned. If an integer constant cannot be represented by any type in
     its list and has no extended integer type, then the integer constant has no type.
 
-
-
-
 [page 56]
 
     6.4.4.2 Floating constants
@@ -2730,8 +2686,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                    \x hexadecimal-digit
                    hexadecimal-escape-sequence hexadecimal-digit
 
-
-
 [page 59]
 
     Description
@@ -2819,9 +2773,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
      Forward references: common definitions <stddef.h> (7.17), the mbtowc function
      (7.20.7.2).
 
-
-
-
 [page 61]
 
     6.4.5 String literals
@@ -2895,9 +2846,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     in which case it is known as an operator (other forms of operator also exist in some
     contexts). An operand is an entity on which an operator acts.
 
-
-
-
 [page 63]
 
 3   In all aspects of the language, the six tokens67)
@@ -3164,9 +3112,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Forward references: additive operators (6.5.6), address and indirection operators
     (6.5.3.2), array declarators (6.7.5.2).
 
-
-
-
 [page 70]
 
     6.5.2.2 Function calls
@@ -3247,9 +3192,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
      structure'' or ''pointer to qualified or unqualified union'', and the second operand shall
      name a member of the type pointed to.
 
-
-
-
 [page 72]
 
     Semantics
@@ -3339,9 +3281,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Forward references: address and indirection operators (6.5.3.2), structure and union
     specifiers (6.7.2.1).
 
-
-
-
 [page 74]
 
     6.5.2.4 Postfix increment and decrement operators
@@ -3467,9 +3406,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 
      Forward references: type names (6.7.6), initialization (6.7.8).
 
-
-
-
 [page 77]
 
     6.5.3 Unary operators
@@ -3709,6 +3645,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     object of type ptrdiff_t. Moreover, if the expression P points either to an element of
     an array object or one past the last element of an array object, and the expression Q points
     to the last element of the same array object, the expression ((Q)+1)-(P) has the same
+
 [page 83]
 
      value as ((Q)-(P))+1 and as -((P)-((Q)+1)), and has the value zero if the
@@ -3896,9 +3833,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     the result is set if and only if at least one of the corresponding bits in the converted
     operands is set).
 
-
-
-
 [page 88]
 
     6.5.13 Logical AND operator
@@ -3928,9 +3862,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     a sequence point after the evaluation of the first operand. If the first operand compares
     unequal to 0, the second operand is not evaluated.
 
-
-
-
 [page 89]
 
     6.5.15 Conditional operator
@@ -4011,7 +3942,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     the result of an assignment operator or to access it after the next sequence point, the
     behavior is undefined.
 
-
 [page 91]
 
     6.5.16.1 Simple assignment
@@ -4089,9 +4019,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 3   A compound assignment of the form E1 op = E2 differs from the simple assignment
     expression E1 = E1 op (E2) only in that the lvalue E1 is evaluated only once.
 
-
-
-
 [page 93]
 
     6.5.17 Comma operator
@@ -4303,7 +4230,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     -- unsigned short, or unsigned short int
     -- int, signed, or signed int
 
-
 [page 99]
 
     -- unsigned, or unsigned int
@@ -4377,7 +4303,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 4   A bit-field shall have a type that is a qualified or unqualified version of _Bool, signed
     int, unsigned int, or some other implementation-defined type.
 
-
 [page 101]
 
      Semantics
@@ -4458,9 +4383,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
      not be the same).
 18   Following the above declaration:
 
-
-
-
 [page 103]
 
               struct s t1 = { 0 };                        //   valid
@@ -4808,9 +4730,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
      function call and an equivalent nested block. With one exception, only ''outer-to-inner'' assignments
      between restricted pointers declared in nested blocks have defined behavior.
 
-
-
-
 [page 111]
 
               {
@@ -4855,6 +4774,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
      implementation-defined.121)
 6    Any function with internal linkage can be an inline function. For a function with external
      linkage, the following restrictions apply: If a function is declared with an inline
+
 [page 112]
 
     function specifier, then it shall also be defined in the same translation unit. If all of the
@@ -4942,6 +4862,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     scope, storage duration, and type indicated by the declaration specifiers.
 3   A full declarator is a declarator that is not part of another declarator. The end of a full
     declarator is a sequence point. If, in the nested sequence of declarators in a full
+
 [page 114]
 
     declarator, there is a declarator specifying a variable length array type, the type specified
@@ -4977,9 +4898,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 3   EXAMPLE The following pair of declarations demonstrates the difference between a ''variable pointer
     to a constant value'' and a ''constant pointer to a variable value''.
 
-
-
-
 [page 115]
 
              const int *ptr_to_constant;
@@ -5194,9 +5112,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
      The pointer returned by fpfi points to a function that has one int parameter and accepts zero or more
      additional arguments of any type.
 
-
-
-
 [page 120]
 
 20   EXAMPLE 4        The following prototype has a variably modified parameter.
@@ -5232,9 +5147,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 
      Forward references: function definitions (6.9.1), type names (6.7.6).
 
-
-
-
 [page 121]
 
     6.7.6 Type names
@@ -5320,9 +5232,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     type t1 and the type pointed to by tp1 are compatible. Type t1 is also compatible with type struct
     s1, but not compatible with the types struct s2, t2, the type pointed to by tp2, or int.
 
-
-
-
 [page 123]
 
 6   EXAMPLE 3       The following obscure constructions
@@ -5367,9 +5276,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                         a[i-1] = b[i];
             }
 
-
-
-
 [page 124]
 
     6.7.8 Initialization
@@ -5407,6 +5313,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
              . identifier
     then the current object (defined below) shall have structure or union type and the
     identifier shall be the name of a member of that type.
+
 [page 125]
 
      Semantics
@@ -5445,6 +5352,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 17   Each brace-enclosed initializer list has an associated current object. When no
      designations are present, subobjects of the current object are initialized in order according
      to the type of the current object: array elements in increasing subscript order, structure
+
 [page 126]
 
      members in declaration order, and the first named member of a union.129) In contrast, a
@@ -5581,8 +5489,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                int a[] = { 1, 2 }, b[] = { 3, 4, 5 };
      due to the rules for incomplete types.
 
-
-
 [page 129]
 
 32   EXAMPLE 8       The declaration
@@ -5625,9 +5531,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 
      Forward references: common definitions <stddef.h> (7.17).
 
-
-
-
 [page 130]
 
     6.8 Statements and blocks
@@ -5666,7 +5569,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 2   A case or default label shall appear only in a switch statement. Further
     constraints on such labels are discussed under the switch statement.
 
-
 [page 131]
 
 3   Label names shall be unique within a function.
@@ -5902,9 +5804,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                     /* ... */
             }
 
-
-
-
 [page 137]
 
 4   EXAMPLE 2 A goto statement is not allowed to jump past any declarations of objects with variably
@@ -6070,7 +5969,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                   int (*fp)(void);                              //   fp points to a function that has type F
                   F *Fp;                                        //   Fp points to a function that has type F
 
-
 [page 141]
 
      Semantics
@@ -6153,9 +6051,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 3    If the declaration of an identifier for an object is a tentative definition and has internal
      linkage, the declared type shall not be an incomplete type.
 
-
-
-
 [page 143]
 
 4   EXAMPLE 1
@@ -6180,9 +6075,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     the array i still has incomplete type, the implicit initializer causes it to have one element, which is set to
     zero on program startup.
 
-
-
-
 [page 144]
 
     6.10 Preprocessing directives
@@ -6213,9 +6105,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
              endif-line:
                      # endif      new-line
 
-
-
-
 [page 145]
 
              control-line:
@@ -6538,9 +6427,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     string literal corresponding to an empty argument is "". The order of evaluation of # and
     ## operators is unspecified.
 
-
-
-
 [page 153]
 
     6.10.3.3 The ## operator
@@ -6619,9 +6505,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
             #define max(a, b) ((a) > (b) ? (a) : (b))
     The parentheses ensure that the arguments and the resulting expression are bound properly.
 
-
-
-
 [page 155]
 
 5   EXAMPLE 3     To illustrate the rules for redefinition and reexamination, the sequence
@@ -6669,9 +6552,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
              xglue(HIGH, LOW)
     results in
 
-
-
-
 [page 156]
 
              printf("x" "1" "= %d, x" "2" "= %s", x1, x2);
@@ -6722,7 +6602,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
              showlist(The first, second, and third items.);
              report(x>y, "x is %d but y is %d", x, y);
 
-
 [page 157]
 
     results in
@@ -6757,9 +6636,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     tokens). The directive resulting after all replacements shall match one of the two
     previous forms and is then processed as appropriate.
 
-
-
-
 [page 158]
 
     6.10.5 Error directive
@@ -6876,6 +6752,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 2   EXAMPLE       A directive of the form:
              #pragma listing on "..\listing.dir"
     can also be expressed as:
+
 [page 161]
 
         _Pragma ( "listing on \"..\\listing.dir\"" )
@@ -6885,9 +6762,6 @@ replacement, as in:
         #define PRAGMA(x) _Pragma(#x)
         LISTING ( ..\listing.dir )
 
-
-
-
 [page 162]
 
     6.11 Future language directions
@@ -6918,9 +6792,6 @@ replacement, as in:
     6.11.9 Predefined macro names
 1   Macro names beginning with __STDC_ are reserved for future standardization.
 
-
-
-
 [page 163]
 
 
@@ -7109,9 +6980,6 @@ replacement, as in:
                 /* ... */
                 i = atoi(str);
 
-
-
-
 [page 168]
 
     7.2 Diagnostics <assert.h>
@@ -7150,7 +7018,6 @@ replacement, as in:
     165) The message written might be of the form:
          Assertion failed: expression, function abc, file xyz, line nnn.
 
-
 [page 169]
 
     7.3 Complex arithmetic <complex.h>
@@ -7224,7 +7091,7 @@ replacement, as in:
     169) The purpose of the pragma is to allow the implementation to use the formulas:
              (x + iy) x (u + iv) = (xu - yv) + i(yu + xv)
              (x + iy) / (u + iv) = [(xu + yv) + i(yu - xv)]/(u2 + v 2 )
-             | x + iy | = sqrt: x 2 + y 2
+             | x + iy | = (sqrt) x 2 + y 2
                           ???????????????
          where the programmer can determine they are safe.
 
@@ -7338,7 +7205,6 @@ replacement, as in:
 2   The casinh functions compute the complex arc hyperbolic sine of z, with branch cuts
     outside the interval [-i, +i] along the imaginary axis.
 
-
 [page 174]
 
     Returns
@@ -7375,7 +7241,6 @@ replacement, as in:
            float complex csinhf(float complex z);
            long double complex csinhl(long double complex z);
 
-
 [page 175]
 
     Description
@@ -7410,8 +7275,6 @@ replacement, as in:
            float complex clogf(float complex z);
            long double complex clogl(long double complex z);
 
-
-
 [page 176]
 
     Description
@@ -7446,9 +7309,6 @@ replacement, as in:
     Returns
 3   The cpow functions return the complex power function value.
 
-
-
-
 [page 177]
 
     7.3.8.3 The csqrt functions
@@ -7482,9 +7342,6 @@ replacement, as in:
            float cimagf(float complex z);
            long double cimagl(long double complex z);
 
-
-
-
 [page 178]
 
     Description
@@ -7684,9 +7541,6 @@ replacement, as in:
     the tolower function returns one of the corresponding characters (always the same one
     for any given locale); otherwise, the argument is returned unchanged.
 
-
-
-
 [page 184]
 
     7.4.2.2 The toupper function
@@ -7701,9 +7555,6 @@ replacement, as in:
     the toupper function returns one of the corresponding characters (always the same one
     for any given locale); otherwise, the argument is returned unchanged.
 
-
-
-
 [page 185]
 
     7.5 Errors <errno.h>
@@ -8017,7 +7868,6 @@ replacement, as in:
 3   The fesetround function returns zero if and only if the requested rounding direction
     was established.
 
-
 [page 193]
 
 4   EXAMPLE Save, set, and restore the rounding direction. Report an error and abort if setting the
@@ -8120,9 +7970,6 @@ replacement, as in:
                 return result;
           }
 
-
-
-
 [page 196]
 
     7.7 Characteristics of floating types <float.h>
@@ -8131,9 +7978,6 @@ replacement, as in:
 2   The macros, their meanings, and the constraints (or restrictions) on their values are listed
     in 5.2.4.2.2.
 
-
-
-
 [page 197]
 
     7.8 Format conversion of integer types <inttypes.h>
@@ -8249,8 +8093,6 @@ replacement, as in:
     Forward references: the strtol, strtoll, strtoul, and strtoull functions
     (7.20.1.4).
 
-
-
 [page 200]
 
     7.8.2.4 The wcstoimax and wcstoumax functions
@@ -8274,9 +8116,6 @@ replacement, as in:
     Forward references: the wcstol, wcstoll, wcstoul, and wcstoull functions
     (7.24.4.1.2).
 
-
-
-
 [page 201]
 
     7.9 Alternative spellings <iso646.h>
@@ -8294,9 +8133,6 @@ replacement, as in:
           xor          ^
           xor_eq       ^=
 
-
-
-
 [page 202]
 
     7.10 Sizes of integer types <limits.h>
@@ -8305,9 +8141,6 @@ replacement, as in:
 2   The macros, their meanings, and the constraints (or restrictions) on their values are listed
     in 5.2.4.2.1.
 
-
-
-
 [page 203]
 
     7.11 Localization <locale.h>
@@ -8343,9 +8176,6 @@ replacement, as in:
            char   int_p_sign_posn;                //   CHAR_MAX
            char   int_n_sign_posn;                //   CHAR_MAX
 
-
-
-
 [page 204]
 
 3   The macros defined are NULL (described in 7.17); and
@@ -8462,7 +8292,6 @@ char n_cs_precedes
           Set to 1 or 0 if the currency_symbol respectively precedes or
           succeeds the value for a negative locally formatted monetary quantity.
 
-
 [page 207]
 
 char p_sep_by_space
@@ -8501,9 +8330,6 @@ char int_p_sep_by_space
           sign string, and the value for a nonnegative internationally formatted
           monetary quantity.
 
-
-
-
 [page 208]
 
     char int_n_sep_by_space
@@ -8541,7 +8367,6 @@ char int_p_sep_by_space
     3   The sign string immediately precedes the currency symbol.
     4   The sign string immediately succeeds the currency symbol.
 
-
 [page 209]
 
 7    The implementation shall behave as if no library function calls the localeconv
@@ -8588,9 +8413,6 @@ char int_p_sep_by_space
      int_p_sign_posn                   1                     1                    1                   1
      int_n_sign_posn                   4                     1                    4                   2
 
-
-
-
 [page 210]
 
 11   EXAMPLE 2 The following table illustrates how the cs_precedes, sep_by_space, and sign_posn members
@@ -8611,9 +8433,6 @@ char int_p_sep_by_space
                                           3         +$1.25             +$ 1.25             + $1.25
                                           4         $+1.25             $+ 1.25             $ +1.25
 
-
-
-
 [page 211]
 
     7.12 Mathematics <math.h>
@@ -8926,7 +8745,6 @@ char int_p_sep_by_space
     Returns
 3   The atan2 functions return arctan y/x in the interval [-pi , +pi ] radians.
 
-
 [page 219]
 
     7.12.4.5 The cos functions
@@ -8960,9 +8778,6 @@ char int_p_sep_by_space
     Returns
 3   The tan functions return tan x.
 
-
-
-
 [page 220]
 
     7.12.5 Hyperbolic functions
@@ -8998,8 +8813,6 @@ char int_p_sep_by_space
     for arguments not in the interval [-1, +1]. A range error may occur if the argument
     equals -1 or +1.
 
-
-
 [page 221]
 
     Returns
@@ -9035,8 +8848,6 @@ char int_p_sep_by_space
     Description
 2   The tanh functions compute the hyperbolic tangent of x.
 
-
-
 [page 222]
 
     Returns
@@ -9071,9 +8882,6 @@ char int_p_sep_by_space
            float expm1f(float x);
            long double expm1l(long double x);
 
-
-
-
 [page 223]
 
     Description
@@ -9147,9 +8955,6 @@ char int_p_sep_by_space
            float log10f(float x);
            long double log10l(long double x);
 
-
-
-
 [page 225]
 
     Description
@@ -9215,9 +9020,6 @@ char int_p_sep_by_space
     Returns
 3   The modf functions return the signed fractional part of value.
 
-
-
-
 [page 227]
 
     7.12.6.13 The scalbn and scalbln functions
@@ -9254,7 +9056,6 @@ char int_p_sep_by_space
     Description
 2   The fabs functions compute the absolute value of a floating-point number x.
 
-
 [page 228]
 
     Returns
@@ -9269,7 +9070,7 @@ char int_p_sep_by_space
 2   The hypot functions compute the square root of the sum of the squares of x and y,
     without undue overflow or underflow. A range error may occur.
 3   Returns
-4   The hypot functions return sqrt:x2 + y2 .
+4   The hypot functions return (sqrt)x2 + y2 .
                                ???
                                ???????????????
     7.12.7.4 The pow functions
@@ -9292,16 +9093,13 @@ char int_p_sep_by_space
            float sqrtf(float x);
            long double sqrtl(long double x);
 
-
-
-
 [page 229]
 
     Description
 2   The sqrt functions compute the nonnegative square root of x. A domain error occurs if
     the argument is less than zero.
     Returns
-3   The sqrt functions return sqrt:x.
+3   The sqrt functions return (sqrt)x.
                               ???
                               ???
     7.12.8 Error and gamma functions
@@ -9321,7 +9119,7 @@ char int_p_sep_by_space
                                                       2
 
 
-                                       sqrt:pi
+                                       (sqrt)pi
                                        ???
                                        ???    0
 
@@ -9342,13 +9140,10 @@ char int_p_sep_by_space
                                                                              2
 
 
-                                                              sqrt:pi
+                                                              (sqrt)pi
                                                               ???
                                                               ???    x
 
-
-
-
 [page 230]
 
     7.12.8.3 The lgamma functions
@@ -9385,7 +9180,6 @@ char int_p_sep_by_space
     Description
 2   The ceil functions compute the smallest integer value not less than x.
 
-
 [page 231]
 
     Returns
@@ -9422,6 +9216,7 @@ char int_p_sep_by_space
 2   The rint functions differ from the nearbyint functions (7.12.9.3) only in that the
     rint functions may raise the ''inexact'' floating-point exception if the result differs in
     value from the argument.
+
 [page 232]
 
     Returns
@@ -9455,9 +9250,6 @@ char int_p_sep_by_space
     Returns
 3   The round functions return the rounded integer value.
 
-
-
-
 [page 233]
 
     7.12.9.7 The lround and llround functions
@@ -9488,9 +9280,6 @@ char int_p_sep_by_space
     Returns
 3   The trunc functions return the truncated integer value.
 
-
-
-
 [page 234]
 
     7.12.10 Remainder functions
@@ -9560,9 +9349,6 @@ char int_p_sep_by_space
     Returns
 3   The copysign functions return a value with the magnitude of x and the sign of y.
 
-
-
-
 [page 236]
 
     7.12.11.2 The nan functions
@@ -9755,6 +9541,7 @@ char int_p_sep_by_space
     (x) < (y) || (x) > (y); however, islessgreater(x, y) does not raise
     the ''invalid'' floating-point exception when x and y are unordered (nor does it evaluate x
     and y twice).
+
 [page 241]
 
     Returns
@@ -9768,9 +9555,6 @@ char int_p_sep_by_space
     Returns
 3   The isunordered macro returns 1 if its arguments are unordered and 0 otherwise.
 
-
-
-
 [page 242]
 
     7.13 Nonlocal jumps <setjmp.h>
@@ -9873,9 +9657,6 @@ char int_p_sep_by_space
              longjmp(buf, 2);   // might cause memory loss
        }
 
-
-
-
 [page 245]
 
     7.14 Signal handling <signal.h>
@@ -9980,9 +9761,6 @@ char int_p_sep_by_space
     Returns
 3   The raise function returns zero if successful, nonzero if unsuccessful.
 
-
-
-
 [page 248]
 
     7.15 Variable arguments <stdarg.h>
@@ -10094,9 +9872,6 @@ char int_p_sep_by_space
                   char *array[MAXARGS];
                   int ptr_no = 0;
 
-
-
-
 [page 251]
 
                       if (n_ptrs > MAXARGS)
@@ -10139,9 +9914,6 @@ char int_p_sep_by_space
                       f4(n_ptrs, array);
              }
 
-
-
-
 [page 252]
 
     7.16 Boolean type and values <stdbool.h>
@@ -10199,9 +9971,6 @@ char int_p_sep_by_space
     large enough to make this necessary.
     Forward references: localization (7.11).
 
-
-
-
 [page 254]
 
     7.18 Integer types <stdint.h>
@@ -10344,9 +10113,7 @@ char int_p_sep_by_space
     -- maximum value of pointer-holding signed integer type
           INTPTR_MAX                                       215 - 1
 
-
-
-[page 258]
+[page 258]
 
     -- maximum value of pointer-holding unsigned integer type
         UINTPTR_MAX                                                   216 - 1
@@ -10439,9 +10206,6 @@ char int_p_sep_by_space
     by its argument and the type uintmax_t:
            UINTMAX_C(value)
 
-
-
-
 [page 261]
 
     7.19 Input/output <stdio.h>
@@ -10477,8 +10241,6 @@ char int_p_sep_by_space
     which expands to an integer constant expression that is the size needed for an array of
     char large enough to hold the longest file name string that the implementation
 
-
-
 [page 262]
 
     guarantees can be opened;231)
@@ -10712,9 +10474,6 @@ char int_p_sep_by_space
      old is no longer accessible by that name. If a file named by the string pointed to by new
      exists prior to the call to the rename function, the behavior is implementation-defined.
 
-
-
-
 [page 268]
 
     Returns
@@ -10789,9 +10548,6 @@ char int_p_sep_by_space
 1          #include <stdio.h>
            int fflush(FILE *stream);
 
-
-
-
 [page 270]
 
     Description
@@ -10869,9 +10625,6 @@ char int_p_sep_by_space
 2   The freopen function opens the file whose name is the string pointed to by filename
     and associates the stream pointed to by stream with it. The mode argument is used just
 
-
-
-
 [page 272]
 
     as in the fopen function.238)
@@ -11071,7 +10824,6 @@ char int_p_sep_by_space
             with leading zeros. The default precision is 1. The result of converting a
             zero value with a precision of zero is no characters.
 
-
 [page 277]
 
 f,F          A double argument representing a floating-point number is converted to
@@ -11364,6 +11116,7 @@ s             If no l length modifier is present, the argument shall be a pointe
                  for the subject sequence of the strtol function with the value 0 for the
                  base argument. The corresponding argument shall be a pointer to signed
                  integer.
+
 [page 284]
 
 o             Matches an optionally signed octal integer, whose format is the same as
@@ -11537,9 +11290,6 @@ p        Matches an implementation-defined set of sequences, which should be the
      entry into the alternate shift state.
 23   After the call:
 
-
-
-
 [page 288]
 
                #include <stdio.h>
@@ -11580,9 +11330,6 @@ p        Matches an implementation-defined set of sequences, which should be the
      strtol, strtoll, strtoul, and strtoull functions (7.20.1.4), conversion state
      (7.24.6), the wcrtomb function (7.24.6.3.3).
 
-
-
-
 [page 289]
 
     7.19.6.3 The printf function
@@ -11656,9 +11403,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     items assigned, which can be fewer than provided for, or even zero, in the event of an
     early matching failure.
 
-
-
-
 [page 291]
 
     7.19.6.8 The vfprintf function
@@ -11730,9 +11474,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 3   The vprintf function returns the number of characters transmitted, or a negative value
     if an output or encoding error occurred.
 
-
-
-
 [page 293]
 
     7.19.6.11 The vscanf function
@@ -11770,9 +11511,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     value if an encoding error occurred. Thus, the null-terminated output has been
     completely written if and only if the returned value is nonnegative and less than n.
 
-
-
-
 [page 294]
 
     7.19.6.13 The vsprintf function
@@ -11809,9 +11547,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     items assigned, which can be fewer than provided for, or even zero, in the event of an
     early matching failure.
 
-
-
-
 [page 295]
 
     7.19.7 Character input/output functions
@@ -11886,9 +11621,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     may evaluate stream more than once, so the argument should never be an expression
     with side effects.
 
-
-
-
 [page 297]
 
     Returns
@@ -11923,9 +11655,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     indeterminate and a null pointer is returned.
     Forward references: future library directions (7.26.9).
 
-
-
-
 [page 298]
 
     7.19.7.8 The putc function
@@ -11960,9 +11689,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 3   The puts function returns EOF if a write error occurs; otherwise it returns a nonnegative
     value.
 
-
-
-
 [page 299]
 
     7.19.7.11 The ungetc function
@@ -12036,9 +11762,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     error occurs, the resulting value of the file position indicator for the stream is
     indeterminate.
 
-
-
-
 [page 301]
 
     Returns
@@ -12143,9 +11866,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     Returns
 3   The clearerr function returns no value.
 
-
-
-
 [page 304]
 
     7.19.10.2 The feof function
@@ -12181,7 +11901,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 3   The perror function returns no value.
     Forward references: the strerror function (7.21.6.2).
 
-
 [page 305]
 
     7.20 General utilities <stdlib.h>
@@ -12249,8 +11968,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     Forward references: the strtol, strtoll, strtoul, and strtoull functions
     (7.20.1.4).
 
-
-
 [page 307]
 
     7.20.1.3 The strtod, strtof, and strtold functions
@@ -12290,6 +12007,7 @@ p        Matches an implementation-defined set of sequences, which should be the
 4   If the subject sequence has the expected form for a floating-point number, the sequence of
     characters starting with the first digit or the decimal-point character (whichever occurs
     first) is interpreted as a floating constant according to the rules of 6.4.4.2, except that the
+
 [page 308]
 
     decimal-point character is used in place of a period, and that if neither an exponent part
@@ -12413,9 +12131,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     LLONG_MAX, ULONG_MAX, or ULLONG_MAX is returned (according to the return type
     and sign of the value, if any), and the value of the macro ERANGE is stored in errno.
 
-
-
-
 [page 311]
 
     7.20.2 Pseudo-random sequence generation functions
@@ -12452,8 +12167,6 @@ p        Matches an implementation-defined set of sequences, which should be the
                  return (unsigned int)(next/65536) % 32768;
            }
 
-
-
 [page 312]
 
             void srand(unsigned int seed)
@@ -12530,9 +12243,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     value as a pointer to the old object), or a null pointer if the new object could not be
     allocated.
 
-
-
-
 [page 314]
 
     7.20.4 Communication with the environment
@@ -12568,6 +12278,7 @@ p        Matches an implementation-defined set of sequences, which should be the
     Description
 2   The exit function causes normal program termination to occur. If more than one call to
     the exit function is executed by a program, the behavior is undefined.
+
 [page 315]
 
 3   First, all functions registered by the atexit function are called, in the reverse order of
@@ -12635,9 +12346,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     command processor is available. If the argument is not a null pointer, and the system
     function does return, it returns an implementation-defined value.
 
-
-
-
 [page 317]
 
     7.20.5 Searching and sorting utilities
@@ -12678,7 +12386,6 @@ p        Matches an implementation-defined set of sequences, which should be the
                   (char *)p >= (char *)base
                   (char *)p < (char *)base + nmemb * size
 
-
 [page 318]
 
     size of each element of the array is specified by size.
@@ -12886,9 +12593,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     returns the number of bytes modified, not including a terminating null character, if
     any.267)
 
-
-
-
 [page 324]
 
     7.21 String handling <string.h>
@@ -12963,9 +12667,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 2   The strncpy function copies not more than n characters (characters that follow a null
     character are not copied) from the array pointed to by s2 to the array pointed to by
 
-
-
-
 [page 326]
 
     s1.269) If copying takes place between objects that overlap, the behavior is undefined.
@@ -13116,6 +12817,7 @@ p        Matches an implementation-defined set of sequences, which should be the
     Returns
 3   The strchr function returns a pointer to the located character, or a null pointer if the
     character does not occur in the string.
+
 [page 330]
 
     7.21.5.3 The strcspn function
@@ -13150,9 +12852,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 3   The strrchr function returns a pointer to the character, or a null pointer if c does not
     occur in the string.
 
-
-
-
 [page 331]
 
     7.21.5.6 The strspn function
@@ -13225,9 +12924,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     Returns
 3   The memset function returns the value of s.
 
-
-
-
 [page 333]
 
     7.21.6.2 The strerror function
@@ -13253,9 +12949,6 @@ p        Matches an implementation-defined set of sequences, which should be the
 3   The strlen function returns the number of characters that precede the terminating null
     character.
 
-
-
-
 [page 334]
 
     7.22 Type-generic math <tgmath.h>
@@ -13368,9 +13061,6 @@ p        Matches an implementation-defined set of sequences, which should be the
                 carg(dc)                            carg(dc), the function
                 cproj(ldc)                          cprojl(ldc)
 
-
-
-
 [page 337]
 
     7.23 Date and time <time.h>
@@ -13558,9 +13248,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     broken-down time as argument.
     Forward references: the localtime function (7.23.3.4).
 
-
-
-
 [page 342]
 
     7.23.3.3 The gmtime function
@@ -13598,6 +13285,7 @@ p        Matches an implementation-defined set of sequences, which should be the
     consists of a % character, possibly followed by an E or O modifier character (described
     below), followed by a character that determines the behavior of the conversion specifier.
     All ordinary multibyte characters (including the terminating null character) are copied
+
 [page 343]
 
     unchanged into the array. If copying takes place between objects that overlap, the
@@ -13683,7 +13371,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     %OH is replaced by the hour (24-hour clock), using the locale's alternative numeric
         symbols.
 
-
 [page 345]
 
     %OI is replaced by the hour (12-hour clock), using the locale's alternative numeric
@@ -13725,7 +13412,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     %X    equivalent to %T.
     %Z    implementation-defined.
 
-
 [page 346]
 
     Returns
@@ -13734,9 +13420,6 @@ p        Matches an implementation-defined set of sequences, which should be the
     into the array pointed to by s not including the terminating null character. Otherwise,
     zero is returned and the contents of the array are indeterminate.
 
-
-
-
 [page 347]
 
     7.24 Extended multibyte and wide character utilities <wchar.h>
@@ -13934,6 +13617,7 @@ p        Matches an implementation-defined set of sequences, which should be the
                [-]nan or [-]nan(n-wchar-sequence) -- which style, and the meaning of
                any n-wchar-sequence, is implementation-defined. The F conversion
                specifier produces INF, INFINITY, or NAN instead of inf, infinity, or
+
 [page 352]
 
              nan, respectively.283)
@@ -14098,8 +13782,6 @@ p            The argument shall be a pointer to void. The value of the pointer i
      -- An optional decimal integer greater than zero that specifies the maximum field width
        (in wide characters).
 
-
-
 [page 356]
 
      -- An optional length modifier that specifies the size of the receiving object.
@@ -14179,6 +13861,7 @@ p            The argument shall be a pointer to void. The value of the pointer i
      i          Matches an optionally signed integer, whose format is the same as expected
                 for the subject sequence of the wcstol function with the value 0 for the
                 base argument. The corresponding argument shall be a pointer to signed
+
 [page 358]
 
             integer.
@@ -14260,6 +13943,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
          from the input stream so far by this call to the fwscanf function. Execution
          of a %n directive does not increment the assignment count returned at the
          completion of execution of the fwscanf function. No argument is
+
 [page 360]
 
                     converted, but one is consumed. If the conversion specification includes an
@@ -14339,9 +14023,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     items assigned, which can be fewer than provided for, or even zero, in the event of an
     early matching failure.
 
-
-
-
 [page 362]
 
     7.24.2.5 The vfwprintf function
@@ -14420,7 +14101,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     counting the terminating null wide character, or a negative value if an encoding error
     occurred or if n or more wide characters were requested to be generated.
 
-
 [page 364]
 
     7.24.2.8 The vswscanf function
@@ -14455,9 +14135,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 3   The vwprintf function returns the number of wide characters transmitted, or a negative
     value if an output or encoding error occurred.
 
-
-
-
 [page 365]
 
     7.24.2.10 The vwscanf function
@@ -14494,7 +14171,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 2   The wscanf function is equivalent to fwscanf with the argument stdin interposed
     before the arguments to wscanf.
 
-
 [page 366]
 
     Returns
@@ -14680,9 +14356,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     wide character sequences returns zero, and a function that copies wide characters copies
     zero wide characters.
 
-
-
-
 [page 371]
 
     7.24.4.1 Wide string numeric conversion functions
@@ -14722,6 +14395,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
                      n-wchar-sequence nondigit
     The subject sequence is defined as the longest initial subsequence of the input wide
     string, starting with the first non-white-space wide character, that is of the expected form.
+
 [page 372]
 
     The subject sequence contains no wide characters if the input wide string is not of the
@@ -14871,7 +14545,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     Returns
 3   The wcscpy function returns the value of s1.
 
-
 [page 376]
 
     7.24.4.2.2 The wcsncpy function
@@ -15020,7 +14693,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 4   EXAMPLE The value of the following expression is the length of the array needed to hold the
     transformation of the wide string pointed to by s:
 
-
 [page 380]
 
            1 + wcsxfrm(NULL, s, 0)
@@ -15057,8 +14729,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     string pointed to by s1 which consists entirely of wide characters not from the wide
     string pointed to by s2.
 
-
-
 [page 381]
 
     Returns
@@ -15094,7 +14764,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     Returns
 3   The wcsspn function returns the length of the segment.
 
-
 [page 382]
 
     7.24.4.5.6 The wcsstr function
@@ -15133,6 +14802,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     the start of the first token.
 5   The wcstok function then searches from there for a wide character that is contained in
     the current separator wide string. If no such wide character is found, the current token
+
 [page 383]
 
     extends to the end of the wide string pointed to by s1, and subsequent searches in the
@@ -15168,9 +14838,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 3   The wmemchr function returns a pointer to the located wide character, or a null pointer if
     the wide character does not occur in the object.
 
-
-
-
 [page 384]
 
     7.24.4.6 Miscellaneous functions
@@ -15206,7 +14873,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     -- The argument s points to the initial element of an array of wide characters into which
       the generated output is to be placed.
 
-
 [page 385]
 
     -- The argument maxsize indicates the limiting number of wide characters.
@@ -15284,6 +14950,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     Description
 2   If ps is not a null pointer, the mbsinit function determines whether the pointed-to
     mbstate_t object describes an initial conversion state.
+
 [page 387]
 
     Returns
@@ -15315,9 +14982,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     or (size_t)(-1).
     Forward references: the mbrtowc function (7.24.6.3.2).
 
-
-
-
 [page 388]
 
     7.24.6.3.2 The mbrtowc function
@@ -15393,9 +15057,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     when dst is not a null pointer), the pointer object pointed to by this parameter is updated
     to reflect the amount of the source processed by that invocation.
 
-
-
-
 [page 390]
 
     7.24.6.4.1 The mbsrtowcs function
@@ -15651,7 +15312,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 3   Each of the following expressions has a truth-value equivalent to the call to the wide
     character classification function (7.25.2.1) in the comment that follows the expression:
 
-
 [page 397]
 
            iswctype(wc,       wctype("alnum"))             //   iswalnum(wc)
@@ -15684,9 +15344,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     category of the current locale, the wctype function returns a nonzero value that is valid
     as the second argument to the iswctype function; otherwise, it returns zero.              *
 
-
-
-
 [page 398]
 
     7.25.3 Wide character case mapping utilities
@@ -15721,9 +15378,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     well as case mapping equivalent to that performed by the functions described in the
     previous subclause (7.25.3.1).
 
-
-
-
 [page 399]
 
     7.25.3.2.1 The towctrans function
@@ -15755,9 +15409,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     category of the current locale, the wctrans function returns a nonzero value that is valid
     as the second argument to the towctrans function; otherwise, it returns zero.
 
-
-
-
 [page 400]
 
     7.26 Future library directions
@@ -15793,6 +15444,7 @@ n        No input is consumed. The corresponding argument shall be a pointer to
     types defined in the <stdint.h> header. Macro names beginning with INT or UINT
     and ending with _MAX, _MIN, or _C may be added to the macros defined in the
     <stdint.h> header.
+
 [page 401]
 
     7.26.9 Input/output <stdio.h>
@@ -15817,9 +15469,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
 1   Function names that begin with is or to and a lowercase letter may be added to the
     declarations in the <wctype.h> header.
 
-
-
-
 [page 402]
 
                                                    Annex A
@@ -15856,9 +15505,6 @@ n        No input is consumed. The corresponding argument shall be a pointer to
                   double                    long             typedef
                   else                      register         union
 
-
-
-
 [page 403]
 
 A.1.3 Identifiers
@@ -15897,6 +15543,7 @@ A.1.5 Constants
 (6.4.4.1) decimal-constant:
               nonzero-digit
               decimal-constant digit
+
 [page 404]
 
 (6.4.4.1) octal-constant:
@@ -15933,9 +15580,6 @@ A.1.5 Constants
               fractional-constant exponent-partopt floating-suffixopt
               digit-sequence exponent-part floating-suffixopt
 
-
-
-
 [page 405]
 
 (6.4.4.2) hexadecimal-floating-constant:
@@ -15972,9 +15616,6 @@ A.1.5 Constants
               ' c-char-sequence '
               L' c-char-sequence '
 
-
-
-
 [page 406]
 
 (6.4.4.4) c-char-sequence:
@@ -16011,9 +15652,6 @@ A.1.6 String literals
                             the double-quote ", backslash \, or new-line character
                escape-sequence
 
-
-
-
 [page 407]
 
 A.1.7 Punctuators
@@ -16053,7 +15691,6 @@ A.1.9 Preprocessing numbers
               pp-number   P sign
               pp-number   .
 
-
 [page 408]
 
 A.2 Phrase structure grammar
@@ -16166,9 +15803,6 @@ A.2.2 Declarations
               auto
               register
 
-
-
-
 [page 411]
 
 (6.7.2) type-specifier:
@@ -16207,9 +15841,6 @@ A.2.2 Declarations
                declarator
                declaratoropt : constant-expression
 
-
-
-
 [page 412]
 
 (6.7.2.2) enum-specifier:
@@ -16287,8 +15918,6 @@ A.2.2 Declarations
 (6.7.8) designation:
               designator-list =
 
-
-
 [page 414]
 
 (6.7.8) designator-list:
@@ -16324,9 +15953,6 @@ A.2.3 Statements
                if ( expression ) statement else statement
                switch ( expression ) statement
 
-
-
-
 [page 415]
 
 (6.8.5) iteration-statement:
@@ -16365,7 +15991,6 @@ A.3 Preprocessing directives
 (6.10) if-section:
                 if-group elif-groupsopt else-groupopt endif-line
 
-
 [page 416]
 
 (6.10) if-group:
@@ -16403,9 +16028,6 @@ A.3 Preprocessing directives
 (6.10) replacement-list:
               pp-tokensopt
 
-
-
-
 [page 417]
 
 (6.10) pp-tokens:
@@ -16414,9 +16036,6 @@ A.3 Preprocessing directives
 (6.10) new-line:
               the new-line character
 
-
-
-
 [page 418]
 
                                 Annex B
@@ -16456,6 +16075,7 @@ B.2 Complex <complex.h>
        double complex catanh(double complex z);
        float complex catanhf(float complex z);
        long double complex catanhl(long double complex z);
+
 [page 419]
 
       double complex ccosh(double complex z);
@@ -16499,7 +16119,6 @@ B.2 Complex <complex.h>
       float crealf(float complex z);
       long double creall(long double complex z);
 
-
 [page 420]
 
 B.3 Character handling <ctype.h>
@@ -16539,8 +16158,6 @@ B.5 Floating-point environment <fenv.h>
        int fesetenv(const fenv_t *envp);
        int feupdateenv(const fenv_t *envp);
 
-
-
 [page 421]
 
 B.6 Characteristics of floating types <float.h>
@@ -16579,9 +16196,6 @@ B.7 Format conversion of integer types <inttypes.h>
       uintmax_t wcstoumax(const wchar_t * restrict nptr,
               wchar_t ** restrict endptr, int base);
 
-
-
-
 [page 422]
 
 B.8 Alternative spellings <iso646.h>
@@ -16621,6 +16235,7 @@ B.11 Mathematics <math.h>
       float asinf(float x);
       long double asinl(long double x);
       double atan(double x);
+
 [page 423]
 
       float atanf(float x);
@@ -16829,9 +16444,6 @@ B.15 Boolean type and values <stdbool.h>
       false
       __bool_true_false_are_defined
 
-
-
-
 [page 428]
 
 B.16 Common definitions <stddef.h>
@@ -16871,7 +16483,6 @@ B.18 Input/output <stdio.h>
         void setbuf(FILE * restrict stream,
              char * restrict buf);
 
-
 [page 429]
 
       int setvbuf(FILE * restrict stream,
@@ -16915,7 +16526,6 @@ B.18 Input/output <stdio.h>
       int puts(const char *s);
       int ungetc(int c, FILE *stream);
 
-
 [page 430]
 
         size_t fread(void * restrict ptr,
@@ -16956,9 +16566,6 @@ B.19 General utilities <stdlib.h>
              const char * restrict nptr,
              char ** restrict endptr, int base);
 
-
-
-
 [page 431]
 
       unsigned long long int strtoull(
@@ -16997,9 +16604,6 @@ B.19 General utilities <stdlib.h>
       size_t wcstombs(char * restrict s,
            const wchar_t * restrict pwcs, size_t n);
 
-
-
-
 [page 432]
 
 B.20 String handling <string.h>
@@ -17035,9 +16639,6 @@ B.20 String handling <string.h>
         char *strerror(int errnum);
         size_t strlen(const char *s);
 
-
-
-
 [page 433]
 
 B.21 Type-generic math <tgmath.h>
@@ -17072,9 +16673,6 @@ B.22 Date and time <time.h>
            const char * restrict format,
            const struct tm * restrict timeptr);
 
-
-
-
 [page 434]
 
 B.23 Extended multibyte/wide character utilities <wchar.h>
@@ -17116,8 +16714,6 @@ B.23 Extended multibyte/wide character utilities <wchar.h>
         wint_t putwchar(wchar_t c);
         wint_t ungetwc(wint_t c, FILE *stream);
 
-
-
 [page 435]
 
       double wcstod(const wchar_t * restrict nptr,
@@ -17204,6 +16800,7 @@ B.24 Wide character classification and mapping utilities <wctype.h>
         int   iswupper(wint_t wc);
         int   iswxdigit(wint_t wc);
         int   iswctype(wint_t wc, wctype_t desc);
+
 [page 437]
 
       wctype_t wctype(const char *property);
@@ -17212,9 +16809,6 @@ B.24 Wide character classification and mapping utilities <wctype.h>
       wint_t towctrans(wint_t wc, wctrans_t desc);
       wctrans_t wctrans(const char *property);
 
-
-
-
 [page 438]
 
                                           Annex C
@@ -17237,9 +16831,6 @@ B.24 Wide character classification and mapping utilities <wctype.h>
       also between any call to a comparison function and any movement of the objects
       passed as arguments to that call (7.20.5).
 
-
-
-
 [page 439]
 
                                          Annex D
@@ -17276,6 +16867,7 @@ B.24 Wide character classification and mapping utilities <wctype.h>
                       0AC7-0AC9, 0ACB-0ACD, 0AD0, 0AE0
     Oriya:            0B01-0B03, 0B05-0B0C, 0B0F-0B10, 0B13-0B28, 0B2A-0B30,
                       0B32-0B33, 0B36-0B39, 0B3E-0B43, 0B47-0B48, 0B4B-0B4D,
+
 [page 440]
 
                 0B5C-0B5D, 0B5F-0B61
@@ -17311,9 +16903,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
                    2107, 210A-2113, 2115, 2118-211D, 2124, 2126, 2128, 212A-2131,
                    2133-2138, 2160-2182, 3005-3007, 3021-3029
 
-
-
-
 [page 441]
 
                                          Annex E
@@ -17353,6 +16942,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 4   The values given in the following list shall be replaced by implementation-defined
     constant expressions that are greater or equal in magnitude (absolute value) to those
     shown, with the same sign:
+
 [page 442]
 
            #define    DBL_DIG                                        10
@@ -17389,9 +16979,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
            #define    LDBL_EPSILON                               1E-9
            #define    LDBL_MIN                                  1E-37
 
-
-
-
 [page 443]
 
                                                Annex F
@@ -17626,7 +17213,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
          efficiency of translation-time evaluation through static initialization, such as
                   const static double one_third = 1.0/3.0;
 
-
 [page 449]
 
     execution time.
@@ -17706,32 +17292,33 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     floating-point exceptions need not be precise: the actual order and number of occurrences
     of floating-point exceptions (> 1) may vary from what the source code expresses. Thus,
     the preceding loop could be treated as
+
 [page 451]
 
             if (0 < n) x + 1;
     F.8.2 Expression transformations
-1   x / 2 (<->) x * 0.5                         Although similar transformations involving inexact
+1   x / 2 <-> x * 0.5                         Although similar transformations involving inexact
                                             constants generally do not yield numerically equivalent
                                             expressions, if the constants are exact then such
                                             transformations can be made on IEC 60559 machines
                                             and others that round perfectly.
-    1 * x and x / 1 (->) x                     The expressions 1 * x, x / 1, and x are equivalent
+    1 * x and x / 1 -> x                     The expressions 1 * x, x / 1, and x are equivalent
                                             (on IEC 60559 machines, among others).317)
-    x / x (->) 1.0                             The expressions x / x and 1.0 are not equivalent if x
+    x / x -> 1.0                             The expressions x / x and 1.0 are not equivalent if x
                                             can be zero, infinite, or NaN.
-    x - y (<->) x + (-y)                        The expressions x - y, x + (-y), and (-y) + x
+    x - y <-> x + (-y)                        The expressions x - y, x + (-y), and (-y) + x
                                             are equivalent (on IEC 60559 machines, among others).
-    x - y (<->) -(y - x)                        The expressions x - y and -(y - x) are not
+    x - y <-> -(y - x)                        The expressions x - y and -(y - x) are not
                                             equivalent because 1 - 1 is +0 but -(1 - 1) is -0 (in the
                                             default rounding direction).318)
-    x - x (->) 0.0                             The expressions x - x and 0.0 are not equivalent if
+    x - x -> 0.0                             The expressions x - x and 0.0 are not equivalent if
                                             x is a NaN or infinite.
-    0 * x (->) 0.0                             The expressions 0 * x and 0.0 are not equivalent if
+    0 * x -> 0.0                             The expressions 0 * x and 0.0 are not equivalent if
                                             x is a NaN, infinite, or -0.
-    x + 0(->)x                                 The expressions x + 0 and x are not equivalent if x is
+    x + 0->x                                 The expressions x + 0 and x are not equivalent if x is
                                             -0, because (-0) + (+0) yields +0 (in the default
                                             rounding direction), not -0.
-    x - 0(->)x                                 (+0) - (+0) yields -0 when rounding is downward
+    x - 0->x                                 (+0) - (+0) yields -0 when rounding is downward
                                             (toward -(inf)), but +0 otherwise, and (-0) - (+0) always
                                             yields -0; so, if the state of the FENV_ACCESS pragma
                                             is ''off'', promising default rounding, then the
@@ -17750,13 +17337,13 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 [page 452]
 
                                              might be zero.
-    -x (<->) 0 - x                               The expressions -x and 0 - x are not equivalent if x
+    -x <-> 0 - x                               The expressions -x and 0 - x are not equivalent if x
                                              is +0, because -(+0) yields -0, but 0 - (+0) yields +0
                                              (unless rounding is downward).
     F.8.3 Relational operators
-1   x != x (->) false                           The statement x != x is true if x is a NaN.
-    x == x (->) true                            The statement x == x is false if x is a NaN.
-    x < y (->) isless(x,y)                      (and similarly for <=, >, >=) Though numerically
+1   x != x -> false                           The statement x != x is true if x is a NaN.
+    x == x -> true                            The statement x == x is false if x is a NaN.
+    x < y -> isless(x,y)                      (and similarly for <=, >, >=) Though numerically
                                              equal, these expressions are not equivalent because of
                                              side effects when x or y is a NaN and the state of the
                                              FENV_ACCESS pragma is ''on''. This transformation,
@@ -17786,9 +17373,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
                      f();
     nor, unless the state of the FENV_ACCESS pragma is ''off'', to
 
-
-
-
 [page 453]
 
              // calls g without raising ''invalid'' if a and b are unordered
@@ -17931,9 +17515,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 1   -- tanh((+-)0) returns (+-)0.
     -- tanh((+-)(inf)) returns (+-)1.
 
-
-
-
 [page 457]
 
     F.9.3 Exponential and logarithmic functions
@@ -17965,9 +17546,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 1   If the correct result is outside the range of the return type, the numeric result is
     unspecified and the ''invalid'' floating-point exception is raised.
 
-
-
-
 [page 458]
 
     F.9.3.6 The ldexp functions
@@ -17997,9 +17575,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 1   -- logb((+-)0) returns -(inf) and raises the ''divide-by-zero'' floating-point exception.
     -- logb((+-)(inf)) returns +(inf).
 
-
-
-
 [page 459]
 
     F.9.3.12 The modf functions
@@ -18033,9 +17608,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 1   -- fabs((+-)0) returns +0.
     -- fabs((+-)(inf)) returns +(inf).
 
-
-
-
 [page 460]
 
     F.9.4.3 The hypot functions
@@ -18065,9 +17637,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- pow(+(inf), y) returns +0 for y < 0.
     -- pow(+(inf), y) returns +(inf) for y > 0.
 
-
-
-
 [page 461]
 
     F.9.4.5 The sqrt functions
@@ -18098,9 +17667,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- ceil((+-)(inf)) returns (+-)(inf).
 2   The double version of ceil behaves as though implemented by
 
-
-
-
 [page 462]
 
            #include <math.h>
@@ -18136,9 +17702,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     exception and the result differs from the argument, they raise the ''inexact'' floating-point
     exception.
 
-
-
-
 [page 463]
 
     F.9.6.6 The round functions
@@ -18174,9 +17737,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- trunc((+-)0) returns (+-)0.
     -- trunc((+-)(inf)) returns (+-)(inf).
 
-
-
-
 [page 464]
 
     F.9.7 Remainder functions
@@ -18208,9 +17768,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     F.9.8.2 The nan functions
 1   All IEC 60559 implementations support quiet NaNs, in all floating formats.
 
-
-
-
 [page 465]
 
     F.9.8.3 The nextafter functions
@@ -18278,9 +17835,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     of its parts is a finite number (neither infinite nor NaN). A complex or imaginary value is
     a zero if each of its parts is a zero.
 
-
-
-
 [page 467]
 
     G.4 Conversions
@@ -18502,7 +18056,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     shown. Unless otherwise specified, where the symbol ''(+-)'' occurs in both an argument
     and the result, the result has the same sign as the argument.
 3   The functions are continuous onto both sides of their branch cuts, taking into account the
-    sign of zero. For example, csqrt(-2 (+-) i0) = (+-)isqrt:2.  ???
+    sign of zero. For example, csqrt(-2 (+-) i0) = (+-)i(sqrt)2.  ???
 4   Since complex and imaginary values are composed of real values, each function may be
     regarded as computing real values from real values. Except as noted, the functions treat
     real infinities, NaNs, signed zeros, subnormals, and the floating-point exception flags in a
@@ -18569,7 +18123,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- cacosh(+(inf) + i (inf)) returns +(inf) + ipi /4.
     -- cacosh((+-)(inf) + iNaN) returns +(inf) + iNaN.
 
-
 [page 474]
 
     -- cacosh(NaN + iy) returns NaN + iNaN and optionally raises the ''invalid''
@@ -18639,6 +18192,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
       unspecified) and raises the ''invalid'' floating-point exception.
     -- csinh(+0 + iNaN) returns (+-)0 + iNaN (where the sign of the real part of the result is
       unspecified).
+
 [page 476]
 
     -- csinh(x + i (inf)) returns NaN + iNaN and raises the ''invalid'' floating-point
@@ -18672,9 +18226,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
       point exception, for all nonzero numbers y.
     -- ctanh(NaN + iNaN) returns NaN + iNaN.
 
-
-
-
 [page 477]
 
     G.6.3 Exponential and logarithmic functions
@@ -18769,9 +18320,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
            asinh(iy)    =   i asin(y)
            atanh(iy)    =   i atan(y)
 
-
-
-
 [page 480]
 
                                           Annex H
@@ -18803,9 +18351,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 3   The parameter ''bounded'' is always true, and is not provided. The parameter ''minint''
     is always 0 for the unsigned types, and is not provided for those types.
 
-
-
-
 [page 481]
 
     H.2.2.1 Integer operations
@@ -18839,7 +18384,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     emin           FLT_MIN_EXP, DBL_MIN_EXP, LDBL_MIN_EXP
 2   The derived constants for the floating point types are accessed by the following:
 
-
 [page 482]
 
     fmax          FLT_MAX, DBL_MAX, LDBL_MAX
@@ -18881,14 +18425,14 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     in all relevant LIA-1 operations, not just addition as in C.
     H.2.4 Type conversions
 1   The LIA-1 type conversions are the following type casts:
-    cvtI' (->) I      (int)i, (long int)i, (long long int)i,
+    cvtI' -> I      (int)i, (long int)i, (long long int)i,
                    (unsigned int)i, (unsigned long int)i,
                    (unsigned long long int)i
-    cvtF (->) I       (int)x, (long int)x, (long long int)x,
+    cvtF -> I       (int)x, (long int)x, (long long int)x,
                    (unsigned int)x, (unsigned long int)x,
                    (unsigned long long int)x
-    cvtI (->) F       (float)i, (double)i, (long double)i
-    cvtF' (->) F      (float)x, (double)x, (long double)x
+    cvtI -> F       (float)i, (double)i, (long double)i
+    cvtF' -> F      (float)x, (double)x, (long double)x
 2   In the above conversions from floating to integer, the use of (cast)x can be replaced with
     (cast)round(x), (cast)rint(x), (cast)nearbyint(x), (cast)trunc(x),
     (cast)ceil(x), or (cast)floor(x). In addition, C's floating-point to integer
@@ -18908,9 +18452,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 5   C's conversions (casts) from integer to floating-point can meet LIA-1 requirements if an
     implementation uses round-to-nearest.
 
-
-
-
 [page 484]
 
     H.3 Notification
@@ -18947,6 +18488,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     where i is an expression of type int representing a subset of the LIA-1 indicators.
 4   C allows an implementation to provide the following LIA-1 required behavior: at
     program termination if any indicator is set the implementation shall send an unambiguous
+
 [page 485]
 
     and ''hard to ignore'' message (see LIA-1 subclause 6.1.2)
@@ -18966,9 +18508,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     terminate (either default implementation behavior or user replacement for it) or trap-and-
     resume, at the programmer's option.
 
-
-
-
 [page 486]
 
                                            Annex I
@@ -19004,15 +18543,13 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- A statement with no apparent effect is encountered (6.8).
     -- A constant expression is used as the controlling expression of a selection statement
       (6.8.4).
+
 [page 487]
 
 -- An incorrectly formed preprocessing group is encountered while skipping a
   preprocessing group (6.10.1).
 -- An unrecognized #pragma directive is encountered (6.10.6).
 
-
-
-
 [page 488]
 
                                             Annex J
@@ -19047,6 +18584,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- The order in which subexpressions are evaluated and the order in which side effects
       take place, except as specified for the function-call (), &&, ||, ?:, and comma
       operators (6.5).
+
 [page 489]
 
 -- The order in which the function designator, arguments, and subexpressions within the
@@ -19120,8 +18658,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- Whether conversion of non-integer IEC 60559 floating values to integer raises the
   ''inexact'' floating-point exception (F.4).
 
-
-
 [page 491]
 
     -- Whether or when library functions in <math.h> raise the ''inexact'' floating-point
@@ -19195,7 +18731,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- Two identifiers differ only in nonsignificant characters (6.4.2.1).
 -- The identifier __func__ is explicitly declared (6.4.2.2).
 
-
 [page 493]
 
 -- The program attempts to modify a string literal (6.4.5).
@@ -19272,7 +18807,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
   than extern (6.7.1).
 -- A structure or union is defined as containing no named members (6.7.2.1).
 
-
 [page 495]
 
 -- An attempt is made to access, or generate a pointer to just past, a flexible array
@@ -19311,6 +18845,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
    compatible return types, or their parameters disagree in use of the ellipsis terminator
    or the number and type of parameters (after default argument promotion, when there
     is no parameter type list or when one type is specified by a function definition with an
+
 [page 496]
 
    identifier list) (6.7.5.3).
@@ -19385,6 +18920,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- The argument to the assert macro does not have a scalar type (7.2).
 -- The CX_LIMITED_RANGE, FENV_ACCESS, or FP_CONTRACT pragma is used in
   any context other than outside all external declarations or preceding all explicit
+
 [page 498]
 
    declarations and statements inside a compound statement (7.3.4, 7.6.1, 7.12.2).
@@ -19461,6 +18997,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- The parameter parmN of a va_start macro is declared with the register
   storage class, with a function or array type, or with a type that is not compatible with
   the type that results after application of the default argument promotions (7.15.1.4).
+
 [page 500]
 
 -- The member designator parameter of an offsetof macro is an invalid right
@@ -19499,7 +19036,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- A conversion specification for a formatted output function uses a # or 0 flag with a
   conversion specifier other than those described (7.19.6.1, 7.24.2.1).
 
-
 [page 501]
 
 -- A conversion specification for one of the formatted input/output functions uses a
@@ -19539,6 +19075,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
   7.24.2.5, 7.24.2.6, 7.24.2.7, 7.24.2.8, 7.24.2.9, 7.24.2.10).
 -- The contents of the array supplied in a call to the fgets, gets, or fgetws function
   are used after a read error occurred (7.19.7.2, 7.19.7.7, 7.24.3.2).
+
 [page 502]
 
 -- The file position indicator for a binary stream is used after a call to the ungetc
@@ -19576,7 +19113,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
   contents of the array being searched or sorted, or returns ordering values
   inconsistently (7.20.5).
 
-
 [page 503]
 
 -- The array being searched by the bsearch function does not have its elements in
@@ -19613,9 +19149,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
   one in effect for the call to the wctrans function that returned the description
   (7.25.3.2.1).
 
-
-
-
 [page 504]
 
     J.3 Implementation-defined behavior
@@ -19647,9 +19180,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
       correspondence to universal character names (6.4.2).
     -- The number of significant initial characters in an identifier (5.2.4.1, 6.4.2).
 
-
-
-
 [page 505]
 
     J.3.4 Characters
@@ -19686,8 +19216,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- The result of, or the signal raised by, converting an integer to a signed integer type
       when the value cannot be represented in an object of that type (6.3.1.3).
 
-
-
 [page 506]
 
     -- The results of some bitwise operations on signed integers (6.5).
@@ -19719,9 +19247,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- The size of the result of subtracting two pointers to elements of the same array
       (6.5.6).
 
-
-
-
 [page 507]
 
     J.3.8 Hints
@@ -19794,8 +19319,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- The base-2 logarithm of the modulus used by the remquo functions in reducing the
       quotient (7.12.10.3).
 
-
-
 [page 509]
 
 -- Whether a domain error occurs or zero is returned when a remquo function has a
@@ -19832,6 +19355,7 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
 -- The interpretation of a - character that is neither the first nor the last character, nor
     the second where a ^ character is the first, in the scanlist for %[ conversion in the
    fscanf or fwscanf function (7.19.6.2, 7.24.2.1).
+
 [page 510]
 
     -- The set of sequences matched by a %p conversion and the interpretation of the
@@ -19866,9 +19390,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
       in this International Standard) (6.2.6.1).
     -- The value of the result of the sizeof operator (6.5.3.4).
 
-
-
-
 [page 511]
 
     J.4 Locale-specific behavior
@@ -19897,9 +19418,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     -- Character mappings that are supported by the towctrans function (7.25.1).
     -- Character classifications that are supported by the iswctype function (7.25.1).
 
-
-
-
 [page 512]
 
     J.5 Common extensions
@@ -19931,9 +19449,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     more range or precision than long double, may be used for evaluating expressions of
     other floating types, and may be used to define float_t or double_t.
 
-
-
-
 [page 513]
 
     J.5.7 Function pointer casts
@@ -19965,9 +19480,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     registered by the atexit function have been made (see 7.20.4.3), the implementation
     writes some diagnostics indicating the fact to the stderr stream, if it is still open,
 
-
-
-
 [page 514]
 
     J.5.14 Extra arguments for signal handlers
@@ -19986,9 +19498,6 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
     instead of, or in addition to, setting errno or raising floating-point exceptions (7.3,
     7.12).
 
-
-
-
 [page 515]
 
 
@@ -20055,13 +19564,9 @@ Special characters: 00B5, 00B7, 02B0-02B8, 02BB, 02BD-02C1, 02D0-02D1,
  33. ISO/IEC 10967-1:1994, Information technology -- Language independent
      arithmetic -- Part 1: Integer and floating point arithmetic.
 
-
-
-
 [page 517]
 
 
-
 [page 518]
 
 
@@ -20116,6 +19621,7 @@ Index
 ++ (prefix increment operator), 6.3.2.1, 6.5.3.1                <stdint.h> header, 4, 5.2.4.2, 6.10.1, 7.8,
 += (addition assignment operator), 6.5.16.2                         7.18, 7.26.8
 , (comma operator), 6.5.17
+
 [page 519]
 
 <stdio.h> header, 5.2.4.2.2, 7.19, 7.26.9, F                 __cplusplus macro, 6.10.8
index 7dca068..8ef750a 100644 (file)
@@ -37,13 +37,9 @@ relevant patent rights of which they are aware and to provide supporting documen
 Changes from the previous draft (N1256) are indicated by ''diff marks'' in the right
 margin: deleted text is marked with ''*'', new or changed text with '' ''.
 
-
-
-
 [page i]
 
 
-
 [page ii]
 
 <a name="Contents" href="#Contents">Contents</a>
@@ -87,7 +83,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 <a href="#6.4.8">        6.4.8   Preprocessing numbers        . . . .    .   .   .   .   .   .    .   .   .   .   .   .    74</a>
 <a href="#6.4.9">        6.4.9   Comments        . . . . . . . . .       .   .   .   .   .   .    .   .   .   .   .   .    75</a>
 
-
 [page iii]
 
 <a href="#6.5">     6.5  Expressions      . . . . . . . . . .     .   .   .   .   .   .   .   .   .   .   .   .   .   .    76</a>
@@ -135,7 +130,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 <a href="#6.10.2">          6.10.2 Source file inclusion      . . .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   163</a>
 <a href="#6.10.3">          6.10.3 Macro replacement . . . .         .   .   .   .   .   .   .   .   .   .   .   .   .   .   165</a>
 
-
 [page iv]
 
 <a href="#6.10.4">       6.10.4 Line control . . . . . .        .   .   .   .   .   .   .   .   .    .   .   .   .   .   .   172</a>
@@ -230,7 +224,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 <a href="#7.19">     7.19   Common definitions &lt;stddef.h&gt; . . . . . . . . . . .                .   .   .   .   287</a>
 <a href="#7.20">     7.20   Integer types &lt;stdint.h&gt; . . . . . . . . . . . . . .              .   .   .   .   289</a>
 
-
 [page vi]
 
 <a href="#7.20.1">         7.20.1 Integer types      . . . . . . . . . . . .      .   .    .   .   .   .   .   .   289</a>
@@ -278,7 +271,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 <a href="#7.26.2">         7.26.2 Time manipulation functions      . . . . . .    .   .    .   .   .   .   .   .   386</a>
 <a href="#7.26.3">         7.26.3 Time conversion functions      . . . . . . .    .   .    .   .   .   .   .   .   388</a>
 
-
 [page vii]
 
 <a href="#7.27">   7.27 Unicode utilities &lt;uchar.h&gt; . . . . . . . . . . . . . .               . .     .   395</a>
@@ -325,8 +317,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 <a href="#7.30.10">        7.30.10 General utilities &lt;stdlib.h&gt;        . . . . . . . . . .       .   .   .   453</a>
 <a href="#7.30.11">        7.30.11 String handling &lt;string.h&gt;          . . . . . . . . . .       .   .   .   453</a>
 
-
-
 [page viii]
 
 <a href="#7.30.12">        7.30.12 Extended multibyte and wide character utilities
@@ -418,7 +408,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 <a href="#H.2">  H.2 Types . . . . . . . . . . . . . . . . . . .           .   .   .   .   .   .   .   .   542</a>
 <a href="#H.3">  H.3 Notification      . . . . . . . . . . . . . . . .      .   .   .   .   .   .   .   .   546</a>
 
-
 [page x]
 
 <a href="#I">Annex I (informative) Common warnings         . . . . . . . . . . . . . . . . 548</a>
@@ -464,8 +453,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 <a href="#K.3.9.1">                K.3.9.1 Formatted wide character input/output functions                        . . . 624</a>
 <a href="#K.3.9.2">                K.3.9.2 General wide string utilities . . . . . . . .                          . . . 635</a>
 
-
-
 [page xi]
 
 <a href="#K.3.9.3">               K.3.9.3 Extended multibyte/wide character conversion
@@ -477,9 +464,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 <a href="#Bibliography">Bibliography   . . . . . . . . . . . . . . . . . . . . . . . . . . . 650</a>
 <a href="#Index">Index    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653</a>
 
-
-
-
 [<a name="pxii" href="#pxii">page xii</a>] (<a href="#Contents">Contents</a>)
 
 <a name="Foreword" href="#Foreword"><b>    Foreword</b></a>
@@ -521,7 +505,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
       ISO/IEC TR 19769:2004)
     -- type-generic expressions
 
-
 [<a name="pxiii" href="#pxiii">page xiii</a>] (<a href="#Contents">Contents</a>)
 
     -- static assertions
@@ -557,8 +540,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
     -- hexadecimal floating-point constants and %a and %A printf/scanf conversion
       specifiers
 
-
-
 [<a name="pxiv" href="#pxiv">page xiv</a>] (<a href="#Contents">Contents</a>)
 
 -- compound literals
@@ -593,7 +574,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 -- additional strftime conversion specifiers
 -- LIA compatibility annex
 
-
 [<a name="pxv" href="#pxv">page xv</a>] (<a href="#Contents">Contents</a>)
 
     -- deprecate ungetc at the beginning of a binary file
@@ -608,9 +588,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
     the ISO/IEC Directives, this foreword, the introduction, notes, footnotes, and examples
     are also for information only.
 
-
-
-
 [<a name="pxvi" href="#pxvi">page xvi</a>] (<a href="#Contents">Contents</a>)
 
 <a name="Introduction" href="#Introduction"><b>    Introduction</b></a>
@@ -637,13 +614,9 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 5   The language clause (clause 6) is derived from ''The C Reference Manual''.
 6   The library clause (clause 7) is based on the 1984 /usr/group Standard.
 
-
-
-
 [<a name="pxvii" href="#pxvii">page xvii</a>] (<a href="#Contents">Contents</a>)
 
 
-
 [<a name="pxviii" href="#pxviii">page xviii</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -699,9 +672,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 8   IEC 60559:1989, Binary floating-point arithmetic for microprocessor systems (previously
     designated IEC 559:1989).
 
-
-
-
 [<a name="p2" href="#p2">page 2</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -746,7 +716,6 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
     behavior that depends on local conventions of nationality, culture, and language that each
     implementation documents
 
-
 [<a name="p3" href="#p3">page 3</a>] (<a href="#Contents">Contents</a>)
 
 2   EXAMPLE An example of locale-specific behavior is whether the islower function returns true for
@@ -795,6 +764,7 @@ margin: deleted text is marked with ''*'', new or changed text with '' ''.
 1   character
     single-byte character
     &lt;C&gt; bit representation that fits in a byte
+
 [<a name="p4" href="#p4">page 4</a>] (<a href="#Contents">Contents</a>)
 
 <a name="3.7.2" href="#3.7.2"><b>    3.7.2</b></a>
@@ -1288,7 +1258,6 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
      since if the values for a and b were, respectively, -32754 and -15, the sum a + b would produce a trap
      while the original expression would not; nor can the expression be rewritten either as
 
-
 [<a name="p16" href="#p16">page 16</a>] (<a href="#Contents">Contents</a>)
 
               a = ((a + 32765) + b);
@@ -1496,9 +1465,6 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
      machine with well-defined semantics for data races. They would be invalid for a hypothetical machine that
      is not tolerant of races or provides hardware race detection.
 
-
-
-
 [<a name="p21" href="#p21">page 21</a>] (<a href="#Contents">Contents</a>)
 
 <a name="5.2" href="#5.2"><b>    5.2 Environmental considerations</b></a>
@@ -1616,6 +1582,7 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
        tabulation position, the behavior of the display device is unspecified.
     \v (vertical tab) Moves the active position to the initial position of the next vertical
        tabulation position. If the active position is at or past the last defined vertical
+
 [<a name="p24" href="#p24">page 24</a>] (<a href="#Contents">Contents</a>)
 
          tabulation position, the behavior of the display device is unspecified.
@@ -1726,7 +1693,6 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
 -- maximum value for an object of type unsigned long int
   ULONG_MAX                         4294967295 // 232 - 1
 
-
 [<a name="p27" href="#p27">page 27</a>] (<a href="#Contents">Contents</a>)
 
     -- minimum value for an object of type long long int
@@ -1891,9 +1857,6 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
    DBL_MIN_EXP
    LDBL_MIN_EXP
 
-
-
-
 [<a name="p31" href="#p31">page 31</a>] (<a href="#Contents">Contents</a>)
 
      -- minimum negative integer such that 10 raised to that power is in the range of
@@ -1930,9 +1893,6 @@ preprocessing directives (<a href="#6.10">6.10</a>), trigraph sequences (<a href
           DBL_MIN                                   1E-37
           LDBL_MIN                                  1E-37
 
-
-
-
 [<a name="p32" href="#p32">page 32</a>] (<a href="#Contents">Contents</a>)
 
      -- minimum positive floating-point number<sup><a href="#note27"><b>27)</b></a></sup>
@@ -2027,9 +1987,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 (<a href="#7.28">7.28</a>), floating-point environment <a href="#7.6">&lt;fenv.h&gt;</a> (<a href="#7.6">7.6</a>), general utilities <a href="#7.22">&lt;stdlib.h&gt;</a>
 (<a href="#7.22">7.22</a>), input/output <a href="#7.21">&lt;stdio.h&gt;</a> (<a href="#7.21">7.21</a>), mathematics <a href="#7.12">&lt;math.h&gt;</a> (<a href="#7.12">7.12</a>).
 
-
-
-
 [<a name="p34" href="#p34">page 34</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -2622,9 +2579,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     -- Two alignments are different when their numeric values are not equal.
     -- When an alignment is larger than another it represents a stricter alignment.
 
-
-
-
 [<a name="p49" href="#p49">page 49</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.3" href="#6.3"><b>    6.3 Conversions</b></a>
@@ -2970,6 +2924,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 <b>    Semantics</b>
 2   The above tokens (case sensitive) are reserved (in translation phases 7 and 8) for use as
     keywords, and shall not be used otherwise. The keyword _Imaginary is reserved for
+
 [<a name="p58" href="#p58">page 58</a>] (<a href="#Contents">Contents</a>)
 
     specifying imaginary types.<sup><a href="#note70"><b>70)</b></a></sup>
@@ -3120,9 +3075,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
              octal-digit: one of
                      0 1 2 3         4     5     6   7
 
-
-
-
 [<a name="p62" href="#p62">page 62</a>] (<a href="#Contents">Contents</a>)
 
             hexadecimal-digit:   one of
@@ -3154,9 +3106,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 5   The type of an integer constant is the first of the corresponding list in which its value can
     be represented.
 
-
-
-
 [<a name="p63" href="#p63">page 63</a>] (<a href="#Contents">Contents</a>)
 
                                                                      Octal or Hexadecimal
@@ -3194,9 +3143,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     may be signed or unsigned. If an integer constant cannot be represented by any type in
     its list and has no extended integer type, then the integer constant has no type.
 
-
-
-
 [<a name="p64" href="#p64">page 64</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.4.4.2" href="#6.4.4.2"><b>    6.4.4.2 Floating constants</b></a>
@@ -3313,9 +3259,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                      \ octal-digit octal-digit
                      \ octal-digit octal-digit octal-digit
 
-
-
-
 [<a name="p67" href="#p67">page 67</a>] (<a href="#Contents">Contents</a>)
 
            hexadecimal-escape-sequence:
@@ -3355,8 +3298,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     consisting of the backslash \ followed by a lowercase letter: \a, \b, \f, \n, \r, \t,
     and \v.<sup><a href="#note77"><b>77)</b></a></sup>
 
-
-
 [<a name="p68" href="#p68">page 68</a>] (<a href="#Contents">Contents</a>)
 
 <b>     Constraints</b>
@@ -3444,6 +3385,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
      were in an integer character constant (for a character or UTF-8 string literal) or a wide
      character constant (for a wide string literal), except that the single-quote ' is
      representable either by itself or by the escape sequence \', but the double-quote " shall
+
 [<a name="p70" href="#p70">page 70</a>] (<a href="#Contents">Contents</a>)
 
     be represented by the escape sequence \".
@@ -3523,9 +3465,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     in which case it is known as an operator (other forms of operator also exist in some
     contexts). An operand is an entity on which an operator acts.
 
-
-
-
 [<a name="p72" href="#p72">page 72</a>] (<a href="#Contents">Contents</a>)
 
 3   In all aspects of the language, the six tokens<sup><a href="#note79"><b>79)</b></a></sup>
@@ -3800,9 +3739,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                    assignment-expression
                    argument-expression-list , assignment-expression
 
-
-
-
 [<a name="p79" href="#p79">page 79</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.2.1" href="#6.5.2.1"><b>    6.5.2.1 Array subscripting</b></a>
@@ -4013,9 +3949,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     Forward references: address and indirection operators (<a href="#6.5.3.2">6.5.3.2</a>), structure and union
     specifiers (<a href="#6.7.2.1">6.7.2.1</a>).
 
-
-
-
 [<a name="p84" href="#p84">page 84</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.2.4" href="#6.5.2.4"><b>    6.5.2.4 Postfix increment and decrement operators</b></a>
@@ -4148,9 +4081,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 
      Forward references: type names (<a href="#6.7.7">6.7.7</a>), initialization (<a href="#6.7.9">6.7.9</a>).
 
-
-
-
 [<a name="p87" href="#p87">page 87</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.3" href="#6.5.3"><b>    6.5.3 Unary operators</b></a>
@@ -4581,9 +4511,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     the result is set if and only if at least one of the corresponding bits in the converted
     operands is set).
 
-
-
-
 [<a name="p98" href="#p98">page 98</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.13" href="#6.5.13"><b>    6.5.13 Logical AND operator</b></a>
@@ -4615,9 +4542,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     and second operands. If the first operand compares unequal to 0, the second operand is
     not evaluated.
 
-
-
-
 [<a name="p99" href="#p99">page 99</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.5.15" href="#6.5.15"><b>    6.5.15 Conditional operator</b></a>
@@ -4786,6 +4710,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 3   A compound assignment of the form E1 op = E2 is equivalent to the simple assignment
     expression E1 = E1 op (E2), except that the lvalue E1 is evaluated only once, and with
     respect to an indeterminately-sequenced function call, the operation of a compound
+
 [<a name="p103" href="#p103">page 103</a>] (<a href="#Contents">Contents</a>)
 
     assignment is a single evaluation. If E1 has an atomic type, compound assignment is a
@@ -5045,9 +4970,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 3   The type specifier _Complex shall not be used if the implementation does not support
     complex types (see <a href="#6.10.8.3">6.10.8.3</a>).
 
-
-
-
 [<a name="p110" href="#p110">page 110</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Semantics</b>
@@ -5086,7 +5008,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 2   A struct-declaration that does not declare an anonymous structure or anonymous union
     shall contain a struct-declarator-list.
 
-
 [<a name="p111" href="#p111">page 111</a>] (<a href="#Contents">Contents</a>)
 
 3    A structure or union shall not contain a member with incomplete or function type (hence,
@@ -5249,9 +5170,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 
      Forward references: declarators (<a href="#6.7.6">6.7.6</a>), tags (<a href="#6.7.2.3">6.7.2.3</a>).
 
-
-
-
 [<a name="p115" href="#p115">page 115</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.7.2.2" href="#6.7.2.2"><b>    6.7.2.2 Enumeration specifiers</b></a>
@@ -5415,9 +5333,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
      lvalues. If the _Atomic keyword is immediately followed by a left parenthesis, it is
      interpreted as a type specifier (with a type name), not as a type qualifier.
 
-
-
-
 [<a name="p119" href="#p119">page 119</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.7.3" href="#6.7.3"><b>    6.7.3 Type qualifiers</b></a>
@@ -5596,9 +5511,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                       }
              }
 
-
-
-
 [<a name="p123" href="#p123">page 123</a>] (<a href="#Contents">Contents</a>)
 
 12   The one exception allows the value of a restricted pointer to be carried out of the block in which it (or, more
@@ -5772,6 +5684,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     scope, storage duration, and type indicated by the declaration specifiers.
 3   A full declarator is a declarator that is not part of another declarator. The end of a full
     declarator is a sequence point. If, in the nested sequence of declarators in a full
+
 [<a name="p127" href="#p127">page 127</a>] (<a href="#Contents">Contents</a>)
 
     declarator, there is a declarator specifying a variable length array type, the type specified
@@ -5807,9 +5720,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 3   EXAMPLE The following pair of declarations demonstrates the difference between a ''variable pointer
     to a constant value'' and a ''constant pointer to a variable value''.
 
-
-
-
 [<a name="p128" href="#p128">page 128</a>] (<a href="#Contents">Contents</a>)
 
              const int *ptr_to_constant;
@@ -5941,9 +5851,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 <b>     Semantics</b>
 5    If, in the declaration ''T D1'', D1 has the form
 
-
-
-
 [<a name="p131" href="#p131">page 131</a>] (<a href="#Contents">Contents</a>)
 
             D( parameter-type-list )
@@ -6069,9 +5976,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 
      Forward references: function definitions (<a href="#6.9.1">6.9.1</a>), type names (<a href="#6.7.7">6.7.7</a>).
 
-
-
-
 [<a name="p134" href="#p134">page 134</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.7.7" href="#6.7.7"><b>    6.7.7 Type names</b></a>
@@ -6157,9 +6061,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     type t1 and the type pointed to by tp1 are compatible. Type t1 is also compatible with type struct
     s1, but not compatible with the types struct s2, t2, the type pointed to by tp2, or int.
 
-
-
-
 [<a name="p136" href="#p136">page 136</a>] (<a href="#Contents">Contents</a>)
 
 6   EXAMPLE 3       The following obscure constructions
@@ -6204,9 +6105,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                          a[i-1] = b[i];
              }
 
-
-
-
 [<a name="p137" href="#p137">page 137</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.7.9" href="#6.7.9"><b>    6.7.9 Initialization</b></a>
@@ -6244,6 +6142,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
              . identifier
     then the current object (defined below) shall have structure or union type and the
     identifier shall be the name of a member of that type.
+
 [<a name="p138" href="#p138">page 138</a>] (<a href="#Contents">Contents</a>)
 
 <b>     Semantics</b>
@@ -6282,7 +6181,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 16   Otherwise, the initializer for an object that has aggregate or union type shall be a brace-
      enclosed list of initializers for the elements or named members.
 
-
 [<a name="p139" href="#p139">page 139</a>] (<a href="#Contents">Contents</a>)
 
 17   Each brace-enclosed initializer list has an associated current object. When no
@@ -6465,9 +6363,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 
      Forward references: common definitions <a href="#7.19">&lt;stddef.h&gt;</a> (<a href="#7.19">7.19</a>).
 
-
-
-
 [<a name="p143" href="#p143">page 143</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.7.10" href="#6.7.10"><b>    6.7.10 Static assertions</b></a>
@@ -6484,9 +6379,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     character set are not required to appear in the message.
     Forward references: diagnostics (<a href="#7.2">7.2</a>).
 
-
-
-
 [<a name="p144" href="#p144">page 144</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.8" href="#6.8"><b>    6.8 Statements and blocks</b></a>
@@ -6608,7 +6500,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 2   In both forms, the first substatement is executed if the expression compares unequal to 0.
     In the else form, the second substatement is executed if the expression compares equal
 
-
 [<a name="p147" href="#p147">page 147</a>] (<a href="#Contents">Contents</a>)
 
     to 0. If the first substatement is reached via a label, the second substatement is not
@@ -6767,9 +6658,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                     /* ... */
             }
 
-
-
-
 [<a name="p151" href="#p151">page 151</a>] (<a href="#Contents">Contents</a>)
 
 4   EXAMPLE 2 A goto statement is not allowed to jump past any declarations of objects with variably
@@ -6934,7 +6822,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                   int (*fp)(void);                              //   fp points to a function that has type F
                   F *Fp;                                        //   Fp points to a function that has type F
 
-
 [<a name="p155" href="#p155">page 155</a>] (<a href="#Contents">Contents</a>)
 
 <b>     Semantics</b>
@@ -7017,9 +6904,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 3    If the declaration of an identifier for an object is a tentative definition and has internal
      linkage, the declared type shall not be an incomplete type.
 
-
-
-
 [<a name="p157" href="#p157">page 157</a>] (<a href="#Contents">Contents</a>)
 
 4   EXAMPLE 1
@@ -7044,9 +6928,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     the array i still has incomplete type, the implicit initializer causes it to have one element, which is set to
     zero on program startup.
 
-
-
-
 [<a name="p158" href="#p158">page 158</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.10" href="#6.10"><b>    6.10 Preprocessing directives</b></a>
@@ -7077,9 +6958,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
              endif-line:
                      # endif      new-line
 
-
-
-
 [<a name="p159" href="#p159">page 159</a>] (<a href="#Contents">Contents</a>)
 
              control-line:
@@ -7204,7 +7082,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
            #if 'z' - 'a' == 25
            if ('z' - 'a' == 25)
 
-
 [<a name="p162" href="#p162">page 162</a>] (<a href="#Contents">Contents</a>)
 
 5   Preprocessing directives of the forms
@@ -7398,9 +7275,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     string literal corresponding to an empty argument is "". The order of evaluation of # and
     ## operators is unspecified.
 
-
-
-
 [<a name="p167" href="#p167">page 167</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.10.3.3" href="#6.10.3.3"><b>    6.10.3.3 The ## operator</b></a>
@@ -7479,9 +7353,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
             #define max(a, b) ((a) &gt; (b) ? (a) : (b))
     The parentheses ensure that the arguments and the resulting expression are bound properly.
 
-
-
-
 [<a name="p169" href="#p169">page 169</a>] (<a href="#Contents">Contents</a>)
 
 5   EXAMPLE 3     To illustrate the rules for redefinition and reexamination, the sequence
@@ -7529,9 +7400,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
              xglue(HIGH, LOW)
     results in
 
-
-
-
 [<a name="p170" href="#p170">page 170</a>] (<a href="#Contents">Contents</a>)
 
              printf("x" "1" "= %d, x" "2" "= %s", x1, x2);
@@ -7582,7 +7450,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
              showlist(The first, second, and third items.);
              report(x&gt;y, "x is %d but y is %d", x, y);
 
-
 [<a name="p171" href="#p171">page 171</a>] (<a href="#Contents">Contents</a>)
 
     results in
@@ -7617,9 +7484,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     tokens). The directive resulting after all replacements shall match one of the two
     previous forms and is then processed as appropriate.
 
-
-
-
 [<a name="p172" href="#p172">page 172</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.10.5" href="#6.10.5"><b>    6.10.5 Error directive</b></a>
@@ -7790,9 +7654,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
               #define PRAGMA(x) _Pragma(#x)
               LISTING ( ..\listing.dir )
 
-
-
-
 [<a name="p177" href="#p177">page 177</a>] (<a href="#Contents">Contents</a>)
 
 <a name="6.11" href="#6.11"><b>    6.11 Future language directions</b></a>
@@ -7823,9 +7684,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 <a name="6.11.9" href="#6.11.9"><b>    6.11.9 Predefined macro names</b></a>
 1   Macro names beginning with __STDC_ are reserved for future standardization.
 
-
-
-
 [<a name="p178" href="#p178">page 178</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -8039,9 +7897,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
             /* ... */
             i = atoi(str);
 
-
-
-
 [<a name="p184" href="#p184">page 184</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.2" href="#7.2"><b>    7.2 Diagnostics &lt;assert.h&gt;</b></a>
@@ -8080,16 +7935,12 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     <sup><a name="note191" href="#note191"><b>191)</b></a></sup> The message written might be of the form:
          Assertion failed: expression, function abc, file xyz, line nnn.
 
-
 [<a name="p185" href="#p185">page 185</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
 3   The assert macro returns no value.
     Forward references: the abort function (<a href="#7.22.4.1">7.22.4.1</a>).
 
-
-
-
 [<a name="p186" href="#p186">page 186</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.3" href="#7.3"><b>    7.3 Complex arithmetic &lt;complex.h&gt;</b></a>
@@ -8200,7 +8051,7 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     <sup><a name="note195" href="#note195"><b>195)</b></a></sup> The purpose of the pragma is to allow the implementation to use the formulas:
             (x + iy) x (u + iv) = (xu - yv) + i(yu + xv)
             (x + iy) / (u + iv) = [(xu + yv) + i(yu - xv)]/(u2 + v 2 )
-            | x + iy | = sqrt: x 2 + y 2
+            | x + iy | = (sqrt) x 2 + y 2
                          -----
          where the programmer can determine they are safe.
 
@@ -8239,8 +8090,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 <b>    Description</b>
 2   The csin functions compute the complex sine of z.
 
-
-
 [<a name="p190" href="#p190">page 190</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -8276,8 +8125,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
             float complex casinhf(float complex z);
             long double complex casinhl(long double complex z);
 
-
-
 [<a name="p191" href="#p191">page 191</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -8311,9 +8158,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 <b>    Returns</b>
 3   The ccosh functions return the complex hyperbolic cosine value.
 
-
-
-
 [<a name="p192" href="#p192">page 192</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.3.6.5" href="#7.3.6.5"><b>    7.3.6.5 The csinh functions</b></a>
@@ -8348,8 +8192,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 <b>    Returns</b>
 3   The cexp functions return the complex base-e exponential value.
 
-
-
 [<a name="p193" href="#p193">page 193</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.3.7.2" href="#7.3.7.2"><b>    7.3.7.2 The clog functions</b></a>
@@ -8385,9 +8227,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
            long double complex cpowl(long double complex x,
                 long double complex y);
 
-
-
-
 [<a name="p194" href="#p194">page 194</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -8420,9 +8259,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 <b>    Returns</b>
 3   The carg functions return the value of the argument in the interval [-pi , +pi ].
 
-
-
-
 [<a name="p195" href="#p195">page 195</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.3.9.2" href="#7.3.9.2"><b>    7.3.9.2 The cimag functions</b></a>
@@ -8499,7 +8335,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 <b>    Description</b>
 2   The creal functions compute the real part of z.<sup><a href="#note197"><b>197)</b></a></sup>
 
-
 [<a name="p197" href="#p197">page 197</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -8654,9 +8489,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     the tolower function returns one of the corresponding characters (always the same one
     for any given locale); otherwise, the argument is returned unchanged.
 
-
-
-
 [<a name="p202" href="#p202">page 202</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.4.2.2" href="#7.4.2.2"><b>    7.4.2.2 The toupper function</b></a>
@@ -8671,9 +8503,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     the toupper function returns one of the corresponding characters (always the same one
     for any given locale); otherwise, the argument is returned unchanged.
 
-
-
-
 [<a name="p203" href="#p203">page 203</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.5" href="#7.5"><b>    7.5 Errors &lt;errno.h&gt;</b></a>
@@ -8988,7 +8817,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 3   The fesetround function returns zero if and only if the requested rounding direction
     was established.
 
-
 [<a name="p211" href="#p211">page 211</a>] (<a href="#Contents">Contents</a>)
 
 4   EXAMPLE Save, set, and restore the rounding direction. Report an error and abort if setting the
@@ -9091,9 +8919,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
                 return result;
           }
 
-
-
-
 [<a name="p214" href="#p214">page 214</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.7" href="#7.7"><b>    7.7 Characteristics of floating types &lt;float.h&gt;</b></a>
@@ -9102,9 +8927,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 2   The macros, their meanings, and the constraints (or restrictions) on their values are listed
     in <a href="#5.2.4.2.2">5.2.4.2.2</a>.
 
-
-
-
 [<a name="p215" href="#p215">page 215</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.8" href="#7.8"><b>    7.8 Format conversion of integer types &lt;inttypes.h&gt;</b></a>
@@ -9218,9 +9040,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     Forward references: the strtol, strtoll, strtoul, and strtoull functions
     (<a href="#7.22.1.4">7.22.1.4</a>).
 
-
-
-
 [<a name="p218" href="#p218">page 218</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.8.2.4" href="#7.8.2.4"><b>    7.8.2.4 The wcstoimax and wcstoumax functions</b></a>
@@ -9244,9 +9063,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
     Forward references: the wcstol, wcstoll, wcstoul, and wcstoull functions
     (<a href="#7.28.4.1.2">7.28.4.1.2</a>).
 
-
-
-
 [<a name="p219" href="#p219">page 219</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.9" href="#7.9"><b>    7.9 Alternative spellings &lt;iso646.h&gt;</b></a>
@@ -9264,9 +9080,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
           xor           ^
           xor_eq        ^=
 
-
-
-
 [<a name="p220" href="#p220">page 220</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.10" href="#7.10"><b>    7.10 Sizes of integer types &lt;limits.h&gt;</b></a>
@@ -9275,9 +9088,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
 2   The macros, their meanings, and the constraints (or restrictions) on their values are listed
     in <a href="#5.2.4.2.1">5.2.4.2.1</a>.
 
-
-
-
 [<a name="p221" href="#p221">page 221</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.11" href="#7.11"><b>    7.11 Localization &lt;locale.h&gt;</b></a>
@@ -9313,9 +9123,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
            char   int_p_sign_posn;                //   CHAR_MAX
            char   int_n_sign_posn;                //   CHAR_MAX
 
-
-
-
 [<a name="p222" href="#p222">page 222</a>] (<a href="#Contents">Contents</a>)
 
 3   The macros defined are NULL (described in <a href="#7.19">7.19</a>); and
@@ -9433,8 +9240,6 @@ Forward references:        conditional inclusion (<a href="#6.10.1">6.10.1</a>),
               Set to 1 or 0 if the currency_symbol respectively precedes or
               succeeds the value for a nonnegative locally formatted monetary quantity.
 
-
-
 [<a name="p225" href="#p225">page 225</a>] (<a href="#Contents">Contents</a>)
 
 char n_cs_precedes
@@ -9475,6 +9280,7 @@ char int_p_sep_by_space
           Set to a value indicating the separation of the int_curr_symbol, the
           sign string, and the value for a nonnegative internationally formatted
           monetary quantity.
+
 [<a name="p226" href="#p226">page 226</a>] (<a href="#Contents">Contents</a>)
 
     char int_n_sep_by_space
@@ -9512,7 +9318,6 @@ char int_p_sep_by_space
     3   The sign string immediately precedes the currency symbol.
     4   The sign string immediately succeeds the currency symbol.
 
-
 [<a name="p227" href="#p227">page 227</a>] (<a href="#Contents">Contents</a>)
 
 7    The implementation shall behave as if no library function calls the localeconv
@@ -9559,9 +9364,6 @@ char int_p_sep_by_space
      int_p_sign_posn                   1                     1                    1                   1
      int_n_sign_posn                   4                     1                    4                   2
 
-
-
-
 [<a name="p228" href="#p228">page 228</a>] (<a href="#Contents">Contents</a>)
 
 11   EXAMPLE 2 The following table illustrates how the cs_precedes, sep_by_space, and sign_posn members
@@ -9582,9 +9384,6 @@ char int_p_sep_by_space
                                           3         +$1.25             +$ <a href="#1.25">1.25</a>             + $1.25
                                           4         $+1.25             $+ <a href="#1.25">1.25</a>             $ +1.25
 
-
-
-
 [<a name="p229" href="#p229">page 229</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12" href="#7.12"><b>    7.12 Mathematics &lt;math.h&gt;</b></a>
@@ -9886,9 +9685,6 @@ char int_p_sep_by_space
 <b>    Description</b>
 2   The atan functions compute the principal value of the arc tangent of x.
 
-
-
-
 [<a name="p237" href="#p237">page 237</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -9924,8 +9720,6 @@ char int_p_sep_by_space
 <b>    Description</b>
 2   The sin functions compute the sine of x (measured in radians).
 
-
-
 [<a name="p238" href="#p238">page 238</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -9961,7 +9755,6 @@ char int_p_sep_by_space
 <b>    Description</b>
 2   The asinh functions compute the arc hyperbolic sine of x.
 
-
 [<a name="p239" href="#p239">page 239</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -9998,6 +9791,7 @@ char int_p_sep_by_space
 <b>    Description</b>
 2   The sinh functions compute the hyperbolic sine of x. A range error occurs if the
     magnitude of x is too large.
+
 [<a name="p240" href="#p240">page 240</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -10105,8 +9899,6 @@ char int_p_sep_by_space
             float logf(float x);
             long double logl(long double x);
 
-
-
 [<a name="p243" href="#p243">page 243</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -10179,6 +9971,7 @@ char int_p_sep_by_space
 <b>    Description</b>
 2   The modf functions break the argument value into integral and fractional parts, each of
     which has the same type and sign as the argument. They store the integral part (in
+
 [<a name="p245" href="#p245">page 245</a>] (<a href="#Contents">Contents</a>)
 
     floating-point format) in the object pointed to by iptr.
@@ -10210,9 +10003,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The cbrt functions return x1/3 .
 
-
-
-
 [<a name="p246" href="#p246">page 246</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.7.2" href="#7.12.7.2"><b>    7.12.7.2 The fabs functions</b></a>
@@ -10235,7 +10025,7 @@ char int_p_sep_by_space
 2   The hypot functions compute the square root of the sum of the squares of x and y,
     without undue overflow or underflow. A range error may occur.
 3   Returns
-4   The hypot functions return sqrt:x2 + y2 .
+4   The hypot functions return (sqrt)x2 + y2 .
                                -
                                -----
 <a name="7.12.7.4" href="#7.12.7.4"><b>    7.12.7.4 The pow functions</b></a>
@@ -10250,9 +10040,6 @@ char int_p_sep_by_space
     error may occur if x is zero and y is zero. A domain error or pole error may occur if x is
     zero and y is less than zero.
 
-
-
-
 [<a name="p247" href="#p247">page 247</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -10267,7 +10054,7 @@ char int_p_sep_by_space
 2   The sqrt functions compute the nonnegative square root of x. A domain error occurs if
     the argument is less than zero.
 <b>    Returns</b>
-3   The sqrt functions return sqrt:x.
+3   The sqrt functions return (sqrt)x.
                               -
                               -
 <a name="7.12.8" href="#7.12.8"><b>    7.12.8 Error and gamma functions</b></a>
@@ -10284,7 +10071,7 @@ char int_p_sep_by_space
                                             (integral)       e-t dt.
                                                       2
     The erf functions return erf x =
-                                       sqrt:pi
+                                       (sqrt)pi
                                        -
                                        -    0
 
@@ -10297,6 +10084,7 @@ char int_p_sep_by_space
 <b>    Description</b>
 2   The erfc functions compute the complementary error function of x. A range error
     occurs if x is too large.
+
 [<a name="p248" href="#p248">page 248</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -10304,7 +10092,7 @@ char int_p_sep_by_space
                                                             (integral)       e-t dt.
                                                                       2
     The erfc functions return erfc x = 1 - erf x =
-                                                     sqrt:pi
+                                                     (sqrt)pi
                                                      -
                                                      -      x
 
@@ -10333,9 +10121,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The tgamma functions return (Gamma)(x).
 
-
-
-
 [<a name="p249" href="#p249">page 249</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.9" href="#7.12.9"><b>    7.12.9 Nearest integer functions</b></a>
@@ -10370,9 +10155,6 @@ char int_p_sep_by_space
     format, using the current rounding direction and without raising the ''inexact'' floating-
     point exception.
 
-
-
-
 [<a name="p250" href="#p250">page 250</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -10406,9 +10188,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The lrint and llrint functions return the rounded integer value.
 
-
-
-
 [<a name="p251" href="#p251">page 251</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.9.6" href="#7.12.9.6"><b>    7.12.9.6 The round functions</b></a>
@@ -10446,7 +10225,6 @@ char int_p_sep_by_space
            float truncf(float x);
            long double truncl(long double x);
 
-
 [<a name="p252" href="#p252">page 252</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -10521,8 +10299,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The copysign functions return a value with the magnitude of x and the sign of y.
 
-
-
 [<a name="p254" href="#p254">page 254</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.11.2" href="#7.12.11.2"><b>    7.12.11.2 The nan functions</b></a>
@@ -10711,9 +10487,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The islessequal macro returns the value of (x) &lt;= (y).
 
-
-
-
 [<a name="p259" href="#p259">page 259</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.12.14.5" href="#7.12.14.5"><b>    7.12.14.5 The islessgreater macro</b></a>
@@ -10737,9 +10510,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The isunordered macro returns 1 if its arguments are unordered and 0 otherwise.
 
-
-
-
 [<a name="p260" href="#p260">page 260</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.13" href="#7.13"><b>    7.13 Nonlocal jumps &lt;setjmp.h&gt;</b></a>
@@ -10842,9 +10612,6 @@ char int_p_sep_by_space
               longjmp(buf, 2);   // might cause memory loss
         }
 
-
-
-
 [<a name="p263" href="#p263">page 263</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.14" href="#7.14"><b>    7.14 Signal handling &lt;signal.h&gt;</b></a>
@@ -10952,10 +10719,7 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The raise function returns zero if successful, nonzero if unsuccessful.
 
-
-
-
-[<a name="p266" href="#p266">page 266</a>] (<a href="#Contents">Contents</a>)
+[<a name="p266" href="#p266">page 266</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.15" href="#7.15"><b>    7.15 Alignment &lt;stdalign.h&gt;</b></a>
 1   The header <a href="#7.15">&lt;stdalign.h&gt;</a> defines two macros.
@@ -10966,9 +10730,6 @@ char int_p_sep_by_space
             __alignas_is_defined
     which expands to the integer constant 1.
 
-
-
-
 [<a name="p267" href="#p267">page 267</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.16" href="#7.16"><b>    7.16 Variable arguments &lt;stdarg.h&gt;</b></a>
@@ -11080,9 +10841,6 @@ char int_p_sep_by_space
                   char *array[MAXARGS];
                   int ptr_no = 0;
 
-
-
-
 [<a name="p270" href="#p270">page 270</a>] (<a href="#Contents">Contents</a>)
 
                       if (n_ptrs &gt; MAXARGS)
@@ -11125,9 +10883,6 @@ char int_p_sep_by_space
                       f4(n_ptrs, array);
              }
 
-
-
-
 [<a name="p271" href="#p271">page 271</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.17" href="#7.17"><b>    7.17 Atomics &lt;stdatomic.h&gt;</b></a>
@@ -11163,7 +10918,6 @@ char int_p_sep_by_space
 5   In the following operation definitions:
     -- An A refers to one of the atomic types.
 
-
 [<a name="p272" href="#p272">page 272</a>] (<a href="#Contents">Contents</a>)
 
     -- A C refers to its corresponding non-atomic type. The atomic_address atomic
@@ -11203,8 +10957,6 @@ char int_p_sep_by_space
     the value value, while also initializing any additional state that the implementation
     might need to carry for the atomic object.
 
-
-
 [<a name="p273" href="#p273">page 273</a>] (<a href="#Contents">Contents</a>)
 
 3   Although this function initializes an atomic object, it does not avoid data races;
@@ -11331,8 +11083,6 @@ char int_p_sep_by_space
 2    The kill_dependency macro terminates a dependency chain; the argument does not
      carry a dependency to the return value.
 
-
-
 [<a name="p276" href="#p276">page 276</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -11370,7 +11120,6 @@ char int_p_sep_by_space
     -- is a sequentially consistent acquire and release fence, if order                    ==
       memory_order_seq_cst.
 
-
 [<a name="p277" href="#p277">page 277</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -11419,9 +11168,6 @@ char int_p_sep_by_space
 1   For each line in the following table, the atomic type name is declared as the
     corresponding direct type.
 
-
-
-
 [<a name="p279" href="#p279">page 279</a>] (<a href="#Contents">Contents</a>)
 
                Atomic type name                              Direct type
@@ -11464,7 +11210,6 @@ char int_p_sep_by_space
 2   The semantics of the operations on these types are defined in <a href="#7.17.7">7.17.7</a>.
 3   The atomic_bool type provides an atomic boolean.
 
-
 [<a name="p280" href="#p280">page 280</a>] (<a href="#Contents">Contents</a>)
 
 4   The atomic_address type provides atomic void * operations. The unit of
@@ -11501,9 +11246,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
     Atomically returns the value pointed to by object.
 
-
-
-
 [<a name="p281" href="#p281">page 281</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.17.7.3" href="#7.17.7.3"><b>    7.17.7.3 The atomic_exchange generic functions</b></a>
@@ -11542,9 +11284,6 @@ char int_p_sep_by_space
     failure. These operations are atomic read-modify-write operations (<a href="#5.1.2.4">5.1.2.4</a>).
 3   NOTE 1    The effect of the compare-and-exchange operations is
 
-
-
-
 [<a name="p282" href="#p282">page 282</a>] (<a href="#Contents">Contents</a>)
 
              if (*object == *expected)
@@ -11589,6 +11328,7 @@ char int_p_sep_by_space
 3   Atomically replaces the value pointed to by object with the result of the computation
     applied to the value pointed to by object and the given operand. Memory is affected
     according to the value of order. These operations are atomic read-modify-write
+
 [<a name="p283" href="#p283">page 283</a>] (<a href="#Contents">Contents</a>)
 
     operations (<a href="#5.1.2.4">5.1.2.4</a>). For signed integer types, arithmetic is defined to use two's
@@ -11630,9 +11370,6 @@ char int_p_sep_by_space
     to the value of order. These operations are atomic read-modify-write operations
     (<a href="#5.1.2.4">5.1.2.4</a>).
 
-
-
-
 [<a name="p284" href="#p284">page 284</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -11650,9 +11387,6 @@ char int_p_sep_by_space
 <b>    Returns</b>
 3   The atomic_flag_clear functions return no value.
 
-
-
-
 [<a name="p285" href="#p285">page 285</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.18" href="#7.18"><b>    7.18 Boolean type and values &lt;stdbool.h&gt;</b></a>
@@ -11716,9 +11450,6 @@ char int_p_sep_by_space
 
 Forward references: localization (<a href="#7.11">7.11</a>).
 
-
-
-
 [<a name="p288" href="#p288">page 288</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.20" href="#7.20"><b>    7.20 Integer types &lt;stdint.h&gt;</b></a>
@@ -11861,8 +11592,6 @@ Forward references: localization (<a href="#7.11">7.11</a>).
     -- maximum value of pointer-holding unsigned integer type
        UINTPTR_MAX                                          216 - 1
 
-
-
 [<a name="p292" href="#p292">page 292</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.20.2.5" href="#7.20.2.5"><b>    7.20.2.5 Limits of greatest-width integer types</b></a>
@@ -11950,9 +11679,6 @@ Forward references: localization (<a href="#7.11">7.11</a>).
     by its argument and the type uintmax_t:
             UINTMAX_C(value)
 
-
-
-
 [<a name="p295" href="#p295">page 295</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.21" href="#7.21"><b>    7.21 Input/output &lt;stdio.h&gt;</b></a>
@@ -11988,8 +11714,6 @@ Forward references: localization (<a href="#7.11">7.11</a>).
     which expands to an integer constant expression that is the size needed for an array of
     char large enough to hold the longest file name string that the implementation
 
-
-
 [<a name="p296" href="#p296">page 296</a>] (<a href="#Contents">Contents</a>)
 
     guarantees can be opened;<sup><a href="#note258"><b>258)</b></a></sup>
@@ -12223,9 +11947,6 @@ Forward references: localization (<a href="#7.11">7.11</a>).
      old is no longer accessible by that name. If a file named by the string pointed to by new
      exists prior to the call to the rename function, the behavior is implementation-defined.
 
-
-
-
 [<a name="p302" href="#p302">page 302</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -12298,9 +12019,6 @@ Forward references: localization (<a href="#7.11">7.11</a>).
 3   The fclose function returns zero if the stream was successfully closed, or EOF if any
     errors were detected.
 
-
-
-
 [<a name="p304" href="#p304">page 304</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.21.5.2" href="#7.21.5.2"><b>    7.21.5.2 The fflush function</b></a>
@@ -12379,8 +12097,6 @@ Forward references: localization (<a href="#7.11">7.11</a>).
     operation fails, fopen returns a null pointer.
     Forward references: file positioning functions (<a href="#7.21.9">7.21.9</a>).
 
-
-
 [<a name="p306" href="#p306">page 306</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.21.5.4" href="#7.21.5.4"><b>    7.21.5.4 The freopen function</b></a>
@@ -12573,7 +12289,6 @@ Forward references: localization (<a href="#7.11">7.11</a>).
                   following n conversion specifier applies to a pointer to a ptrdiff_t
                   argument.
 
-
 [<a name="p311" href="#p311">page 311</a>] (<a href="#Contents">Contents</a>)
 
     L              Specifies that a following a, A, e, E, f, F, g, or G conversion specifier
@@ -12782,8 +12497,6 @@ s             If no l length modifier is present, the argument shall be a pointe
 
      Forward references: conversion state (<a href="#7.28.6">7.28.6</a>), the wcrtomb function (<a href="#7.28.6.3.3">7.28.6.3.3</a>).
 
-
-
 [<a name="p316" href="#p316">page 316</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.21.6.2" href="#7.21.6.2"><b>    7.21.6.2 The fscanf function</b></a>
@@ -12903,7 +12616,6 @@ s             If no l length modifier is present, the argument shall be a pointe
              format is the same as expected for the subject sequence of the strtod
              function. The corresponding argument shall be a pointer to floating.
 
-
 [<a name="p319" href="#p319">page 319</a>] (<a href="#Contents">Contents</a>)
 
 c             Matches a sequence of characters of exactly the number specified by the field
@@ -13078,9 +12790,6 @@ s             Matches a sequence of non-white-space characters.279)
      terminating null wide character.
 25   However, the call:
 
-
-
-
 [<a name="p323" href="#p323">page 323</a>] (<a href="#Contents">Contents</a>)
 
              #include <a href="#7.21">&lt;stdio.h&gt;</a>
@@ -13121,8 +12830,6 @@ s             Matches a sequence of non-white-space characters.279)
 2    The scanf function is equivalent to fscanf with the argument stdin interposed
      before the arguments to scanf.
 
-
-
 [<a name="p324" href="#p324">page 324</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -13280,8 +12987,6 @@ s             Matches a sequence of non-white-space characters.279)
     va_end macro.281) If copying takes place between objects that overlap, the behavior is
     undefined.
 
-
-
 [<a name="p328" href="#p328">page 328</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -13320,6 +13025,7 @@ s             Matches a sequence of non-white-space characters.279)
 <b>    Returns</b>
 3   The vsscanf function returns the value of the macro EOF if an input failure occurs
     before the first conversion (if any) has completed. Otherwise, the vsscanf function
+
 [<a name="p329" href="#p329">page 329</a>] (<a href="#Contents">Contents</a>)
 
     returns the number of input items assigned, which can be fewer than provided for, or even
@@ -13393,9 +13099,6 @@ s             Matches a sequence of non-white-space characters.279)
     may evaluate stream more than once, so the argument should never be an expression
     with side effects.
 
-
-
-
 [<a name="p331" href="#p331">page 331</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -13432,7 +13135,6 @@ s             Matches a sequence of non-white-space characters.279)
 <b>    Description</b>
 2   The putchar function is equivalent to putc with the second argument stdout.
 
-
 [<a name="p332" href="#p332">page 332</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -13542,9 +13244,6 @@ s             Matches a sequence of non-white-space characters.279)
     returns nonzero and stores an implementation-defined positive value in errno.
     Forward references: the fsetpos function (<a href="#7.21.9.3">7.21.9.3</a>).
 
-
-
-
 [<a name="p335" href="#p335">page 335</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.21.9.2" href="#7.21.9.2"><b>    7.21.9.2 The fseek function</b></a>
@@ -13617,9 +13316,6 @@ s             Matches a sequence of non-white-space characters.279)
 <b>    Returns</b>
 3   The rewind function returns no value.
 
-
-
-
 [<a name="p337" href="#p337">page 337</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.21.10" href="#7.21.10"><b>    7.21.10 Error-handling functions</b></a>
@@ -13651,9 +13347,6 @@ s             Matches a sequence of non-white-space characters.279)
 3   The ferror function returns nonzero if and only if the error indicator is set for
     stream.
 
-
-
-
 [<a name="p338" href="#p338">page 338</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.21.10.4" href="#7.21.10.4"><b>    7.21.10.4 The perror function</b></a>
@@ -13671,9 +13364,6 @@ s             Matches a sequence of non-white-space characters.279)
 3   The perror function returns no value.
     Forward references: the strerror function (<a href="#7.23.6.2">7.23.6.2</a>).
 
-
-
-
 [<a name="p339" href="#p339">page 339</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.22" href="#7.22"><b>    7.22 General utilities &lt;stdlib.h&gt;</b></a>
@@ -13741,8 +13431,6 @@ s             Matches a sequence of non-white-space characters.279)
     Forward references: the strtol, strtoll, strtoul, and strtoull functions
     (<a href="#7.22.1.4">7.22.1.4</a>).
 
-
-
 [<a name="p341" href="#p341">page 341</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.22.1.3" href="#7.22.1.3"><b>    7.22.1.3 The strtod, strtof, and strtold functions</b></a>
@@ -13782,6 +13470,7 @@ s             Matches a sequence of non-white-space characters.279)
 4   If the subject sequence has the expected form for a floating-point number, the sequence of
     characters starting with the first digit or the decimal-point character (whichever occurs
     first) is interpreted as a floating constant according to the rules of <a href="#6.4.4.2">6.4.4.2</a>, except that the
+
 [<a name="p342" href="#p342">page 342</a>] (<a href="#Contents">Contents</a>)
 
     decimal-point character is used in place of a period, and that if neither an exponent part
@@ -13905,9 +13594,6 @@ s             Matches a sequence of non-white-space characters.279)
     LLONG_MAX, ULONG_MAX, or ULLONG_MAX is returned (according to the return type
     and sign of the value, if any), and the value of the macro ERANGE is stored in errno.
 
-
-
-
 [<a name="p345" href="#p345">page 345</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.22.2" href="#7.22.2"><b>    7.22.2 Pseudo-random sequence generation functions</b></a>
@@ -13985,9 +13671,6 @@ s             Matches a sequence of non-white-space characters.279)
 3   The aligned_alloc function returns either a null pointer or a pointer to the allocated
     space.
 
-
-
-
 [<a name="p347" href="#p347">page 347</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.22.3.2" href="#7.22.3.2"><b>    7.22.3.2 The calloc function</b></a>
@@ -14061,9 +13744,6 @@ s             Matches a sequence of non-white-space characters.279)
     unsuccessful termination is returned to the host environment by means of the function
     call raise(SIGABRT).
 
-
-
-
 [<a name="p349" href="#p349">page 349</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -14374,7 +14054,6 @@ s             Matches a sequence of non-white-space characters.279)
 5   In no case will the value returned be greater than n or the value of the MB_CUR_MAX
     macro.
 
-
 [<a name="p357" href="#p357">page 357</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.22.7.3" href="#7.22.7.3"><b>    7.22.7.3 The wctomb function</b></a>
@@ -14413,6 +14092,7 @@ s             Matches a sequence of non-white-space characters.279)
     No multibyte characters that follow a null character (which is converted into a null wide
     character) will be examined or converted. Each multibyte character is converted as if by
     a call to the mbtowc function, except that the conversion state of the mbtowc function is
+
 [<a name="p358" href="#p358">page 358</a>] (<a href="#Contents">Contents</a>)
 
     not affected.
@@ -14522,9 +14202,6 @@ s             Matches a sequence of non-white-space characters.279)
 2   The strncpy function copies not more than n characters (characters that follow a null
     character are not copied) from the array pointed to by s2 to the array pointed to by
 
-
-
-
 [<a name="p361" href="#p361">page 361</a>] (<a href="#Contents">Contents</a>)
 
     s1.<sup><a href="#note301"><b>301)</b></a></sup> If copying takes place between objects that overlap, the behavior is undefined.
@@ -14674,8 +14351,6 @@ s             Matches a sequence of non-white-space characters.279)
     string pointed to by s. The terminating null character is considered to be part of the
     string.
 
-
-
 [<a name="p365" href="#p365">page 365</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -14710,9 +14385,6 @@ s             Matches a sequence of non-white-space characters.279)
     string pointed to by s. The terminating null character is considered to be part of the
     string.
 
-
-
-
 [<a name="p366" href="#p366">page 366</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -14749,6 +14421,7 @@ s             Matches a sequence of non-white-space characters.279)
     by s2. The first call in the sequence has a non-null first argument; subsequent calls in the
     sequence have a null first argument. The separator string pointed to by s2 may be
     different from call to call.
+
 [<a name="p367" href="#p367">page 367</a>] (<a href="#Contents">Contents</a>)
 
 3   The first call in the sequence searches the string pointed to by s1 for the first character
@@ -14788,8 +14461,6 @@ s             Matches a sequence of non-white-space characters.279)
 <b>    Returns</b>
 3   The memset function returns the value of s.
 
-
-
 [<a name="p368" href="#p368">page 368</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.23.6.2" href="#7.23.6.2"><b>    7.23.6.2 The strerror function</b></a>
@@ -14816,9 +14487,6 @@ s             Matches a sequence of non-white-space characters.279)
 3   The strlen function returns the number of characters that precede the terminating null
     character.
 
-
-
-
 [<a name="p369" href="#p369">page 369</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.24" href="#7.24"><b>    7.24 Type-generic math &lt;tgmath.h&gt;</b></a>
@@ -14890,9 +14558,6 @@ s             Matches a sequence of non-white-space characters.279)
     If all arguments for generic parameters are real, then use of the macro invokes a real
     function; otherwise, use of the macro results in undefined behavior.
 
-
-
-
 [<a name="p371" href="#p371">page 371</a>] (<a href="#Contents">Contents</a>)
 
 6   For each unsuffixed function in <a href="#7.3">&lt;complex.h&gt;</a> that is not a c-prefixed counterpart to a
@@ -14934,9 +14599,6 @@ s             Matches a sequence of non-white-space characters.279)
                 carg(dc)                            carg(dc), the function
                 cproj(ldc)                          cprojl(ldc)
 
-
-
-
 [<a name="p372" href="#p372">page 372</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.25" href="#7.25"><b>    7.25 Threads &lt;threads.h&gt;</b></a>
@@ -14971,7 +14633,6 @@ s             Matches a sequence of non-white-space characters.279)
             once_flag
     which is a complete object type that holds a flag for use by call_once; and
 
-
 [<a name="p373" href="#p373">page 373</a>] (<a href="#Contents">Contents</a>)
 
            xtime
@@ -15003,9 +14664,6 @@ s             Matches a sequence of non-white-space characters.279)
     which is returned by a function to indicate that the requested operation failed because it
     was unable to allocate memory.
 
-
-
-
 [<a name="p374" href="#p374">page 374</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.25.2" href="#7.25.2"><b>    7.25.2 Initialization functions</b></a>
@@ -15077,9 +14735,6 @@ s             Matches a sequence of non-white-space characters.279)
            int cnd_timedwait(cnd_t *cond, mtx_t *mtx,
                 const xtime *xt);
 
-
-
-
 [<a name="p376" href="#p376">page 376</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -15116,8 +14771,6 @@ s             Matches a sequence of non-white-space characters.279)
 2   The mtx_destroy function releases any resources used by the mutex pointed to by
     mtx. No threads can be blocked waiting for the mutex pointed to by mtx.
 
-
-
 [<a name="p377" href="#p377">page 377</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -15153,9 +14806,6 @@ s             Matches a sequence of non-white-space characters.279)
     resource requested is already in use, or thrd_error if the request could not be
     honored.
 
-
-
-
 [<a name="p378" href="#p378">page 378</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.25.4.4" href="#7.25.4.4"><b>    7.25.4.4 The mtx_timedlock function</b></a>
@@ -15228,8 +14878,6 @@ s             Matches a sequence of non-white-space characters.279)
 1          #include <a href="#7.25">&lt;threads.h&gt;</a>
            int thrd_detach(thrd_t thr);
 
-
-
 [<a name="p380" href="#p380">page 380</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -15301,7 +14949,6 @@ s             Matches a sequence of non-white-space characters.279)
 2   The tss_create function creates a thread-specific storage pointer with destructor
     dtor, which may be null.
 
-
 [<a name="p382" href="#p382">page 382</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -15336,9 +14983,6 @@ s             Matches a sequence of non-white-space characters.279)
 2   The tss_set function sets the value for the current thread held in the thread-specific
     storage identified by key to val.
 
-
-
-
 [<a name="p383" href="#p383">page 383</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -15587,9 +15231,6 @@ s             Matches a sequence of non-white-space characters.279)
                 const char * restrict format,
                 const struct tm * restrict timeptr);
 
-
-
-
 [<a name="p390" href="#p390">page 390</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -15718,6 +15359,7 @@ s             Matches a sequence of non-white-space characters.279)
     %b the first three characters of %B.
     %B one of ''January'', ''February'', ... , ''December''.
     %c equivalent to ''%a %b %e %T %Y''.
+
 [<a name="p393" href="#p393">page 393</a>] (<a href="#Contents">Contents</a>)
 
     %p    one of ''AM'' or ''PM''.
@@ -15731,9 +15373,6 @@ s             Matches a sequence of non-white-space characters.279)
     into the array pointed to by s not including the terminating null character. Otherwise,
     zero is returned and the contents of the array are indeterminate.
 
-
-
-
 [<a name="p394" href="#p394">page 394</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.27" href="#7.27"><b>    7.27 Unicode utilities &lt;uchar.h&gt;</b></a>
@@ -15771,6 +15410,7 @@ s             Matches a sequence of non-white-space characters.279)
     next multibyte character is complete and valid, it determines the values of the
     corresponding wide characters and then, if pc16 is not a null pointer, stores the value of
     the first (or only) such character in the object pointed to by pc16. Subsequent calls will
+
 [<a name="p395" href="#p395">page 395</a>] (<a href="#Contents">Contents</a>)
 
     store successive wide characters without consuming any additional input until all the
@@ -15848,7 +15488,6 @@ s             Matches a sequence of non-white-space characters.279)
                        character (which is the value stored); the value returned is the number
                        of bytes that complete the multibyte character.
 
-
 [<a name="p397" href="#p397">page 397</a>] (<a href="#Contents">Contents</a>)
 
     (size_t)(-3) if the next character resulting from a previous call has been stored (no
@@ -16250,8 +15889,6 @@ p            The argument shall be a pointer to void. The value of the pointer i
      -- An optional decimal integer greater than zero that specifies the maximum field width
        (in wide characters).
 
-
-
 [<a name="p407" href="#p407">page 407</a>] (<a href="#Contents">Contents</a>)
 
      -- An optional length modifier that specifies the size of the receiving object.
@@ -16413,6 +16050,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
             from the input stream so far by this call to the fwscanf function. Execution
             of a %n directive does not increment the assignment count returned at the
             completion of execution of the fwscanf function. No argument is
+
 [<a name="p411" href="#p411">page 411</a>] (<a href="#Contents">Contents</a>)
 
                     converted, but one is consumed. If the conversion specification includes an
@@ -16492,9 +16130,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     returns the number of input items assigned, which can be fewer than provided for, or even
     zero, in the event of an early matching failure.
 
-
-
-
 [<a name="p413" href="#p413">page 413</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.28.2.5" href="#7.28.2.5"><b>    7.28.2.5 The vfwprintf function</b></a>
@@ -16573,7 +16208,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     counting the terminating null wide character, or a negative value if an encoding error
     occurred or if n or more wide characters were requested to be generated.
 
-
 [<a name="p415" href="#p415">page 415</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.28.2.8" href="#7.28.2.8"><b>    7.28.2.8 The vswscanf function</b></a>
@@ -16608,9 +16242,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 3   The vwprintf function returns the number of wide characters transmitted, or a negative
     value if an output or encoding error occurred.
 
-
-
-
 [<a name="p416" href="#p416">page 416</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.28.2.10" href="#7.28.2.10"><b>    7.28.2.10 The vwscanf function</b></a>
@@ -16647,7 +16278,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 2   The wscanf function is equivalent to fwscanf with the argument stdin interposed
     before the arguments to wscanf.
 
-
 [<a name="p417" href="#p417">page 417</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -16833,9 +16463,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     wide character sequences returns zero, and a function that copies wide characters copies
     zero wide characters.
 
-
-
-
 [<a name="p422" href="#p422">page 422</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.28.4.1" href="#7.28.4.1"><b>    7.28.4.1 Wide string numeric conversion functions</b></a>
@@ -16875,6 +16502,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
                      n-wchar-sequence nondigit
     The subject sequence is defined as the longest initial subsequence of the input wide
     string, starting with the first non-white-space wide character, that is of the expected form.
+
 [<a name="p423" href="#p423">page 423</a>] (<a href="#Contents">Contents</a>)
 
     The subject sequence contains no wide characters if the input wide string is not of the
@@ -17024,7 +16652,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 <b>    Returns</b>
 3   The wcscpy function returns the value of s1.
 
-
 [<a name="p427" href="#p427">page 427</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.28.4.2.2" href="#7.28.4.2.2"><b>    7.28.4.2.2 The wcsncpy function</b></a>
@@ -17173,7 +16800,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 4   EXAMPLE The value of the following expression is the length of the array needed to hold the
     transformation of the wide string pointed to by s:
 
-
 [<a name="p431" href="#p431">page 431</a>] (<a href="#Contents">Contents</a>)
 
            1 + wcsxfrm(NULL, s, 0)
@@ -17210,8 +16836,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     string pointed to by s1 which consists entirely of wide characters not from the wide
     string pointed to by s2.
 
-
-
 [<a name="p432" href="#p432">page 432</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -17247,7 +16871,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 <b>    Returns</b>
 3   The wcsspn function returns the length of the segment.
 
-
 [<a name="p433" href="#p433">page 433</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.28.4.5.6" href="#7.28.4.5.6"><b>    7.28.4.5.6 The wcsstr function</b></a>
@@ -17286,6 +16909,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
     the start of the first token.
 5   The wcstok function then searches from there for a wide character that is contained in
     the current separator wide string. If no such wide character is found, the current token
+
 [<a name="p434" href="#p434">page 434</a>] (<a href="#Contents">Contents</a>)
 
     extends to the end of the wide string pointed to by s1, and subsequent searches in the
@@ -17321,9 +16945,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 3   The wmemchr function returns a pointer to the located wide character, or a null pointer if
     the wide character does not occur in the object.
 
-
-
-
 [<a name="p435" href="#p435">page 435</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.28.4.6" href="#7.28.4.6"><b>    7.28.4.6 Miscellaneous functions</b></a>
@@ -17359,7 +16980,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- The argument s points to the initial element of an array of wide characters into which
       the generated output is to be placed.
 
-
 [<a name="p436" href="#p436">page 436</a>] (<a href="#Contents">Contents</a>)
 
     -- The argument maxsize indicates the limiting number of wide characters.
@@ -17436,8 +17056,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 2   If ps is not a null pointer, the mbsinit function determines whether the referenced
     mbstate_t object describes an initial conversion state.
 
-
-
 [<a name="p438" href="#p438">page 438</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Returns</b>
@@ -17470,9 +17088,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     or (size_t)(-1).
     Forward references: the mbrtowc function (<a href="#7.28.6.3.2">7.28.6.3.2</a>).
 
-
-
-
 [<a name="p439" href="#p439">page 439</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.28.6.3.2" href="#7.28.6.3.2"><b>    7.28.6.3.2 The mbrtowc function</b></a>
@@ -17549,9 +17164,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     when dst is not a null pointer), the pointer object pointed to by this parameter is updated
     to reflect the amount of the source processed by that invocation.
 
-
-
-
 [<a name="p441" href="#p441">page 441</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.28.6.4.1" href="#7.28.6.4.1"><b>    7.28.6.4.1 The mbsrtowcs function</b></a>
@@ -17808,7 +17420,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 3   Each of the following expressions has a truth-value equivalent to the call to the wide
     character classification function (<a href="#7.29.2.1">7.29.2.1</a>) in the comment that follows the expression:
 
-
 [<a name="p448" href="#p448">page 448</a>] (<a href="#Contents">Contents</a>)
 
             iswctype(wc,      wctype("alnum"))              //   iswalnum(wc)
@@ -17842,9 +17453,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     category of the current locale, the wctype function returns a nonzero value that is valid
     as the second argument to the iswctype function; otherwise, it returns zero.
 
-
-
-
 [<a name="p449" href="#p449">page 449</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.29.3" href="#7.29.3"><b>    7.29.3 Wide character case mapping utilities</b></a>
@@ -17879,9 +17487,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     well as case mapping equivalent to that performed by the functions described in the
     previous subclause (<a href="#7.29.3.1">7.29.3.1</a>).
 
-
-
-
 [<a name="p450" href="#p450">page 450</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.29.3.2.1" href="#7.29.3.2.1"><b>    7.29.3.2.1 The towctrans function</b></a>
@@ -17913,9 +17518,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     category of the current locale, the wctrans function returns a nonzero value that is valid
     as the second argument to the towctrans function; otherwise, it returns zero.
 
-
-
-
 [<a name="p451" href="#p451">page 451</a>] (<a href="#Contents">Contents</a>)
 
 <a name="7.30" href="#7.30"><b>    7.30 Future library directions</b></a>
@@ -17975,9 +17577,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 1   Function names that begin with is or to and a lowercase letter may be added to the
     declarations in the <a href="#7.29">&lt;wctype.h&gt;</a> header.
 
-
-
-
 [<a name="p453" href="#p453">page 453</a>] (<a href="#Contents">Contents</a>)
 
 <a name="A" href="#A"><b>                                                 Annex A</b></a>
@@ -18002,9 +17601,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
                   punctuator
                   each non-white-space character that cannot be one of the above
 
-
-
-
 [<a name="p454" href="#p454">page 454</a>] (<a href="#Contents">Contents</a>)
 
 <a name="A.1.2" href="#A.1.2"><b>A.1.2 Keywords</b></a>
@@ -18041,9 +17637,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 (<a href="#6.4.2.1">6.4.2.1</a>) digit: one of
                0 1 2         3    4   5    6   7   8    9
 
-
-
-
 [<a name="p455" href="#p455">page 455</a>] (<a href="#Contents">Contents</a>)
 
 <a name="A.1.4" href="#A.1.4"><b>A.1.4 Universal character names</b></a>
@@ -18079,9 +17672,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 (<a href="#6.4.4.1">6.4.4.1</a>) octal-digit: one of
                0 1 2 3           4   5      6   7
 
-
-
-
 [<a name="p456" href="#p456">page 456</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.4.4.1">6.4.4.1</a>) hexadecimal-digit: one of
@@ -18119,8 +17709,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 (<a href="#6.4.4.2">6.4.4.2</a>) sign: one of
                + -
 
-
-
 [<a name="p457" href="#p457">page 457</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.4.4.2">6.4.4.2</a>) digit-sequence:
@@ -18158,9 +17746,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
               hexadecimal-escape-sequence
               universal-character-name
 
-
-
-
 [<a name="p458" href="#p458">page 458</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.4.4.4">6.4.4.4</a>) simple-escape-sequence: one of
@@ -18198,9 +17783,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
               , # ##
               &lt;: :&gt; &lt;% %&gt; %: %:%:
 
-
-
-
 [<a name="p459" href="#p459">page 459</a>] (<a href="#Contents">Contents</a>)
 
 <a name="A.1.8" href="#A.1.8"><b>A.1.8 Header names</b></a>
@@ -18231,9 +17813,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
               pp-number   P sign
               pp-number   .
 
-
-
-
 [<a name="p460" href="#p460">page 460</a>] (<a href="#Contents">Contents</a>)
 
 <a name="A.2" href="#A.2"><b>A.2 Phrase structure grammar</b></a>
@@ -18311,9 +17890,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
               AND-expression
               exclusive-OR-expression ^ AND-expression
 
-
-
-
 [<a name="p462" href="#p462">page 462</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.5.12">6.5.12</a>) inclusive-OR-expression:
@@ -18352,7 +17928,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
                init-declarator
                init-declarator-list , init-declarator
 
-
 [<a name="p463" href="#p463">page 463</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.7">6.7</a>) init-declarator:
@@ -18431,8 +18006,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 (<a href="#6.7.6">6.7.6</a>) declarator:
               pointeropt direct-declarator
 
-
-
 [<a name="p465" href="#p465">page 465</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.7.6">6.7.6</a>) direct-declarator:
@@ -18468,9 +18041,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
               pointer
               pointeropt direct-abstract-declarator
 
-
-
-
 [<a name="p466" href="#p466">page 466</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.7.7">6.7.7</a>) direct-abstract-declarator:
@@ -18503,9 +18073,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 (<a href="#6.7.10">6.7.10</a>) static_assert-declaration:
                _Static_assert ( constant-expression , string-literal ) ;
 
-
-
-
 [<a name="p467" href="#p467">page 467</a>] (<a href="#Contents">Contents</a>)
 
 <a name="A.2.3" href="#A.2.3"><b>A.2.3 Statements</b></a>
@@ -18582,7 +18149,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 (<a href="#6.10">6.10</a>) elif-group:
                # elif       constant-expression new-line groupopt
 
-
 [<a name="p469" href="#p469">page 469</a>] (<a href="#Contents">Contents</a>)
 
 (<a href="#6.10">6.10</a>) else-group:
@@ -18616,9 +18182,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 (<a href="#6.10">6.10</a>) new-line:
               the new-line character
 
-
-
-
 [<a name="p470" href="#p470">page 470</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B" href="#B"><b>                               Annex B</b></a>
@@ -18821,6 +18384,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
         int isnan(real-floating x);
         int isnormal(real-floating x);
         int signbit(real-floating x);
+
 [<a name="p475" href="#p475">page 475</a>] (<a href="#Contents">Contents</a>)
 
       double acos(double x);
@@ -19025,9 +18589,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       void (*signal(int sig, void (*func)(int)))(int);
       int raise(int sig);
 
-
-
-
 [<a name="p480" href="#p480">page 480</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B.14" href="#B.14"><b>B.14 Alignment &lt;stdalign.h&gt;</b></a>
@@ -19067,8 +18628,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
         atomic_ushort                   atomic_intptr_t
         atomic_int                      atomic_uintptr_t
 
-
-
 [<a name="p481" href="#p481">page 481</a>] (<a href="#Contents">Contents</a>)
 
       atomic_size_t                     atomic_intmax_t
@@ -19109,9 +18668,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       void atomic_flag_clear_explicit(
             volatile atomic_flag *object, memory_order order);
 
-
-
-
 [<a name="p482" href="#p482">page 482</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B.17" href="#B.17"><b>B.17 Boolean type and values &lt;stdbool.h&gt;</b></a>
@@ -19142,9 +18698,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
         __STDC_WANT_LIB_EXT1__
         RSIZE_MAX
 
-
-
-
 [<a name="p483" href="#p483">page 483</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B.20" href="#B.20"><b>B.20 Input/output &lt;stdio.h&gt;</b></a>
@@ -19229,8 +18782,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
         errno_t tmpfile_s(FILE * restrict * restrict streamptr);
         errno_t tmpnam_s(char *s, rsize_t maxsize);
 
-
-
 [<a name="p485" href="#p485">page 485</a>] (<a href="#Contents">Contents</a>)
 
       errno_t fopen_s(FILE * restrict * restrict streamptr,
@@ -19273,8 +18824,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
            va_list arg);
       char *gets_s(char *s, rsize_t n);
 
-
-
 [<a name="p486" href="#p486">page 486</a>] (<a href="#Contents">Contents</a>)
 
 <a name="B.21" href="#B.21"><b>B.21 General utilities &lt;stdlib.h&gt;</b></a>
@@ -19317,7 +18866,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
         _Noreturn void quick_exit(int status);
         int system(const char *string);
 
-
 [<a name="p487" href="#p487">page 487</a>] (<a href="#Contents">Contents</a>)
 
       void *bsearch(const void *key, const void *base,
@@ -19358,9 +18906,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
                 char * restrict value, rsize_t maxsize,
                 const char * restrict name);
 
-
-
-
 [<a name="p488" href="#p488">page 488</a>] (<a href="#Contents">Contents</a>)
 
         void *bsearch_s(const void *key, const void *base,
@@ -19403,6 +18948,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
         size_t strxfrm(char * restrict s1,
              const char * restrict s2, size_t n);
         void *memchr(const void *s, int c, size_t n);
+
 [<a name="p489" href="#p489">page 489</a>] (<a href="#Contents">Contents</a>)
 
       char *strchr(const char *s, int c);
@@ -19487,6 +19033,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
       void mtx_destroy(mtx_t *mtx);
       int mtx_init(mtx_t *mtx, int type);
       int mtx_lock(mtx_t *mtx);
+
 [<a name="p491" href="#p491">page 491</a>] (<a href="#Contents">Contents</a>)
 
       int mtx_timedlock(mtx_t *mtx, const xtime *xt);
@@ -19527,8 +19074,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       errno_t asctime_s(char *s, rsize_t maxsize,
            const struct tm *timeptr);
 
-
-
 [<a name="p492" href="#p492">page 492</a>] (<a href="#Contents">Contents</a>)
 
         errno_t ctime_s(char *s, rsize_t maxsize,
@@ -19568,8 +19113,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
         int vswprintf(wchar_t * restrict s, size_t n,
              const wchar_t * restrict format, va_list arg);
 
-
-
 [<a name="p493" href="#p493">page 493</a>] (<a href="#Contents">Contents</a>)
 
       int vswscanf(const wchar_t * restrict s,
@@ -19612,8 +19155,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       wchar_t *wcsncpy(wchar_t * restrict s1,
            const wchar_t * restrict s2, size_t n);
 
-
-
 [<a name="p494" href="#p494">page 494</a>] (<a href="#Contents">Contents</a>)
 
         wchar_t *wmemcpy(wchar_t * restrict s1,
@@ -19656,8 +19197,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
              const char * restrict s, size_t n,
              mbstate_t * restrict ps);
 
-
-
 [<a name="p495" href="#p495">page 495</a>] (<a href="#Contents">Contents</a>)
 
       size_t wcrtomb(char * restrict s, wchar_t wc,
@@ -19699,8 +19238,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
            const wchar_t * restrict format,
            va_list arg);
 
-
-
 [<a name="p496" href="#p496">page 496</a>] (<a href="#Contents">Contents</a>)
 
         int vwprintf_s(const wchar_t * restrict format,
@@ -19742,9 +19279,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
              const char ** restrict src, rsize_t len,
              mbstate_t * restrict ps);
 
-
-
-
 [<a name="p497" href="#p497">page 497</a>] (<a href="#Contents">Contents</a>)
 
       errno_t wcsrtombs_s(size_t * restrict retval,
@@ -19772,9 +19306,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       wint_t towctrans(wint_t wc, wctrans_t desc);
       wctrans_t wctrans(const char *property);
 
-
-
-
 [<a name="p498" href="#p498">page 498</a>] (<a href="#Contents">Contents</a>)
 
 <a name="C" href="#C"><b>                                          Annex C</b></a>
@@ -19802,9 +19333,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       also between any call to a comparison function and any movement of the objects
       passed as arguments to that call (<a href="#7.22.5">7.22.5</a>).
 
-
-
-
 [<a name="p499" href="#p499">page 499</a>] (<a href="#Contents">Contents</a>)
 
 <a name="D" href="#D"><b>                                         Annex D</b></a>
@@ -19827,9 +19355,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 <a name="D.2" href="#D.2"><b>    D.2 Ranges of characters disallowed initially</b></a>
 1   0300-036F, 1DC0-1DFF, 20D0-20FF, FE20-FE2F
 
-
-
-
 [<a name="p500" href="#p500">page 500</a>] (<a href="#Contents">Contents</a>)
 
 <a name="E" href="#E"><b>                                         Annex E</b></a>
@@ -19869,6 +19394,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
 4   The values given in the following list shall be replaced by implementation-defined
     constant expressions that are greater or equal in magnitude (absolute value) to those
     shown, with the same sign:
+
 [<a name="p501" href="#p501">page 501</a>] (<a href="#Contents">Contents</a>)
 
            #define    DLB_DECIMAL_DIG                                10
@@ -19908,9 +19434,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
            #define    LDBL_EPSILON                               1E-9
            #define    LDBL_MIN                                  1E-37
 
-
-
-
 [<a name="p502" href="#p502">page 502</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F" href="#F"><b>                                               Annex F</b></a>
@@ -20147,7 +19670,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
          efficiency of translation-time evaluation through static initialization, such as
                   const static double one_third = 1.0/3.0;
 
-
 [<a name="p508" href="#p508">page 508</a>] (<a href="#Contents">Contents</a>)
 
              #include <a href="#7.6">&lt;fenv.h&gt;</a>
@@ -20238,34 +19760,35 @@ n           No input is consumed. The corresponding argument shall be a pointer
     about the order or count of floating-point exceptions. Therefore, between function calls,
     floating-point exceptions need not be precise: the actual order and number of occurrences
     of floating-point exceptions (&gt; 1) may vary from what the source code expresses. Thus,
+
 [<a name="p510" href="#p510">page 510</a>] (<a href="#Contents">Contents</a>)
 
     the preceding loop could be treated as
              if (0 &lt; n) x + 1;
 <a name="F.9.2" href="#F.9.2"><b>    F.9.2 Expression transformations</b></a>
-1   x/2 (&lt;-&gt;) x x 0.5          Although similar transformations involving inexact constants
+1   x/2 &lt;-&gt; x x 0.5          Although similar transformations involving inexact constants
                            generally do not yield numerically equivalent expressions, if the
                            constants are exact then such transformations can be made on
                            IEC 60559 machines and others that round perfectly.
-    1 x x and x/1 (-&gt;) x The expressions 1 x x, x/1, and x are equivalent (on IEC 60559
+    1 x x and x/1 -&gt; x The expressions 1 x x, x/1, and x are equivalent (on IEC 60559
                       machines, among others).<sup><a href="#note355"><b>355)</b></a></sup>
-    x/x (-&gt;) 1.0             The expressions x/x and 1.0 are not equivalent if x can be zero,
+    x/x -&gt; 1.0             The expressions x/x and 1.0 are not equivalent if x can be zero,
                            infinite, or NaN.
-    x - y (&lt;-&gt;) x + (-y)       The expressions x - y, x + (-y), and (-y) + x are equivalent (on
+    x - y &lt;-&gt; x + (-y)       The expressions x - y, x + (-y), and (-y) + x are equivalent (on
                            IEC 60559 machines, among others).
-    x - y (&lt;-&gt;) -(y - x)       The expressions x - y and -(y - x) are not equivalent because 1 - 1
+    x - y &lt;-&gt; -(y - x)       The expressions x - y and -(y - x) are not equivalent because 1 - 1
                            is +0 but -(1 - 1) is -0 (in the default rounding direction).<sup><a href="#note356"><b>356)</b></a></sup>
-    x - x (-&gt;) 0.0           The expressions x - x and 0.0 are not equivalent if x is a NaN or
+    x - x -&gt; 0.0           The expressions x - x and 0.0 are not equivalent if x is a NaN or
                            infinite.
-    0 x x (-&gt;) 0.0           The expressions 0 x x and 0.0 are not equivalent if x is a NaN,
+    0 x x -&gt; 0.0           The expressions 0 x x and 0.0 are not equivalent if x is a NaN,
                            infinite, or -0.
-    x+0(-&gt;) x                 The expressions x + 0 and x are not equivalent if x is -0, because
+    x+0-&gt; x                 The expressions x + 0 and x are not equivalent if x is -0, because
                            (-0) + (+0) yields +0 (in the default rounding direction), not -0.
-    x-0(-&gt;) x                 (+0) - (+0) yields -0 when rounding is downward (toward -(inf)), but
+    x-0-&gt; x                 (+0) - (+0) yields -0 when rounding is downward (toward -(inf)), but
                            +0 otherwise, and (-0) - (+0) always yields -0; so, if the state of the
                            FENV_ACCESS pragma is ''off'', promising default rounding, then
                            the implementation can replace x - 0 by x, even if x might be zero.
-    -x (&lt;-&gt;) 0 - x             The expressions -x and 0 - x are not equivalent if x is +0, because
+    -x &lt;-&gt; 0 - x             The expressions -x and 0 - x are not equivalent if x is +0, because
                            -(+0) yields -0, but 0 - (+0) yields +0 (unless rounding is
                            downward).
 
@@ -20281,9 +19804,9 @@ n           No input is consumed. The corresponding argument shall be a pointer
 [<a name="p511" href="#p511">page 511</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.9.3" href="#F.9.3"><b>    F.9.3 Relational operators</b></a>
-1   x != x (-&gt;) false           The expression x != x is true if x is a NaN.
-    x = x (-&gt;) true            The expression x = x is false if x is a NaN.
-    x &lt; y (-&gt;) isless(x,y) (and similarly for &lt;=, &gt;, &gt;=) Though numerically equal, these
+1   x != x -&gt; false           The expression x != x is true if x is a NaN.
+    x = x -&gt; true            The expression x = x is false if x is a NaN.
+    x &lt; y -&gt; isless(x,y) (and similarly for &lt;=, &gt;, &gt;=) Though numerically equal, these
                    expressions are not equivalent because of side effects when x or y is a
                    NaN and the state of the FENV_ACCESS pragma is ''on''. This
                    transformation, which would be desirable if extra code were required
@@ -20318,9 +19841,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
                      g();
     but is equivalent to
 
-
-
-
 [<a name="p512" href="#p512">page 512</a>] (<a href="#Contents">Contents</a>)
 
             if (!(a &lt; b))
@@ -20462,9 +19982,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- exp(-(inf)) returns +0.
     -- exp(+(inf)) returns +(inf).
 
-
-
-
 [<a name="p516" href="#p516">page 516</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.10.3.2" href="#F.10.3.2"><b>    F.10.3.2 The exp2 functions</b></a>
@@ -20495,9 +20012,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 2   If the correct result is outside the range of the return type, the numeric result is
     unspecified and the ''invalid'' floating-point exception is raised.
 
-
-
-
 [<a name="p517" href="#p517">page 517</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.10.3.6" href="#F.10.3.6"><b>    F.10.3.6 The ldexp functions</b></a>
@@ -20528,9 +20042,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- logb((+-)(inf)) returns +(inf).
 2   The returned value is exact and is independent of the current rounding direction mode.
 
-
-
-
 [<a name="p518" href="#p518">page 518</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.10.3.12" href="#F.10.3.12"><b>    F.10.3.12 The modf functions</b></a>
@@ -20561,9 +20072,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 2   If the calculation does not overflow or underflow, the returned value is exact and
     independent of the current rounding direction mode.
 
-
-
-
 [<a name="p519" href="#p519">page 519</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.10.4" href="#F.10.4"><b>    F.10.4 Power and absolute value functions</b></a>
@@ -20597,7 +20105,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- pow(x, +(inf)) returns +0 for | x | &lt; 1.
     -- pow(x, +(inf)) returns +(inf) for | x | &gt; 1.
 
-
 [<a name="p520" href="#p520">page 520</a>] (<a href="#Contents">Contents</a>)
 
     -- pow(-(inf), y) returns -0 for y an odd integer &lt; 0.
@@ -20630,8 +20137,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- tgamma(-(inf)) returns a NaN and raises the ''invalid'' floating-point exception.
     -- tgamma(+(inf)) returns +(inf).
 
-
-
 [<a name="p521" href="#p521">page 521</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.10.6" href="#F.10.6"><b>    F.10.6 Nearest integer functions</b></a>
@@ -20668,8 +20173,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- nearbyint((+-)0) returns (+-)0 (for all rounding directions).
     -- nearbyint((+-)(inf)) returns (+-)(inf) (for all rounding directions).
 
-
-
 [<a name="p522" href="#p522">page 522</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.10.6.4" href="#F.10.6.4"><b>    F.10.6.4 The rint functions</b></a>
@@ -20706,9 +20209,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     The round functions may, but are not required to, raise the ''inexact'' floating-point
     exception for finite non-integer numeric arguments, as this implementation does.
 
-
-
-
 [<a name="p523" href="#p523">page 523</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.10.6.7" href="#F.10.6.7"><b>    F.10.6.7 The lround and llround functions</b></a>
@@ -20744,9 +20244,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
                 return copysign(result, x);
            }
 
-
-
-
 [<a name="p524" href="#p524">page 524</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.10.7.2" href="#F.10.7.2"><b>    F.10.7.2 The remainder functions</b></a>
@@ -20778,9 +20275,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 2   Even though underflow or overflow can occur, the returned value is independent of the
     current rounding direction mode.
 
-
-
-
 [<a name="p525" href="#p525">page 525</a>] (<a href="#Contents">Contents</a>)
 
 <a name="F.10.9" href="#F.10.9"><b>    F.10.9 Maximum, minimum, and positive difference functions</b></a>
@@ -20823,9 +20317,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     characterized by FLT_EVAL_METHOD equal to 1 or 2 (<a href="#5.2.4.2.2">5.2.4.2.2</a>), do not convert
     operands of relational operators to their semantic types.
 
-
-
-
 [<a name="p527" href="#p527">page 527</a>] (<a href="#Contents">Contents</a>)
 
 <a name="G" href="#G"><b>                                           Annex G</b></a>
@@ -21081,7 +20572,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
     shown. Unless otherwise specified, where the symbol ''(+-)'' occurs in both an argument
     and the result, the result has the same sign as the argument.
 3   The functions are continuous onto both sides of their branch cuts, taking into account the
-    sign of zero. For example, csqrt(-2 (+-) i0) = (+-)isqrt:2.  -
+    sign of zero. For example, csqrt(-2 (+-) i0) = (+-)i(sqrt)2.  -
 4   Since complex and imaginary values are composed of real values, each function may be
     regarded as computing real values from real values. Except as noted, the functions treat
     real infinities, NaNs, signed zeros, subnormals, and the floating-point exception flags in a
@@ -21148,7 +20639,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- cacosh(+(inf) + i (inf)) returns +(inf) + ipi /4.
     -- cacosh((+-)(inf) + iNaN) returns +(inf) + iNaN.
 
-
 [<a name="p535" href="#p535">page 535</a>] (<a href="#Contents">Contents</a>)
 
     -- cacosh(NaN + iy) returns NaN + iNaN and optionally raises the ''invalid''
@@ -21218,6 +20708,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
       unspecified) and raises the ''invalid'' floating-point exception.
     -- csinh(+0 + iNaN) returns (+-)0 + iNaN (where the sign of the real part of the result is
       unspecified).
+
 [<a name="p537" href="#p537">page 537</a>] (<a href="#Contents">Contents</a>)
 
     -- csinh(x + i (inf)) returns NaN + iNaN and raises the ''invalid'' floating-point
@@ -21251,9 +20742,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       point exception, for all nonzero numbers y.
     -- ctanh(NaN + iNaN) returns NaN + iNaN.
 
-
-
-
 [<a name="p538" href="#p538">page 538</a>] (<a href="#Contents">Contents</a>)
 
 <a name="G.6.3" href="#G.6.3"><b>    G.6.3 Exponential and logarithmic functions</b></a>
@@ -21348,9 +20836,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
             asinh(iy)   =   i asin(y)
             atanh(iy)   =   i atan(y)
 
-
-
-
 [<a name="p541" href="#p541">page 541</a>] (<a href="#Contents">Contents</a>)
 
 <a name="H" href="#H"><b>                                          Annex H</b></a>
@@ -21382,9 +20867,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 3   The parameter ''bounded'' is always true, and is not provided. The parameter ''minint''
     is always 0 for the unsigned types, and is not provided for those types.
 
-
-
-
 [<a name="p542" href="#p542">page 542</a>] (<a href="#Contents">Contents</a>)
 
 <a name="H.2.2.1" href="#H.2.2.1"><b>    H.2.2.1 Integer operations</b></a>
@@ -21418,7 +20900,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     emin           FLT_MIN_EXP, DBL_MIN_EXP, LDBL_MIN_EXP
 2   The derived constants for the floating point types are accessed by the following:
 
-
 [<a name="p543" href="#p543">page 543</a>] (<a href="#Contents">Contents</a>)
 
     fmax          FLT_MAX, DBL_MAX, LDBL_MAX
@@ -21452,7 +20933,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 2   The FLT_ROUNDS parameter can be used to indicate the LIA-1 rounding styles:
     truncate      FLT_ROUNDS == 0
 
-
 [<a name="p544" href="#p544">page 544</a>] (<a href="#Contents">Contents</a>)
 
     nearest       FLT_ROUNDS == 1
@@ -21461,14 +20941,14 @@ n           No input is consumed. The corresponding argument shall be a pointer
     in all relevant LIA-1 operations, not just addition as in C.
 <a name="H.2.4" href="#H.2.4"><b>    H.2.4 Type conversions</b></a>
 1   The LIA-1 type conversions are the following type casts:
-    cvtI' (-&gt;) I     (int)i, (long int)i, (long long int)i,
+    cvtI' -&gt; I     (int)i, (long int)i, (long long int)i,
                   (unsigned int)i, (unsigned long int)i,
                   (unsigned long long int)i
-    cvtF (-&gt;) I      (int)x, (long int)x, (long long int)x,
+    cvtF -&gt; I      (int)x, (long int)x, (long long int)x,
                   (unsigned int)x, (unsigned long int)x,
                   (unsigned long long int)x
-    cvtI (-&gt;) F      (float)i, (double)i, (long double)i
-    cvtF' (-&gt;) F     (float)x, (double)x, (long double)x
+    cvtI -&gt; F      (float)i, (double)i, (long double)i
+    cvtF' -&gt; F     (float)x, (double)x, (long double)x
 2   In the above conversions from floating to integer, the use of (cast)x can be replaced with
     (cast)round(x), (cast)rint(x), (cast)nearbyint(x), (cast)trunc(x),
     (cast)ceil(x), or (cast)floor(x). In addition, C's floating-point to integer
@@ -21488,9 +20968,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 5   C's conversions (casts) from integer to floating-point can meet LIA-1 requirements if an
     implementation uses round-to-nearest.
 
-
-
-
 [<a name="p545" href="#p545">page 545</a>] (<a href="#Contents">Contents</a>)
 
 <a name="H.3" href="#H.3"><b>    H.3 Notification</b></a>
@@ -21527,6 +21004,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
     where i is an expression of type int representing a subset of the LIA-1 indicators.
 4   C allows an implementation to provide the following LIA-1 required behavior: at
     program termination if any indicator is set the implementation shall send an unambiguous
+
 [<a name="p546" href="#p546">page 546</a>] (<a href="#Contents">Contents</a>)
 
     and ''hard to ignore'' message (see LIA-1 subclause <a href="#6.1.2">6.1.2</a>)
@@ -21546,9 +21024,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     allows trap-and-terminate (either default implementation behavior or user replacement for
     it) or trap-and-resume, at the programmer's option.
 
-
-
-
 [<a name="p547" href="#p547">page 547</a>] (<a href="#Contents">Contents</a>)
 
 <a name="I" href="#I"><b>                                           Annex I</b></a>
@@ -21584,15 +21059,13 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- A statement with no apparent effect is encountered (<a href="#6.8">6.8</a>).
     -- A constant expression is used as the controlling expression of a selection statement
       (<a href="#6.8.4">6.8.4</a>).
+
 [<a name="p548" href="#p548">page 548</a>] (<a href="#Contents">Contents</a>)
 
 -- An incorrectly formed preprocessing group is encountered while skipping a
   preprocessing group (<a href="#6.10.1">6.10.1</a>).
 -- An unrecognized #pragma directive is encountered (<a href="#6.10.6">6.10.6</a>).
 
-
-
-
 [<a name="p549" href="#p549">page 549</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J" href="#J"><b>                                            Annex J</b></a>
@@ -21627,6 +21100,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- Whether two string literals result in distinct arrays (<a href="#6.4.5">6.4.5</a>).
     -- The order in which subexpressions are evaluated and the order in which side effects
       take place, except as specified for the function-call (), &amp;&amp;, ||, ? :, and comma
+
 [<a name="p550" href="#p550">page 550</a>] (<a href="#Contents">Contents</a>)
 
    operators (<a href="#6.5">6.5</a>).
@@ -21664,7 +21138,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
   range of the return type (<a href="#7.12.6.5">7.12.6.5</a>, <a href="#F.10.3.5">F.10.3.5</a>).
 -- The result of rounding when the value is out of range (<a href="#7.12.9.5">7.12.9.5</a>, <a href="#7.12.9.7">7.12.9.7</a>, <a href="#F.10.6.5">F.10.6.5</a>).
 
-
 [<a name="p551" href="#p551">page 551</a>] (<a href="#Contents">Contents</a>)
 
 -- The value stored by the remquo functions in the object pointed to by quo when y is
@@ -21701,8 +21174,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 -- The resulting value when the ''invalid'' floating-point exception is raised during
   IEC 60559 floating to integer conversion (<a href="#F.4">F.4</a>).
 
-
-
 [<a name="p552" href="#p552">page 552</a>] (<a href="#Contents">Contents</a>)
 
     -- Whether conversion of non-integer IEC 60559 floating values to integer raises the
@@ -21739,8 +21210,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       (<a href="#6.2.2">6.2.2</a>).
     -- An object is referred to outside of its lifetime (<a href="#6.2.4">6.2.4</a>).
 
-
-
 [<a name="p553" href="#p553">page 553</a>] (<a href="#Contents">Contents</a>)
 
 -- The value of a pointer to an object whose lifetime has ended is used (<a href="#6.2.4">6.2.4</a>).
@@ -21777,8 +21246,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 -- A pointer is used to call a function whose type is not compatible with the referenced
   type (<a href="#6.3.2.3">6.3.2.3</a>).
 
-
-
 [<a name="p554" href="#p554">page 554</a>] (<a href="#Contents">Contents</a>)
 
 -- An unmatched ' or " character is encountered on a logical source line during
@@ -21816,7 +21283,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 -- A member of an atomic structure or union is accessed (<a href="#6.5.2.3">6.5.2.3</a>).
 -- The operand of the unary * operator has an invalid value (<a href="#6.5.3.2">6.5.3.2</a>).
 
-
 [<a name="p555" href="#p555">page 555</a>] (<a href="#Contents">Contents</a>)
 
 -- A pointer is converted to other than an integer or pointer type (<a href="#6.5.4">6.5.4</a>).
@@ -21893,7 +21359,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 -- The definition of an object has an alignment specifier and another declaration of that
   object has a different alignment specifier (<a href="#6.7.5">6.7.5</a>).
 
-
 [<a name="p557" href="#p557">page 557</a>] (<a href="#Contents">Contents</a>)
 
 -- Declarations of an object in different translation units have different alignment
@@ -22084,6 +21549,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
   exactly match one of the specified character sequences (<a href="#7.21.5.3">7.21.5.3</a>).
 -- An output operation on an update stream is followed by an input operation without an
     intervening call to the fflush function or a file positioning function, or an input
+
 [<a name="p562" href="#p562">page 562</a>] (<a href="#Contents">Contents</a>)
 
    operation on an update stream is followed by an output operation with an intervening
@@ -22122,7 +21588,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 -- The number of characters transmitted by a formatted output function is greater than
   INT_MAX (<a href="#7.21.6.1">7.21.6.1</a>, <a href="#7.21.6.3">7.21.6.3</a>, <a href="#7.21.6.8">7.21.6.8</a>, <a href="#7.21.6.10">7.21.6.10</a>).
 
-
 [<a name="p563" href="#p563">page 563</a>] (<a href="#Contents">Contents</a>)
 
 -- The result of a conversion by one of the formatted input functions cannot be
@@ -22161,7 +21626,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 -- The value of a pointer that refers to space deallocated by a call to the free or
   realloc function is used (<a href="#7.22.3">7.22.3</a>).
 
-
 [<a name="p564" href="#p564">page 564</a>] (<a href="#Contents">Contents</a>)
 
 -- The alignment requested of the aligned_alloc function is not valid or not
@@ -22230,9 +21694,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 1   A conforming implementation is required to document its choice of behavior in each of
     the areas listed in this subclause. The following are implementation-defined:
 
-
-
-
 [<a name="p566" href="#p566">page 566</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.3.1" href="#J.3.1"><b>    J.3.1 Translation</b></a>
@@ -22263,9 +21724,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       correspondence to universal character names (<a href="#6.4.2">6.4.2</a>).
     -- The number of significant initial characters in an identifier (<a href="#5.2.4.1">5.2.4.1</a>, <a href="#6.4.2">6.4.2</a>).
 
-
-
-
 [<a name="p567" href="#p567">page 567</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.3.4" href="#J.3.4"><b>    J.3.4 Characters</b></a>
@@ -22299,9 +21757,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       corresponding  standard   encoding macro      (__STDC_ISO_10646__,
       __STDC_UTF_16__, or __STDC_UTF_32__) is not defined (<a href="#6.10.8.2">6.10.8.2</a>).
 
-
-
-
 [<a name="p568" href="#p568">page 568</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.3.5" href="#J.3.5"><b>    J.3.5 Integers</b></a>
@@ -22338,7 +21793,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       classifications, and their macro names (<a href="#7.6">7.6</a>, <a href="#7.12">7.12</a>).
     -- The default state for the FP_CONTRACT pragma (<a href="#7.12.2">7.12.2</a>).
 
-
 [<a name="p569" href="#p569">page 569</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.3.7" href="#J.3.7"><b>    J.3.7 Arrays and pointers</b></a>
@@ -22374,7 +21828,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- Whether the value of a single-character character constant in a constant expression
       that controls conditional inclusion may have a negative value (<a href="#6.10.1">6.10.1</a>).
 
-
 [<a name="p570" href="#p570">page 570</a>] (<a href="#Contents">Contents</a>)
 
     -- The places that are searched for an included &lt; &gt; delimited header, and how the places
@@ -22483,9 +21936,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 -- Whether the functions in <a href="#7.12">&lt;math.h&gt;</a> honor the rounding direction mode in an
   IEC 60559 conformant implementation, unless explicitly specified otherwise (<a href="#F.10">F.10</a>).
 
-
-
-
 [<a name="p573" href="#p573">page 573</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.3.13" href="#J.3.13"><b>    J.3.13 Architecture</b></a>
@@ -22521,7 +21971,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
       <a href="#7.28.4.1">7.28.4.1</a>).
     -- The collation sequence of the execution character set (<a href="#7.23.4.3">7.23.4.3</a>, <a href="#7.28.4.4.2">7.28.4.4.2</a>).
 
-
 [<a name="p574" href="#p574">page 574</a>] (<a href="#Contents">Contents</a>)
 
     -- The contents of the error message strings set up by the strerror function
@@ -22553,9 +22002,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 1   String literals are modifiable (in which case, identical string literals should denote distinct
     objects) (<a href="#6.4.5">6.4.5</a>).
 
-
-
-
 [<a name="p575" href="#p575">page 575</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.5.6" href="#J.5.6"><b>    J.5.6 Other arithmetic types</b></a>
@@ -22588,9 +22034,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     execution environments, are defined by the implementation before translation begins
     (<a href="#6.10.8">6.10.8</a>).
 
-
-
-
 [<a name="p576" href="#p576">page 576</a>] (<a href="#Contents">Contents</a>)
 
 <a name="J.5.13" href="#J.5.13"><b>    J.5.13 Floating-point status flags</b></a>
@@ -22613,9 +22056,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     instead of, or in addition to, setting errno or raising floating-point exceptions (<a href="#7.3">7.3</a>,
 <a name="7.12)" href="#7.12)"><b>    7.12).</b></a>
 
-
-
-
 [<a name="p577" href="#p577">page 577</a>] (<a href="#Contents">Contents</a>)
 
 <a name="K" href="#K"><b>                                           Annex K</b></a>
@@ -22648,9 +22088,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     function. Such functions can be troublesome since a previously returned result can
     change if the function is called again, perhaps by another thread.
 
-
-
-
 [<a name="p578" href="#p578">page 578</a>] (<a href="#Contents">Contents</a>)
 
 <a name="K.2" href="#K.2"><b>    K.2 Scope</b></a>
@@ -22805,7 +22242,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     with the meaning that mode has in the fopen_s function (including the mode's effect
     on exclusive access and file permissions).
 
-
 [<a name="p582" href="#p582">page 582</a>] (<a href="#Contents">Contents</a>)
 
 5   If the file was created successfully, then the pointer to FILE pointed to by streamptr
@@ -23126,6 +22562,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
 2   Neither s nor format shall be a null pointer. n shall neither equal zero nor be greater
     than RSIZE_MAX. The %n specifier<sup><a href="#note382"><b>382)</b></a></sup> (modified or not by flags, field width, or
     precision) shall not appear in the string pointed to by format. Any argument to
+
 [<a name="p590" href="#p590">page 590</a>] (<a href="#Contents">Contents</a>)
 
     snprintf_s corresponding to a %s specifier shall not be a null pointer. No encoding
@@ -23512,8 +22949,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
             return value of the function is passed. Otherwise, a positive value of type
             errno_t is passed.
 
-
-
 [<a name="p600" href="#p600">page 600</a>] (<a href="#Contents">Contents</a>)
 
 4   The implementation has a default constraint handler that is used if no calls to the
@@ -23628,7 +23063,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
                   (char *)p &gt;= (char *)base
                   (char *)p &lt; (char *)base + nmemb * size
 
-
 [<a name="p603" href="#p603">page 603</a>] (<a href="#Contents">Contents</a>)
 
 5   A sequence point occurs immediately before and immediately after each call to the
@@ -23788,6 +23222,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
      wide characters. If dst is not a null pointer, the converted characters are stored into the
      array pointed to by dst. Conversion continues up to and including a terminating null
      character, which is also stored. Conversion stops earlier in two cases: when a sequence of
+
 [<a name="p607" href="#p607">page 607</a>] (<a href="#Contents">Contents</a>)
 
     bytes is encountered that does not form a valid multibyte character, or (if dst is not a
@@ -23904,9 +23339,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 5   The memcpy_s function returns zero if there was no runtime-constraint violation.
     Otherwise, a nonzero value is returned.
 
-
-
-
 [<a name="p610" href="#p610">page 610</a>] (<a href="#Contents">Contents</a>)
 
 <a name="K.3.7.1.2" href="#K.3.7.1.2"><b>    K.3.7.1.2 The memmove_s function</b></a>
@@ -24156,6 +23588,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
     that is not contained in the current separator string pointed to by s2. If no such character
     is found, then there are no tokens in the string pointed to by s1 and the strtok_s
     function returns a null pointer. If such a character is found, it is the start of the first token.
+
 [<a name="p616" href="#p616">page 616</a>] (<a href="#Contents">Contents</a>)
 
 7    The strtok_s function then searches from there for the first character in s1 that is
@@ -24197,8 +23630,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
      greater than RSIZE_MAX, the memset_s function stores the value of c (converted to an
      unsigned char) into each of the first smax characters of the object pointed to by s.
 
-
-
 [<a name="p617" href="#p617">page 617</a>] (<a href="#Contents">Contents</a>)
 
 <b>    Description</b>
@@ -24343,6 +23774,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
 <b>    Returns</b>
 5   The asctime_s function returns zero if the time was successfully converted and stored
     into the array pointed to by s. Otherwise, it returns a nonzero value.
+
 [<a name="p621" href="#p621">page 621</a>] (<a href="#Contents">Contents</a>)
 
 <a name="K.3.8.2.2" href="#K.3.8.2.2"><b>    K.3.8.2.2 The ctime_s function</b></a>
@@ -24379,6 +23811,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
 <b>    Description</b>
 4   The gmtime_s function converts the calendar time pointed to by timer into a broken-
     down time, expressed as UTC. The broken-down time is stored in the structure pointed
+
 [<a name="p622" href="#p622">page 622</a>] (<a href="#Contents">Contents</a>)
 
     to by result.
@@ -24412,9 +23845,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     subclause causes copying to take place between objects that overlap, the objects take on
     unspecified values.
 
-
-
-
 [<a name="p623" href="#p623">page 623</a>] (<a href="#Contents">Contents</a>)
 
 <a name="K.3.9.1" href="#K.3.9.1"><b>    K.3.9.1 Formatted wide character input/output functions</b></a>
@@ -24575,6 +24005,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
     before any conversion or if there is a runtime-constraint violation. Otherwise, the
     swscanf_s function returns the number of input items assigned, which can be fewer
     than provided for, or even zero, in the event of an early matching failure.
+
 [<a name="p627" href="#p627">page 627</a>] (<a href="#Contents">Contents</a>)
 
 <a name="K.3.9.1.6" href="#K.3.9.1.6"><b>    K.3.9.1.6 The vfwprintf_s function</b></a>
@@ -24841,9 +24272,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     wscanf_s function returns the number of input items assigned, which can be fewer than
     provided for, or even zero, in the event of an early matching failure.
 
-
-
-
 [<a name="p634" href="#p634">page 634</a>] (<a href="#Contents">Contents</a>)
 
 <a name="K.3.9.2" href="#K.3.9.2"><b>    K.3.9.2 General wide string utilities</b></a>
@@ -24961,9 +24389,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 18   The wmemcpy_s function returns zero if there was no runtime-constraint violation.
      Otherwise, a nonzero value is returned.
 
-
-
-
 [<a name="p637" href="#p637">page 637</a>] (<a href="#Contents">Contents</a>)
 
 <a name="K.3.9.2.1.4" href="#K.3.9.2.1.4"><b>     K.3.9.2.1.4 The wmemmove_s function</b></a>
@@ -25128,7 +24553,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     and the wcstok_s function returns a null pointer. If such a wide character is found, it is
     the start of the first token.
 
-
 [<a name="p641" href="#p641">page 641</a>] (<a href="#Contents">Contents</a>)
 
 7    The wcstok_s function then searches from there for the first wide character in s1 that
@@ -25249,6 +24673,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
     continues up to and including a terminating null character, which is also stored.
     Conversion stops earlier in two cases: when a sequence of bytes is encountered that does
     not form a valid multibyte character, or (if dst is not a null pointer) when len wide
+
 [<a name="p644" href="#p644">page 644</a>] (<a href="#Contents">Contents</a>)
 
      characters have been stored into the array pointed to by dst.<sup><a href="#note439"><b>439)</b></a></sup> If dst is not a null
@@ -25409,9 +24834,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- A string or wide string utility function is instructed to access an array beyond the end
       of an object (<a href="#7.23.1">7.23.1</a>, <a href="#7.28.4">7.28.4</a>).
 
-
-
-
 [<a name="p649" href="#p649">page 649</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -25447,8 +24869,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
  18.   ISO/IEC 9899:1999/Cor.2:2004, Technical Corrigendum 2.
  19.   ISO/IEC 9899:1999/Cor.3:2007, Technical Corrigendum 3.
 
-
-
 [<a name="p650" href="#p650">page 650</a>] (<a href="#Contents">Contents</a>)
 
  20.    ISO/IEC 9945-2:1993, Information technology -- Portable Operating System
@@ -25485,7 +24905,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
  37.    ISO/IEC 10967-1:1994, Information technology -- Language independent
         arithmetic -- Part 1: Integer and floating point arithmetic.
 
-
 [<a name="p651" href="#p651">page 651</a>] (<a href="#Contents">Contents</a>)
 
  38.   ISO/IEC TR 19769:2004, Information technology -- Programming languages,
@@ -25495,9 +24914,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
        their environments and system software interfaces -- Extensions to the C library
        -- Part 1: Bounds-checking interfaces.
 
-
-
-
 [<a name="p652" href="#p652">page 652</a>] (<a href="#Contents">Contents</a>)
 
 
@@ -25552,6 +24968,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
 ++ (postfix increment operator), <a href="#6.3.2.1">6.3.2.1</a>, <a href="#6.5.2.4">6.5.2.4</a>               <a href="#7.18">&lt;stdbool.h&gt;</a> header, <a href="#4">4</a>, <a href="#7.18">7.18</a>, <a href="#7.30.7">7.30.7</a>, <a href="#H">H</a>
 ++ (prefix increment operator), <a href="#6.3.2.1">6.3.2.1</a>, <a href="#6.5.3.1">6.5.3.1</a>                <a href="#7.19">&lt;stddef.h&gt;</a> header, <a href="#4">4</a>, <a href="#6.3.2.1">6.3.2.1</a>, <a href="#6.3.2.3">6.3.2.3</a>, <a href="#6.4.4.4">6.4.4.4</a>,
 += (addition assignment operator), <a href="#6.5.16.2">6.5.16.2</a>
+
 [<a name="p653" href="#p653">page 653</a>] (<a href="#Contents">Contents</a>)
 
      <a href="#6.4.5">6.4.5</a>, <a href="#6.5.3.4">6.5.3.4</a>, <a href="#6.5.6">6.5.6</a>, <a href="#7.19">7.19</a>, <a href="#K.3.3">K.3.3</a>                      \x hexadecimal digits (hexadecimal-character
index 4f19064..2afd8b7 100644 (file)
--- a/n1548.txt
+++ b/n1548.txt
@@ -36,13 +36,9 @@ relevant patent rights of which they are aware and to provide supporting documen
 Changes from the previous draft (N1256) are indicated by ''diff marks'' in the right
 margin: deleted text is marked with ''*'', new or changed text with '' ''.
 
-
-
-
 [page i]
 
 
-
 [page ii]
 
 Contents
@@ -86,7 +82,6 @@ Introduction    . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
         6.4.8   Preprocessing numbers        . . . .    .   .   .   .   .   .    .   .   .   .   .   .    74
         6.4.9   Comments        . . . . . . . . .       .   .   .   .   .   .    .   .   .   .   .   .    75
 
-
 [page iii]
 
      6.5  Expressions      . . . . . . . . . .     .   .   .   .   .   .   .   .   .   .   .   .   .   .    76
@@ -134,7 +129,6 @@ Introduction    . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
           6.10.2 Source file inclusion      . . .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   163
           6.10.3 Macro replacement . . . .         .   .   .   .   .   .   .   .   .   .   .   .   .   .   165
 
-
 [page iv]
 
        6.10.4 Line control . . . . . .        .   .   .   .   .   .   .   .   .    .   .   .   .   .   .   172
@@ -229,7 +223,6 @@ Introduction    . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
      7.19   Common definitions <stddef.h> . . . . . . . . . . .                .   .   .   .   287
      7.20   Integer types <stdint.h> . . . . . . . . . . . . . .              .   .   .   .   289
 
-
 [page vi]
 
          7.20.1 Integer types      . . . . . . . . . . . .      .   .    .   .   .   .   .   .   289
@@ -277,7 +270,6 @@ Introduction    . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
          7.26.2 Time manipulation functions      . . . . . .    .   .    .   .   .   .   .   .   386
          7.26.3 Time conversion functions      . . . . . . .    .   .    .   .   .   .   .   .   388
 
-
 [page vii]
 
    7.27 Unicode utilities <uchar.h> . . . . . . . . . . . . . .               . .     .   395
@@ -324,8 +316,6 @@ Introduction    . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
         7.30.10 General utilities <stdlib.h>        . . . . . . . . . .       .   .   .   453
         7.30.11 String handling <string.h>          . . . . . . . . . .       .   .   .   453
 
-
-
 [page viii]
 
         7.30.12 Extended multibyte and wide character utilities
@@ -417,7 +407,6 @@ Annex H (informative) Language independent arithmetic . .   .   .   .   .   .
   H.2 Types . . . . . . . . . . . . . . . . . . .           .   .   .   .   .   .   .   .   542
   H.3 Notification      . . . . . . . . . . . . . . . .      .   .   .   .   .   .   .   .   546
 
-
 [page x]
 
 Annex I (informative) Common warnings         . . . . . . . . . . . . . . . . 548
@@ -463,8 +452,6 @@ Annex K (normative) Bounds-checking interfaces . . . . . . . . . .
                 K.3.9.1 Formatted wide character input/output functions                        . . . 624
                 K.3.9.2 General wide string utilities . . . . . . . .                          . . . 635
 
-
-
 [page xi]
 
                K.3.9.3 Extended multibyte/wide character conversion
@@ -476,9 +463,6 @@ Annex L (normative) Analyzability . .   .   .   .   .   .   .   .   .   .   .
 Bibliography   . . . . . . . . . . . . . . . . . . . . . . . . . . . 650
 Index    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
 
-
-
-
 [page xii]
 
     Foreword
@@ -520,7 +504,6 @@ Index    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
       ISO/IEC TR 19769:2004)
     -- type-generic expressions
 
-
 [page xiii]
 
     -- static assertions
@@ -556,8 +539,6 @@ Index    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
     -- hexadecimal floating-point constants and %a and %A printf/scanf conversion
       specifiers
 
-
-
 [page xiv]
 
 -- compound literals
@@ -592,7 +573,6 @@ Index    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
 -- additional strftime conversion specifiers
 -- LIA compatibility annex
 
-
 [page xv]
 
     -- deprecate ungetc at the beginning of a binary file
@@ -607,9 +587,6 @@ Index    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
     the ISO/IEC Directives, this foreword, the introduction, notes, footnotes, and examples
     are also for information only.
 
-
-
-
 [page xvi]
 
     Introduction
@@ -636,13 +613,9 @@ Index    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
 5   The language clause (clause 6) is derived from ''The C Reference Manual''.
 6   The library clause (clause 7) is based on the 1984 /usr/group Standard.
 
-
-
-
 [page xvii]
 
 
-
 [page xviii]
 
 
@@ -698,9 +671,6 @@ Index    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
 8   IEC 60559:1989, Binary floating-point arithmetic for microprocessor systems (previously
     designated IEC 559:1989).
 
-
-
-
 [page 2]
 
 
@@ -745,7 +715,6 @@ Index    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
     behavior that depends on local conventions of nationality, culture, and language that each
     implementation documents
 
-
 [page 3]
 
 2   EXAMPLE An example of locale-specific behavior is whether the islower function returns true for
@@ -794,6 +763,7 @@ Index    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
 1   character
     single-byte character
     <C> bit representation that fits in a byte
+
 [page 4]
 
     3.7.2
@@ -1287,7 +1257,6 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
      since if the values for a and b were, respectively, -32754 and -15, the sum a + b would produce a trap
      while the original expression would not; nor can the expression be rewritten either as
 
-
 [page 16]
 
               a = ((a + 32765) + b);
@@ -1495,9 +1464,6 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
      machine with well-defined semantics for data races. They would be invalid for a hypothetical machine that
      is not tolerant of races or provides hardware race detection.
 
-
-
-
 [page 21]
 
     5.2 Environmental considerations
@@ -1615,6 +1581,7 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
        tabulation position, the behavior of the display device is unspecified.
     \v (vertical tab) Moves the active position to the initial position of the next vertical
        tabulation position. If the active position is at or past the last defined vertical
+
 [page 24]
 
          tabulation position, the behavior of the display device is unspecified.
@@ -1725,7 +1692,6 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
 -- maximum value for an object of type unsigned long int
   ULONG_MAX                         4294967295 // 232 - 1
 
-
 [page 27]
 
     -- minimum value for an object of type long long int
@@ -1890,9 +1856,6 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
    DBL_MIN_EXP
    LDBL_MIN_EXP
 
-
-
-
 [page 31]
 
      -- minimum negative integer such that 10 raised to that power is in the range of
@@ -1929,9 +1892,6 @@ preprocessing directives (6.10), trigraph sequences (5.2.1.1), external definiti
           DBL_MIN                                   1E-37
           LDBL_MIN                                  1E-37
 
-
-
-
 [page 32]
 
      -- minimum positive floating-point number27)
@@ -2026,9 +1986,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 (7.28), floating-point environment <fenv.h> (7.6), general utilities <stdlib.h>
 (7.22), input/output <stdio.h> (7.21), mathematics <math.h> (7.12).
 
-
-
-
 [page 34]
 
 
@@ -2621,9 +2578,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     -- Two alignments are different when their numeric values are not equal.
     -- When an alignment is larger than another it represents a stricter alignment.
 
-
-
-
 [page 49]
 
     6.3 Conversions
@@ -2969,6 +2923,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Semantics
 2   The above tokens (case sensitive) are reserved (in translation phases 7 and 8) for use as
     keywords, and shall not be used otherwise. The keyword _Imaginary is reserved for
+
 [page 58]
 
     specifying imaginary types.70)
@@ -3119,9 +3074,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
              octal-digit: one of
                      0 1 2 3         4     5     6   7
 
-
-
-
 [page 62]
 
             hexadecimal-digit:   one of
@@ -3153,9 +3105,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 5   The type of an integer constant is the first of the corresponding list in which its value can
     be represented.
 
-
-
-
 [page 63]
 
                                                                      Octal or Hexadecimal
@@ -3193,9 +3142,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     may be signed or unsigned. If an integer constant cannot be represented by any type in
     its list and has no extended integer type, then the integer constant has no type.
 
-
-
-
 [page 64]
 
     6.4.4.2 Floating constants
@@ -3312,9 +3258,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                      \ octal-digit octal-digit
                      \ octal-digit octal-digit octal-digit
 
-
-
-
 [page 67]
 
            hexadecimal-escape-sequence:
@@ -3354,8 +3297,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     consisting of the backslash \ followed by a lowercase letter: \a, \b, \f, \n, \r, \t,
     and \v.77)
 
-
-
 [page 68]
 
      Constraints
@@ -3443,6 +3384,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
      were in an integer character constant (for a character or UTF-8 string literal) or a wide
      character constant (for a wide string literal), except that the single-quote ' is
      representable either by itself or by the escape sequence \', but the double-quote " shall
+
 [page 70]
 
     be represented by the escape sequence \".
@@ -3522,9 +3464,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     in which case it is known as an operator (other forms of operator also exist in some
     contexts). An operand is an entity on which an operator acts.
 
-
-
-
 [page 72]
 
 3   In all aspects of the language, the six tokens79)
@@ -3799,9 +3738,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                    assignment-expression
                    argument-expression-list , assignment-expression
 
-
-
-
 [page 79]
 
     6.5.2.1 Array subscripting
@@ -4012,9 +3948,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Forward references: address and indirection operators (6.5.3.2), structure and union
     specifiers (6.7.2.1).
 
-
-
-
 [page 84]
 
     6.5.2.4 Postfix increment and decrement operators
@@ -4147,9 +4080,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 
      Forward references: type names (6.7.7), initialization (6.7.9).
 
-
-
-
 [page 87]
 
     6.5.3 Unary operators
@@ -4580,9 +4510,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     the result is set if and only if at least one of the corresponding bits in the converted
     operands is set).
 
-
-
-
 [page 98]
 
     6.5.13 Logical AND operator
@@ -4614,9 +4541,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     and second operands. If the first operand compares unequal to 0, the second operand is
     not evaluated.
 
-
-
-
 [page 99]
 
     6.5.15 Conditional operator
@@ -4785,6 +4709,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 3   A compound assignment of the form E1 op = E2 is equivalent to the simple assignment
     expression E1 = E1 op (E2), except that the lvalue E1 is evaluated only once, and with
     respect to an indeterminately-sequenced function call, the operation of a compound
+
 [page 103]
 
     assignment is a single evaluation. If E1 has an atomic type, compound assignment is a
@@ -5044,9 +4969,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 3   The type specifier _Complex shall not be used if the implementation does not support
     complex types (see 6.10.8.3).
 
-
-
-
 [page 110]
 
     Semantics
@@ -5085,7 +5007,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 2   A struct-declaration that does not declare an anonymous structure or anonymous union
     shall contain a struct-declarator-list.
 
-
 [page 111]
 
 3    A structure or union shall not contain a member with incomplete or function type (hence,
@@ -5248,9 +5169,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 
      Forward references: declarators (6.7.6), tags (6.7.2.3).
 
-
-
-
 [page 115]
 
     6.7.2.2 Enumeration specifiers
@@ -5414,9 +5332,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
      lvalues. If the _Atomic keyword is immediately followed by a left parenthesis, it is
      interpreted as a type specifier (with a type name), not as a type qualifier.
 
-
-
-
 [page 119]
 
     6.7.3 Type qualifiers
@@ -5595,9 +5510,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                       }
              }
 
-
-
-
 [page 123]
 
 12   The one exception allows the value of a restricted pointer to be carried out of the block in which it (or, more
@@ -5771,6 +5683,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     scope, storage duration, and type indicated by the declaration specifiers.
 3   A full declarator is a declarator that is not part of another declarator. The end of a full
     declarator is a sequence point. If, in the nested sequence of declarators in a full
+
 [page 127]
 
     declarator, there is a declarator specifying a variable length array type, the type specified
@@ -5806,9 +5719,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 3   EXAMPLE The following pair of declarations demonstrates the difference between a ''variable pointer
     to a constant value'' and a ''constant pointer to a variable value''.
 
-
-
-
 [page 128]
 
              const int *ptr_to_constant;
@@ -5940,9 +5850,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
      Semantics
 5    If, in the declaration ''T D1'', D1 has the form
 
-
-
-
 [page 131]
 
             D( parameter-type-list )
@@ -6068,9 +5975,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 
      Forward references: function definitions (6.9.1), type names (6.7.7).
 
-
-
-
 [page 134]
 
     6.7.7 Type names
@@ -6156,9 +6060,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     type t1 and the type pointed to by tp1 are compatible. Type t1 is also compatible with type struct
     s1, but not compatible with the types struct s2, t2, the type pointed to by tp2, or int.
 
-
-
-
 [page 136]
 
 6   EXAMPLE 3       The following obscure constructions
@@ -6203,9 +6104,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                          a[i-1] = b[i];
              }
 
-
-
-
 [page 137]
 
     6.7.9 Initialization
@@ -6243,6 +6141,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
              . identifier
     then the current object (defined below) shall have structure or union type and the
     identifier shall be the name of a member of that type.
+
 [page 138]
 
      Semantics
@@ -6281,7 +6180,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 16   Otherwise, the initializer for an object that has aggregate or union type shall be a brace-
      enclosed list of initializers for the elements or named members.
 
-
 [page 139]
 
 17   Each brace-enclosed initializer list has an associated current object. When no
@@ -6464,9 +6362,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 
      Forward references: common definitions <stddef.h> (7.19).
 
-
-
-
 [page 143]
 
     6.7.10 Static assertions
@@ -6483,9 +6378,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     character set are not required to appear in the message.
     Forward references: diagnostics (7.2).
 
-
-
-
 [page 144]
 
     6.8 Statements and blocks
@@ -6607,7 +6499,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 2   In both forms, the first substatement is executed if the expression compares unequal to 0.
     In the else form, the second substatement is executed if the expression compares equal
 
-
 [page 147]
 
     to 0. If the first substatement is reached via a label, the second substatement is not
@@ -6766,9 +6657,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                     /* ... */
             }
 
-
-
-
 [page 151]
 
 4   EXAMPLE 2 A goto statement is not allowed to jump past any declarations of objects with variably
@@ -6933,7 +6821,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                   int (*fp)(void);                              //   fp points to a function that has type F
                   F *Fp;                                        //   Fp points to a function that has type F
 
-
 [page 155]
 
      Semantics
@@ -7016,9 +6903,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 3    If the declaration of an identifier for an object is a tentative definition and has internal
      linkage, the declared type shall not be an incomplete type.
 
-
-
-
 [page 157]
 
 4   EXAMPLE 1
@@ -7043,9 +6927,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     the array i still has incomplete type, the implicit initializer causes it to have one element, which is set to
     zero on program startup.
 
-
-
-
 [page 158]
 
     6.10 Preprocessing directives
@@ -7076,9 +6957,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
              endif-line:
                      # endif      new-line
 
-
-
-
 [page 159]
 
              control-line:
@@ -7203,7 +7081,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
            #if 'z' - 'a' == 25
            if ('z' - 'a' == 25)
 
-
 [page 162]
 
 5   Preprocessing directives of the forms
@@ -7397,9 +7274,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     string literal corresponding to an empty argument is "". The order of evaluation of # and
     ## operators is unspecified.
 
-
-
-
 [page 167]
 
     6.10.3.3 The ## operator
@@ -7478,9 +7352,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
             #define max(a, b) ((a) > (b) ? (a) : (b))
     The parentheses ensure that the arguments and the resulting expression are bound properly.
 
-
-
-
 [page 169]
 
 5   EXAMPLE 3     To illustrate the rules for redefinition and reexamination, the sequence
@@ -7528,9 +7399,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
              xglue(HIGH, LOW)
     results in
 
-
-
-
 [page 170]
 
              printf("x" "1" "= %d, x" "2" "= %s", x1, x2);
@@ -7581,7 +7449,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
              showlist(The first, second, and third items.);
              report(x>y, "x is %d but y is %d", x, y);
 
-
 [page 171]
 
     results in
@@ -7616,9 +7483,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     tokens). The directive resulting after all replacements shall match one of the two
     previous forms and is then processed as appropriate.
 
-
-
-
 [page 172]
 
     6.10.5 Error directive
@@ -7789,9 +7653,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
               #define PRAGMA(x) _Pragma(#x)
               LISTING ( ..\listing.dir )
 
-
-
-
 [page 177]
 
     6.11 Future language directions
@@ -7822,9 +7683,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     6.11.9 Predefined macro names
 1   Macro names beginning with __STDC_ are reserved for future standardization.
 
-
-
-
 [page 178]
 
 
@@ -8038,9 +7896,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
             /* ... */
             i = atoi(str);
 
-
-
-
 [page 184]
 
     7.2 Diagnostics <assert.h>
@@ -8079,16 +7934,12 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     191) The message written might be of the form:
          Assertion failed: expression, function abc, file xyz, line nnn.
 
-
 [page 185]
 
     Returns
 3   The assert macro returns no value.
     Forward references: the abort function (7.22.4.1).
 
-
-
-
 [page 186]
 
     7.3 Complex arithmetic <complex.h>
@@ -8199,7 +8050,7 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     195) The purpose of the pragma is to allow the implementation to use the formulas:
             (x + iy) x (u + iv) = (xu - yv) + i(yu + xv)
             (x + iy) / (u + iv) = [(xu + yv) + i(yu - xv)]/(u2 + v 2 )
-            | x + iy | = sqrt: x 2 + y 2
+            | x + iy | = (sqrt) x 2 + y 2
                          -----
          where the programmer can determine they are safe.
 
@@ -8238,8 +8089,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Description
 2   The csin functions compute the complex sine of z.
 
-
-
 [page 190]
 
     Returns
@@ -8275,8 +8124,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
             float complex casinhf(float complex z);
             long double complex casinhl(long double complex z);
 
-
-
 [page 191]
 
     Description
@@ -8310,9 +8157,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Returns
 3   The ccosh functions return the complex hyperbolic cosine value.
 
-
-
-
 [page 192]
 
     7.3.6.5 The csinh functions
@@ -8347,8 +8191,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Returns
 3   The cexp functions return the complex base-e exponential value.
 
-
-
 [page 193]
 
     7.3.7.2 The clog functions
@@ -8384,9 +8226,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
            long double complex cpowl(long double complex x,
                 long double complex y);
 
-
-
-
 [page 194]
 
     Description
@@ -8419,9 +8258,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Returns
 3   The carg functions return the value of the argument in the interval [-pi , +pi ].
 
-
-
-
 [page 195]
 
     7.3.9.2 The cimag functions
@@ -8498,7 +8334,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Description
 2   The creal functions compute the real part of z.197)
 
-
 [page 197]
 
     Returns
@@ -8653,9 +8488,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     the tolower function returns one of the corresponding characters (always the same one
     for any given locale); otherwise, the argument is returned unchanged.
 
-
-
-
 [page 202]
 
     7.4.2.2 The toupper function
@@ -8670,9 +8502,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     the toupper function returns one of the corresponding characters (always the same one
     for any given locale); otherwise, the argument is returned unchanged.
 
-
-
-
 [page 203]
 
     7.5 Errors <errno.h>
@@ -8987,7 +8816,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 3   The fesetround function returns zero if and only if the requested rounding direction
     was established.
 
-
 [page 211]
 
 4   EXAMPLE Save, set, and restore the rounding direction. Report an error and abort if setting the
@@ -9090,9 +8918,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
                 return result;
           }
 
-
-
-
 [page 214]
 
     7.7 Characteristics of floating types <float.h>
@@ -9101,9 +8926,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 2   The macros, their meanings, and the constraints (or restrictions) on their values are listed
     in 5.2.4.2.2.
 
-
-
-
 [page 215]
 
     7.8 Format conversion of integer types <inttypes.h>
@@ -9217,9 +9039,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Forward references: the strtol, strtoll, strtoul, and strtoull functions
     (7.22.1.4).
 
-
-
-
 [page 218]
 
     7.8.2.4 The wcstoimax and wcstoumax functions
@@ -9243,9 +9062,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
     Forward references: the wcstol, wcstoll, wcstoul, and wcstoull functions
     (7.28.4.1.2).
 
-
-
-
 [page 219]
 
     7.9 Alternative spellings <iso646.h>
@@ -9263,9 +9079,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
           xor           ^
           xor_eq        ^=
 
-
-
-
 [page 220]
 
     7.10 Sizes of integer types <limits.h>
@@ -9274,9 +9087,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
 2   The macros, their meanings, and the constraints (or restrictions) on their values are listed
     in 5.2.4.2.1.
 
-
-
-
 [page 221]
 
     7.11 Localization <locale.h>
@@ -9312,9 +9122,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
            char   int_p_sign_posn;                //   CHAR_MAX
            char   int_n_sign_posn;                //   CHAR_MAX
 
-
-
-
 [page 222]
 
 3   The macros defined are NULL (described in 7.19); and
@@ -9432,8 +9239,6 @@ Forward references:        conditional inclusion (6.10.1), complex arithmetic
               Set to 1 or 0 if the currency_symbol respectively precedes or
               succeeds the value for a nonnegative locally formatted monetary quantity.
 
-
-
 [page 225]
 
 char n_cs_precedes
@@ -9474,6 +9279,7 @@ char int_p_sep_by_space
           Set to a value indicating the separation of the int_curr_symbol, the
           sign string, and the value for a nonnegative internationally formatted
           monetary quantity.
+
 [page 226]
 
     char int_n_sep_by_space
@@ -9511,7 +9317,6 @@ char int_p_sep_by_space
     3   The sign string immediately precedes the currency symbol.
     4   The sign string immediately succeeds the currency symbol.
 
-
 [page 227]
 
 7    The implementation shall behave as if no library function calls the localeconv
@@ -9558,9 +9363,6 @@ char int_p_sep_by_space
      int_p_sign_posn                   1                     1                    1                   1
      int_n_sign_posn                   4                     1                    4                   2
 
-
-
-
 [page 228]
 
 11   EXAMPLE 2 The following table illustrates how the cs_precedes, sep_by_space, and sign_posn members
@@ -9581,9 +9383,6 @@ char int_p_sep_by_space
                                           3         +$1.25             +$ 1.25             + $1.25
                                           4         $+1.25             $+ 1.25             $ +1.25
 
-
-
-
 [page 229]
 
     7.12 Mathematics <math.h>
@@ -9885,9 +9684,6 @@ char int_p_sep_by_space
     Description
 2   The atan functions compute the principal value of the arc tangent of x.
 
-
-
-
 [page 237]
 
     Returns
@@ -9923,8 +9719,6 @@ char int_p_sep_by_space
     Description
 2   The sin functions compute the sine of x (measured in radians).
 
-
-
 [page 238]
 
     Returns
@@ -9960,7 +9754,6 @@ char int_p_sep_by_space
     Description
 2   The asinh functions compute the arc hyperbolic sine of x.
 
-
 [page 239]
 
     Returns
@@ -9997,6 +9790,7 @@ char int_p_sep_by_space
     Description
 2   The sinh functions compute the hyperbolic sine of x. A range error occurs if the
     magnitude of x is too large.
+
 [page 240]
 
     Returns
@@ -10104,8 +9898,6 @@ char int_p_sep_by_space
             float logf(float x);
             long double logl(long double x);
 
-
-
 [page 243]
 
     Description
@@ -10178,6 +9970,7 @@ char int_p_sep_by_space
     Description
 2   The modf functions break the argument value into integral and fractional parts, each of
     which has the same type and sign as the argument. They store the integral part (in
+
 [page 245]
 
     floating-point format) in the object pointed to by iptr.
@@ -10209,9 +10002,6 @@ char int_p_sep_by_space
     Returns
 3   The cbrt functions return x1/3 .
 
-
-
-
 [page 246]
 
     7.12.7.2 The fabs functions
@@ -10234,7 +10024,7 @@ char int_p_sep_by_space
 2   The hypot functions compute the square root of the sum of the squares of x and y,
     without undue overflow or underflow. A range error may occur.
 3   Returns
-4   The hypot functions return sqrt:x2 + y2 .
+4   The hypot functions return (sqrt)x2 + y2 .
                                -
                                -----
     7.12.7.4 The pow functions
@@ -10249,9 +10039,6 @@ char int_p_sep_by_space
     error may occur if x is zero and y is zero. A domain error or pole error may occur if x is
     zero and y is less than zero.
 
-
-
-
 [page 247]
 
     Returns
@@ -10266,7 +10053,7 @@ char int_p_sep_by_space
 2   The sqrt functions compute the nonnegative square root of x. A domain error occurs if
     the argument is less than zero.
     Returns
-3   The sqrt functions return sqrt:x.
+3   The sqrt functions return (sqrt)x.
                               -
                               -
     7.12.8 Error and gamma functions
@@ -10283,7 +10070,7 @@ char int_p_sep_by_space
                                             (integral)       e-t dt.
                                                       2
     The erf functions return erf x =
-                                       sqrt:pi
+                                       (sqrt)pi
                                        -
                                        -    0
 
@@ -10296,6 +10083,7 @@ char int_p_sep_by_space
     Description
 2   The erfc functions compute the complementary error function of x. A range error
     occurs if x is too large.
+
 [page 248]
 
     Returns
@@ -10303,7 +10091,7 @@ char int_p_sep_by_space
                                                             (integral)       e-t dt.
                                                                       2
     The erfc functions return erfc x = 1 - erf x =
-                                                     sqrt:pi
+                                                     (sqrt)pi
                                                      -
                                                      -      x
 
@@ -10332,9 +10120,6 @@ char int_p_sep_by_space
     Returns
 3   The tgamma functions return (Gamma)(x).
 
-
-
-
 [page 249]
 
     7.12.9 Nearest integer functions
@@ -10369,9 +10154,6 @@ char int_p_sep_by_space
     format, using the current rounding direction and without raising the ''inexact'' floating-
     point exception.
 
-
-
-
 [page 250]
 
     Returns
@@ -10405,9 +10187,6 @@ char int_p_sep_by_space
     Returns
 3   The lrint and llrint functions return the rounded integer value.
 
-
-
-
 [page 251]
 
     7.12.9.6 The round functions
@@ -10445,7 +10224,6 @@ char int_p_sep_by_space
            float truncf(float x);
            long double truncl(long double x);
 
-
 [page 252]
 
     Description
@@ -10520,8 +10298,6 @@ char int_p_sep_by_space
     Returns
 3   The copysign functions return a value with the magnitude of x and the sign of y.
 
-
-
 [page 254]
 
     7.12.11.2 The nan functions
@@ -10710,9 +10486,6 @@ char int_p_sep_by_space
     Returns
 3   The islessequal macro returns the value of (x) <= (y).
 
-
-
-
 [page 259]
 
     7.12.14.5 The islessgreater macro
@@ -10736,9 +10509,6 @@ char int_p_sep_by_space
     Returns
 3   The isunordered macro returns 1 if its arguments are unordered and 0 otherwise.
 
-
-
-
 [page 260]
 
     7.13 Nonlocal jumps <setjmp.h>
@@ -10841,9 +10611,6 @@ char int_p_sep_by_space
               longjmp(buf, 2);   // might cause memory loss
         }
 
-
-
-
 [page 263]
 
     7.14 Signal handling <signal.h>
@@ -10951,10 +10718,7 @@ char int_p_sep_by_space
     Returns
 3   The raise function returns zero if successful, nonzero if unsuccessful.
 
-
-
-
-[page 266]
+[page 266]
 
     7.15 Alignment <stdalign.h>
 1   The header <stdalign.h> defines two macros.
@@ -10965,9 +10729,6 @@ char int_p_sep_by_space
             __alignas_is_defined
     which expands to the integer constant 1.
 
-
-
-
 [page 267]
 
     7.16 Variable arguments <stdarg.h>
@@ -11079,9 +10840,6 @@ char int_p_sep_by_space
                   char *array[MAXARGS];
                   int ptr_no = 0;
 
-
-
-
 [page 270]
 
                       if (n_ptrs > MAXARGS)
@@ -11124,9 +10882,6 @@ char int_p_sep_by_space
                       f4(n_ptrs, array);
              }
 
-
-
-
 [page 271]
 
     7.17 Atomics <stdatomic.h>
@@ -11162,7 +10917,6 @@ char int_p_sep_by_space
 5   In the following operation definitions:
     -- An A refers to one of the atomic types.
 
-
 [page 272]
 
     -- A C refers to its corresponding non-atomic type. The atomic_address atomic
@@ -11202,8 +10956,6 @@ char int_p_sep_by_space
     the value value, while also initializing any additional state that the implementation
     might need to carry for the atomic object.
 
-
-
 [page 273]
 
 3   Although this function initializes an atomic object, it does not avoid data races;
@@ -11330,8 +11082,6 @@ char int_p_sep_by_space
 2    The kill_dependency macro terminates a dependency chain; the argument does not
      carry a dependency to the return value.
 
-
-
 [page 276]
 
     Returns
@@ -11369,7 +11119,6 @@ char int_p_sep_by_space
     -- is a sequentially consistent acquire and release fence, if order                    ==
       memory_order_seq_cst.
 
-
 [page 277]
 
     Returns
@@ -11418,9 +11167,6 @@ char int_p_sep_by_space
 1   For each line in the following table, the atomic type name is declared as the
     corresponding direct type.
 
-
-
-
 [page 279]
 
                Atomic type name                              Direct type
@@ -11463,7 +11209,6 @@ char int_p_sep_by_space
 2   The semantics of the operations on these types are defined in 7.17.7.
 3   The atomic_bool type provides an atomic boolean.
 
-
 [page 280]
 
 4   The atomic_address type provides atomic void * operations. The unit of
@@ -11500,9 +11245,6 @@ char int_p_sep_by_space
     Returns
     Atomically returns the value pointed to by object.
 
-
-
-
 [page 281]
 
     7.17.7.3 The atomic_exchange generic functions
@@ -11541,9 +11283,6 @@ char int_p_sep_by_space
     failure. These operations are atomic read-modify-write operations (5.1.2.4).
 3   NOTE 1    The effect of the compare-and-exchange operations is
 
-
-
-
 [page 282]
 
              if (*object == *expected)
@@ -11588,6 +11327,7 @@ char int_p_sep_by_space
 3   Atomically replaces the value pointed to by object with the result of the computation
     applied to the value pointed to by object and the given operand. Memory is affected
     according to the value of order. These operations are atomic read-modify-write
+
 [page 283]
 
     operations (5.1.2.4). For signed integer types, arithmetic is defined to use two's
@@ -11629,9 +11369,6 @@ char int_p_sep_by_space
     to the value of order. These operations are atomic read-modify-write operations
     (5.1.2.4).
 
-
-
-
 [page 284]
 
     Returns
@@ -11649,9 +11386,6 @@ char int_p_sep_by_space
     Returns
 3   The atomic_flag_clear functions return no value.
 
-
-
-
 [page 285]
 
     7.18 Boolean type and values <stdbool.h>
@@ -11715,9 +11449,6 @@ char int_p_sep_by_space
 
 Forward references: localization (7.11).
 
-
-
-
 [page 288]
 
     7.20 Integer types <stdint.h>
@@ -11860,8 +11591,6 @@ Forward references: localization (7.11).
     -- maximum value of pointer-holding unsigned integer type
        UINTPTR_MAX                                          216 - 1
 
-
-
 [page 292]
 
     7.20.2.5 Limits of greatest-width integer types
@@ -11949,9 +11678,6 @@ Forward references: localization (7.11).
     by its argument and the type uintmax_t:
             UINTMAX_C(value)
 
-
-
-
 [page 295]
 
     7.21 Input/output <stdio.h>
@@ -11987,8 +11713,6 @@ Forward references: localization (7.11).
     which expands to an integer constant expression that is the size needed for an array of
     char large enough to hold the longest file name string that the implementation
 
-
-
 [page 296]
 
     guarantees can be opened;258)
@@ -12222,9 +11946,6 @@ Forward references: localization (7.11).
      old is no longer accessible by that name. If a file named by the string pointed to by new
      exists prior to the call to the rename function, the behavior is implementation-defined.
 
-
-
-
 [page 302]
 
     Returns
@@ -12297,9 +12018,6 @@ Forward references: localization (7.11).
 3   The fclose function returns zero if the stream was successfully closed, or EOF if any
     errors were detected.
 
-
-
-
 [page 304]
 
     7.21.5.2 The fflush function
@@ -12378,8 +12096,6 @@ Forward references: localization (7.11).
     operation fails, fopen returns a null pointer.
     Forward references: file positioning functions (7.21.9).
 
-
-
 [page 306]
 
     7.21.5.4 The freopen function
@@ -12572,7 +12288,6 @@ Forward references: localization (7.11).
                   following n conversion specifier applies to a pointer to a ptrdiff_t
                   argument.
 
-
 [page 311]
 
     L              Specifies that a following a, A, e, E, f, F, g, or G conversion specifier
@@ -12781,8 +12496,6 @@ s             If no l length modifier is present, the argument shall be a pointe
 
      Forward references: conversion state (7.28.6), the wcrtomb function (7.28.6.3.3).
 
-
-
 [page 316]
 
     7.21.6.2 The fscanf function
@@ -12902,7 +12615,6 @@ s             If no l length modifier is present, the argument shall be a pointe
              format is the same as expected for the subject sequence of the strtod
              function. The corresponding argument shall be a pointer to floating.
 
-
 [page 319]
 
 c             Matches a sequence of characters of exactly the number specified by the field
@@ -13077,9 +12789,6 @@ s             Matches a sequence of non-white-space characters.279)
      terminating null wide character.
 25   However, the call:
 
-
-
-
 [page 323]
 
              #include <stdio.h>
@@ -13120,8 +12829,6 @@ s             Matches a sequence of non-white-space characters.279)
 2    The scanf function is equivalent to fscanf with the argument stdin interposed
      before the arguments to scanf.
 
-
-
 [page 324]
 
     Returns
@@ -13279,8 +12986,6 @@ s             Matches a sequence of non-white-space characters.279)
     va_end macro.281) If copying takes place between objects that overlap, the behavior is
     undefined.
 
-
-
 [page 328]
 
     Returns
@@ -13319,6 +13024,7 @@ s             Matches a sequence of non-white-space characters.279)
     Returns
 3   The vsscanf function returns the value of the macro EOF if an input failure occurs
     before the first conversion (if any) has completed. Otherwise, the vsscanf function
+
 [page 329]
 
     returns the number of input items assigned, which can be fewer than provided for, or even
@@ -13392,9 +13098,6 @@ s             Matches a sequence of non-white-space characters.279)
     may evaluate stream more than once, so the argument should never be an expression
     with side effects.
 
-
-
-
 [page 331]
 
     Returns
@@ -13431,7 +13134,6 @@ s             Matches a sequence of non-white-space characters.279)
     Description
 2   The putchar function is equivalent to putc with the second argument stdout.
 
-
 [page 332]
 
     Returns
@@ -13541,9 +13243,6 @@ s             Matches a sequence of non-white-space characters.279)
     returns nonzero and stores an implementation-defined positive value in errno.
     Forward references: the fsetpos function (7.21.9.3).
 
-
-
-
 [page 335]
 
     7.21.9.2 The fseek function
@@ -13616,9 +13315,6 @@ s             Matches a sequence of non-white-space characters.279)
     Returns
 3   The rewind function returns no value.
 
-
-
-
 [page 337]
 
     7.21.10 Error-handling functions
@@ -13650,9 +13346,6 @@ s             Matches a sequence of non-white-space characters.279)
 3   The ferror function returns nonzero if and only if the error indicator is set for
     stream.
 
-
-
-
 [page 338]
 
     7.21.10.4 The perror function
@@ -13670,9 +13363,6 @@ s             Matches a sequence of non-white-space characters.279)
 3   The perror function returns no value.
     Forward references: the strerror function (7.23.6.2).
 
-
-
-
 [page 339]
 
     7.22 General utilities <stdlib.h>
@@ -13740,8 +13430,6 @@ s             Matches a sequence of non-white-space characters.279)
     Forward references: the strtol, strtoll, strtoul, and strtoull functions
     (7.22.1.4).
 
-
-
 [page 341]
 
     7.22.1.3 The strtod, strtof, and strtold functions
@@ -13781,6 +13469,7 @@ s             Matches a sequence of non-white-space characters.279)
 4   If the subject sequence has the expected form for a floating-point number, the sequence of
     characters starting with the first digit or the decimal-point character (whichever occurs
     first) is interpreted as a floating constant according to the rules of 6.4.4.2, except that the
+
 [page 342]
 
     decimal-point character is used in place of a period, and that if neither an exponent part
@@ -13904,9 +13593,6 @@ s             Matches a sequence of non-white-space characters.279)
     LLONG_MAX, ULONG_MAX, or ULLONG_MAX is returned (according to the return type
     and sign of the value, if any), and the value of the macro ERANGE is stored in errno.
 
-
-
-
 [page 345]
 
     7.22.2 Pseudo-random sequence generation functions
@@ -13984,9 +13670,6 @@ s             Matches a sequence of non-white-space characters.279)
 3   The aligned_alloc function returns either a null pointer or a pointer to the allocated
     space.
 
-
-
-
 [page 347]
 
     7.22.3.2 The calloc function
@@ -14060,9 +13743,6 @@ s             Matches a sequence of non-white-space characters.279)
     unsuccessful termination is returned to the host environment by means of the function
     call raise(SIGABRT).
 
-
-
-
 [page 349]
 
     Returns
@@ -14373,7 +14053,6 @@ s             Matches a sequence of non-white-space characters.279)
 5   In no case will the value returned be greater than n or the value of the MB_CUR_MAX
     macro.
 
-
 [page 357]
 
     7.22.7.3 The wctomb function
@@ -14412,6 +14091,7 @@ s             Matches a sequence of non-white-space characters.279)
     No multibyte characters that follow a null character (which is converted into a null wide
     character) will be examined or converted. Each multibyte character is converted as if by
     a call to the mbtowc function, except that the conversion state of the mbtowc function is
+
 [page 358]
 
     not affected.
@@ -14521,9 +14201,6 @@ s             Matches a sequence of non-white-space characters.279)
 2   The strncpy function copies not more than n characters (characters that follow a null
     character are not copied) from the array pointed to by s2 to the array pointed to by
 
-
-
-
 [page 361]
 
     s1.301) If copying takes place between objects that overlap, the behavior is undefined.
@@ -14673,8 +14350,6 @@ s             Matches a sequence of non-white-space characters.279)
     string pointed to by s. The terminating null character is considered to be part of the
     string.
 
-
-
 [page 365]
 
     Returns
@@ -14709,9 +14384,6 @@ s             Matches a sequence of non-white-space characters.279)
     string pointed to by s. The terminating null character is considered to be part of the
     string.
 
-
-
-
 [page 366]
 
     Returns
@@ -14748,6 +14420,7 @@ s             Matches a sequence of non-white-space characters.279)
     by s2. The first call in the sequence has a non-null first argument; subsequent calls in the
     sequence have a null first argument. The separator string pointed to by s2 may be
     different from call to call.
+
 [page 367]
 
 3   The first call in the sequence searches the string pointed to by s1 for the first character
@@ -14787,8 +14460,6 @@ s             Matches a sequence of non-white-space characters.279)
     Returns
 3   The memset function returns the value of s.
 
-
-
 [page 368]
 
     7.23.6.2 The strerror function
@@ -14815,9 +14486,6 @@ s             Matches a sequence of non-white-space characters.279)
 3   The strlen function returns the number of characters that precede the terminating null
     character.
 
-
-
-
 [page 369]
 
     7.24 Type-generic math <tgmath.h>
@@ -14889,9 +14557,6 @@ s             Matches a sequence of non-white-space characters.279)
     If all arguments for generic parameters are real, then use of the macro invokes a real
     function; otherwise, use of the macro results in undefined behavior.
 
-
-
-
 [page 371]
 
 6   For each unsuffixed function in <complex.h> that is not a c-prefixed counterpart to a
@@ -14933,9 +14598,6 @@ s             Matches a sequence of non-white-space characters.279)
                 carg(dc)                            carg(dc), the function
                 cproj(ldc)                          cprojl(ldc)
 
-
-
-
 [page 372]
 
     7.25 Threads <threads.h>
@@ -14970,7 +14632,6 @@ s             Matches a sequence of non-white-space characters.279)
             once_flag
     which is a complete object type that holds a flag for use by call_once; and
 
-
 [page 373]
 
            xtime
@@ -15002,9 +14663,6 @@ s             Matches a sequence of non-white-space characters.279)
     which is returned by a function to indicate that the requested operation failed because it
     was unable to allocate memory.
 
-
-
-
 [page 374]
 
     7.25.2 Initialization functions
@@ -15076,9 +14734,6 @@ s             Matches a sequence of non-white-space characters.279)
            int cnd_timedwait(cnd_t *cond, mtx_t *mtx,
                 const xtime *xt);
 
-
-
-
 [page 376]
 
     Description
@@ -15115,8 +14770,6 @@ s             Matches a sequence of non-white-space characters.279)
 2   The mtx_destroy function releases any resources used by the mutex pointed to by
     mtx. No threads can be blocked waiting for the mutex pointed to by mtx.
 
-
-
 [page 377]
 
     Returns
@@ -15152,9 +14805,6 @@ s             Matches a sequence of non-white-space characters.279)
     resource requested is already in use, or thrd_error if the request could not be
     honored.
 
-
-
-
 [page 378]
 
     7.25.4.4 The mtx_timedlock function
@@ -15227,8 +14877,6 @@ s             Matches a sequence of non-white-space characters.279)
 1          #include <threads.h>
            int thrd_detach(thrd_t thr);
 
-
-
 [page 380]
 
     Description
@@ -15300,7 +14948,6 @@ s             Matches a sequence of non-white-space characters.279)
 2   The tss_create function creates a thread-specific storage pointer with destructor
     dtor, which may be null.
 
-
 [page 382]
 
     Returns
@@ -15335,9 +14982,6 @@ s             Matches a sequence of non-white-space characters.279)
 2   The tss_set function sets the value for the current thread held in the thread-specific
     storage identified by key to val.
 
-
-
-
 [page 383]
 
     Returns
@@ -15586,9 +15230,6 @@ s             Matches a sequence of non-white-space characters.279)
                 const char * restrict format,
                 const struct tm * restrict timeptr);
 
-
-
-
 [page 390]
 
     Description
@@ -15717,6 +15358,7 @@ s             Matches a sequence of non-white-space characters.279)
     %b the first three characters of %B.
     %B one of ''January'', ''February'', ... , ''December''.
     %c equivalent to ''%a %b %e %T %Y''.
+
 [page 393]
 
     %p    one of ''AM'' or ''PM''.
@@ -15730,9 +15372,6 @@ s             Matches a sequence of non-white-space characters.279)
     into the array pointed to by s not including the terminating null character. Otherwise,
     zero is returned and the contents of the array are indeterminate.
 
-
-
-
 [page 394]
 
     7.27 Unicode utilities <uchar.h>
@@ -15770,6 +15409,7 @@ s             Matches a sequence of non-white-space characters.279)
     next multibyte character is complete and valid, it determines the values of the
     corresponding wide characters and then, if pc16 is not a null pointer, stores the value of
     the first (or only) such character in the object pointed to by pc16. Subsequent calls will
+
 [page 395]
 
     store successive wide characters without consuming any additional input until all the
@@ -15847,7 +15487,6 @@ s             Matches a sequence of non-white-space characters.279)
                        character (which is the value stored); the value returned is the number
                        of bytes that complete the multibyte character.
 
-
 [page 397]
 
     (size_t)(-3) if the next character resulting from a previous call has been stored (no
@@ -16249,8 +15888,6 @@ p            The argument shall be a pointer to void. The value of the pointer i
      -- An optional decimal integer greater than zero that specifies the maximum field width
        (in wide characters).
 
-
-
 [page 407]
 
      -- An optional length modifier that specifies the size of the receiving object.
@@ -16412,6 +16049,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
             from the input stream so far by this call to the fwscanf function. Execution
             of a %n directive does not increment the assignment count returned at the
             completion of execution of the fwscanf function. No argument is
+
 [page 411]
 
                     converted, but one is consumed. If the conversion specification includes an
@@ -16491,9 +16129,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     returns the number of input items assigned, which can be fewer than provided for, or even
     zero, in the event of an early matching failure.
 
-
-
-
 [page 413]
 
     7.28.2.5 The vfwprintf function
@@ -16572,7 +16207,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     counting the terminating null wide character, or a negative value if an encoding error
     occurred or if n or more wide characters were requested to be generated.
 
-
 [page 415]
 
     7.28.2.8 The vswscanf function
@@ -16607,9 +16241,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 3   The vwprintf function returns the number of wide characters transmitted, or a negative
     value if an output or encoding error occurred.
 
-
-
-
 [page 416]
 
     7.28.2.10 The vwscanf function
@@ -16646,7 +16277,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 2   The wscanf function is equivalent to fwscanf with the argument stdin interposed
     before the arguments to wscanf.
 
-
 [page 417]
 
     Returns
@@ -16832,9 +16462,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     wide character sequences returns zero, and a function that copies wide characters copies
     zero wide characters.
 
-
-
-
 [page 422]
 
     7.28.4.1 Wide string numeric conversion functions
@@ -16874,6 +16501,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
                      n-wchar-sequence nondigit
     The subject sequence is defined as the longest initial subsequence of the input wide
     string, starting with the first non-white-space wide character, that is of the expected form.
+
 [page 423]
 
     The subject sequence contains no wide characters if the input wide string is not of the
@@ -17023,7 +16651,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     Returns
 3   The wcscpy function returns the value of s1.
 
-
 [page 427]
 
     7.28.4.2.2 The wcsncpy function
@@ -17172,7 +16799,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 4   EXAMPLE The value of the following expression is the length of the array needed to hold the
     transformation of the wide string pointed to by s:
 
-
 [page 431]
 
            1 + wcsxfrm(NULL, s, 0)
@@ -17209,8 +16835,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     string pointed to by s1 which consists entirely of wide characters not from the wide
     string pointed to by s2.
 
-
-
 [page 432]
 
     Returns
@@ -17246,7 +16870,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     Returns
 3   The wcsspn function returns the length of the segment.
 
-
 [page 433]
 
     7.28.4.5.6 The wcsstr function
@@ -17285,6 +16908,7 @@ n           No input is consumed. The corresponding argument shall be a pointer
     the start of the first token.
 5   The wcstok function then searches from there for a wide character that is contained in
     the current separator wide string. If no such wide character is found, the current token
+
 [page 434]
 
     extends to the end of the wide string pointed to by s1, and subsequent searches in the
@@ -17320,9 +16944,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 3   The wmemchr function returns a pointer to the located wide character, or a null pointer if
     the wide character does not occur in the object.
 
-
-
-
 [page 435]
 
     7.28.4.6 Miscellaneous functions
@@ -17358,7 +16979,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     -- The argument s points to the initial element of an array of wide characters into which
       the generated output is to be placed.
 
-
 [page 436]
 
     -- The argument maxsize indicates the limiting number of wide characters.
@@ -17435,8 +17055,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 2   If ps is not a null pointer, the mbsinit function determines whether the referenced
     mbstate_t object describes an initial conversion state.
 
-
-
 [page 438]
 
     Returns
@@ -17469,9 +17087,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     or (size_t)(-1).
     Forward references: the mbrtowc function (7.28.6.3.2).
 
-
-
-
 [page 439]
 
     7.28.6.3.2 The mbrtowc function
@@ -17548,9 +17163,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     when dst is not a null pointer), the pointer object pointed to by this parameter is updated
     to reflect the amount of the source processed by that invocation.
 
-
-
-
 [page 441]
 
     7.28.6.4.1 The mbsrtowcs function
@@ -17807,7 +17419,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 3   Each of the following expressions has a truth-value equivalent to the call to the wide
     character classification function (7.29.2.1) in the comment that follows the expression:
 
-
 [page 448]
 
             iswctype(wc,      wctype("alnum"))              //   iswalnum(wc)
@@ -17841,9 +17452,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     category of the current locale, the wctype function returns a nonzero value that is valid
     as the second argument to the iswctype function; otherwise, it returns zero.
 
-
-
-
 [page 449]
 
     7.29.3 Wide character case mapping utilities
@@ -17878,9 +17486,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     well as case mapping equivalent to that performed by the functions described in the
     previous subclause (7.29.3.1).
 
-
-
-
 [page 450]
 
     7.29.3.2.1 The towctrans function
@@ -17912,9 +17517,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
     category of the current locale, the wctrans function returns a nonzero value that is valid
     as the second argument to the towctrans function; otherwise, it returns zero.
 
-
-
-
 [page 451]
 
     7.30 Future library directions
@@ -17974,9 +17576,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
 1   Function names that begin with is or to and a lowercase letter may be added to the
     declarations in the <wctype.h> header.
 
-
-
-
 [page 453]
 
                                                  Annex A
@@ -18001,9 +17600,6 @@ n           No input is consumed. The corresponding argument shall be a pointer
                   punctuator
                   each non-white-space character that cannot be one of the above
 
-
-
-
 [page 454]
 
 A.1.2 Keywords
@@ -18040,9 +17636,6 @@ A.1.3 Identifiers
 (6.4.2.1) digit: one of
                0 1 2         3    4   5    6   7   8    9
 
-
-
-
 [page 455]
 
 A.1.4 Universal character names
@@ -18078,9 +17671,6 @@ A.1.5 Constants
 (6.4.4.1) octal-digit: one of
                0 1 2 3           4   5      6   7
 
-
-
-
 [page 456]
 
 (6.4.4.1) hexadecimal-digit: one of
@@ -18118,8 +17708,6 @@ A.1.5 Constants
 (6.4.4.2) sign: one of
                + -
 
-
-
 [page 457]
 
 (6.4.4.2) digit-sequence:
@@ -18157,9 +17745,6 @@ A.1.5 Constants
               hexadecimal-escape-sequence
               universal-character-name
 
-
-
-
 [page 458]
 
 (6.4.4.4) simple-escape-sequence: one of
@@ -18197,9 +17782,6 @@ A.1.7 Punctuators
               , # ##
               <: :> <% %> %: %:%:
 
-
-
-
 [page 459]
 
 A.1.8 Header names
@@ -18230,9 +17812,6 @@ A.1.9 Preprocessing numbers
               pp-number   P sign
               pp-number   .
 
-
-
-
 [page 460]
 
 A.2 Phrase structure grammar
@@ -18310,9 +17889,6 @@ A.2.1 Expressions
               AND-expression
               exclusive-OR-expression ^ AND-expression
 
-
-
-
 [page 462]
 
 (6.5.12) inclusive-OR-expression:
@@ -18351,7 +17927,6 @@ A.2.2 Declarations
                init-declarator
                init-declarator-list , init-declarator
 
-
 [page 463]
 
 (6.7) init-declarator:
@@ -18430,8 +18005,6 @@ A.2.2 Declarations
 (6.7.6) declarator:
               pointeropt direct-declarator
 
-
-
 [page 465]
 
 (6.7.6) direct-declarator:
@@ -18467,9 +18040,6 @@ A.2.2 Declarations
               pointer
               pointeropt direct-abstract-declarator
 
-
-
-
 [page 466]
 
 (6.7.7) direct-abstract-declarator:
@@ -18502,9 +18072,6 @@ A.2.2 Declarations
 (6.7.10) static_assert-declaration:
                _Static_assert ( constant-expression , string-literal ) ;
 
-
-
-
 [page 467]
 
 A.2.3 Statements
@@ -18581,7 +18148,6 @@ A.3 Preprocessing directives
 (6.10) elif-group:
                # elif       constant-expression new-line groupopt
 
-
 [page 469]
 
 (6.10) else-group:
@@ -18615,9 +18181,6 @@ A.3 Preprocessing directives
 (6.10) new-line:
               the new-line character
 
-
-
-
 [page 470]
 
                                Annex B
@@ -18820,6 +18383,7 @@ B.11 Mathematics <math.h>
         int isnan(real-floating x);
         int isnormal(real-floating x);
         int signbit(real-floating x);
+
 [page 475]
 
       double acos(double x);
@@ -19024,9 +18588,6 @@ B.13 Signal handling <signal.h>
       void (*signal(int sig, void (*func)(int)))(int);
       int raise(int sig);
 
-
-
-
 [page 480]
 
 B.14 Alignment <stdalign.h>
@@ -19066,8 +18627,6 @@ B.16 Atomics <stdatomic.h>
         atomic_ushort                   atomic_intptr_t
         atomic_int                      atomic_uintptr_t
 
-
-
 [page 481]
 
       atomic_size_t                     atomic_intmax_t
@@ -19108,9 +18667,6 @@ B.16 Atomics <stdatomic.h>
       void atomic_flag_clear_explicit(
             volatile atomic_flag *object, memory_order order);
 
-
-
-
 [page 482]
 
 B.17 Boolean type and values <stdbool.h>
@@ -19141,9 +18697,6 @@ B.19 Integer types <stdint.h>
         __STDC_WANT_LIB_EXT1__
         RSIZE_MAX
 
-
-
-
 [page 483]
 
 B.20 Input/output <stdio.h>
@@ -19228,8 +18781,6 @@ B.20 Input/output <stdio.h>
         errno_t tmpfile_s(FILE * restrict * restrict streamptr);
         errno_t tmpnam_s(char *s, rsize_t maxsize);
 
-
-
 [page 485]
 
       errno_t fopen_s(FILE * restrict * restrict streamptr,
@@ -19272,8 +18823,6 @@ B.20 Input/output <stdio.h>
            va_list arg);
       char *gets_s(char *s, rsize_t n);
 
-
-
 [page 486]
 
 B.21 General utilities <stdlib.h>
@@ -19316,7 +18865,6 @@ B.21 General utilities <stdlib.h>
         _Noreturn void quick_exit(int status);
         int system(const char *string);
 
-
 [page 487]
 
       void *bsearch(const void *key, const void *base,
@@ -19357,9 +18905,6 @@ B.21 General utilities <stdlib.h>
                 char * restrict value, rsize_t maxsize,
                 const char * restrict name);
 
-
-
-
 [page 488]
 
         void *bsearch_s(const void *key, const void *base,
@@ -19402,6 +18947,7 @@ B.22 String handling <string.h>
         size_t strxfrm(char * restrict s1,
              const char * restrict s2, size_t n);
         void *memchr(const void *s, int c, size_t n);
+
 [page 489]
 
       char *strchr(const char *s, int c);
@@ -19486,6 +19032,7 @@ B.24 Threads <threads.h>
       void mtx_destroy(mtx_t *mtx);
       int mtx_init(mtx_t *mtx, int type);
       int mtx_lock(mtx_t *mtx);
+
 [page 491]
 
       int mtx_timedlock(mtx_t *mtx, const xtime *xt);
@@ -19526,8 +19073,6 @@ B.25 Date and time <time.h>
       errno_t asctime_s(char *s, rsize_t maxsize,
            const struct tm *timeptr);
 
-
-
 [page 492]
 
         errno_t ctime_s(char *s, rsize_t maxsize,
@@ -19567,8 +19112,6 @@ B.27 Extended multibyte/wide character utilities <wchar.h>
         int vswprintf(wchar_t * restrict s, size_t n,
              const wchar_t * restrict format, va_list arg);
 
-
-
 [page 493]
 
       int vswscanf(const wchar_t * restrict s,
@@ -19611,8 +19154,6 @@ B.27 Extended multibyte/wide character utilities <wchar.h>
       wchar_t *wcsncpy(wchar_t * restrict s1,
            const wchar_t * restrict s2, size_t n);
 
-
-
 [page 494]
 
         wchar_t *wmemcpy(wchar_t * restrict s1,
@@ -19655,8 +19196,6 @@ B.27 Extended multibyte/wide character utilities <wchar.h>
              const char * restrict s, size_t n,
              mbstate_t * restrict ps);
 
-
-
 [page 495]
 
       size_t wcrtomb(char * restrict s, wchar_t wc,
@@ -19698,8 +19237,6 @@ B.27 Extended multibyte/wide character utilities <wchar.h>
            const wchar_t * restrict format,
            va_list arg);
 
-
-
 [page 496]
 
         int vwprintf_s(const wchar_t * restrict format,
@@ -19741,9 +19278,6 @@ B.27 Extended multibyte/wide character utilities <wchar.h>
              const char ** restrict src, rsize_t len,
              mbstate_t * restrict ps);
 
-
-
-
 [page 497]
 
       errno_t wcsrtombs_s(size_t * restrict retval,
@@ -19771,9 +19305,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
       wint_t towctrans(wint_t wc, wctrans_t desc);
       wctrans_t wctrans(const char *property);
 
-
-
-
 [page 498]
 
                                           Annex C
@@ -19801,9 +19332,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
       also between any call to a comparison function and any movement of the objects
       passed as arguments to that call (7.22.5).
 
-
-
-
 [page 499]
 
                                          Annex D
@@ -19826,9 +19354,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     D.2 Ranges of characters disallowed initially
 1   0300-036F, 1DC0-1DFF, 20D0-20FF, FE20-FE2F
 
-
-
-
 [page 500]
 
                                          Annex E
@@ -19868,6 +19393,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 4   The values given in the following list shall be replaced by implementation-defined
     constant expressions that are greater or equal in magnitude (absolute value) to those
     shown, with the same sign:
+
 [page 501]
 
            #define    DLB_DECIMAL_DIG                                10
@@ -19907,9 +19433,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
            #define    LDBL_EPSILON                               1E-9
            #define    LDBL_MIN                                  1E-37
 
-
-
-
 [page 502]
 
                                                Annex F
@@ -20146,7 +19669,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
          efficiency of translation-time evaluation through static initialization, such as
                   const static double one_third = 1.0/3.0;
 
-
 [page 508]
 
              #include <fenv.h>
@@ -20237,34 +19759,35 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     about the order or count of floating-point exceptions. Therefore, between function calls,
     floating-point exceptions need not be precise: the actual order and number of occurrences
     of floating-point exceptions (> 1) may vary from what the source code expresses. Thus,
+
 [page 510]
 
     the preceding loop could be treated as
              if (0 < n) x + 1;
     F.9.2 Expression transformations
-1   x/2 (<->) x x 0.5          Although similar transformations involving inexact constants
+1   x/2 <-> x x 0.5          Although similar transformations involving inexact constants
                            generally do not yield numerically equivalent expressions, if the
                            constants are exact then such transformations can be made on
                            IEC 60559 machines and others that round perfectly.
-    1 x x and x/1 (->) x The expressions 1 x x, x/1, and x are equivalent (on IEC 60559
+    1 x x and x/1 -> x The expressions 1 x x, x/1, and x are equivalent (on IEC 60559
                       machines, among others).355)
-    x/x (->) 1.0             The expressions x/x and 1.0 are not equivalent if x can be zero,
+    x/x -> 1.0             The expressions x/x and 1.0 are not equivalent if x can be zero,
                            infinite, or NaN.
-    x - y (<->) x + (-y)       The expressions x - y, x + (-y), and (-y) + x are equivalent (on
+    x - y <-> x + (-y)       The expressions x - y, x + (-y), and (-y) + x are equivalent (on
                            IEC 60559 machines, among others).
-    x - y (<->) -(y - x)       The expressions x - y and -(y - x) are not equivalent because 1 - 1
+    x - y <-> -(y - x)       The expressions x - y and -(y - x) are not equivalent because 1 - 1
                            is +0 but -(1 - 1) is -0 (in the default rounding direction).356)
-    x - x (->) 0.0           The expressions x - x and 0.0 are not equivalent if x is a NaN or
+    x - x -> 0.0           The expressions x - x and 0.0 are not equivalent if x is a NaN or
                            infinite.
-    0 x x (->) 0.0           The expressions 0 x x and 0.0 are not equivalent if x is a NaN,
+    0 x x -> 0.0           The expressions 0 x x and 0.0 are not equivalent if x is a NaN,
                            infinite, or -0.
-    x+0(->) x                 The expressions x + 0 and x are not equivalent if x is -0, because
+    x+0-> x                 The expressions x + 0 and x are not equivalent if x is -0, because
                            (-0) + (+0) yields +0 (in the default rounding direction), not -0.
-    x-0(->) x                 (+0) - (+0) yields -0 when rounding is downward (toward -(inf)), but
+    x-0-> x                 (+0) - (+0) yields -0 when rounding is downward (toward -(inf)), but
                            +0 otherwise, and (-0) - (+0) always yields -0; so, if the state of the
                            FENV_ACCESS pragma is ''off'', promising default rounding, then
                            the implementation can replace x - 0 by x, even if x might be zero.
-    -x (<->) 0 - x             The expressions -x and 0 - x are not equivalent if x is +0, because
+    -x <-> 0 - x             The expressions -x and 0 - x are not equivalent if x is +0, because
                            -(+0) yields -0, but 0 - (+0) yields +0 (unless rounding is
                            downward).
 
@@ -20280,9 +19803,9 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 [page 511]
 
     F.9.3 Relational operators
-1   x != x (->) false           The expression x != x is true if x is a NaN.
-    x = x (->) true            The expression x = x is false if x is a NaN.
-    x < y (->) isless(x,y) (and similarly for <=, >, >=) Though numerically equal, these
+1   x != x -> false           The expression x != x is true if x is a NaN.
+    x = x -> true            The expression x = x is false if x is a NaN.
+    x < y -> isless(x,y) (and similarly for <=, >, >=) Though numerically equal, these
                    expressions are not equivalent because of side effects when x or y is a
                    NaN and the state of the FENV_ACCESS pragma is ''on''. This
                    transformation, which would be desirable if extra code were required
@@ -20317,9 +19840,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
                      g();
     but is equivalent to
 
-
-
-
 [page 512]
 
             if (!(a < b))
@@ -20461,9 +19981,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     -- exp(-(inf)) returns +0.
     -- exp(+(inf)) returns +(inf).
 
-
-
-
 [page 516]
 
     F.10.3.2 The exp2 functions
@@ -20494,9 +20011,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 2   If the correct result is outside the range of the return type, the numeric result is
     unspecified and the ''invalid'' floating-point exception is raised.
 
-
-
-
 [page 517]
 
     F.10.3.6 The ldexp functions
@@ -20527,9 +20041,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     -- logb((+-)(inf)) returns +(inf).
 2   The returned value is exact and is independent of the current rounding direction mode.
 
-
-
-
 [page 518]
 
     F.10.3.12 The modf functions
@@ -20560,9 +20071,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 2   If the calculation does not overflow or underflow, the returned value is exact and
     independent of the current rounding direction mode.
 
-
-
-
 [page 519]
 
     F.10.4 Power and absolute value functions
@@ -20596,7 +20104,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     -- pow(x, +(inf)) returns +0 for | x | < 1.
     -- pow(x, +(inf)) returns +(inf) for | x | > 1.
 
-
 [page 520]
 
     -- pow(-(inf), y) returns -0 for y an odd integer < 0.
@@ -20629,8 +20136,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     -- tgamma(-(inf)) returns a NaN and raises the ''invalid'' floating-point exception.
     -- tgamma(+(inf)) returns +(inf).
 
-
-
 [page 521]
 
     F.10.6 Nearest integer functions
@@ -20667,8 +20172,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     -- nearbyint((+-)0) returns (+-)0 (for all rounding directions).
     -- nearbyint((+-)(inf)) returns (+-)(inf) (for all rounding directions).
 
-
-
 [page 522]
 
     F.10.6.4 The rint functions
@@ -20705,9 +20208,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     The round functions may, but are not required to, raise the ''inexact'' floating-point
     exception for finite non-integer numeric arguments, as this implementation does.
 
-
-
-
 [page 523]
 
     F.10.6.7 The lround and llround functions
@@ -20743,9 +20243,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
                 return copysign(result, x);
            }
 
-
-
-
 [page 524]
 
     F.10.7.2 The remainder functions
@@ -20777,9 +20274,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 2   Even though underflow or overflow can occur, the returned value is independent of the
     current rounding direction mode.
 
-
-
-
 [page 525]
 
     F.10.9 Maximum, minimum, and positive difference functions
@@ -20822,9 +20316,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     characterized by FLT_EVAL_METHOD equal to 1 or 2 (5.2.4.2.2), do not convert
     operands of relational operators to their semantic types.
 
-
-
-
 [page 527]
 
                                            Annex G
@@ -21080,7 +20571,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     shown. Unless otherwise specified, where the symbol ''(+-)'' occurs in both an argument
     and the result, the result has the same sign as the argument.
 3   The functions are continuous onto both sides of their branch cuts, taking into account the
-    sign of zero. For example, csqrt(-2 (+-) i0) = (+-)isqrt:2.  -
+    sign of zero. For example, csqrt(-2 (+-) i0) = (+-)i(sqrt)2.  -
 4   Since complex and imaginary values are composed of real values, each function may be
     regarded as computing real values from real values. Except as noted, the functions treat
     real infinities, NaNs, signed zeros, subnormals, and the floating-point exception flags in a
@@ -21147,7 +20638,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     -- cacosh(+(inf) + i (inf)) returns +(inf) + ipi /4.
     -- cacosh((+-)(inf) + iNaN) returns +(inf) + iNaN.
 
-
 [page 535]
 
     -- cacosh(NaN + iy) returns NaN + iNaN and optionally raises the ''invalid''
@@ -21217,6 +20707,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
       unspecified) and raises the ''invalid'' floating-point exception.
     -- csinh(+0 + iNaN) returns (+-)0 + iNaN (where the sign of the real part of the result is
       unspecified).
+
 [page 537]
 
     -- csinh(x + i (inf)) returns NaN + iNaN and raises the ''invalid'' floating-point
@@ -21250,9 +20741,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
       point exception, for all nonzero numbers y.
     -- ctanh(NaN + iNaN) returns NaN + iNaN.
 
-
-
-
 [page 538]
 
     G.6.3 Exponential and logarithmic functions
@@ -21347,9 +20835,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
             asinh(iy)   =   i asin(y)
             atanh(iy)   =   i atan(y)
 
-
-
-
 [page 541]
 
                                           Annex H
@@ -21381,9 +20866,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 3   The parameter ''bounded'' is always true, and is not provided. The parameter ''minint''
     is always 0 for the unsigned types, and is not provided for those types.
 
-
-
-
 [page 542]
 
     H.2.2.1 Integer operations
@@ -21417,7 +20899,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     emin           FLT_MIN_EXP, DBL_MIN_EXP, LDBL_MIN_EXP
 2   The derived constants for the floating point types are accessed by the following:
 
-
 [page 543]
 
     fmax          FLT_MAX, DBL_MAX, LDBL_MAX
@@ -21451,7 +20932,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 2   The FLT_ROUNDS parameter can be used to indicate the LIA-1 rounding styles:
     truncate      FLT_ROUNDS == 0
 
-
 [page 544]
 
     nearest       FLT_ROUNDS == 1
@@ -21460,14 +20940,14 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     in all relevant LIA-1 operations, not just addition as in C.
     H.2.4 Type conversions
 1   The LIA-1 type conversions are the following type casts:
-    cvtI' (->) I     (int)i, (long int)i, (long long int)i,
+    cvtI' -> I     (int)i, (long int)i, (long long int)i,
                   (unsigned int)i, (unsigned long int)i,
                   (unsigned long long int)i
-    cvtF (->) I      (int)x, (long int)x, (long long int)x,
+    cvtF -> I      (int)x, (long int)x, (long long int)x,
                   (unsigned int)x, (unsigned long int)x,
                   (unsigned long long int)x
-    cvtI (->) F      (float)i, (double)i, (long double)i
-    cvtF' (->) F     (float)x, (double)x, (long double)x
+    cvtI -> F      (float)i, (double)i, (long double)i
+    cvtF' -> F     (float)x, (double)x, (long double)x
 2   In the above conversions from floating to integer, the use of (cast)x can be replaced with
     (cast)round(x), (cast)rint(x), (cast)nearbyint(x), (cast)trunc(x),
     (cast)ceil(x), or (cast)floor(x). In addition, C's floating-point to integer
@@ -21487,9 +20967,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 5   C's conversions (casts) from integer to floating-point can meet LIA-1 requirements if an
     implementation uses round-to-nearest.
 
-
-
-
 [page 545]
 
     H.3 Notification
@@ -21526,6 +21003,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     where i is an expression of type int representing a subset of the LIA-1 indicators.
 4   C allows an implementation to provide the following LIA-1 required behavior: at
     program termination if any indicator is set the implementation shall send an unambiguous
+
 [page 546]
 
     and ''hard to ignore'' message (see LIA-1 subclause 6.1.2)
@@ -21545,9 +21023,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     allows trap-and-terminate (either default implementation behavior or user replacement for
     it) or trap-and-resume, at the programmer's option.
 
-
-
-
 [page 547]
 
                                            Annex I
@@ -21583,15 +21058,13 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     -- A statement with no apparent effect is encountered (6.8).
     -- A constant expression is used as the controlling expression of a selection statement
       (6.8.4).
+
 [page 548]
 
 -- An incorrectly formed preprocessing group is encountered while skipping a
   preprocessing group (6.10.1).
 -- An unrecognized #pragma directive is encountered (6.10.6).
 
-
-
-
 [page 549]
 
                                             Annex J
@@ -21626,6 +21099,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     -- Whether two string literals result in distinct arrays (6.4.5).
     -- The order in which subexpressions are evaluated and the order in which side effects
       take place, except as specified for the function-call (), &&, ||, ? :, and comma
+
 [page 550]
 
    operators (6.5).
@@ -21663,7 +21137,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
   range of the return type (7.12.6.5, F.10.3.5).
 -- The result of rounding when the value is out of range (7.12.9.5, 7.12.9.7, F.10.6.5).
 
-
 [page 551]
 
 -- The value stored by the remquo functions in the object pointed to by quo when y is
@@ -21700,8 +21173,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 -- The resulting value when the ''invalid'' floating-point exception is raised during
   IEC 60559 floating to integer conversion (F.4).
 
-
-
 [page 552]
 
     -- Whether conversion of non-integer IEC 60559 floating values to integer raises the
@@ -21738,8 +21209,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
       (6.2.2).
     -- An object is referred to outside of its lifetime (6.2.4).
 
-
-
 [page 553]
 
 -- The value of a pointer to an object whose lifetime has ended is used (6.2.4).
@@ -21776,8 +21245,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 -- A pointer is used to call a function whose type is not compatible with the referenced
   type (6.3.2.3).
 
-
-
 [page 554]
 
 -- An unmatched ' or " character is encountered on a logical source line during
@@ -21815,7 +21282,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 -- A member of an atomic structure or union is accessed (6.5.2.3).
 -- The operand of the unary * operator has an invalid value (6.5.3.2).
 
-
 [page 555]
 
 -- A pointer is converted to other than an integer or pointer type (6.5.4).
@@ -21892,7 +21358,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 -- The definition of an object has an alignment specifier and another declaration of that
   object has a different alignment specifier (6.7.5).
 
-
 [page 557]
 
 -- Declarations of an object in different translation units have different alignment
@@ -22083,6 +21548,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
   exactly match one of the specified character sequences (7.21.5.3).
 -- An output operation on an update stream is followed by an input operation without an
     intervening call to the fflush function or a file positioning function, or an input
+
 [page 562]
 
    operation on an update stream is followed by an output operation with an intervening
@@ -22121,7 +21587,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 -- The number of characters transmitted by a formatted output function is greater than
   INT_MAX (7.21.6.1, 7.21.6.3, 7.21.6.8, 7.21.6.10).
 
-
 [page 563]
 
 -- The result of a conversion by one of the formatted input functions cannot be
@@ -22160,7 +21625,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 -- The value of a pointer that refers to space deallocated by a call to the free or
   realloc function is used (7.22.3).
 
-
 [page 564]
 
 -- The alignment requested of the aligned_alloc function is not valid or not
@@ -22229,9 +21693,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 1   A conforming implementation is required to document its choice of behavior in each of
     the areas listed in this subclause. The following are implementation-defined:
 
-
-
-
 [page 566]
 
     J.3.1 Translation
@@ -22262,9 +21723,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
       correspondence to universal character names (6.4.2).
     -- The number of significant initial characters in an identifier (5.2.4.1, 6.4.2).
 
-
-
-
 [page 567]
 
     J.3.4 Characters
@@ -22298,9 +21756,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
       corresponding  standard   encoding macro      (__STDC_ISO_10646__,
       __STDC_UTF_16__, or __STDC_UTF_32__) is not defined (6.10.8.2).
 
-
-
-
 [page 568]
 
     J.3.5 Integers
@@ -22337,7 +21792,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
       classifications, and their macro names (7.6, 7.12).
     -- The default state for the FP_CONTRACT pragma (7.12.2).
 
-
 [page 569]
 
     J.3.7 Arrays and pointers
@@ -22373,7 +21827,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     -- Whether the value of a single-character character constant in a constant expression
       that controls conditional inclusion may have a negative value (6.10.1).
 
-
 [page 570]
 
     -- The places that are searched for an included < > delimited header, and how the places
@@ -22482,9 +21935,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 -- Whether the functions in <math.h> honor the rounding direction mode in an
   IEC 60559 conformant implementation, unless explicitly specified otherwise (F.10).
 
-
-
-
 [page 573]
 
     J.3.13 Architecture
@@ -22520,7 +21970,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
       7.28.4.1).
     -- The collation sequence of the execution character set (7.23.4.3, 7.28.4.4.2).
 
-
 [page 574]
 
     -- The contents of the error message strings set up by the strerror function
@@ -22552,9 +22001,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 1   String literals are modifiable (in which case, identical string literals should denote distinct
     objects) (6.4.5).
 
-
-
-
 [page 575]
 
     J.5.6 Other arithmetic types
@@ -22587,9 +22033,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     execution environments, are defined by the implementation before translation begins
     (6.10.8).
 
-
-
-
 [page 576]
 
     J.5.13 Floating-point status flags
@@ -22612,9 +22055,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     instead of, or in addition to, setting errno or raising floating-point exceptions (7.3,
     7.12).
 
-
-
-
 [page 577]
 
                                            Annex K
@@ -22647,9 +22087,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     function. Such functions can be troublesome since a previously returned result can
     change if the function is called again, perhaps by another thread.
 
-
-
-
 [page 578]
 
     K.2 Scope
@@ -22804,7 +22241,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     with the meaning that mode has in the fopen_s function (including the mode's effect
     on exclusive access and file permissions).
 
-
 [page 582]
 
 5   If the file was created successfully, then the pointer to FILE pointed to by streamptr
@@ -23125,6 +22561,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 2   Neither s nor format shall be a null pointer. n shall neither equal zero nor be greater
     than RSIZE_MAX. The %n specifier382) (modified or not by flags, field width, or
     precision) shall not appear in the string pointed to by format. Any argument to
+
 [page 590]
 
     snprintf_s corresponding to a %s specifier shall not be a null pointer. No encoding
@@ -23511,8 +22948,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
             return value of the function is passed. Otherwise, a positive value of type
             errno_t is passed.
 
-
-
 [page 600]
 
 4   The implementation has a default constraint handler that is used if no calls to the
@@ -23627,7 +23062,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
                   (char *)p >= (char *)base
                   (char *)p < (char *)base + nmemb * size
 
-
 [page 603]
 
 5   A sequence point occurs immediately before and immediately after each call to the
@@ -23787,6 +23221,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
      wide characters. If dst is not a null pointer, the converted characters are stored into the
      array pointed to by dst. Conversion continues up to and including a terminating null
      character, which is also stored. Conversion stops earlier in two cases: when a sequence of
+
 [page 607]
 
     bytes is encountered that does not form a valid multibyte character, or (if dst is not a
@@ -23903,9 +23338,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 5   The memcpy_s function returns zero if there was no runtime-constraint violation.
     Otherwise, a nonzero value is returned.
 
-
-
-
 [page 610]
 
     K.3.7.1.2 The memmove_s function
@@ -24155,6 +23587,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     that is not contained in the current separator string pointed to by s2. If no such character
     is found, then there are no tokens in the string pointed to by s1 and the strtok_s
     function returns a null pointer. If such a character is found, it is the start of the first token.
+
 [page 616]
 
 7    The strtok_s function then searches from there for the first character in s1 that is
@@ -24196,8 +23629,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
      greater than RSIZE_MAX, the memset_s function stores the value of c (converted to an
      unsigned char) into each of the first smax characters of the object pointed to by s.
 
-
-
 [page 617]
 
     Description
@@ -24342,6 +23773,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     Returns
 5   The asctime_s function returns zero if the time was successfully converted and stored
     into the array pointed to by s. Otherwise, it returns a nonzero value.
+
 [page 621]
 
     K.3.8.2.2 The ctime_s function
@@ -24378,6 +23810,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     Description
 4   The gmtime_s function converts the calendar time pointed to by timer into a broken-
     down time, expressed as UTC. The broken-down time is stored in the structure pointed
+
 [page 622]
 
     to by result.
@@ -24411,9 +23844,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     subclause causes copying to take place between objects that overlap, the objects take on
     unspecified values.
 
-
-
-
 [page 623]
 
     K.3.9.1 Formatted wide character input/output functions
@@ -24574,6 +24004,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     before any conversion or if there is a runtime-constraint violation. Otherwise, the
     swscanf_s function returns the number of input items assigned, which can be fewer
     than provided for, or even zero, in the event of an early matching failure.
+
 [page 627]
 
     K.3.9.1.6 The vfwprintf_s function
@@ -24840,9 +24271,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     wscanf_s function returns the number of input items assigned, which can be fewer than
     provided for, or even zero, in the event of an early matching failure.
 
-
-
-
 [page 634]
 
     K.3.9.2 General wide string utilities
@@ -24960,9 +24388,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
 18   The wmemcpy_s function returns zero if there was no runtime-constraint violation.
      Otherwise, a nonzero value is returned.
 
-
-
-
 [page 637]
 
      K.3.9.2.1.4 The wmemmove_s function
@@ -25127,7 +24552,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     and the wcstok_s function returns a null pointer. If such a wide character is found, it is
     the start of the first token.
 
-
 [page 641]
 
 7    The wcstok_s function then searches from there for the first wide character in s1 that
@@ -25248,6 +24672,7 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     continues up to and including a terminating null character, which is also stored.
     Conversion stops earlier in two cases: when a sequence of bytes is encountered that does
     not form a valid multibyte character, or (if dst is not a null pointer) when len wide
+
 [page 644]
 
      characters have been stored into the array pointed to by dst.439) If dst is not a null
@@ -25408,9 +24833,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
     -- A string or wide string utility function is instructed to access an array beyond the end
       of an object (7.23.1, 7.28.4).
 
-
-
-
 [page 649]
 
 
@@ -25446,8 +24868,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
  18.   ISO/IEC 9899:1999/Cor.2:2004, Technical Corrigendum 2.
  19.   ISO/IEC 9899:1999/Cor.3:2007, Technical Corrigendum 3.
 
-
-
 [page 650]
 
  20.    ISO/IEC 9945-2:1993, Information technology -- Portable Operating System
@@ -25484,7 +24904,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
  37.    ISO/IEC 10967-1:1994, Information technology -- Language independent
         arithmetic -- Part 1: Integer and floating point arithmetic.
 
-
 [page 651]
 
  38.   ISO/IEC TR 19769:2004, Information technology -- Programming languages,
@@ -25494,9 +24913,6 @@ B.28 Wide character classification and mapping utilities <wctype.h>
        their environments and system software interfaces -- Extensions to the C library
        -- Part 1: Bounds-checking interfaces.
 
-
-
-
 [page 652]
 
 
@@ -25551,6 +24967,7 @@ Index
 ++ (postfix increment operator), 6.3.2.1, 6.5.2.4               <stdbool.h> header, 4, 7.18, 7.30.7, H
 ++ (prefix increment operator), 6.3.2.1, 6.5.3.1                <stddef.h> header, 4, 6.3.2.1, 6.3.2.3, 6.4.4.4,
 += (addition assignment operator), 6.5.16.2
+
 [page 653]
 
      6.4.5, 6.5.3.4, 6.5.6, 7.19, K.3.3                      \x hexadecimal digits (hexadecimal-character
index c284ee8..e9f0e2f 100755 (executable)
@@ -30,7 +30,7 @@ s/≤/<=/g
 s/≥/>=/g
 s/≠/!=/g
 s/Σ/(Sum)/g
-s/√/sqrt:/g
+s/√/(sqrt)/g
 s/π/pi/g
 s/∞/(inf)/g
 s/ƒ/fl./g
@@ -41,8 +41,8 @@ s/•/o/g
 s/⎯/-/g
 s/↑/(uparrow)/g
 s/↓/(downarrow)/g
-s/↔/(<->)/g
-s/→/(->)/g
+s/↔/<->/g
+s/→/->/g
 s/‘/'\''/g
 s/’/'\''/g
 # pdftotext layout fixes
@@ -55,6 +55,10 @@ BEGIN {
        last=$0
        side=0
 }
+/^$/ {
+       nl=nl "\n"
+       next
+}
 /^\(newpage\)/ {
        n=split(last,a)
        if(side)
@@ -62,7 +66,7 @@ BEGIN {
        else
                p=a[n]
        side=!side
-       print "[page " p "]"
+       print "\n[page " p "]"
        getline
        getline
        last=$0
@@ -70,6 +74,6 @@ BEGIN {
 }
 {
        print last
-       last=$0
-}
-'
+       last=nl $0
+       nl=""
+}'