As reported on the mailing list, repro'd with the 20121212 release.
Reprosteps:
// ==ClosureCompiler==
// @output_file_name default.js
// @compilation_level ADVANCED_OPTIMIZATIONS
// @formatting pretty_print
// ==/ClosureCompiler==
var ImageEditor;
(function (ImageEditor) {
(function (View) {
View.defaultLeftPaneWidth = 200;
var Editor = (function () {
function Editor(a, b) {
return a + b;
}
return Editor;
})();
View.Editor = Editor;
})(ImageEditor.View || (ImageEditor.View = {}));
var View = ImageEditor.View;
})(ImageEditor || (ImageEditor = {}));
window["ImageEditor"]['View']["Editor"] = ImageEditor.View.Editor;
I get this result:
var a, b = a || (a = {});
b.a || (b.a = {});
window.ImageEditor.View.Editor = a.a.b;
But if i remeve line:
View.defaultLeftPaneWidth = 200;
I get correct result:
var a, b = a || (a = {});
(b.a || (b.a = {})).b = function(c, d) {
return c + d
};
window.ImageEditor.View.Editor = a.a.b;
Original issue reported on code.google.com by concavel...@gmail.com on 13 Dec 2012 at 10:10
Original issue reported on code.google.com by
concavel...@gmail.com
on 13 Dec 2012 at 10:10