http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57813
--- Comment #8 from Daniel Oertwig <daniel.oertwig at gmail dot com> --- Ok, so: Is this behaviour "part" of the language or a bug in gcc? I could not find any documentation specifying that a sequence point should be inbetween the (side-effect) evaluation of the function call and the (value) evaluation of the assignment.