>>229
>i + i++;
インクリメントを他の式と、組み合わせられない。
必ず単独で使うこと。MISRA-C 2004、ルール12.13

ルール12.2、1つの副作用完了点内での、部分式の評価順序は未規定
i = 1; の時、
i + i++; は、1 + 2, 2 + 2 のどちらかわからない

次の文が実行される時には、インクリメントされているけど、
そのタイミングは同じ文内では、はっきり決まっていない

func(i, i++);
これも同様に引数が、(1, 2), (2, 2)のどちらかわからない