comp.lang.ada
 help / color / mirror / Atom feed
From: stt@inmet.inmet.com
Subject: Re: parameter passing
Date: 27 Jun 90 15:32:00 GMT	[thread overview]
Message-ID: <20600053@inmet> (raw)
In-Reply-To: 1569@oravax.UUCP


Re: Assumptions about parameter passing

No, it is not a safe assumption.  In a distributed address
space (such as the 1750A expanded memory model), the compiler
will copy composite parameters which would not be addressible
in the called routine's address space, whereas those
which are addressible may be passed by reference.

Another case is where one formal parameter is constrained, and the other
is unconstrained or simply has a different
constraint (though both are of the same type).  Many compilers
pass "short" composite objects by copy, and longer or unconstrained
ones by reference.

In any case, I am curious why you care.  It would be
useful to have specific examples of where this kind
of assumption about parameter passing
would be useful, since limiting compiler flexibility
can severely interfere with efficiency.
However, it is also the case that variability can
make certain kinds of program proofs more complicated
(though not always! Sometimes it is easier to prove
something using a non-deterministic model than
a deterministic model).

S. Tucker Taft
Intermetrics, Inc.
Cambridge, MA  02138

       reply	other threads:[~1990-06-27 15:32 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1569@oravax.UUCP>
1990-06-27 15:32 ` stt [this message]
1990-06-27 17:15 ` parameter passing Michael Feldman
2000-02-17  0:00 Riyaz Mansoor
2000-02-18  0:00 ` Richard D Riehle
2000-02-19  0:00 ` Ehud Lamm
  -- strict thread matches above, loose matches on Subject: below --
1990-06-29 15:32 David Guaspari
1989-06-21 13:16 Parameter Passing Jon Humphreys
1989-06-21 17:23 ` William Thomas Wolfe,2847,
1986-10-08 18:56 parameter passing Eric Marshall
1986-10-10 16:46 ` Geoff Mendal
1986-10-30 23:08   ` Mats_Ohlin_FOA2
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox