tmp/tmpbzbkuem4/{from.md → to.md}
RENAMED
|
@@ -28,11 +28,11 @@ some other access path.
|
|
| 28 |
|
| 29 |
[*Note 4*: Cv-qualifiers are supported by the type system so that they
|
| 30 |
cannot be subverted without casting [[expr.const.cast]]. — *end note*]
|
| 31 |
|
| 32 |
Any attempt to modify
|
| 33 |
-
[[expr.
|
| 34 |
[[basic.type.qualifier]] during its lifetime [[basic.life]] results in
|
| 35 |
undefined behavior.
|
| 36 |
|
| 37 |
[*Example 1*:
|
| 38 |
|
|
@@ -80,13 +80,13 @@ The semantics of an access through a volatile glvalue are
|
|
| 80 |
*implementation-defined*. If an attempt is made to access an object
|
| 81 |
defined with a volatile-qualified type through the use of a non-volatile
|
| 82 |
glvalue, the behavior is undefined.
|
| 83 |
|
| 84 |
[*Note 5*: `volatile` is a hint to the implementation to avoid
|
| 85 |
-
aggressive optimization involving the object because
|
| 86 |
-
|
| 87 |
-
Furthermore, for some implementations, `volatile`
|
| 88 |
-
special hardware instructions are
|
| 89 |
-
[[intro.execution]] for detailed semantics. In general, the
|
| 90 |
-
`volatile` are intended to be the same in C++ as they are
|
| 91 |
-
C. — *end note*]
|
| 92 |
|
|
|
|
| 28 |
|
| 29 |
[*Note 4*: Cv-qualifiers are supported by the type system so that they
|
| 30 |
cannot be subverted without casting [[expr.const.cast]]. — *end note*]
|
| 31 |
|
| 32 |
Any attempt to modify
|
| 33 |
+
[[expr.assign]], [[expr.post.incr]], [[expr.pre.incr]] a const object
|
| 34 |
[[basic.type.qualifier]] during its lifetime [[basic.life]] results in
|
| 35 |
undefined behavior.
|
| 36 |
|
| 37 |
[*Example 1*:
|
| 38 |
|
|
|
|
| 80 |
*implementation-defined*. If an attempt is made to access an object
|
| 81 |
defined with a volatile-qualified type through the use of a non-volatile
|
| 82 |
glvalue, the behavior is undefined.
|
| 83 |
|
| 84 |
[*Note 5*: `volatile` is a hint to the implementation to avoid
|
| 85 |
+
aggressive optimization involving the object because it is possible for
|
| 86 |
+
the value of the object to change by means undetectable by an
|
| 87 |
+
implementation. Furthermore, for some implementations, `volatile` can
|
| 88 |
+
indicate that special hardware instructions are needed to access the
|
| 89 |
+
object. See [[intro.execution]] for detailed semantics. In general, the
|
| 90 |
+
semantics of `volatile` are intended to be the same in C++ as they are
|
| 91 |
+
in C. — *end note*]
|
| 92 |
|