From: Robert A Duff <bobduff@world.std.com>
Subject: Re: Right of Optimize Eager Evaluation Away
Date: 1999/11/29
Date: 1999-11-29T00:00:00+00:00 [thread overview]
Message-ID: <wccemd9z2k5.fsf@world.std.com> (raw)
In-Reply-To: 38420578.D6692D2E@callnetuk.com
Nick Roberts <nickroberts@callnetuk.com> writes:
> Laurent Guerby wrote:
> > Is the potential raising of an exception the only language barrier
> > here (since as you mention the compiler is free to swap calls
> > defeating a class of side effects)? This seams easy to fix (via a
> > pragma), if one is interested in keeping the functional aspect of the
> > code instead of resorting to statements of course.
I don't understand Laurent's question.
> I didn't receive Laurent's original post (poor UK feed), so - forgive me
> - I must guess at what he was originally suggesting, ...
Sorry, Nick -- you guessed wrong. ;-)
The original question had to do with a function with two formal
parameters. Does 11.6 authorize the compiler to omit the evaluation of
one of the *actual* parameters in a call, if it can prove that the value
of the formal will never be used. The answer is no. We are assuming
the evaluation of the actual parameters produces some externally-visible
side-effect. (Yes, of course the compiler can optimize anything it
likes, if it can prove it doesn't affect the external effect. But
that's not the point here.)
- Bob
next prev parent reply other threads:[~1999-11-29 0:00 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
1999-11-28 0:00 Right of Optimize Eager Evaluation Away Laurent Guerby
1999-11-28 0:00 ` Robert A Duff
1999-11-28 0:00 ` Laurent Guerby
1999-11-29 0:00 ` Nick Roberts
1999-11-29 0:00 ` Robert A Duff [this message]
1999-11-29 0:00 ` Laurent Guerby
1999-11-29 0:00 ` Lutz Donnerhacke
1999-11-29 0:00 ` Robert A Duff
1999-11-30 0:00 ` Laurent Guerby
1999-11-29 0:00 ` Niklas Holsti
1999-11-29 0:00 ` Jean-Pierre Rosen
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox