var scan_lhs = lhs && !side_effects && !is_lhs_read_only(lhs, compressor);
var scan_rhs = foldable(candidate);
if (!scan_lhs && !scan_rhs) continue;
+ var funarg = candidate.name instanceof AST_SymbolFunarg;
+ var may_throw = return_false;
+ if (candidate.may_throw(compressor)) {
+ if (funarg && scope instanceof AST_AsyncFunction) continue;
+ may_throw = in_try ? function(node) {
+ return node.has_side_effects(compressor);
+ } : side_effects_external;
+ }
var read_toplevel = false;
var modify_toplevel = false;
// Locate symbols which may execute code outside of scanning range
var rvalue = get_rvalue(candidate);
if (!side_effects) side_effects = value_has_side_effects();
var replace_all = replace_all_symbols(candidate);
- var may_throw = candidate.may_throw(compressor) ? in_try ? function(node) {
- return node.has_side_effects(compressor);
- } : side_effects_external : return_false;
- var funarg = candidate.name instanceof AST_SymbolFunarg;
var hit = funarg;
var abort = false;
var replaced = 0;