From e33a5a661e3d0c8a0e1f605b43be6c1390392c20 Mon Sep 17 00:00:00 2001 From: Curtis McEnroe Date: Sun, 19 May 2019 19:08:21 -0400 Subject: Specify precedence of unary versions of operators --- bin/order.y | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'bin/order.y') diff --git a/bin/order.y b/bin/order.y index e6377771..25dce32b 100644 --- a/bin/order.y +++ b/bin/order.y @@ -80,9 +80,9 @@ expr: | Dec expr { $$ = fmt("(--%s)", $2); } | expr Inc { $$ = fmt("(%s++)", $1); } | expr Dec { $$ = fmt("(%s--)", $1); } - | '-' expr { $$ = fmt("(-%s)", $2); } - | '*' expr { $$ = fmt("(*%s)", $2); } - | '&' expr { $$ = fmt("(&%s)", $2); } + | '-' expr %prec '!' { $$ = fmt("(-%s)", $2); } + | '*' expr %prec '!' { $$ = fmt("(*%s)", $2); } + | '&' expr %prec '!' { $$ = fmt("(&%s)", $2); } | Sizeof expr { $$ = fmt("(sizeof %s)", $2); } | expr '*' expr { $$ = fmt("(%s * %s)", $1, $3); } | expr '/' expr { $$ = fmt("(%s / %s)", $1, $3); } -- cgit 1.4.1