CVS difference for ai12s/ai12-0041-1.txt
--- ai12s/ai12-0041-1.txt 2014/11/18 06:52:29 1.3
+++ ai12s/ai12-0041-1.txt 2014/11/19 20:58:07 1.4
@@ -1,4 +1,4 @@
-!standard 7.3.2(1/3) 14-11-17 AI12-0041-1/02
+!standard 7.3.2(1/3) 14-11-18 AI12-0041-1/03
!standard 7.3.2(3/3)
!class binding interpretation 14-10-19
!status Corrigendum 2015 14-11-17
@@ -49,7 +49,7 @@
Type_Invariant'Class
This aspect shall be specified by an expression, called an invariant expression.
Type_Invariant'Class may be specified on a private_type_declaration{,}[ or] a
-private_extension_declaration{, or an interface_type_declaration}.
+private_extension_declaration{, or a full_type_declaration for an interface type}.
!discussion
@@ -106,7 +106,7 @@
This aspect shall be specified by an @fa<expression>, called an
@i<invariant expression>. Type_Invariant'Class may be specified on a
@fa<private_type_declaration>, a @fa<private_extension_declaration>, or
-an @fa<interface_type_declaration>.>
+a @fa<full_type_declaration> for an interface type.>
!ACATS test
@@ -218,7 +218,7 @@
****************************************************************
-[Editor's note, November 29, 2012
+Editor's note, November 29, 2012
I put this proposal into the form of an Amendment AI, using the basic
outline of the original proposal.
@@ -249,5 +249,23 @@
aspect Type_Interface'Class is allowed. (This surprises the heck out of
me.) That's small enough that we could consider making this a Binding
Interpretation.
+
+****************************************************************
+
+Editor's note, November 18, 2014
+
+The wording was:
+
+Type_Invariant'Class
+This aspect shall be specified by an expression, called an invariant expression.
+Type_Invariant'Class may be specified on a private_type_declaration{,}[ or] a
+private_extension_declaration{, or an interface_type_declaration}.
+
+Unfortunately, there is no such thing as an "interface_type_declaration".
+We have to use a longer-winded approach, either
+"full_type_declaration for an interface type" or
+"full_type_declaration that contains an interface_type_definition".
+
+I used the former.
****************************************************************
Questions? Ask the ACAA Technical Agent