|
> i=i++;
この式文を評価する前に副作用完了点があり、
この式文のセミコロンのところに副作用完了点がありますが、
その 2 つの副作用完了点の間で、i が 2回変更されているので、
i の値が処理系によって異なってしまうということですね。
> では、グローバル変数gを変更する関数fooがあるとき、
> g=foo();
> はどうでしょうか?
> この式文のどこに副作用完了点があるかという問題になるかと思うのですが。
この式文を評価する前に副作用完了点があり、
関数 foo() の中にも副作用完了点がたくさんあり、
この式文のセミコロンのところに副作用完了点があります。
実行順序に従って、隣り合う 2 つの副作用完了点の間で、
g が 2回変更されているのでなければ、何の問題もありません。
|