statement expressions and extended asm bug?

Joseph S. Myers jsm@polyomino.org.uk
Tue Mar 16 13:05:00 GMT 2004


On Tue, 16 Mar 2004, Nathan Sidwell wrote:

> Jamie Lokier wrote:
> 
> > More to the point, calling the foo(arg) above from different function
> > arguments isn't a sequence-point violation, unlike calling the
> > statement-expressions.
> > 
> >     function(foo(arg1), foo(arg2));
> > 
> > could evaluate the two calls to foo() in either order, but it must
> > finish one completely before the other.
> I thought that was true in C++ but not C. Perhaps C99 tightened it
> up, or my memory is bad, or C89 never actually specified, given
> that it didn't have 'inline', so overlapping was not feasible.

That function calls do not overlap is stated in the response to DR#087.  
I.e., you're meant to deduce this from the text of the standard.  This is
supposed to be one of the responses that also applies to C99.

-- 
Joseph S. Myers
jsm@polyomino.org.uk



More information about the Gcc mailing list