On Tue, Nov 28, 2006 at 02:48:15PM +0000, Jan Beulich wrote: > I disagree - the standard says there's a sequence point at a function > call after evaluating all function arguments. To me this means that any
That's true, that sequence point makes sure e.g. all side effects such as pre-{dec,inc}rement on the arguments happen before the call. But as I said, no sequence point demands any particular ordering of evaluation of the LHS and RHS of +=. > (parts of an) expression the function call is contained in must be > evaluated after the function call. Otherwise it would be illegal to e.g. > modify a variable in both operands of && or ||. That's different, there is a sequence point at the end of the first operand of &&, ||, ?: and , operators (second bullet in ISO C99 Annex C). Jakub - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/