diff --git a/src/babel/transformation/modules/_default.js b/src/babel/transformation/modules/_default.js index c2fc5e2f83..0b29512d9e 100644 --- a/src/babel/transformation/modules/_default.js +++ b/src/babel/transformation/modules/_default.js @@ -12,10 +12,10 @@ var remapVisitor = { } }, - Identifier(node, parent, scope, formatter) { + ReferencedIdentifier(node, parent, scope, formatter) { var remap = formatter.internalRemap[node.name]; - if (this.isReferencedIdentifier() && remap && node !== remap) { + if (remap && node !== remap) { if (!scope.hasBinding(node.name) || scope.bindingIdentifierEquals(node.name, formatter.localImports[node.name])) { return remap; } diff --git a/src/babel/transformation/modules/system.js b/src/babel/transformation/modules/system.js index fe8776a421..952af6a20d 100644 --- a/src/babel/transformation/modules/system.js +++ b/src/babel/transformation/modules/system.js @@ -1,5 +1,6 @@ import DefaultFormatter from "./_default"; import AMDFormatter from "./amd"; +import object from "../../helpers/object"; import * as util from "../../util"; import last from "lodash/array/last"; import each from "lodash/collection/each"; @@ -143,7 +144,7 @@ export default class SystemFormatter extends AMDFormatter { ])); } - this.internalRemap = {}; + this.internalRemap = object(); this._addImportSource(last(nodes), node); } diff --git a/test/core/fixtures/transformation/misc/regression-1489/actual.js b/test/core/fixtures/transformation/misc/regression-1489/actual.js new file mode 100644 index 0000000000..9fa4842a8e --- /dev/null +++ b/test/core/fixtures/transformation/misc/regression-1489/actual.js @@ -0,0 +1,2 @@ +import toString from "foo"; +toString; diff --git a/test/core/fixtures/transformation/misc/regression-1489/expected.js b/test/core/fixtures/transformation/misc/regression-1489/expected.js new file mode 100644 index 0000000000..c9b9b0a5b0 --- /dev/null +++ b/test/core/fixtures/transformation/misc/regression-1489/expected.js @@ -0,0 +1,13 @@ +System.register(["foo"], function (_export) { + "use strict"; + + var toString; + return { + setters: [function (_foo) { + toString = _foo["default"]; + }], + execute: function () { + toString; + } + }; +}); diff --git a/test/core/fixtures/transformation/misc/regression-1489/options.json b/test/core/fixtures/transformation/misc/regression-1489/options.json new file mode 100644 index 0000000000..ee42d8e1c8 --- /dev/null +++ b/test/core/fixtures/transformation/misc/regression-1489/options.json @@ -0,0 +1,3 @@ +{ + "modules": "system" +}