CVS difference for ais/ai-00259.txt

Differences between 1.6 and version 1.7
Log of other versions for file ais/ai-00259.txt

--- ais/ai-00259.txt	2003/03/04 04:56:22	1.6
+++ ais/ai-00259.txt	2003/05/24 00:51:37	1.7
@@ -1,4 +1,4 @@
-!standard  C.6 (21)                                    03-02-20  AI95-00259/04
+!standard  C.6 (21)                                    03-05-02  AI95-00259/05
 !class binding interpretation 03-01-10
 !status Amendment 200Y 03-02-20
 !status ARG Approved 8-0-0  03-02-09
@@ -49,14 +49,14 @@
 a device. Even if it works on the current version of a compiler, a newer
 compiler with better optimizations may break the program.
 
-Therefore, we extend the definition of volatile to insure that accesses are
-not combined. Since Atomic implies volatile, this means that the writes to
-X and Y in the question cannot be combined.
-
-But this does not go far enough. We cannot talk about bits that do not belong
-to any Ada object at the Ada semantic level. What we really want is to say that
-accesses to a volatile object can access only the bits belonging to that
-object, and no others. That requires implementation advice.
+To fix this, we could extend the definition of Volatile (and thus Atomic) to
+insure that accesses are not combined. But this does not go far enough. We
+cannot talk about bits that do not belong to any Ada object at the Ada
+semantic level. What we really want is to say that accesses to a volatile
+object can access only the bits belonging to that object, and no others. That
+requires implementation advice, where we can talk about bits and access
+informally. Once we have such implementation advice, there is no added value
+to changing the definition of Volatile.
 
 We have to be careful, however, as Volatile may be applied to any Ada object.
 If the object is not an even multiple of the Storage_Unit size, it probably

Questions? Ask the ACAA Technical Agent