Это происходит между точками последовательности.
Кроме того, оно не определено, когда это происходит.
Представьте себе
x = y = z = 42
; // sequence point A
n = x++ + y++ + z++
; // sequence point B
В след.,точки A x, y и z равны 42;в точке последовательности B все они равны 43. Как ни крути, компилятор может выдать код для обновления всех 3 переменных одновременно.
// pseudo code
n = 126;
[vector increment][x,y,z];
//n = 126;