diff options
author | Mihai Bazon <mihai@bazon.net> | 2012-09-05 11:31:02 +0300 |
---|---|---|
committer | Mihai Bazon <mihai@bazon.net> | 2012-09-05 11:39:43 +0300 |
commit | 8633b0073f016fddd655ae5e1f1726287a24828d (patch) | |
tree | 83f03aac1f74a30555e44edfa2a75eb5ca372e6f /lib/scope.js | |
parent | 1b5183dd5ee7d2b147f5862c9abf8f45f50fc82f (diff) | |
download | tracifyjs-8633b0073f016fddd655ae5e1f1726287a24828d.tar.gz tracifyjs-8633b0073f016fddd655ae5e1f1726287a24828d.zip |
cleaned up usage of AST_BlockStatement
The following nodes were instances of AST_BlockStatement: AST_Scope,
AST_SwitchBlock, AST_SwitchBranch. Also, AST_Try, AST_Catch, AST_Finally
were having a body instanceof AST_BlockStatement.
Overloading the meaning of AST_BlockStatement this way turned out to be a
mess; we now have an AST_Block class that is the base class for things
having a block of statements (might or might not be bracketed). The
`this.body` of AST_Scope, AST_Try, AST_Catch, AST_Finally is now an array of
statements (as they inherit from AST_Block).
Avoiding calling superclass's _walk function in walkers (turns out we walked
a node multiple times).
Diffstat (limited to 'lib/scope.js')
-rw-r--r-- | lib/scope.js | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/lib/scope.js b/lib/scope.js index 0f9969d2..0518a49a 100644 --- a/lib/scope.js +++ b/lib/scope.js @@ -228,9 +228,7 @@ AST_Toplevel.DEFMETHOD("scope_warnings", function(options){ } if (options.nested_defuns && node instanceof AST_Defun - && !(tw.parent() instanceof AST_Scope - || (tw.parent() instanceof AST_BlockStatement - && tw.parent(1) instanceof AST_Scope))) { + && !(tw.parent() instanceof AST_Scope)) { AST_Node.warn("Function {name} declared in nested statement [{line},{col}]", { name: node.name.name, line: node.start.line, |