Program | program | IDENTIFIER [Useless] | ; | Decls | | var | | DeclList | | | Decl [integer] | | | | IDENTIFIER [I] | | | | IdList [integer] | | | | | : | | | | | Type [integer] | | | | | | integer | | | | | ; | | | DeclList' | CompoundStmt | | begin | | StmtList | | | Stmt | | | | Variable [I] | | | | | IDENTIFIER [I] | | | | := | | | | E [integer] | | | | | A [integer] | | | | | | T [integer] | | | | | | | F [integer] | | | | | | | | LITERAL [0] | | | | | | | T' [integer] | | | | | | A' [integer] | | | | | E' [integer] | | | StmtList' | | | | ; | | | | Stmt | | | | | while | | | | | E [boolean] | | | | | | A [integer] | | | | | | | T [integer] | | | | | | | | F [integer] | | | | | | | | | IDENTIFIER [I] | | | | | | | | T' [integer] | | | | | | | A' [integer] | | | | | | E' [boolean] | | | | | | | RELOP [<] | | | | | | | A [integer] | | | | | | | | T [integer] | | | | | | | | | F [integer] | | | | | | | | | | LITERAL [20] | | | | | | | | | T' [integer] | | | | | | | | A' [integer] | | | | | do | | | | | Stmt | | | | | | Variable [I] | | | | | | | IDENTIFIER [I] | | | | | | := | | | | | | E [integer] | | | | | | | A [integer] | | | | | | | | T [integer] | | | | | | | | | F [integer] | | | | | | | | | | IDENTIFIER [I] | | | | | | | | | T' [integer] | | | | | | | | A' [integer] | | | | | | | | | ADDOP [+] | | | | | | | | | T [integer] | | | | | | | | | | F [integer] | | | | | | | | | | | LITERAL [1] | | | | | | | | | | T' [integer] | | | | | | | | | A' [integer] | | | | | | | E' [integer] | | | | StmtList' | | end | .