From eb48a035e7880e73e7fe4f23727775cff365ffbc Mon Sep 17 00:00:00 2001 From: "Alex Lam S.L" Date: Wed, 29 Mar 2017 01:00:21 +0800 Subject: fix corner case in `unused` (#1718) When fixing catch-related issue in #1715, it tries to optimise for duplicate definitions but did not take anonymous functions into account. Remove such optimisation for now and we can cover this as a more general rule later. --- lib/compress.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/compress.js b/lib/compress.js index 64c654dd..3c0fc452 100644 --- a/lib/compress.js +++ b/lib/compress.js @@ -1896,8 +1896,7 @@ merge(Compressor.prototype, { if (def.value) def.value = def.value.transform(tt); var sym = def.name.definition(); if (sym.id in in_use_ids) return true; - if (sym.orig[0] instanceof AST_SymbolCatch - && sym.scope.parent_scope.find_variable(def.name).orig[0] === def.name) { + if (sym.orig[0] instanceof AST_SymbolCatch) { def.value = def.value && def.value.drop_side_effect_free(compressor); return true; } -- cgit v1.2.3