On 30 January 2015 at 16:58, James Dennett wrote:
> It's hardly just a loophole: C++ doesn't specify the order of evaluation,
> so the code is wrong (i.e., non-portable, as you've found).
>
> Arguably this is a design problem with IOStreams, given how
> tempting it can be to write code that assumes left-to-right evaluation,
> but it's not a compiler bug.

Okay, but what is the reason for changing the "expected"
(left-to-right) order of evaluation?  Is there an optimisation
benefit?

If not, why change the order to something unexpected?

Reply via email to