From: stt@inmet.inmet.com
Subject: Re: Updating IN OUT's after exceptions
Date: 1 May 91 22:56:00 GMT [thread overview]
Message-ID: <20600103@inmet> (raw)
In-Reply-To: 33747@mimsy.umd.edu
Re: Updating IN OUT's after exceptions
Query on 5:18 am Apr 30, 1991 by stuartw@tove.cs.umd.edu
> In the enclosed program, I raise an exception inside a subroutine after
> making an assignment to an IN OUT parameter. In the first case, the
> parameter is a scalar, in the second it is not. Everything else is the
> same, except the resulting behavior. Is this permitted by the LRM?
> I know that compilers can pass non-scalar parameters by copy-in/copy-out
> or reference, but should that effect exception handling? Is Ada/9x
> addressing this?
>
> Thanks.
>
> Stuart. (weinstei@kong.gsfc.nasa.gov)
The Good Old Reference Manual, section 6.2:12 says the following:
If the execution of a subprogram is abandoned as a result of an exception,
the final value of an actual parameter [...] can be either its
value before the call [if passed by copy] or a value assigned
to the formal parameter during the execution of the subprogram
[if passed by reference].
In other words, the compiler "does the right thing."
S. Tucker Taft
Intermetrics, Inc.
Cambridge, MA 02138
next prev parent reply other threads:[~1991-05-01 22:56 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
1991-04-30 9:18 Updating IN OUT's after exceptions Stuart M. Weinstein
1991-05-01 22:56 ` stt [this message]
1991-05-02 17:10 ` Doug Smith
1991-05-03 12:51 ` Bill Lee
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox