From 3df7d5d7711b2f74ec1057872b96ec35131d6a8b Mon Sep 17 00:00:00 2001 From: Adrian Thurston Date: Wed, 1 Jan 2014 12:18:16 -0500 Subject: store current context in var ref This eliminates for lookup to happen during walk with context maintained in Compiler. --- src/loadinit.cc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/loadinit.cc') diff --git a/src/loadinit.cc b/src/loadinit.cc index be6ce6db..aed5072d 100644 --- a/src/loadinit.cc +++ b/src/loadinit.cc @@ -285,7 +285,7 @@ void LoadInit::consParseStmt( StmtList *stmtList ) QualItemVect *popQual = new QualItemVect; popQual->append( QualItem( QualItem::Dot, internal, String( "argv" ) ) ); - LangVarRef *popRef = LangVarRef::cons( internal, pd->curLocalFrame->rootScope, popQual, String("pop") ); + LangVarRef *popRef = LangVarRef::cons( internal, 0, pd->curLocalFrame->rootScope, popQual, String("pop") ); LangExpr *pop = LangExpr::cons( LangTerm::cons( InputLoc(), popRef, popArgs ) ); /* Construct a literal string 'r', for second arg to open. */ @@ -297,7 +297,7 @@ void LoadInit::consParseStmt( StmtList *stmtList ) /* Call open. */ QualItemVect *openQual = new QualItemVect; LangVarRef *openRef = LangVarRef::cons( internal, - pd->curLocalFrame->rootScope, openQual, String("open") ); + 0, pd->curLocalFrame->rootScope, openQual, String("open") ); CallArgVect *openArgs = new CallArgVect; openArgs->append( new CallArg(pop) ); openArgs->append( new CallArg(modeExpr) ); @@ -319,7 +319,7 @@ void LoadInit::consParseStmt( StmtList *stmtList ) void LoadInit::consExportTree( StmtList *stmtList ) { QualItemVect *qual = new QualItemVect; - LangVarRef *varRef = LangVarRef::cons( internal, pd->curLocalFrame->rootScope, qual, String("P") ); + LangVarRef *varRef = LangVarRef::cons( internal, 0, pd->curLocalFrame->rootScope, qual, String("P") ); LangExpr *expr = LangExpr::cons( LangTerm::cons( internal, LangTerm::VarRefType, varRef ) ); NamespaceQual *nspaceQual = NamespaceQual::cons( namespaceStack.top() ); @@ -332,7 +332,7 @@ void LoadInit::consExportTree( StmtList *stmtList ) void LoadInit::consExportError( StmtList *stmtList ) { QualItemVect *qual = new QualItemVect; - LangVarRef *varRef = LangVarRef::cons( internal, pd->curLocalFrame->rootScope, qual, String("error") ); + LangVarRef *varRef = LangVarRef::cons( internal, 0, pd->curLocalFrame->rootScope, qual, String("error") ); LangExpr *expr = LangExpr::cons( LangTerm::cons( internal, LangTerm::VarRefType, varRef ) ); NamespaceQual *nspaceQual = NamespaceQual::cons( namespaceStack.top() ); -- cgit v1.2.1