In elems_[ptr] = data[ptr++]
, it is undefined whether elems_[ptr]
is evaluated first or data[ptr++]
is evaluated first. This is so, because =
does not introduce a sequence point.
Depending on the order, elems_[ptr] = data[ptr++]
yields different results. Hence the warning.