From Jason Turner

[cpp.include]

Diff to HTML by rtfpessoa

tmp/tmptpb1__0c/{from.md → to.md} RENAMED
@@ -43,11 +43,11 @@ A preprocessing directive of the form
43
  (that does not match one of the two previous forms) is permitted. The
44
  preprocessing tokens after `include` in the directive are processed just
45
  as in normal text (i.e., each identifier currently defined as a macro
46
  name is replaced by its replacement list of preprocessing tokens). If
47
  the directive resulting after all replacements does not match one of the
48
- two previous forms, the behavior is undefined.[^7] The method by which a
49
  sequence of preprocessing tokens between a `<` and a `>` preprocessing
50
  token pair or a pair of `"` characters is combined into a single header
51
  name preprocessing token is *implementation-defined*.
52
 
53
  The implementation shall provide unique mappings for sequences
@@ -58,10 +58,12 @@ alphabetical case.
58
 
59
  A `#include` preprocessing directive may appear in a source file that
60
  has been read because of a `#include` directive in another file, up to
61
  an *implementation-defined* nesting limit.
62
 
 
 
63
  Although an implementation may provide a mechanism for making arbitrary
64
  source files available to the `< >` search, in general programmers
65
  should use the `< >` form for headers provided with the implementation,
66
  and the `" "` form for sources outside the control of the
67
  implementation. For instance:
@@ -71,10 +73,14 @@ implementation. For instance:
71
  #include <unistd.h>
72
  #include "usefullib.h"
73
  #include "myprog.h"
74
  ```
75
 
 
 
 
 
76
  This illustrates macro-replaced `#include` directives:
77
 
78
  ``` cpp
79
  #if VERSION == 1
80
  #define INCFILE "vers1.h"
@@ -84,5 +90,7 @@ This illustrates macro-replaced `#include` directives:
84
  #define INCFILE "versN.h"
85
  #endif
86
  #include INCFILE
87
  ```
88
 
 
 
 
43
  (that does not match one of the two previous forms) is permitted. The
44
  preprocessing tokens after `include` in the directive are processed just
45
  as in normal text (i.e., each identifier currently defined as a macro
46
  name is replaced by its replacement list of preprocessing tokens). If
47
  the directive resulting after all replacements does not match one of the
48
+ two previous forms, the behavior is undefined.[^4] The method by which a
49
  sequence of preprocessing tokens between a `<` and a `>` preprocessing
50
  token pair or a pair of `"` characters is combined into a single header
51
  name preprocessing token is *implementation-defined*.
52
 
53
  The implementation shall provide unique mappings for sequences
 
58
 
59
  A `#include` preprocessing directive may appear in a source file that
60
  has been read because of a `#include` directive in another file, up to
61
  an *implementation-defined* nesting limit.
62
 
63
+ [*Note 1*:
64
+
65
  Although an implementation may provide a mechanism for making arbitrary
66
  source files available to the `< >` search, in general programmers
67
  should use the `< >` form for headers provided with the implementation,
68
  and the `" "` form for sources outside the control of the
69
  implementation. For instance:
 
73
  #include <unistd.h>
74
  #include "usefullib.h"
75
  #include "myprog.h"
76
  ```
77
 
78
+ — *end note*]
79
+
80
+ [*Example 1*:
81
+
82
  This illustrates macro-replaced `#include` directives:
83
 
84
  ``` cpp
85
  #if VERSION == 1
86
  #define INCFILE "vers1.h"
 
90
  #define INCFILE "versN.h"
91
  #endif
92
  #include INCFILE
93
  ```
94
 
95
+ — *end example*]
96
+