Reading an interesting article on ACCU's overload #115: "Demons May Fly Out Of Your Nose" I found the author saying:
between sequence points you are not allowed to make any assumptions about the state of involved variables. This also means that in C, unlike most other languages, the following expression leads to undefined behaviour
v[i] = i++;
because the assignment operator does not represent a sequence point in C
Can someone explain what's the detailed reasoning that implies UB here? I thought it would be a matter of having more than one write to the same variable between two sequence point, which I cannot see here except for the possibility of v[i] aliasing i...