diff options
author | Alon Zakai <alonzakai@gmail.com> | 2013-05-30 10:12:51 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2013-05-30 10:12:51 -0700 |
commit | e814b40a7111c61220cdba6a95ab62b43a33bcba (patch) | |
tree | 9e07297a1e796ec6302786eadb8bf596ee6b08d6 /src/jsifier.js | |
parent | 156fe33bfee89b764df0781a84acd635c44bc4da (diff) |
handle phi loops properly
Diffstat (limited to 'src/jsifier.js')
-rw-r--r-- | src/jsifier.js | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/jsifier.js b/src/jsifier.js index bcc179d7..77aff895 100644 --- a/src/jsifier.js +++ b/src/jsifier.js @@ -1032,13 +1032,13 @@ function JSify(data, functionsOnly, givenFunctions) { } for (var i = 0; i < idents.length; i++) { if (keys(deps[idents[i]]).length == 0) { - pre = 'var ' + idents[i] + ' = ' + valueJSes[idents[i]] + ';' + pre; + post = 'var ' + idents[i] + ' = ' + valueJSes[idents[i]] + ';' + post; remove(idents[i]); continue mainLoop; } } // If we got here, we have circular dependencies, and must break at least one. - pre = 'var ' + idents[0] + '$phi = ' + valueJSes[idents[0]] + ';' + pre; + pre += 'var ' + idents[0] + '$phi = ' + valueJSes[idents[0]] + ';'; post += 'var ' + idents[0] + ' = ' + idents[0] + '$phi;'; remove(idents[0]); } |