CVS difference for ai05s/ai05-0063-1.txt

Differences between 1.1 and version 1.2
Log of other versions for file ai05s/ai05-0063-1.txt

--- ai05s/ai05-0063-1.txt	2007/09/07 04:14:02	1.1
+++ ai05s/ai05-0063-1.txt	2008/02/05 03:27:43	1.2
@@ -1,4 +1,4 @@
-!standard 3.7(10/2)                                    07-09-06    AI05-0063-1/01
+!standard 3.7(10/2)                                    08-02-01    AI05-0063-1/02
 !class binding interpretation 07-09-06
 !status work item 07-09-06
 !status received 07-09-06
@@ -9,7 +9,9 @@
-** TBD **
+Formal non-tagged limited types are not inherently limited.
+A type derived from such a formal type in a generic unit cannot have access
+discriminants with defaults.
@@ -39,12 +41,18 @@
-(See Summary.)
+The declaration of a type derived from an untagged limited formal type
+cannot have defaulted discriminants.
-** TBD **
+[No wording is needed here; AI05-0059-1 includes the needed wording change to
+make 3.7(10/2) depend on the definition of "inherently limited".]
+AARM note after definition of "inherently limited" after 7.5 (6):
+A limited formal type is not inherently limited if it is not explicitly tagged.
 The current rule works well for generic bodies, where it easily provides
@@ -61,6 +69,17 @@
 OTOH, it seems like a bit of wart. It is unusual that we assume-the-worst everywhere
 in a generic and provide no way to do this rather than allowing movement to the
+If default discriminants are needed, it is always possible to make the formal
+explicitly tagged, or to use a derived type whose ancestor is inherently limited
+so this is a very mild restriction that is simpler to describe that the
+"legal in spec/assume the worst in body" formulation..
+[Editor's note: If the formal is explicitly tagged, then defaults are not allowed
+by 3.7(9.1/2) -- tagged types can never have discriminant defaults. This is only
+talking about untagged types.]
 --!corrigendum 7.4(6/2)

Questions? Ask the ACAA Technical Agent