tmp/tmp139keju4/{from.md → to.md}
RENAMED
|
@@ -1,10 +1,10 @@
|
|
| 1 |
## Syntax notation <a id="syntax">[[syntax]]</a>
|
| 2 |
|
| 3 |
In the syntax notation used in this document, syntactic categories are
|
| 4 |
-
indicated by *italic* type, and literal words and characters
|
| 5 |
-
`constant` `width` type. Alternatives are listed on separate lines
|
| 6 |
except in a few cases where a long set of alternatives is marked by the
|
| 7 |
phrase “one of”. If the text of an alternative is too long to fit on a
|
| 8 |
line, the text is continued on subsequent lines indented from the first
|
| 9 |
one. An optional terminal or non-terminal symbol is indicated by the
|
| 10 |
subscript “\relaxₒₚₜ ”, so
|
|
@@ -21,35 +21,39 @@ the following rules:
|
|
| 21 |
- *X-name* is a use of an identifier in a context that determines its
|
| 22 |
meaning (e.g., *class-name*, *typedef-name*).
|
| 23 |
- *X-id* is an identifier with no context-dependent meaning (e.g.,
|
| 24 |
*qualified-id*).
|
| 25 |
- *X-seq* is one or more *X*’s without intervening delimiters (e.g.,
|
| 26 |
-
*declaration-seq* is a sequence of
|
| 27 |
- *X-list* is one or more *X*’s separated by intervening commas (e.g.,
|
| 28 |
-
*identifier-list* is a sequence of
|
| 29 |
|
| 30 |
<!-- Link reference definitions -->
|
|
|
|
| 31 |
[algorithm.stable]: library.md#algorithm.stable
|
|
|
|
|
|
|
| 32 |
[basic.fundamental]: basic.md#basic.fundamental
|
| 33 |
[basic.link]: basic.md#basic.link
|
|
|
|
| 34 |
[class.access]: class.md#class.access
|
| 35 |
[class.copy.assign]: class.md#class.copy.assign
|
| 36 |
[class.ctor]: class.md#class.ctor
|
| 37 |
[class.derived]: class.md#class.derived
|
| 38 |
[compliance]: library.md#compliance
|
| 39 |
[conv.lval]: expr.md#conv.lval
|
| 40 |
-
[cpp]: cpp.md#cpp
|
| 41 |
[cpp.error]: cpp.md#cpp.error
|
|
|
|
| 42 |
[dcl.pre]: dcl.md#dcl.pre
|
| 43 |
[dcl.ptr]: dcl.md#dcl.ptr
|
| 44 |
[dcl.ref]: dcl.md#dcl.ref
|
| 45 |
-
[defns.repositional.stream]: #defns.repositional.stream
|
| 46 |
[defns.well.formed]: #defns.well.formed
|
| 47 |
[depr]: future.md#depr
|
| 48 |
[diff]: compatibility.md#diff
|
| 49 |
[diff.library]: compatibility.md#diff.library
|
| 50 |
-
[
|
|
|
|
| 51 |
[expr.call]: expr.md#expr.call
|
| 52 |
[expr.const]: expr.md#expr.const
|
| 53 |
[expr.post.incr]: expr.md#expr.post.incr
|
| 54 |
[expr.pre.incr]: expr.md#expr.pre.incr
|
| 55 |
[gram]: grammar.md#gram
|
|
@@ -59,48 +63,46 @@ the following rules:
|
|
| 59 |
[intro.abstract]: #intro.abstract
|
| 60 |
[intro.compliance]: #intro.compliance
|
| 61 |
[intro.compliance.general]: #intro.compliance.general
|
| 62 |
[intro.defs]: #intro.defs
|
| 63 |
[intro.execution]: basic.md#intro.execution
|
|
|
|
| 64 |
[intro.refs]: #intro.refs
|
| 65 |
[intro.scope]: #intro.scope
|
| 66 |
[intro.structure]: #intro.structure
|
| 67 |
[lex]: lex.md#lex
|
| 68 |
[lex.phases]: lex.md#lex.phases
|
| 69 |
[library]: library.md#library
|
| 70 |
-
[localization]:
|
| 71 |
-
[re]:
|
| 72 |
[strings]: strings.md#strings
|
|
|
|
| 73 |
[support]: support.md#support
|
| 74 |
[syntax]: #syntax
|
| 75 |
[temp.deduct]: temp.md#temp.deduct
|
| 76 |
-
[thread]: thread.md#thread
|
| 77 |
[using.headers]: library.md#using.headers
|
|
|
|
| 78 |
|
| 79 |
[^1]: POSIX is a registered trademark of the Institute of Electrical and
|
| 80 |
Electronic Engineers, Inc. This information is given for the
|
| 81 |
convenience of users of this document and does not constitute an
|
| 82 |
endorsement by ISO or IEC of this product.
|
| 83 |
|
| 84 |
-
[^2]:
|
| 85 |
-
|
| 86 |
-
|
| 87 |
|
| 88 |
-
[^3]:
|
| 89 |
-
the data being processed; see [[intro.defs]] and
|
| 90 |
-
[[intro.execution]].
|
| 91 |
-
|
| 92 |
-
[^4]: This documentation also defines implementation-defined behavior;
|
| 93 |
see [[intro.abstract]].
|
| 94 |
|
| 95 |
-
[^
|
| 96 |
implementation is free to disregard any requirement of this document
|
| 97 |
as long as the result is *as if* the requirement had been obeyed, as
|
| 98 |
far as can be determined from the observable behavior of the
|
| 99 |
program. For instance, an actual implementation need not evaluate
|
| 100 |
part of an expression if it can deduce that its value is not used
|
| 101 |
and that no side effects affecting the observable behavior of the
|
| 102 |
program are produced.
|
| 103 |
|
| 104 |
-
[^
|
| 105 |
constructs and locale-specific behavior. See
|
| 106 |
[[intro.compliance.general]].
|
|
|
|
| 1 |
## Syntax notation <a id="syntax">[[syntax]]</a>
|
| 2 |
|
| 3 |
In the syntax notation used in this document, syntactic categories are
|
| 4 |
+
indicated by *italic, sans-serif* type, and literal words and characters
|
| 5 |
+
in `constant` `width` type. Alternatives are listed on separate lines
|
| 6 |
except in a few cases where a long set of alternatives is marked by the
|
| 7 |
phrase “one of”. If the text of an alternative is too long to fit on a
|
| 8 |
line, the text is continued on subsequent lines indented from the first
|
| 9 |
one. An optional terminal or non-terminal symbol is indicated by the
|
| 10 |
subscript “\relaxₒₚₜ ”, so
|
|
|
|
| 21 |
- *X-name* is a use of an identifier in a context that determines its
|
| 22 |
meaning (e.g., *class-name*, *typedef-name*).
|
| 23 |
- *X-id* is an identifier with no context-dependent meaning (e.g.,
|
| 24 |
*qualified-id*).
|
| 25 |
- *X-seq* is one or more *X*’s without intervening delimiters (e.g.,
|
| 26 |
+
*declaration-seq* is a sequence of *declaration*s).
|
| 27 |
- *X-list* is one or more *X*’s separated by intervening commas (e.g.,
|
| 28 |
+
*identifier-list* is a sequence of *identifier*s separated by commas).
|
| 29 |
|
| 30 |
<!-- Link reference definitions -->
|
| 31 |
+
[\lastcorechapter]: #\lastcorechapter
|
| 32 |
[algorithm.stable]: library.md#algorithm.stable
|
| 33 |
+
[basic.contract]: basic.md#basic.contract
|
| 34 |
+
[basic.contract.eval]: basic.md#basic.contract.eval
|
| 35 |
[basic.fundamental]: basic.md#basic.fundamental
|
| 36 |
[basic.link]: basic.md#basic.link
|
| 37 |
+
[basic.types.general]: basic.md#basic.types.general
|
| 38 |
[class.access]: class.md#class.access
|
| 39 |
[class.copy.assign]: class.md#class.copy.assign
|
| 40 |
[class.ctor]: class.md#class.ctor
|
| 41 |
[class.derived]: class.md#class.derived
|
| 42 |
[compliance]: library.md#compliance
|
| 43 |
[conv.lval]: expr.md#conv.lval
|
|
|
|
| 44 |
[cpp.error]: cpp.md#cpp.error
|
| 45 |
+
[cstdio.syn]: input.md#cstdio.syn
|
| 46 |
[dcl.pre]: dcl.md#dcl.pre
|
| 47 |
[dcl.ptr]: dcl.md#dcl.ptr
|
| 48 |
[dcl.ref]: dcl.md#dcl.ref
|
|
|
|
| 49 |
[defns.well.formed]: #defns.well.formed
|
| 50 |
[depr]: future.md#depr
|
| 51 |
[diff]: compatibility.md#diff
|
| 52 |
[diff.library]: compatibility.md#diff.library
|
| 53 |
+
[exec]: exec.md#exec
|
| 54 |
+
[expr.assign]: expr.md#expr.assign
|
| 55 |
[expr.call]: expr.md#expr.call
|
| 56 |
[expr.const]: expr.md#expr.const
|
| 57 |
[expr.post.incr]: expr.md#expr.post.incr
|
| 58 |
[expr.pre.incr]: expr.md#expr.pre.incr
|
| 59 |
[gram]: grammar.md#gram
|
|
|
|
| 63 |
[intro.abstract]: #intro.abstract
|
| 64 |
[intro.compliance]: #intro.compliance
|
| 65 |
[intro.compliance.general]: #intro.compliance.general
|
| 66 |
[intro.defs]: #intro.defs
|
| 67 |
[intro.execution]: basic.md#intro.execution
|
| 68 |
+
[intro.races]: basic.md#intro.races
|
| 69 |
[intro.refs]: #intro.refs
|
| 70 |
[intro.scope]: #intro.scope
|
| 71 |
[intro.structure]: #intro.structure
|
| 72 |
[lex]: lex.md#lex
|
| 73 |
[lex.phases]: lex.md#lex.phases
|
| 74 |
[library]: library.md#library
|
| 75 |
+
[localization]: text.md#localization
|
| 76 |
+
[re]: text.md#re
|
| 77 |
[strings]: strings.md#strings
|
| 78 |
+
[structure.specifications]: library.md#structure.specifications
|
| 79 |
[support]: support.md#support
|
| 80 |
[syntax]: #syntax
|
| 81 |
[temp.deduct]: temp.md#temp.deduct
|
|
|
|
| 82 |
[using.headers]: library.md#using.headers
|
| 83 |
+
[utility.undefined]: utilities.md#utility.undefined
|
| 84 |
|
| 85 |
[^1]: POSIX is a registered trademark of the Institute of Electrical and
|
| 86 |
Electronic Engineers, Inc. This information is given for the
|
| 87 |
convenience of users of this document and does not constitute an
|
| 88 |
endorsement by ISO or IEC of this product.
|
| 89 |
|
| 90 |
+
[^2]: “Correct execution” can include undefined behavior and erroneous
|
| 91 |
+
behavior, depending on the data being processed; see [[intro.defs]]
|
| 92 |
+
and [[intro.execution]].
|
| 93 |
|
| 94 |
+
[^3]: This documentation also defines implementation-defined behavior;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 95 |
see [[intro.abstract]].
|
| 96 |
|
| 97 |
+
[^4]: This provision is sometimes called the “as-if” rule, because an
|
| 98 |
implementation is free to disregard any requirement of this document
|
| 99 |
as long as the result is *as if* the requirement had been obeyed, as
|
| 100 |
far as can be determined from the observable behavior of the
|
| 101 |
program. For instance, an actual implementation need not evaluate
|
| 102 |
part of an expression if it can deduce that its value is not used
|
| 103 |
and that no side effects affecting the observable behavior of the
|
| 104 |
program are produced.
|
| 105 |
|
| 106 |
+
[^5]: This documentation also includes conditionally-supported
|
| 107 |
constructs and locale-specific behavior. See
|
| 108 |
[[intro.compliance.general]].
|