private void Loop() { AST_LoopNode loopNode = CurrentNode as AST_LoopNode; Debug.Assert(loopNode != null); PushNewScope(loopNode.getScope(), "Loop_memorySpace" + loopCounter++, loopNode.getChild(0)); }
private void evaluateReferencesForLOOP(AST tree) { AST_LoopNode loopBlockNode = tree as AST_LoopNode; m_currentScope = loopBlockNode.getScope(); #if WRITE_DEBUG_INFO Console.WriteLine("\n Trying to resolve body of loop"); #endif evaluateReferencesInAllChildren(tree); m_currentScope = m_currentScope.getEnclosingScope(); // pop scope }
private void Loop() { AST_LoopNode loopNode = CurrentNode as AST_LoopNode; #if DEBUG Debug.Assert(loopNode != null); #endif // Console.WriteLine("At Loop node with scope " + loopNode.getScope().getName()); // Console.WriteLine("Memory spaces: "); // foreach(var mem in loopNode.getScope().memorySpaces) { // Console.WriteLine(mem.getName()); // } PushNewScope(loopNode.getScope(), "Loop_memorySpace_" + loopCounter++, loopNode.getChild(0)); }