Version 1.2 of ai05s/ai05-0093-1.txt

Unformatted version of ai05s/ai05-0093-1.txt version 1.2
Other versions for file ai05s/ai05-0093-1.txt

!standard 3.3(23.4/3)          08-05-15 AI05-0093-1/01
!standard 7.5(8.7/2)
!class binding interpretation 08-05-15
!status work item 08-05-15
!status received 06-05-13
!priority Low
!difficulty Medium
!qualifier Omission
!subject Additional rules that need to use "immutably limited"
!summary
Additional rules should use "immutably limited".
!question
Now that AI05-0052 has defined the term "immutably limited", are there other places in the RM where that term should be used? (yes.)
!wording
In 3.3(23.4/3) (in the definition of "known to be constrained", text added by
AI05-0008-1), replace its type is a protected type, a task type, or an explicitly limited record type; or
with
its type is immutably limited (see 7.5); or
In 7.5(8.7/2), replace
For a function_call of a type with a part that is of a task, protected, or explicitly limited record type that is used to initialize an object as allowed above, the implementation shall not create a separate return object (see 6.5) for the function_call.
with
For a function_call of an immutably limited type that is used to initialize an object as allowed above, the implementation shall not create a separate return object (see 6.5) for the function_call.
In AARM 12.3(11.p/2), replace
A type with a default_expression of an access discriminant has to be a descendant of an explicitly limited record type a type declared with limited, or be a task or protected type.
with
A type with a default_expression of an access discriminant has to be immutably limited.
!discussion
This is semantics-preserving cleanup. These changes are not intended to have any impact on implementations.
Should AARM 10.2.1(28.e/2) be changed to use the term "immutably limited"? [No. The note should say something about a component that doesn't have available stream attributes, that is not clear; otherwise, it is specifically enumerating Ada 95 cases that would fail. - Editor.]
--!corrigendum 3.4(23.4/3)
!ACATS Test
Since there is no intended semantics change, no additional ACATS tests are needed.
!appendix

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

Questions? Ask the ACAA Technical Agent