From 4e774b726475aff9a6a1d2111afec21158979566 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hu=C3=A1ng=20J=C3=B9nli=C3=A0ng?= Date: Tue, 26 Nov 2019 02:51:11 -0500 Subject: [PATCH] fix: rewriteBindingInitVisitor should skip on scopable node (#10764) --- .../src/rewrite-live-references.js | 5 +---- .../test/fixtures/regression/9346/input.mjs | 4 ++++ .../test/fixtures/regression/9346/options.json | 5 +++++ .../test/fixtures/regression/9346/output.js | 14 ++++++++++++++ 4 files changed, 24 insertions(+), 4 deletions(-) create mode 100644 packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/input.mjs create mode 100644 packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/options.json create mode 100644 packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/output.js diff --git a/packages/babel-helper-module-transforms/src/rewrite-live-references.js b/packages/babel-helper-module-transforms/src/rewrite-live-references.js index 8bd93f509c..f665926dec 100644 --- a/packages/babel-helper-module-transforms/src/rewrite-live-references.js +++ b/packages/babel-helper-module-transforms/src/rewrite-live-references.js @@ -80,10 +80,7 @@ export default function rewriteLiveReferences( * A visitor to inject export update statements during binding initialization. */ const rewriteBindingInitVisitor = { - ClassProperty(path) { - path.skip(); - }, - Function(path) { + Scope(path) { path.skip(); }, ClassDeclaration(path) { diff --git a/packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/input.mjs b/packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/input.mjs new file mode 100644 index 0000000000..a662778eac --- /dev/null +++ b/packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/input.mjs @@ -0,0 +1,4 @@ +export function bug() {} +{ + let bug = 2; +} diff --git a/packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/options.json b/packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/options.json new file mode 100644 index 0000000000..9e5a4ccdb0 --- /dev/null +++ b/packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/options.json @@ -0,0 +1,5 @@ +{ + "plugins": [ + "transform-modules-amd" + ] +} diff --git a/packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/output.js b/packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/output.js new file mode 100644 index 0000000000..f76724189f --- /dev/null +++ b/packages/babel-plugin-transform-modules-amd/test/fixtures/regression/9346/output.js @@ -0,0 +1,14 @@ +define(["exports"], function (_exports) { + "use strict"; + + Object.defineProperty(_exports, "__esModule", { + value: true + }); + _exports.bug = bug; + + function bug() {} + + { + let bug = 2; + } +});