From 64a411ede2df42eea0e6905a4985a3e54057c677 Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Tue, 29 Jun 2021 17:58:18 +0000 Subject: Parse terms in parenthesis correctly --- parser.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'parser.c') diff --git a/parser.c b/parser.c index fc77905..c4d860e 100644 --- a/parser.c +++ b/parser.c @@ -171,6 +171,11 @@ term(void) case CurlyBracketLeftTok: result = curlybracketterm(); break; + case ParenLeftTok: + match(ParenLeftTok); + result = fullterm(ParenRightTok, nil, nil); + match(ParenRightTok); + break; default: print("Cant parse term of token type %d\n", lookahead.tag); syntaxerror("term"); @@ -245,7 +250,7 @@ parseoperators(Term *list) for(i = 0, t = list; i < length; i++){ Operator *op = getoperator(t->text); - if(op){ + if(op && t->tag == AtomTok){ infos[i].type = op->type; infos[i].level = op->level; }else{ -- cgit v1.2.3