skipped.unshift(tail);
continue;
}
+ var orig = [], refs = [];
if (id in declarations) declarations[id].forEach(function(sym) {
sym.thedef = def;
sym.name = def.name;
- def.orig.push(sym);
+ orig.push(sym);
});
references[id].forEach(function(sym) {
sym.thedef = def;
sym.name = def.name;
if (sym instanceof AST_SymbolRef) {
- def.references.push(sym);
+ refs.push(sym);
} else {
- def.orig.push(sym);
+ orig.push(sym);
}
});
+ def.orig = orig.concat(def.orig);
+ def.references = refs.concat(def.references);
def.fixed = tail.definition.fixed && def.fixed;
merged[id] = def;
break;
}
expect_stdout: "2"
}
+
+issue_4112: {
+ options = {
+ functions: true,
+ merge_vars: true,
+ reduce_vars: true,
+ unused: true,
+ }
+ input: {
+ console.log(typeof function() {
+ try {
+ throw 42;
+ } catch (e) {
+ var o = e;
+ for (e in o);
+ var a = function() {};
+ console.log;
+ return a;
+ }
+ }());
+ }
+ expect: {
+ console.log(typeof function() {
+ try {
+ throw 42;
+ } catch (e) {
+ var a = e;
+ for (e in a);
+ a = function() {};
+ console.log;
+ return a;
+ }
+ }());
+ }
+ expect_stdout: "function"
+}