@@ -543,11 +543,8 @@ AST_Toplevel.DEFMETHOD("expand_names", function(options) {
|
|||||||
var redef = def.redefined();
|
var redef = def.redefined();
|
||||||
var name = redef ? redef.rename || redef.name : next_name();
|
var name = redef ? redef.rename || redef.name : next_name();
|
||||||
def.rename = name;
|
def.rename = name;
|
||||||
def.orig.forEach(function(sym) {
|
def.orig.concat(def.references).forEach(function(sym) {
|
||||||
sym.name = name;
|
if (sym.definition() === def) sym.name = name;
|
||||||
});
|
|
||||||
def.references.forEach(function(sym) {
|
|
||||||
sym.name = name;
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -2223,13 +2223,13 @@ issue_3523_rename_ie8: {
|
|||||||
expect: {
|
expect: {
|
||||||
var a = 0, b, c = "FAIL";
|
var a = 0, b, c = "FAIL";
|
||||||
(function() {
|
(function() {
|
||||||
var c, n, t, o, a, r, f, i, u, e, h, l, v, y;
|
var c, n, t, o, a, r, e, f, i, u, h, l, v, y;
|
||||||
})();
|
})();
|
||||||
try {
|
try {
|
||||||
throw 0;
|
throw 0;
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
(function() {
|
(function() {
|
||||||
(function n() {
|
(function e() {
|
||||||
c = "PASS";
|
c = "PASS";
|
||||||
})();
|
})();
|
||||||
})();
|
})();
|
||||||
@@ -2522,3 +2522,40 @@ issue_3918: {
|
|||||||
}
|
}
|
||||||
expect_stdout: "PASS"
|
expect_stdout: "PASS"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
issue_3999: {
|
||||||
|
rename = true
|
||||||
|
mangle = {
|
||||||
|
ie8: true,
|
||||||
|
}
|
||||||
|
input: {
|
||||||
|
(function() {
|
||||||
|
(function f() {
|
||||||
|
for (var i = 0; i < 2; i++)
|
||||||
|
try {
|
||||||
|
f[0];
|
||||||
|
} catch (f) {
|
||||||
|
var f = 0;
|
||||||
|
console.log(i);
|
||||||
|
}
|
||||||
|
})();
|
||||||
|
})(typeof f);
|
||||||
|
}
|
||||||
|
expect: {
|
||||||
|
(function() {
|
||||||
|
(function f() {
|
||||||
|
for (var c = 0; c < 2; c++)
|
||||||
|
try {
|
||||||
|
f[0];
|
||||||
|
} catch (f) {
|
||||||
|
var f = 0;
|
||||||
|
console.log(c);
|
||||||
|
}
|
||||||
|
})();
|
||||||
|
})(typeof f);
|
||||||
|
}
|
||||||
|
expect_stdout: [
|
||||||
|
"0",
|
||||||
|
"1",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user