diff --git a/src/grammar.y b/src/grammar.y index 4c5e4e6..3e9bc44 100644 --- a/src/grammar.y +++ b/src/grammar.y @@ -107,17 +107,17 @@ prototype: L_PAREN EXTERNAL R_PAREN FUNCTION ID COLON ID; definition: - TYPE ID COLON dblock + TYPE ID COLON dblock | TYPE ID COLON constant ARROW ID - //| function_declaration + | function_declaration | TYPE ID COLON id_or_types ARROW id_or_types | ID parameter ASSIGN sblock ; -//function_declaration: - // FUNCTION ID COLON ID - //| EXTERNAL FUNCTION ID COLON ID - //; +function_declaration: + FUNCTION ID COLON ID + | EXTERNAL FUNCTION ID COLON ID + ; parameter: L_PAREN ID R_PAREN @@ -194,9 +194,9 @@ expression: | expression EQUAL_TO expression {printf("equals check expression\n");} | assignable {printf("assignable expression\n");} | L_PAREN expression R_PAREN {printf("paren expression\n");} - | memOp assignable + | memOp assignable ; - + ablock: L_PAREN argument_list R_PAREN