CVS difference for ais/ai-00317.txt

Differences between 1.10 and version 1.11
Log of other versions for file ais/ai-00317.txt

--- ais/ai-00317.txt	2004/06/10 05:33:49	1.10
+++ ais/ai-00317.txt	2004/07/27 23:00:57	1.11
@@ -1,7 +1,9 @@
-!standard  12.07 (03)                                  04-06-10  AI95-00317/07
+!standard  12.07 (03)                                  04-06-17  AI95-00317/08
 !standard  12.07 (05)
 !standard  12.07 (10)
 !class amendment
+!status Amendment 200Y 04-06-29
+!status ARG Approved 11-0-0  04-06-17
 !status work item 04-06-07
 !status Amendment 200Y 03-10-23
 !status WG9 Approved 03-12-12
@@ -10,7 +12,7 @@
 !status received 02-10-06
 !priority Medium
 !difficulty Easy
-!subject Partial Parameter Lists for Formal Packages
+!subject Partial parameter lists for formal packages
 
 !summary
 
@@ -112,11 +114,11 @@
   of the primitive subprograms of the formal type are also included in
   the visible part of the formal package.
 
-  For the purposes of matching, if the actual instance is itself a
-  formal package, then its actual parameters are those specified
-  explicitly or implicitly in the formal_package_actual_part, plus, for
+  For the purposes of matching, if the actual instance A is itself a
+  formal package, then the actual parameters of A are those specified
+  explicitly or implicitly in the formal_package_actual_part for A, plus, for
   those not specified, the copies of the formal parameters of the
-  template included in the visible part of the actual instance.
+  template included in the visible part of A.
 
 !discussion
 
@@ -145,19 +147,15 @@
 So FP.F2 is OK, and FP.F1 is illegal. Thus the 12.7(10) wording has been
 adjusted so as to include copies of primitive operations.
 
+This AI also answers a related question. If a generic formal package A
+whose actual part contains <> is passed as an actual to another generic
+formal package B with at least some actuals specified, then the rules given
+here require the actuals of A to match any specified actuals of B.
+But what are the actuals of A which are given by "<>" in the definition of A?
+Clearly, they should be the entities denoted by names of the form A.x, where x
+is a generic formal parameter of A. These are the "copies of the
+formal parameters of the template included in the visible part of A."
 
-This AI also answers a related question. If a generic formal package B
-whose actual part is (<>) is passed as an actual to another generic formal
-package A without (<>), then 12.7(5-8) requires the actuals of B to match the
-actuals of A. But what are the actuals of B? Clearly, they should be the
-entities denoted by names of the form B.x, where x is a generic formal
-parameter of B.
-
-12.7(5-8) require the actual parameters of the actual package to match
-the actual parameters of the formal package. But if the actual package
-has (<>), then its actual parameters are denoted by the formal
-parameters.
-
 Consider the following illegal example:
 
    generic
@@ -352,11 +350,11 @@
 of the primitive subprograms of the formal type are also included in
 the visible part of the formal package.
 
-For the purposes of matching, if the actual instance is itself a
-formal package, then its actual parameters are those specified
-explicitly or implicitly in the @fa<formal_package_actual_part>, plus, for
+For the purposes of matching, if the actual instance A is itself a
+formal package, then the actual parameters of A are those specified
+explicitly or implicitly in the @fa<formal_package_actual_part> for A, plus, for
 those not specified, the copies of the formal parameters of the
-template included in the visible part of the actual instance.
+template included in the visible part of A.
 
 !ACATS test
 

Questions? Ask the ACAA Technical Agent