From 29de275c04959d47f3a8b03443e7d9b48853daeb Mon Sep 17 00:00:00 2001 From: Siraaj Khandkar Date: Mon, 28 May 2018 13:47:25 -0400 Subject: [PATCH] Remove stand-alone fun_call grammar rule --- tiger/src/lib/tiger/tiger_parser.mly | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/tiger/src/lib/tiger/tiger_parser.mly b/tiger/src/lib/tiger/tiger_parser.mly index bbf89f7..4497ce3 100644 --- a/tiger/src/lib/tiger/tiger_parser.mly +++ b/tiger/src/lib/tiger/tiger_parser.mly @@ -109,9 +109,16 @@ exp: { sprintf "string[%S]" $1 } - | fun_call + | ID unit { - $1 + let id = $1 in + sprintf "fun_call[%s, []]" id + } + | ID LPAREN fun_args RPAREN + { + let id = $1 in + let fun_args = $3 in + sprintf "fun_call[%s, %s]" id fun_args } | exp op exp { @@ -294,19 +301,6 @@ rec_field_assignments: sprintf "%S = %s, %s" id exp rec_field_assignments } -fun_call: - | ID unit - { - let id = $1 in - sprintf "fun_call[%s, []]" id - } - | ID LPAREN fun_args RPAREN - { - let id = $1 in - let fun_args = $3 in - sprintf "fun_call[%s, %s]" id fun_args - } - fun_args: | exp { -- 2.20.1