From 45b0d63d7272e0a51c271acaeb5f7c6403cbb778 Mon Sep 17 00:00:00 2001 From: Sebastian McKenzie Date: Thu, 4 Jun 2015 22:07:19 +0100 Subject: [PATCH] copy parent class binding to class in the collection visitor --- src/babel/traversal/scope/index.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/babel/traversal/scope/index.js b/src/babel/traversal/scope/index.js index 818a1469e1..c322f4e182 100644 --- a/src/babel/traversal/scope/index.js +++ b/src/babel/traversal/scope/index.js @@ -83,6 +83,11 @@ var collectorVisitor = { scope.getBlockParent().registerDeclaration(this); }, + ClassDeclaration(node, parent, scope) { + var name = node.id.name; + scope.bindings[name] = scope.getBinding(name); + }, + Block(node, parent, scope) { var paths = this.get("body"); for (var path of (paths: Array)) { @@ -632,11 +637,6 @@ export default class Scope { // Class - if (path.isClassDeclaration()) { - var name = path.node.id.name; - this.bindings[name] = this.parent.bindings[name]; - } - if (path.isClassExpression() && path.has("id")) { this.registerBinding("var", path); }