ref: 1f09b3f3edd53ace12c72126f5bbad44f4ae8e8b
parent: 1c3ae449cdff510ea0a8d628f60f8749442abe10
author: Roberto E. Vargas Caballero <[email protected]>
date: Wed Sep 10 13:19:39 EDT 2014
Fix !, y and j functions of cc2 ! is an unary operator, not a binary. y and j are special cases where they don't push or pop anything. I don't know how to handle them, but this is a good case where is better mark them as invalid and do it later.
--- a/cc2/parser.c
+++ b/cc2/parser.c
@@ -305,8 +305,9 @@
[']'] = operator,
['['] = operator,
['='] = operator,
- ['!'] = operator,
- ['y'] = operator,
+ ['!'] = unary,
+ ['y'] = NULL,
+ ['j'] = NULL,
['o'] = operator,
['_'] = unary,
['~'] = unary,