CVS difference for ais/ai-00191.txt

Differences between 1.1 and version 1.2
Log of other versions for file ais/ai-00191.txt

--- ais/ai-00191.txt	1998/09/30 00:17:34	1.1
+++ ais/ai-00191.txt	2000/06/21 23:39:10	1.2
@@ -3,18 +3,36 @@
 !status received 97-08-19
 !priority Low
 !difficulty Easy
-!subject An OBJECTive View
+!subject Are formal parameters passed by reference objects or views?
+
+!summary
+
+
+!question
+
+Are formal parameters passed by reference objects or views?
+
+3.3(2 & 4) state:
 
-!summary 97-08-19
+   All of the following are objects:
+     a formal parameter of a subprogram, entry, or generic subprogram;
+
+but 6.2(2) & 6.4.1(10) contradict this in stating:
 
+   When a parameter is passed by reference, the formal parameter denotes
+   (a view of) the object denoted by the actual parameter; ...
 
-!question 97-08-19
+   For a formal parameter (of any mode) that is passed by reference (see 6.2),
+   a view conversion of the actual parameter to the nominal subtype of the
+   formal parameter is evaluated, and the formal parameter denotes that
+   conversion.
 
+Which is correct?
 
-!response 97-08-19
+!response
 
 
-!appendix 97-08-19
+!appendix
 
 !section 3.3(4)
 !subject An OBJECTive View
@@ -26,7 +44,7 @@
 
 RM95-3.3(2 & 4) state:
 
-   All of the follinw are objects:
+   All of the following are objects:
      a formal parameter of a subprogram, entry, or generic subprogram;
 
 but RM95-6.2(2) & 6.4.1(10) contradict this in stating:
@@ -39,16 +57,16 @@
    formal parameter is evaluated, and the formal parameter denotes that
    conversion.
 
------------------------------------------------------------------------------ 
+-----------------------------------------------------------------------------
 Appendix
 
 >>> From lehman@ida.org Mon Jul 10 23:17:36 1995
- 
+
    In an aside on this FRN, I asked Bob how the overriding body with the
 one abstract (and one not) parameter could be called, given 3.9.3(1):
- 
+
 | > B> The overriding body, however, could be called ...
-| > 
+| >
 |D> What happens then, when in elaboration an attempt to create an object
 |D> of an abstract type (formal parameter) is made?  --Program_Error?
 |
@@ -64,26 +82,26 @@
 |
 |Note that formal parameters of a tagged type are not objects in their
 |own right; they are just views.  6.4.1(10).
- 
+
    Since 3.3(4) gives a somewhat different view, one might object. [sorry]
 Should this have an AI-ish note of explanation--to qualify 3.3(4) to mean
 "... formal parameter that is passed by copy ..."?
- 
+
 ---Dan
 ------- *
- 
------------------------------------------------------------------------------ 
+
+-----------------------------------------------------------------------------
 >>> From bobduff@world.std.com Tue Jul 11 15:08:14 1995
- 
+
 >    Since 3.3(4) gives a somewhat different view, one might object. [sorry]
- 
+
 :-)
- 
+
 > Should this have an AI-ish note of explanation--to qualify 3.3(4) to mean
 > "... formal parameter that is passed by copy ..."?
- 
+
 Yeah, I guess so.
- 
+
 - Bob
 
 ==============================================================================

Questions? Ask the ACAA Technical Agent