Andreas Schwab wrote:
Matthew Woehlke <[EMAIL PROTECTED]> writes:
That said, I've seen even stranger things, too. For example:
foo->bar = make_a_bar();
foo->bar->none = value;
being rendered as:
call make_a_bar
foo->bar->none = value
foo->bar = <result of make_a_bar()>
You are not describing a C compiler.
Um, I'm describing what gcc did? I gave C code first (names changed, but
almost exactly what I was doing), then described the assembly that was
emitted. The resulting assembly called the function that is supposed to
provide the value of 'foo->bar', and then dereferenced members of
foo->bar /before/ assigning the return value to foo->bar. Trust me, I
looked at the assembly, and that's what it was doing.
--
Matthew
Hi! I'm a .signature virus! Copy me into your ~/.signature, please!