CVS difference for ais/ai-00396.txt
--- ais/ai-00396.txt 2005/01/28 02:10:51 1.2
+++ ais/ai-00396.txt 2005/04/13 05:37:21 1.3
@@ -1,5 +1,7 @@
-!standard 3.9.4(10/2) 05-01-27 AI95-00396/01
+!standard 3.9.4(1) 05-03-13 AI95-00396/02
!class amendment 05-01-25
+!status Amendment 200Y 05-03-13
+!status ARG Approved 9-0-1 05-02-13
!status work item 05-01-25
!status received 05-01-25
!priority High
@@ -12,21 +14,24 @@
!problem
-The "no hidden interfaces" rule of 3.9.4(10/2) is overly zealous. It should be
+The "no hidden interfaces" rule of the tenth paragraph of the subclause
+3.9.4 added by AI-251 is overly zealous. It should be
allowed to hide interfaces when the partial view is untagged. Also, the
justification for this rule in the AARM is obscure.
!proposal
-Allow an untagged partial view to be complete by a tagged type that implements
+Allow an untagged partial view to be completed by a tagged type that implements
some interfaces. Also improve the AARM justification.
!wording
-Replace 3.9.4(10/2) by:
+Replace of the tenth paragraph of the subclause
+3.9.4 added by AI-251 by:
-A full view shall only be a descendant of an interface type if the corresponding
-partial view (if any) is untagged or is also a descendant of the interface type.
+A full view shall be a descendant of an interface type if and only if
+the corresponding partial view (if any) is also a descendant of the interface
+type, or if the partial view is untagged.
AARM Note:
@@ -108,8 +113,17 @@
!example
+(See wording.)
---!corrigendum
+!comment The wording of AI-251 for 3.9.4 is omitted here; as a new section,
+!comment we can't reference it. The changes are placed into the conflict file.
+!comment We just put a dummy paragraph here:
+!corrigendum 3.9.4(1)
+
+@dinsc
+An interface type is an abstract tagged type that provides a restricted
+form of multiple inheritance. A tagged, task, or protected type may have
+one or more interface types as ancestors.
!ACATS test
Questions? Ask the ACAA Technical Agent