This commit is contained in:
Richard van Velzen 2017-01-13 15:33:37 +00:00 committed by GitHub
commit 1aa187ed4b

View File

@ -189,6 +189,16 @@ AST_Toplevel.DEFMETHOD("figure_out_scope", function(options){
func = node;
descend();
func = prev_func;
if (node instanceof AST_Function && node.name && node.argnames.length) {
var ref = new AST_SymbolRef({
scope: node.argnames[0].scope,
name: node.name.name,
thedef: node.name.thedef
});
ref.reference(true);
}
return true;
}
if (node instanceof AST_LoopControl && node.label) {
@ -255,9 +265,9 @@ AST_Lambda.DEFMETHOD("init_scope_vars", function(){
this.variables.set(symbol.name, def);
});
AST_SymbolRef.DEFMETHOD("reference", function() {
AST_SymbolRef.DEFMETHOD("reference", function(virtual) {
var def = this.definition();
def.references.push(this);
if (!virtual) def.references.push(this);
var s = this.scope;
while (s) {
push_uniq(s.enclosed, def);