Version 1.1 of ai12s/ai12-0418-1.txt

Unformatted version of ai12s/ai12-0418-1.txt version 1.1
Other versions for file ai12s/ai12-0418-1.txt

!standard 9.7.4(14/4)          20-12-14 AI12-0418-1/01
!class binding interpretation 20-12-14
!status Amendment 1-2012 20-12-14
!status work item 20-12-14
!status received 20-12-14
!priority Low
!difficulty Easy
!qualifier Omission
!subject Presentation issues from Draft 26 review - part 3
!summary
Various wording issues were noted by reviewers of Draft 26.
!question
(1) 9.7.4(14/4) talks about "abort completion points", which is a forward reference to 9.8. Typically, we have a cross-reference for forward references. Should one be added here? (Yes.)
(2) 12.3(11) needs a comma in "In a generic unit Legality Rules ..."; the two other clauses have commas before "Legality Rules" so this one is inconsistent. Should it be added? (Yes.)
!recommendation
(1) Add (see 9.8) after "abort completion points".
(2) Add the comma.
!wording
[Editor's note: These changes were applied to Draft 28 of the Ada 202x RM, even though they have not yet been approved, in order that that draft be as accurate as possible.]
Modify 9.7.4(14/4):
Note that these examples presume that there are abort completion points {(see 9.8) }within the execution of the abortable_part.
Modify 12.3(11):
In a generic unit{,} Legality Rules are enforced at compile time of the generic_declaration and generic body, given the properties of the formals. In the visible part and formal part of an instance, Legality Rules are enforced at compile time of the generic_instantiation, given the properties of the actuals. In other parts of an instance, Legality Rules are not enforced; this rule does not apply when a given rule explicitly specifies otherwise.
!discussion
(See !recommendation.)
!corrigendum 9.7.4(14/4)
Replace the paragraph:
Note that these examples presume that there are abort completion points within the execution of the abortable_part.
by:
Note that these examples presume that there are abort completion points (see 9.8) within the execution of the abortable_part.
!corrigendum 12.3(11)
Replace the paragraph:
In a generic unit Legality Rules are enforced at compile time of the generic_declaration and generic body, given the properties of the formals. In the visible part and formal part of an instance, Legality Rules are enforced at compile time of the generic_instantiation, given the properties of the actuals. In other parts of an instance, Legality Rules are not enforced; this rule does not apply when a given rule explicitly specifies otherwise.
by:
In a generic unit, Legality Rules are enforced at compile time of the generic_declaration and generic body, given the properties of the formals. In the visible part and formal part of an instance, Legality Rules are enforced at compile time of the generic_instantiation, given the properties of the actuals. In other parts of an instance, Legality Rules are not enforced; this rule does not apply when a given rule explicitly specifies otherwise.
!ASIS
No ASIS effect.
!ACATS test
No ACATS tests should be needed, none of these changes change any semantics.
!appendix

From the AARM review of John Barnes, September 2020

  9.7.4(14/4)  I would add (see 9.8) but not essential. It is a forward 
               reference.

  12.3(11)     Please put a comma thus "In a generic unit, Legality Rules…"


****************************************************************


Questions? Ask the ACAA Technical Agent