File tree Expand file tree Collapse file tree 3 files changed +7
-4
lines changed
PascalInterpreter/PascalInterpreter/Parser Expand file tree Collapse file tree 3 files changed +7
-4
lines changed Original file line number Diff line number Diff line change @@ -267,7 +267,7 @@ public class Parser {
267267 /**
268268 Rule:
269269
270- procedure_call : id( (factor (factor,)* )* );
270+ procedure_call : id( (factor (factor,)* )* )
271271 */
272272 private func procedureCall( ) -> ProcedureCall {
273273 guard case let . id( name) = currentToken else {
Original file line number Diff line number Diff line change @@ -32,7 +32,6 @@ Implemented checks
3232* Check if variable is not declared more than once
3333* Check if a procedure was declared
3434* Check if a procedure is called with the correct number of parameters
35- * Check if a procedure is called with parameters of the right type
3635
3736### Interpreter
3837
Original file line number Diff line number Diff line change @@ -22,11 +22,15 @@ statement_list : statement
2222 | statement SEMI statement_list
2323
2424statement : compound_statement
25- | procedure_call
25+ | procedure_call
26+ | if_else_statement
2627 | assignment_statement
2728 | empty
2829
29- procedure_call : id( (factor [,])* );
30+ procedure_call : procedure_call : id( (factor (factor,)* )* )
31+
32+ if_else_statement : IF condition statement
33+ | IF condition THEN statement ELSE statement
3034
3135assignment_statement : variable ASSIGN expr
3236
You can’t perform that action at this time.
0 commit comments