Matti Niemenmaa <> changed:

           What    |Removed                     |Added
             Status|NEW                         |RESOLVED
                 CC|                            |matti.niemenmaa+dbugzi...@i
                   |                            |
         Resolution|                            |INVALID

--- Comment #3 from Matti Niemenmaa <> 
2009-09-12 00:20:04 PDT ---
This is not a bug.

There's no sequence point in "[d+i]=r(a+i);", so the order of
evaluation of[d+i] and r(a+i) is unspecified. r calls both mem.push
and mem.pushn, both of which may lead to reallocations of, possibly
moving the array to a completely different location. Thus the behaviour of the
code depends on whether r(a+i) or is evaluated first.

The "bug" is no doubt due to the getting evaluated first, since doing
the temporary assignment forces it to be the other way around.

Configure issuemail:
------- You are receiving this mail because: -------

Reply via email to