diff options
author | June McEnroe <june@causal.agency> | 2019-05-19 19:08:21 -0400 |
---|---|---|
committer | June McEnroe <june@causal.agency> | 2019-05-19 19:08:21 -0400 |
commit | e33a5a661e3d0c8a0e1f605b43be6c1390392c20 (patch) | |
tree | 7c4f302fc30d5121f378f05f99bcc92c7b5c90e8 /bin | |
parent | Add compound assignment operators to order (diff) | |
download | src-e33a5a661e3d0c8a0e1f605b43be6c1390392c20.tar.gz src-e33a5a661e3d0c8a0e1f605b43be6c1390392c20.zip |
Specify precedence of unary versions of operators
Diffstat (limited to 'bin')
-rw-r--r-- | bin/order.y | 6 |
1 files changed, 3 insertions, 3 deletions
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); } |