** Symbol table input is integer function output is void function - Parameter: x of type integer foo is integer bar is integer uio is integer of size 12 comp is integer function - Parameter: foo of type integer check is void function - Parameter: cvb of type integer array - Parameter: asd of type integer fun is integer function main is void function ** Symbol table | foo is integer | ghj is integer of size 50 | temp is integer ** Symbol table ** Symbol table | | | foo is integer of size 34 ** Symbol table | | ghj is integer ** Symbol table | cvb is integer | asd is integer ** Symbol table | 33fgdf3qwfd3 is integer | rty is integer of size 34 ** Symbol table ** Symbol table ** Symbol table ** Abstract Syntax Tree Variable declaration: foo of type integer Variable declaration: bar of type integer Array declaration: uio of type integer and lenght Constant 12 Function declaration: comp returns integer | Parameters: | | Parameter: variable foo of type int | Body: | | Array declaration: ghj of type integer and lenght Constant 50 | | Variable declaration: temp of type integer | | Assignment | | | Variable: temp | | | Array: uio | | | Index: | | | | Constant: 6 | | Iteration statement | | | Operator: < | | | | Variable: temp | | | | Variable: foo | | | Iteration statement | | | | Variable: bar | | | | Array declaration: foo of type integer and lenght Constant 34 | | | | Function call: output | | | | | Argument: | | | | | | Array: uio | | | | | | Index: | | | | | | | Variable: bar | | | | Assignment | | | | | Variable: bar | | | | | Operator: - | | | | | | Array: foo | | | | | | Index: | | | | | | | Array: foo | | | | | | | Index: | | | | | | | | Constant: 2 | | | | | | Constant: 1 | | | Assignment | | | | Variable: temp | | | | Operator: + | | | | | Variable: temp | | | | | Variable: foo | | Compound statement | | | Variable declaration: ghj of type integer | | | Return statement | | | | Operator: == | | | | | Variable: foo | | | | | Variable: ghj Function declaration: check returns void | Parameters: | | Parameter: array cvb of type int | | Parameter: variable asd of type int | Body: | | Return statement Function declaration: fun returns integer | Body: | | Variable declaration: 33fgdf3qwfd3 of type integer | | Array declaration: rty of type integer and lenght Constant 34 | | If statement | | | Test expression | | | | Operator: == | | | | | Operator: + | | | | | | Array: uio | | | | | | Index: | | | | | | | Constant: 2 | | | | | | Variable: 33fgdf3qwfd3 | | | | | Function call: input | | | Then part | | | | Function call: output | | | | | Argument: | | | | | | Array: uio | | | | | | Index: | | | | | | | Array: rty | | | | | | | Index: | | | | | | | | Array: uio | | | | | | | | Index: | | | | | | | | | Function call: comp | | | | | | | | | | Argument: | | | | | | | | | | | Array: rty | | | | | | | | | | | Index: | | | | | | | | | | | | Function call: input | | | Else part | | | | Function call: check | | | | | Argument: | | | | | | Variable: rty | | | | | | Operator: - | | | | | | | Operator: + | | | | | | | | Variable: 33fgdf3qwfd3 | | | | | | | | Operator: * | | | | | | | | | Variable: bar | | | | | | | | | Variable: foo | | | | | | | Operator: <= | | | | | | | | Function call: input | | | | | | | | Array: rty | | | | | | | | Index: | | | | | | | | | Constant: 8 | | | | If statement | | | | | Test expression | | | | | | Operator: >= | | | | | | | Array: rty | | | | | | | Index: | | | | | | | | Constant: 8 | | | | | | | Operator: < | | | | | | | | Constant: 5 | | | | | | | | Operator: > | | | | | | | | | Constant: 34 | | | | | | | | | Variable: 33fgdf3qwfd3 | | | | | Then part | | | | | | Return statement | | | | | | | Constant: 23 | | | | | Else part | | | | | | Function call: fun | | Return statement | | | Function call: input Function declaration: main returns void | Body: | | Function call: fun | | Function call: output | | | Argument: | | | | Operator: + | | | | | Variable: foo | | | | | Variable: bar