CVS difference for ais/ai-00408.txt
--- ais/ai-00408.txt 2005/02/08 01:17:51 1.1
+++ ais/ai-00408.txt 2005/02/27 06:35:10 1.2
@@ -1,5 +1,8 @@
-!standard 8.3.1 (23) 05-02-07 AI95-00408/01
+!standard 8.3 (23) 05-02-26 AI95-00408/02
+!standard 8.2 (10)
!class amendment 05-02-07
+!status Amendment 200Y 05-02-26
+!status ARG Approved 8-0-2 05-02-12
!status work item 05-02-07
!status received 05-02-07
@@ -12,7 +15,7 @@
-The definition of visibility for attribute_definition_clauses in 8.3.1(23.1/2)
+The definition of visibility for attribute_definition_clauses in AI-195
is flawed. It is constructed by analogy with declarations, but the visibility
of declarations has plenty of oddities related to homographs, hiding, use
@@ -30,18 +33,40 @@
The scope of an attribute_definition_clause is identical to the scope of a
declaration that would occur at the point of the attribute_definition_clause.
-Replace 8.3.1(23.1/2) by:
+Replace the paragraph added after 8.3(23) by AI-195 with:
-An attribute_definition_clause is visible within its scope.
+An attribute_definition_clause is visible everywhere within its scope.
+See AI-195 for examples.
+The scope of a declaration always contains the immediate scope of the
+declaration. In addition, for a given declaration that occurs immediately
+within the visible part of an outer declaration, or is a public child of an
+outer declaration, the scope of the given declaration extends to the end of the
+scope of the outer declaration, except that the scope of a @fa<library_item>
+includes only its semantic dependents.
+The scope of an @fa<attribute_definition_clause> is identical to the scope of a
+declaration that would occur at the point of the
+@xbullet<A declaration is also hidden from direct visibility where hidden from
+all visibility. >
+An @fa<attribute_definition_clause> is @i<visible> everywhere within its scope.
Questions? Ask the ACAA Technical Agent