tmp/tmpa9vgs34x/{from.md → to.md}
RENAMED
|
@@ -1,17 +1,20 @@
|
|
| 1 |
#### Headers <a id="using.headers">[[using.headers]]</a>
|
| 2 |
|
| 3 |
The entities in the C++ standard library are defined in headers, whose
|
| 4 |
contents are made available to a translation unit when it contains the
|
| 5 |
-
appropriate `#include` preprocessing directive
|
|
|
|
| 6 |
|
| 7 |
-
A translation unit may include library headers in any order
|
| 8 |
-
[[lex]]
|
| 9 |
-
from being included exactly once, except that the effect of
|
| 10 |
-
either `<cassert>` or `<assert.h>` depends each time on the
|
| 11 |
-
current definition of `NDEBUG`.[^19]
|
| 12 |
|
| 13 |
A translation unit shall include a header only outside of any
|
| 14 |
-
declaration or definition
|
| 15 |
-
|
| 16 |
-
|
|
|
|
|
|
|
| 17 |
|
|
|
|
| 1 |
#### Headers <a id="using.headers">[[using.headers]]</a>
|
| 2 |
|
| 3 |
The entities in the C++ standard library are defined in headers, whose
|
| 4 |
contents are made available to a translation unit when it contains the
|
| 5 |
+
appropriate `#include` preprocessing directive [[cpp.include]] or the
|
| 6 |
+
appropriate `import` declaration [[module.import]].
|
| 7 |
|
| 8 |
+
A translation unit may include library headers in any order
|
| 9 |
+
[[lex.separate]]. Each may be included more than once, with no effect
|
| 10 |
+
different from being included exactly once, except that the effect of
|
| 11 |
+
including either `<cassert>` or `<assert.h>` depends each time on the
|
| 12 |
+
lexically current definition of `NDEBUG`.[^19]
|
| 13 |
|
| 14 |
A translation unit shall include a header only outside of any
|
| 15 |
+
declaration or definition and, in the case of a module unit, only in its
|
| 16 |
+
*global-module-fragment*, and shall include the header or import the
|
| 17 |
+
corresponding header unit lexically before the first reference in that
|
| 18 |
+
translation unit to any of the entities declared in that header. No
|
| 19 |
+
diagnostic is required.
|
| 20 |
|