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

Differences between 1.7 and version 1.8
Log of other versions for file ai12s/ai12-0030-1.txt

--- ai12s/ai12-0030-1.txt	2013/07/16 23:33:37	1.7
+++ ai12s/ai12-0030-1.txt	2013/07/16 23:51:27	1.8
@@ -1,4 +1,4 @@
-!standard 12.5.1(20/3)                               13-07-16    AI12-0030-1/05
+!standard 12.5.1(21/3)                               13-07-16    AI12-0030-1/05
 !standard 13.13.2(49/2)
 !class binding interpretation 12-07-15
 !status Amendment 202x 13-07-16
@@ -65,8 +65,7 @@
 
 !recommendation
 
-Stream attributes act like predefined primitive operations in most contexts,
-so they should act that way in this example as well.
+(See summary.)
 
 !wording
 
@@ -79,9 +78,12 @@
 
 Append to the end of 13.13.2(49/2):
 
-In addition to the places where Legality Rules normally apply (see 12.3), this rule
-applies also in the private part of an instance of a generic unit.
+In addition to the places where Legality Rules normally apply (see 12.3), these
+rules also apply in the private part of an instance of a generic unit.
 
+[Editor's note: We have to use the plural version of this boilerplate text as
+there are two rules in this paragraph, and we want this to apply to both.]
+
 For an untagged nonderived type having a task, protected, or explicitly limited record
 part, the default implementation of each of the Read, Write, Input, and Output attributes
 raises Program_Error and performs no other action.
@@ -105,7 +107,7 @@
 
 However, the wording of the Standard is definitely not clear on this point.
 "Availability of stream attributes" is not a characteristic of a type (at least
-it is not listed in 3.4, which is the definition of a "characteristic". So the
+it is not listed in 3.4, which is the definition of a "characteristic"). So the
 existing rules don't cover this case.
 
 We could try to define "availability" as a "characteristic" (by adding a new
@@ -142,6 +144,26 @@
 part of the generic. Without the boilerplate (and with the rest of the change) this
 raises Program_Error. With the boilerplate, this gets caught at compile time, which
 is preferable.
+
+!corrigendum 13.13.2(49/2)
+
+@drepl
+An @fa<attribute_reference> for one of the stream-oriented attributes is
+illegal unless the attribute is available at the place of the
+@fa<attribute_reference>. Furthermore, an @fa<attribute_reference> for
+@i<T>'Input is illegal if @i<T> is an abstract type.
+@dby
+An @fa<attribute_reference> for one of the stream-oriented attributes is
+illegal unless the attribute is available at the place of the
+@fa<attribute_reference>. Furthermore, an @fa<attribute_reference> for
+@i<T>'Input is illegal if @i<T> is an abstract type.
+In addition to the places where Legality Rules normally apply (see 12.3),
+these rules also apply in the private part of an instance of a generic unit.
+
+For an untagged nonderived type having a task, protected, or explicitly limited record
+part, the default implementation of each of the Read, Write, Input, and Output attributes
+raises Program_Error and performs no other action.
+
 
 !ACATS test
 

Questions? Ask the ACAA Technical Agent