CVS difference for arm/source/03c.mss

Differences between 1.129 and version 1.130
Log of other versions for file arm/source/03c.mss

--- arm/source/03c.mss	2013/02/02 01:46:58	1.129
+++ arm/source/03c.mss	2013/07/18 04:58:13	1.130
@@ -1,9 +1,9 @@
 @Part(03, Root="ada.mss")
 
-@Comment{$Date: 2013/02/02 01:46:58 $}
+@Comment{$Date: 2013/07/18 04:58:13 $}
 
 @Comment{$Source: e:\\cvsroot/ARM/Source/03c.mss,v $}
-@Comment{$Revision: 1.129 $}
+@Comment{$Revision: 1.130 $}
 
 @LabeledClause{Tagged Types and Type Extensions}
 
@@ -4516,13 +4516,15 @@
 
 @ChgRef{Version=[2],Kind=[Revised],ARef=[AI95-00162-01],ARef=[AI95-00416-01]}
 @ChgRef{Version=[3],Kind=[Revised],ARef=[AI05-0235-1]}
+@ChgRef{Version=[4],Kind=[Revised],ARef=[AI12-0067-1]}
 An entity or view @Chg{Version=[2],New=[defined],Old=[created]} by a
 declaration@Chg{Version=[2],New=[ and created as part of its elaboration],Old=[]}
 has the same accessibility level
 as the innermost @Chg{Version=[2],New=[],Old=[enclosing ]}master
 @Chg{Version=[2],New=[of the declaration ],Old=[]}except in the
 cases of renaming and derived access types described below.
-@Chg{Version=[3],New=[Other than for an explicitly aliased parameter, a
+@Chg{Version=[3],New=[Other than for an explicitly aliased
+parameter@Chg{Version=[4],New=[ of a function],Old=[]}, a
 formal],Old=[A]} parameter of a
 @Chg{Version=[3],New=[callable entity],Old=[master]} has the same
 accessibility level as the master@Chg{Version=[3],New=[ representing the
@@ -4535,11 +4537,15 @@
 @end{Reason}
 @begin{Discussion}
   @ChgRef{Version=[2],Kind=[AddedNormal],ARef=[AI95-00416-01]}
+  @ChgRef{Version=[4],Kind=[Revised],ARef=[AI12-0005-1]}
   @ChgAdded{Version=[2],Text=[This rule defines the accessibility of all
-  named access types, as well as the accessibility level of all anonymous
-  access types other than those for access parameters and access discriminants.
-  Special rules exist for the accessibility level of such anonymous types.
-  Components, stand-alone objects, and function results whose
+  named access types, as well as the accessibility level of
+  @Chg{Version=[4],New=[],Old=[all ]}anonymous
+  access types @Chg{Version=[4],New=[in a @nt{component_definition}],Old=[other
+  than those for access parameters and access discriminants.]} Special rules
+  exist for the accessibility level of @Chg{Version=[4],New=[other],Old=[such]}
+  anonymous types. Components@Chg{Version=[4],New=[],Old=[,
+  stand-alone objects, and function results]} whose
   (anonymous) type is defined by an @nt{access_definition} have
   accessibility levels corresponding to named access types defined at
   the same point.]}
@@ -4897,7 +4903,14 @@
 include the extra information needed to make a call.]}
 @end{Reason}
 
+@ChgRef{Version=[4],Kind=[Added],ARef=[AI12-0070-1]}
+@ChgAdded{Version=[4],Text=[The accessibility level of the anonymous access
+subtype defined by a @nt{return_subtype_indication} that is
+an @nt{access_definition} (see @RefSecNum{Return Statements})
+is that of the result subtype of the enclosing function.]}
+
 @ChgRef{Version=[3],Kind=[Added],ARef=[AI05-0148-1],ARef=[AI05-0240-1]}
+@ChgRef{Version=[4],Kind=[RevisedAdded],ARef=[AI12-0070-1]}@ChgNote{Just to reflect the paragraph number change}
 @ChgAdded{Version=[3],Text=[The accessibility level of the type of a stand-alone
 object of an anonymous access-to-object type is the same as the accessibility
 level of the type of the access value most recently assigned to the
@@ -4905,6 +4918,7 @@
 is never deeper than that of the declaration of the stand-alone object].]}
 
 @ChgRef{Version=[3],Kind=[Added],ARef=[AI05-0142-4],ARef=[AI05-0240-1]}
+@ChgRef{Version=[4],Kind=[RevisedAdded],ARef=[AI12-0070-1]}@ChgNote{Just to reflect the paragraph number change}
 @ChgAdded{Version=[3],Text=[The accessibility level of an explicitly aliased
 (see @RefSecNum{Subprogram Declarations}) formal parameter in a function body is
 determined by the point of call; it is the same level that the return object
@@ -6116,6 +6130,19 @@
   a copy (which is necessary in some instances).]}
 @end{Incompatible2012}
 
+@begin{DiffWord2012}
+  @ChgRef{Version=[4],Kind=[AddedNormal],ARef=[AI12-0067-1]}
+  @ChgAdded{Version=[4],Text=[@b<Correction:> Corrected so that it is clear
+  that explicitly aliased parameters in procedures have the same accessibility
+  as other parameters. Only explicitly aliased parameters in functions are
+  special.]}
+
+  @ChgRef{Version=[4],Kind=[AddedNormal],ARef=[AI12-0070-1]}
+  @ChgAdded{Version=[4],Text=[@b<Correction:> The accessibility of
+  an anonymous access type of an @nt{extended_return_statement} is defined
+  here rather than in @RefSecNum{Return Statements} so that all accessibility
+  rules are here.]}
+@end{DiffWord2012}
 
 
 @RMNewPageVer{Version=[3]}@Comment{For printed version of Ada 2012 RM}

Questions? Ask the ACAA Technical Agent