CVS difference for ai12s/ai12-0347-1.txt

Differences between 1.4 and version 1.5
Log of other versions for file ai12s/ai12-0347-1.txt

--- ai12s/ai12-0347-1.txt	2020/02/01 01:39:48	1.4
+++ ai12s/ai12-0347-1.txt	2020/02/20 03:46:13	1.5
@@ -1,5 +1,6 @@
-!standard 9.6.1(35.1/5)                                  20-01-31  AI12-0347-1/03
+!standard 9.6.1(35.1/5)                                  20-02-19  AI12-0347-1/04
 !standard 12.6(15)
+!standard C.6(19.1/5)
 !standard E.4.2(5)
 !class presentation 19-10-28
 !status Amendment 1-2012 20-01-29
@@ -20,6 +21,8 @@
 
 (3) Add "Time_Zones." in front of Local_Time_Offset.
 
+(4) Reword C.6(19.1/5).
+
 !question
 
 (1) There seems to be a typo in 12.6(15): "...directly visible at the place 
@@ -33,6 +36,10 @@
 instance, all of the parameters of type Time_Offset have this prefix. But
 the default parameter Local_Time_Offset is missing it.
 
+(4) We don't usually use a phrase like "shall be implemented" in Dynamic
+Semantics; that sort of wording is usually used in Implementation 
+Requirements.
+
 !response
 
 (1) This is not a typo; "_instantiation" is in the syntax font. This appears
@@ -45,6 +52,9 @@
 
 (3) Yes, the call should be written Time_Zones.Local_Time_Offset.
 
+(4) We want to leave this wording in Dynamic Semantics, so it is best to 
+reword the paragraph.
+
 !wording
 
 (1) Modify 12.6(15):
@@ -92,6 +102,12 @@
                          Include_Time_Fraction : Boolean := False) return String is
       (Image (Date, Include_Time_Fraction, {Time_Zones.}Local_Time_Offset (Date)));
 
+(4) Modify C.6(19.1/5):
+
+All reads of or writes to any nonatomic subcomponent of an atomic object {are 
+performed}[shall be implemented] by reading and/or writing all of the nearest 
+enclosing atomic object.
+
 !corrigendum 9.6.1(35/2)
 
 @dinsa
@@ -116,6 +132,17 @@
 equivalent to a name that denotes an entity that is directly visible at the place 
 of the @fa<generic_instantiation>.>>
 
+!corrigendum C.6(19.1/5)
+
+@drepl
+All reads of or writes to any nonatomic subcomponent of an atomic object shall 
+be implemented by reading and/or writing all of the nearest enclosing atomic 
+object.
+@dby
+All reads of or writes to any nonatomic subcomponent of an atomic object are
+performed by reading and/or writing all of the nearest enclosing atomic 
+object.
+
 !corrigendum E.4.2(5)
 
 @drepl
@@ -337,5 +364,89 @@
 into a single AI -- that cuts admin overhead and hopefully meeting time. I 
 also apply the changes in it immediately to the draft RM without waiting for 
 ARG approval, so we don't have to wait to get rid of silly mistakes.]
+
+****************************************************************
+
+From: Arnaud Charlet
+Sent: Saturday, February 1, 2020  2:50 AM
+
+> Makes sense, since all of the parameter types in the package use 
+> "Time_Zones.Time_Offset".
+
+Right.
+
+> I'll put this into the "presentation" AI (the current one is 
+> AI12-0347-1), since it doesn't involve any semantic change. [The 
+> "presentation" AI gathers a bunch of changes that don't change 
+> semantics and should be non-controversial into a single AI -- that 
+> cuts admin overhead and hopefully meeting time. I also apply the 
+> changes in it immediately to the draft RM without waiting for ARG 
+> approval, so we don't have to wait to get rid of silly mistakes.]
+
+Makes sense and certainly works for me, I agree that we want to keep the 
+overhead of such change minimal.
+
+****************************************************************
+
+From: Tucker Taft
+Sent: Thursday, February 13, 2020  7:58 PM
+
+[From private mail.]
+
+I suspect we already talked about this, but I see in the most recent online 
+version of the RM, it still says the following, in C.6(19.1/5):
+
+"All reads of or writes to any nonatomic subcomponent of an atomic object 
+shall be implemented by reading and/or writing all of the nearest enclosing 
+atomic object."
+
+That "shall be implemented by ..." should be phrased as a statement of fact 
+rather than a requirement, since it appears in the "Dynamic Semantics" section.
+
+Probably should be:
+
+  "All reads of or writes to any nonatomic subcomponent of an atomic object 
+are implemented by reading and/or writing all of the nearest enclosing atomic 
+object."
+
+Sorry if this has already been discussed...
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Friday, February 14, 2020  2:15 PM
+
+[From private mail, after a bunch of unimportant discussion]
+
+I think we need to talk about it, for no other reason than that seems 
+weird as a Dynamic Semantics rule. Either "shall be implemented" or 
+"is implemented" seems like an Implementation Requirement, rather than 
+something about Dynamic Semantics. We don't usually talk about 
+implementation in Dynamic Semantics, that's left to the implementor.
+
+Ergo, one option is to leave "shall" and move the rule to 
+Implementation Requirements. Or alternatively, leave it where it is 
+and use "is". I don't think we necessarily ought to choose that 
+(alone). (And I'd need to research if we put it into Dynamic Semantics 
+for a reason or just by fiat.)
+
+****************************************************************
+
+From: Tucker Taft
+Sent: Saturday, February 15, 2020  2:15 PM
+
+[From private mail.]
+
+I agree having the word "implemented" there is awkward.  Better would be
+perhaps:
+
+ "All reads of or writes to any nonatomic subcomponent of an atomic object 
+  are performed by reading and/or writing all of the nearest enclosing atomic 
+  object."
+
+   or, go singular with:
+
+ "A read of or write to a nonatomic subcomponent of an atomic object reads 
+  and/or writes all of the nearest enclosing atomic object."
 
 ****************************************************************

Questions? Ask the ACAA Technical Agent