CVS difference for ais/ai-00254.txt

Differences between 1.8 and version 1.9
Log of other versions for file ais/ai-00254.txt

--- ais/ai-00254.txt	2004/01/23 04:59:24	1.8
+++ ais/ai-00254.txt	2004/01/26 23:27:45	1.9
@@ -1,4 +1,4 @@
-!standard  3.10   (06)                               04-01-13  AI95-00254/06
+!standard  3.10   (06)                               04-01-26  AI95-00254/07
 !standard  3.10   (12)
 !standard  3.7    (09)
 !standard  3.10.2 (13)
@@ -135,7 +135,7 @@
 
 !wording
 
-This assumes the wording as already modified by AI-230/09 and AI-231/07.
+This assumes wording as already modified by AI-230/09 and AI-231/07.
 
 Replace 3.7(9) by
 
@@ -143,10 +143,7 @@
 a subtype_mark, in which case the subtype_mark shall denote a discrete or
 access subtype, or it may be defined by an access definition. A discriminant
 that is defined by an access_definition is called an access discriminant and
-is either of an anonymous access-to-object type whose designated subtype is
-denoted by the subtype_mark of the access_definition or is of an anonymous
-access-to-subprogram type whose designated profile is denoted by the
-parameter_profile or parameter_and_result_profile of the access_definition.
+is of an anonymous access type.
 
 Replace 3.10(6) by
 
@@ -165,12 +162,11 @@
 the type is an access-to-constant type; otherwise it is an
 access-to-variable type. For an access-to-subprogram type, the
 parameter_profile or parameter_and_result_profile denotes its designated
-profile.
+profile. If a null_exclusion is present, or the access_definition is for a
+controlling access parameter (see 3.9.2), the access_definition defines an
+access subtype which excludes the null value; otherwise the subtype includes
+a null value.
 
-If a null_exclusion is present, or the access_definition is for a controlling
-access parameter (see 3.9.2), the access_definition defines an access subtype
-which excludes the null value; otherwise the subtype includes a null value.
-
 Replace 3.10.2(13) by
 
 *   The accessibility level of the anonymous access type of an access
@@ -191,11 +187,11 @@
 Replace 6.1(24) by
 
 An access parameter is a formal in parameter specified by an access_definition.
-An access parameter is of an anonymous general access-to-object type or an
-anonymous access-to-subprogram type (see 3.10). Access parameters of an
-access-to-object type allow dispatching calls to be controlled by access
-values. Access parameters of an access-to-subprogram type permit calls to
-subprograms passed as parameters irrespective of their accessibility level.
+An access parameter is of an anonymous access type (see 3.10). Access
+parameters of an access-to-object type allow dispatching calls to be
+controlled by access values. Access parameters of an access-to-subprogram
+type permit calls to subprograms passed as parameters irrespective of their
+accessibility level.
 
 Replace 6.1(27) by
 
@@ -222,8 +218,6 @@
 a designated profile which is subtype conformant with that of the access
 definition.
 
-[NOTE should that be designated subtype in the above? I copied it from 230/09.]
-
 Replace 8.5.1(4) by
 
 The renamed entity shall be an object. In the case of a renaming with an
@@ -231,15 +225,11 @@
 shall be of an access-to-constant type if and only if the renamed object is
 of an access-to-constant type.
 
-[NOTE This is the wording to be expected from 230/231 and is written out
-here just to clarify that the second sentence does not apply to
-access-to-subprogram types.]
-
-[NOTE I assume that we don't have to say that the accessiblity level is the
-same as that of the renamed object because accessibility is just one of the
-"properties" covered by 8.5.1(6). Its covered by 3.10.2(8) anyway.]
+Add after 8.6(25):
 
-[NOTE does 8.6(25) need changing?]
+    *   when T is an anonymous access-to-subprogram type (see 3.10), to an
+        access-to-subprogram type whose designated profile is subtype
+        conformant with that of T.
 
 !discussion
 
@@ -889,12 +879,7 @@
 and a @fa<subtype_mark>, in which case the @fa<subtype_mark> shall denote a
 discrete or access subtype, or it may be defined by an @fa<access_definition>.
 A discriminant that is defined by an @fa<access_definition>
-is called an @i<access discriminant> and is either of an anonymous
-access-to-object type whose designated subtype is
-denoted by the @fa<subtype_mark> of the @fa<access_definition> or is of an
-anonymous access-to-subprogram type whose designated profile is denoted by the
-@fa<parameter_profile> or @fa<parameter_and_result_profile> of the
-@fa<access_definition>.
+is called an @i<access discriminant> and is of an anonymous access type.
 
 !corrigendum 3.10(6)
 
@@ -962,11 +947,10 @@
 to be controlled by access values.
 @dby
 An @i<access parameter> is a formal @b<in> parameter specified by an
-@fa<access_definition>. An access parameter is of an anonymous general
-access-to-object type or an anonymous access-to-subprogram type (see 3.10).
-Access parameters of an access-to-object type allow dispatching calls to be
-controlled by access values. Access parameters of an access-to-subprogram type
-permit calls to subprograms passed as parameters irrespective of their
+@fa<access_definition>. An access parameter is of an anonymous access type (see
+3.10). Access parameters of an access-to-object type allow dispatching calls to
+be controlled by access values. Access parameters of an access-to-subprogram
+type permit calls to subprograms passed as parameters irrespective of their
 accessibility level.
 
 !corrigendum 6.1(27)
@@ -1024,7 +1008,7 @@
 @dinst
 @xinbull<when @i<T> is an anonymous access-to-subprogram type (see 3.10), to
 an access-to-subprogram type whose designated profile is subtype-conformant
-with @i<T>'s designated profile.>
+with that of @i<T>.>
 
 
 !ACATS test
@@ -1062,7 +1046,7 @@
 !reference RM9X-3.10.2(16);4.0
 !reference AARM-12.3(12.p,12.q);4.0
 !reference LSN-1042 on Accessibility Checks in Generics
-!from Bob Duff $Date: 2004/01/23 04:59:24 $ $Revision: 1.8 $
+!from Bob Duff $Date: 2004/01/26 23:27:45 $ $Revision: 1.9 $
 !discussion
 
 Two issues related to access types and the accessibility rules came
@@ -1475,7 +1459,7 @@
 !topic LSN on Accessibility Checks in Generics
 !key LSN-1042 on Accessibility Checks in Generics
 !reference MS-12;4.6
-!from Bob Duff $Date: 2004/01/23 04:59:24 $ $Revision: 1.8 $
+!from Bob Duff $Date: 2004/01/26 23:27:45 $ $Revision: 1.9 $
 !discussion
 
 This Language Study Note discusses accessibility checks, and their

Questions? Ask the ACAA Technical Agent