CVS difference for ais/ai-00209.txt

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

--- ais/ai-00209.txt	2000/12/07 04:35:34	1.5
+++ ais/ai-00209.txt	2004/04/06 19:56:57	1.6
@@ -1,5 +1,8 @@
-!standard H.3.1     (8)                             00-11-13  AI95-00209/02
+!standard H.3.1     (8)                             04-03-24  AI95-00209/03
+!standard H.3.2     (9)
 !class binding interpretation 99-02-05
+!status Amendment 200Y 04-03-24
+!status ARG Approved 9-0-0  04-03-05
 !status work item 99-02-05
 !status received 98-10-01
 !priority Medium
@@ -9,8 +12,8 @@
 
 !summary
 
-In H.3.1(8), the term "reference (to)" needs to be replaced by "usage
-(of the value of)". H.3.2(9) needs to be similarly changed.
+In H.3.1(8), the term "reference (to)" needs to be replaced by "read (of)".
+H.3.2(9) needs to be similarly changed.
 
 For the purposes of Pragma Reviewable, objects are uninitialized, if
 they never were initialized or assigned to prior to use. All such
@@ -46,22 +49,21 @@
 
 !recommendation
 
-(see summary)
+(See summary.)
 
 !wording
 
-H.3.1(8) should read: "For each usage of the value of a scalar object,
-an identification of the usage as either ....."
+H.3.1(8) should read: "For each read of a scalar object, an identification
+of the read as either ....."
 
 The 2. sentence of H.3.2(9) should read: "Thus an inspection point has
-the effect of an implicit usage of the value of each of its
-inspectable objects."
+the effect of an implicit read of each of its inspectable objects."
 
 !discussion
 
 First, the term "reference" in H.3.1(8) is incorrect as it also
 includes the occurrence as the target of an assignment. Clearly, only
-usages of the value of the object were meant to be diagnosed. Similarly,
+reads of the object were meant to be diagnosed. Similarly,
 the NOTE H.3.2(9) in imprecise by its usage of the term "reference".
 
 A definitive answer to the !question seems counter-productive. A model
@@ -125,6 +127,37 @@
 recognized, but some objects initialized only by alias-effects or
 uninitialized only on non-executable paths, or assigned the value of
 an uninitialized object may also be diagnosed as uninitialized.
+
+!corrigendum H.3.1(8)
+
+@drepl
+@xbullet<For each reference to a scalar object, an identification of the
+reference as either ``known to be initialized,'' or
+``possibly uninitialized,'' independent of whether pragma Normalize_Scalars
+applies; >
+@dby
+@xbullet<For each read of a scalar object, an identification of
+the read as either ``known to be initialized,'' or ``possibly uninitialized,''
+independent of whether pragma Normalize_Scalars applies; >
+
+!corrigendum H.3.2(9)
+
+@drepl
+The implementation is not allowed to perform ``dead store elimination'' on
+the last assignment to a variable prior to a point where the variable is
+inspectable. Thus an inspection point has the effect of an implicit reference
+to each of its inspectable objects.
+@dby
+The implementation is not allowed to perform ``dead store elimination'' on
+the last assignment to a variable prior to a point where the variable is
+inspectable. Thus an inspection point has the effect of an implicit read of
+each of its inspectable objects.
+
+!ACATS Test
+
+An ACATS test could be constructed for this feature. However, the mechanism
+for reporting results is implementation-defined, so it would not fit into the
+normal B or C test classifications.
 
 !appendix
 

Questions? Ask the ACAA Technical Agent