|
1350 | 1350 | \rationale |
1351 | 1351 | Prevents accidental uses of trigraphs in non-raw string literals and comments. |
1352 | 1352 | \effect |
1353 | | -Valid \CppXIV{} code that uses trigraphs may not be valid or may have different |
| 1353 | +Valid \CppXIV{} code that uses trigraphs can be invalid or may have different |
1354 | 1354 | semantics in this revision of \Cpp{}. Implementations may choose to |
1355 | 1355 | translate trigraphs as specified in \CppXIV{} if they appear outside of a raw |
1356 | 1356 | string literal, as part of the \impldef{mapping input source file characters |
|
1476 | 1476 | \rationale |
1477 | 1477 | Better interaction with other language features. |
1478 | 1478 | \effect |
1479 | | -Valid \CppXIV{} code that uses inheriting constructors may not be valid |
| 1479 | +Valid \CppXIV{} code that uses inheriting constructors can be invalid |
1480 | 1480 | or may have different semantics. A \grammarterm{using-declaration} |
1481 | 1481 | that names a constructor now makes the corresponding base class constructors |
1482 | 1482 | visible to initializations of the derived class |
|
2157 | 2157 | \rationale |
2158 | 2158 | Avoid hard to diagnose or non-portable constructs. |
2159 | 2159 | \effect |
2160 | | -Names of attribute identifiers may not be used as macro names. Valid \CppIII{} |
| 2160 | +It is not allowed to use names of attribute identifiers as macro names. Valid \CppIII{} |
2161 | 2161 | code that defines \tcode{override}, \tcode{final}, |
2162 | 2162 | \tcode{carries_dependency}, or \tcode{noreturn} as macros is invalid in this |
2163 | 2163 | revision of \Cpp{}. |
|
2236 | 2236 | Lack of specification of complexity of \tcode{size()} resulted in |
2237 | 2237 | divergent implementations with inconsistent performance characteristics. |
2238 | 2238 | \effect |
2239 | | -Some container implementations that conform to \CppIII{} may not conform to the |
| 2239 | +It is possible that some container implementations that conform to \CppIII{} do not conform to the |
2240 | 2240 | specified \tcode{size()} requirements in this revision of \Cpp{}. Adjusting |
2241 | 2241 | containers such as \tcode{std::list} to the stricter requirements may require |
2242 | 2242 | incompatible changes. |
|
2343 | 2343 | \effect |
2344 | 2344 | Valid \CppIII{} code that uses implementation-specific knowledge about the |
2345 | 2345 | binary representation of the required template specializations of |
2346 | | -\tcode{std::complex} may not be compatible with this revision of \Cpp{}. |
| 2346 | +\tcode{std::complex} can be incompatible with this revision of \Cpp{}. |
2347 | 2347 |
|
2348 | 2348 | \rSec2[diff.cpp03.locale]{\ref{localization}: localization library} |
2349 | 2349 |
|
|
2941 | 2941 |
|
2942 | 2942 | \diffref{dcl.fct} [see \ref{expr.sizeof}] |
2943 | 2943 | \change |
2944 | | -In \Cpp{}, types may not be defined in return or parameter types. |
| 2944 | +In \Cpp{}, it is not allowed to define types in return or parameter types. |
2945 | 2945 | In C, these type definitions are allowed. |
2946 | 2946 |
|
2947 | 2947 | Example: |
|
3256 | 3256 |
|
3257 | 3257 | \diffref{class.member.lookup} |
3258 | 3258 | \change |
3259 | | -In \Cpp{}, a \grammarterm{typedef-name} may not be redeclared in a class definition after being used in that definition. |
| 3259 | +In \Cpp{}, it is not allowed to redeclare a \grammarterm{typedef-name} in a class definition after being used in that definition. |
3260 | 3260 |
|
3261 | 3261 | Example: |
3262 | 3262 | \begin{codeblock} |
|
0 commit comments