CVS difference for ais/ai-00106.txt
--- ais/ai-00106.txt 2000/04/14 01:45:07 1.6
+++ ais/ai-00106.txt 2000/06/21 23:39:08 1.7
@@ -68,20 +68,20 @@
13.14(11-11.b) says:
- 11 {freezing [entity caused by a name]} At the place where a name
- causes freezing, the entity denoted by the name is frozen, unless
- the name is a prefix of an expanded name; {freezing [nominal
- subtype caused by a name]} at the place where an object name
- causes freezing, the nominal subtype associated with the name is
- frozen.
- 11.a Ramification: This only matters in the presence of deferred
- constants or access types; an object_declaration other than a
- deferred_constant_declaration causes freezing of the nominal
- subtype, plus all component junk.
+ At the place where a name
+ causes freezing, the entity denoted by the name is frozen, unless
+ the name is a prefix of an expanded name; at the place where an
+ object name causes freezing, the nominal subtype associated with
+ the name is frozen.
+
+ Ramification: This only matters in the presence of deferred
+ constants or access types; an object_declaration other than a
+ deferred_constant_declaration causes freezing of the nominal
+ subtype, plus all component junk.
- 11.b Implicit_dereferences are covered by expression.
+ Implicit_dereferences are covered by expression.
-It seems that (11.b) is wrong -- an implicit_dereference is *not* an
+It seems that AARM 13.14(11.b) is wrong -- an implicit_dereference is *not* an
expression.
----------------
@@ -94,7 +94,7 @@
X: T; -- Implicit call to Initialize.
for Initialize'Address use ...; -- Legal? (No.)
-If this is legal, it will raise Program_Error, but 13.14(1.o) argues
+If this is legal, it will raise Program_Error, but AARM 13.14(1.o) argues
that that's no excuse.
The same question applies to Adjust and Finalize, and also to implicit
@@ -108,7 +108,7 @@
type Color is (Red, Yellow);
subtype S is Color range Red..Red; -- The expression "Red" freezes type Color.
-BUT:
+But:
type T is range 1..100;
subtype S is T range 1..10; -- Freezes type T? (Yes.)
@@ -119,10 +119,10 @@
13.14(12) seems to agree that the implicit conversion should freeze.
- 12 [{freezing [type caused by a range]} At the place where a range
- causes freezing, the type of the range is frozen.]
+ [At the place where a range
+ causes freezing, the type of the range is frozen.]
- 12.a Proof: This is consequence of the facts that expressions freeze
+ Proof: This is consequence of the facts that expressions freeze
their type, and the Range attribute is defined to be equivalent
to a pair of expressions separated by ``..''.}
@@ -183,7 +183,7 @@
If the above example (1) were legal, it would necessarily raise
Constraint_Error due to dereferencing a null access value.
-However, 13.14(1.o-1.1.u) explains that we do not wish to rely on
+However, AARM 13.14(1.o-1.u) explains that we do not wish to rely on
run-time checks for this kind of example. Furthermore, it is possible
to construct examples that do not necessarily raise an exception.
Questions? Ask the ACAA Technical Agent