SIMPLE: A language-independent tree IR

Dale Johannesen dalej@apple.com
Thu Jan 3 10:38:00 GMT 2002


On Thursday, January 3, 2002, at 10:28 AM, Paul Koning wrote:

>>>>>> "Geoff" == Geoff Keating <geoffk@geoffk.org> writes:
>  Geoff> You're probably thinking of
>
>  Geoff> T = (f() + g()) compared to T = (f(), g())
>
>  Geoff> in the first one, the compiler is (probably) permitted to call
>  Geoff> g before f, but not in the second.
>
> The comma operator rule is pretty strange, given that the third
> example:
>
> 	T = foo (f(), g(x))
> (i.e., comma a actual argument separator) DOES allow g to be called
> before f...

And what of this case:

    T = foo (f(), (g(x), h(y)) )

Is the call ordering g, f, h legal?
Take a look at the example in 3.3.2.2 (c89) before you answer...



More information about the Gcc mailing list