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

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

!standard E.2.1(7/4)          19-03-06 AI12-0320-1/01
!standard E.2.1(7.1/4)
!class binding interpretation 19-03-06
!status work item 19-03-06
!status received 19-03-05
!priority Low
!difficulty Easy
!qualifier Clarification
!subject Changes from the RM review
!summary
Various wording changes are made to clarify the Standard.
!question
(1) E.2.1(7/4) is confusing:
... nor a type with a part that is of a task type or protected type with entry_declarations.
This can be read two ways as shown by the parens below:
... nor a type with a part that is of a ((task type or protected type) with entry_declarations).
or
... nor a type with a part that is of a ((task type) or (protected type with entry_declarations)).
!recommendation
(1) The original wording makes it clear that the second interpretation is intended. Adding more connector words only helps a tiny bit, so the recommendation is to change this into a list of sub-bullets (and we can include the following bullet in that rewrite as well).
!wording
Replace E.2.1(7/4-7.1/4) with:
* it shall not contain a library-level declaration:
* of an access type that designates a class-wide type;
* of a type with a part that is of a task type;
* of a type with a part that is of a protected type with entry_declarations; nor
* that contains a name that denotes a type declared within a declared-pure package, if that type has a part that is of an access type; for the purposes of this rule, the parts considered include those of the full views of any private types or private extensions.
[Editor's note: Put the AARM notes after the appropriate bullet.]
!discussion
!ASIS
No ASIS effect.
!ACATS test
!appendix

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

Questions? Ask the ACAA Technical Agent