Пример #1
0
        static void Body(StackFrame frame)
        {
            Label DSPLabel = new Label(known);
            int   sizeMark = frame.size;

            CodeGen.OpenStackFrame(0);
            Expect(lbrace_Sym);
            while (StartOf(3))
            {
                Statement(frame);
            }
            ExpectWeak(rbrace_Sym, 4);
            CodeGen.FixDSP(DSPLabel.Address(), frame.size - sizeMark);
            CodeGen.LeaveVoidFunction();
        }
Пример #2
0
 static void ReturnStatement()
 {
     Expect(return_Sym);
     CodeGen.LeaveVoidFunction();
     ExpectWeak(semicolon_Sym, 6);
 }