CVS difference for ai12s/ai12-0003-1.txt

Differences between 1.18 and version 1.19
Log of other versions for file ai12s/ai12-0003-1.txt

--- ai12s/ai12-0003-1.txt	2015/02/03 03:30:33	1.18
+++ ai12s/ai12-0003-1.txt	2015/02/21 01:04:07	1.19
@@ -1,4 +1,4 @@
-!standard 8.2(11)                                   15-02-02    AI12-0003-1/10
+!standard 8.2(11)                                   15-02-23    AI12-0003-1/11
 !standard 13.11.3(1/3)
 !standard 13.11.3(3.1/3)
 !standard 13.11.3(4/3)
@@ -8,6 +8,8 @@
 !standard 13.11.3(6.3/3)
 !class binding interpretation 15-01-28
 !status Corrigendum 2015 15-01-28
+!status ARG Approved by Letter Ballot (9-1-1)  15-02-23
+!status work item 15-02-03
 !status ARG Approved 8-0-1  15-01-28
 !status work item 11-06-19
 !status received 11-03-21
@@ -40,13 +42,13 @@
    The immediate scope of a pragma which is not used
    as a configuration pragma is defined to be the
    region extending from immediately after the pragma
-   to end of the the declarative region immediately enclosing the pragma.
+   to the end of the declarative region immediately enclosing the pragma.
 
 Replace the deleted 13.11.3(1/3):
 
    Redundant[Pragma and aspect Default_Storage_Pool specify the storage pool that
    will be used in the absence of an explicit specification of a storage pool or
-   size for an access type.]
+   storage size for an access type.]
 
 Modify 13.11.3(3.1/3):
 
@@ -57,11 +59,11 @@
    The Standard storage_pool_indicator is an identifier specific to a
    pragma (see 2.8) and does not denote any declaration. If the
    storage_pool_indicator is Standard, then there shall not be a
-   declaration with defining identifier Standard that is immediately
+   declaration with defining_identifier Standard that is immediately
    visible at the point of the pragma, other than package Standard
    itself.
 
-AARM Reason: We considering having the Standard storage_pool_indicator
+AARM Reason: We considered having the Standard storage_pool_indicator
    resolve to package Standard rather than being an identifier specific to a
    pragma. That would eliminate the need for a special check. But it would
    be bizarre to have something that could resolve to either an object or a
@@ -73,9 +75,9 @@
 
    No declaration of Standard can ever be use-visible, as the language-defined
    non-overloadable definition of Standard will hide any use-visible declarations.
-   Thus we need only concern ourselves with immediately visible declarations
-   with the defining identifier Standard; that eliminates any possible
-   confusion.
+   Thus we need only concern ourselves with eliminating any possible confusion
+   with regard to immediately visible declarations with the defining_identifier
+   Standard.
 End AARM Reason.
 
 Modify 13.11.3 (4.1/3):
@@ -95,12 +97,14 @@
 
    The language-defined aspect Default_Storage_Pool may be specified for a
    generic instance; it defines the default pool for access types within an
-   instance. {The Default_Storage_Pool aspect may be specified as Standard,
+   instance.{
+
+   The Default_Storage_Pool aspect may be specified as Standard,
    which is an identifier specific to an aspect (see 13.1.1) and
-   defines the default pool to be Standard. When the Default_Storage_Pool aspect
-   is specified as Standard, then there shall not be a declaration with defining
-   identifier Standard that is immediately visible at the point of the aspect
-   specification, other than package Standard itself.
+   defines the default pool to be Standard. In this case, then there shall not
+   be a declaration with defining_identifier Standard that is immediately
+   visible at the point of the aspect specification, other than package
+   Standard itself.
 
    Otherwise, the} [The] expected type for the Default_Storage_Pool aspect is
    Root_Storage_Pool'Class[. The]{and the} aspect_definition {shall}[must] be a
@@ -147,7 +151,7 @@
 The immediate scope of a pragma which is not used
 as a configuration pragma is defined to be the
 region extending from immediately after the pragma
-to end of the declarative region immediately enclosing the pragma.
+to the end of the declarative region immediately enclosing the pragma.
 
 !corrigendum 13.11.3(1/3)
 
@@ -156,7 +160,7 @@
 @dby
 Pragma and aspect Default_Storage_Pool specify the storage pool that
 will be used in the absence of an explicit specification of a storage pool or
-size for an access type.
+storage size for an access type.
 
 !corrigendum 13.11.3(3.1/3)
 
@@ -173,7 +177,7 @@
 The Standard @fa<storage_pool_indicator> is an identifier specific to a
 pragma (see 2.8) and does not denote any declaration. If the
 @fa<storage_pool_indicator> is Standard, then there shall not be a
-declaration with defining identifier Standard that is immediately
+declaration with @fa<defining_identifier> Standard that is immediately
 visible at the point of the pragma, other than package Standard
 itself.
 
@@ -213,13 +217,14 @@
 @dby
 The language-defined aspect Default_Storage_Pool may be specified for a
 generic instance; it defines the default pool for access types within an
-instance. The Default_Storage_Pool aspect may be specified as Standard,
-which is an identifier specific to an aspect (see 13.1.1) and
-defines the default pool to be Standard. When the Default_Storage_Pool aspect
-is specified as Standard, then there shall not be a declaration with defining
-identifier Standard that is immediately visible at the point of the aspect
-specification, other than package Standard itself.
+instance.
 
+The Default_Storage_Pool aspect may be specified as Standard, which is an
+identifier specific to an aspect (see 13.1.1) and defines the default pool to
+be Standard. In this case, then there shall not be a declaration with
+@fa<defining_identifier> Standard that is immediately visible at the point of
+the aspect specification, other than package Standard itself.
+
 Otherwise, the expected type for the Default_Storage_Pool aspect is
 Root_Storage_Pool'Class and the @fa<aspect_definition> shall be a
 @fa<name> that denotes a variable. This aspect overrides any Default_Storage_Pool
@@ -2459,6 +2464,23 @@
 Anyway, I didn't make a change here because it seems to fall directly into the
 "foolish consistency" category -- since it wouldn't be that consistent either
 way.
+
+****************************************************************
+
+From: Tucker Taft
+Sent: Monday, February  2, 2015  10:10 PM
+
+Interesting consistent inconsistency! ;-)
+
+****************************************************************
+
+From: Tucker Taft
+Sent: Wednesday, February  4, 2015  11:40 AM
+
+For what it is worth, some of the earlier implementation concerns about this
+pragma might be reduced by the current formulation, where using "Standard" is
+essentially merely canceling any outer Default_Storage_Pool specification,
+rather than implying that there is a single "standard" storage pool object.
 
 ****************************************************************
 

Questions? Ask the ACAA Technical Agent