diff options
-rw-r--r-- | lib/scope.js | 2 | ||||
-rw-r--r-- | test/compress/imports.js | 16 |
2 files changed, 17 insertions, 1 deletions
diff --git a/lib/scope.js b/lib/scope.js index f638890f..97027274 100644 --- a/lib/scope.js +++ b/lib/scope.js @@ -197,7 +197,7 @@ AST_Toplevel.DEFMETHOD("figure_out_scope", function(options) { } else if (node instanceof AST_SymbolLet) { scope.def_variable(node).exported = exported; } else if (node instanceof AST_SymbolVar) { - defun.def_variable(node, null).exported = exported; + defun.def_variable(node, node instanceof AST_SymbolImport ? undefined : null).exported = exported; entangle(defun, scope); } diff --git a/test/compress/imports.js b/test/compress/imports.js index 03ebf997..f8313b06 100644 --- a/test/compress/imports.js +++ b/test/compress/imports.js @@ -128,3 +128,19 @@ rename_mangle: { import * as r from "moz"; } } + +keep_ref: { + options = { + reduce_vars: true, + toplevel: true, + unused: true, + } + input: { + import foo from "bar"; + foo(); + } + expect: { + import foo from "bar"; + foo(); + } +} |