コンパイラがSSA形式を使用してコードを表すとき、ローカル変数への更新は新しい変数になります。しかし、変数が囲みスコープ内にある場合、これは必ずしも機能しません。 (説明のためにJavaScriptシンタックスを使用すると、多言語で状況が発生する可能性があります)。 function f() {
var x = 1;
function g() {
x++;
これは私がこれまでに思い付くことができるものである:関連 GCC: SSA for Trees Tree SSA – A New Optimization Framework for GCC Tree SSA A New Optimization Infrastructure for GCC Design and Implementation of Tree SSA その他: An Impleme