From Jason Turner

[cpp.include]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp1s5zvugl/{from.md → to.md} +11 -9
tmp/tmp1s5zvugl/{from.md → to.md} RENAMED
@@ -43,14 +43,16 @@ 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.[^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
54
  consisting of one or more *nondigit*s or *digit*s [[lex.name]] followed
55
  by a period (`.`) and a single *nondigit*. The first character shall not
56
  be a *digit*. The implementation may ignore distinctions of alphabetical
@@ -69,15 +71,15 @@ directive [[cpp.import]] of the form
69
  'import' header-name ';' new-line
70
  ```
71
 
72
  [*Note 1*:
73
 
74
- Although an implementation may provide a mechanism for making arbitrary
75
- source files available to the `< >` search, in general programmers
76
- should use the `< >` form for headers provided with the implementation,
77
- and the `" "` form for sources outside the control of the
78
- implementation. For instance:
79
 
80
  ``` cpp
81
  #include <stdio.h>
82
  #include <unistd.h>
83
  #include "usefullib.h"
 
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]
49
+
50
+ The method by which a sequence of preprocessing tokens between a `<` and
51
+ a `>` preprocessing token pair or a pair of `"` characters is combined
52
+ into a single header name preprocessing token is
53
+ *implementation-defined*.
54
 
55
  The implementation shall provide unique mappings for sequences
56
  consisting of one or more *nondigit*s or *digit*s [[lex.name]] followed
57
  by a period (`.`) and a single *nondigit*. The first character shall not
58
  be a *digit*. The implementation may ignore distinctions of alphabetical
 
71
  'import' header-name ';' new-line
72
  ```
73
 
74
  [*Note 1*:
75
 
76
+ An implementation can provide a mechanism for making arbitrary source
77
+ files available to the `< >` search. However, using the `< >` form for
78
+ headers provided with the implementation and the `" "` form for sources
79
+ outside the control of the implementation achieves wider portability.
80
+ For instance:
81
 
82
  ``` cpp
83
  #include <stdio.h>
84
  #include <unistd.h>
85
  #include "usefullib.h"