This unit contains files that process each Pascal statement: If, While, For, Repeat, Case, With, GoTo, Inline, Asm block, or system procedure.

Processing Statements
Processing statements is more simpler than processing expressions. Consequently, majority of the code is generated by expressions and not by statements themselves.
Processing Statement Blocks
This procedure processes blocks of statements between two tokens. It is used to process begin - end and Repeat - end blocks.
Assembler Statement
This procedure processes Asm - end blocks of assembler instructions. It creates a temporary symbol table for assembler identifiers, indirectly checks for end token and processes assembler instructions.
Assignment Statement and Procedure Call
This procedure processes assignment statements and procedure/function calls.
INLINE Statement
This procedure processes Inline statement  and generates intermediate code for inline records. 
IF Statement
This procedure processes If statement. Both then and else statements are processed recursively.
WHILE Statement
This procedure processes While statement. If condition expression is constant at compile time and evaluates to False no code is generated.
REPEAT Statement
This procedure processes Repeat statement. It calls routine to process statements between tokens Repeat and until.
FOR Statement
This procedure processes For statement. It expects assignable variable and loop limits.
CASE Statement
This procedure processes Case statement. It expects ordinal expression, processes Case constants and constant ranges and generates comparison intermediate code.
<< Start < Prev 1 2 Next > End >>

© 2021 Turbo Pascal | Privacy Policy