scc

simple C compiler
git clone git://git.2f30.org/scc
Log | Files | Refs | README | LICENSE

commit e2576771fbb06b5768b0f2fcb06941f872ec3f38
parent 3b80bbd687997a5db6abff8329e63a21556d97b9
Author: Roberto E. Vargas Caballero <k0ga@shike2.com>
Date:   Thu,  2 Feb 2017 13:53:24 +0100

[cc1] Fix inc/dec operators

These operators are assignation operators, and they must use
the a version of the op used in expressions.

Diffstat:
Mcc1/expr.c | 4++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/cc1/expr.c b/cc1/expr.c @@ -608,13 +608,13 @@ incdec(Node *np, int op) errorp("%s of pointer to an incomplete type", (op == OINC || op == OA_ADD) ? "increment" : "decrement"); return np; - } else if (tp->op == PTR || (tp->prop & TARITH)) { + } else if (tp->op == PTR || tp->prop&TARITH) { inc = constnode(one); } else { errorp("wrong type argument to increment or decrement"); return np; } - return arithmetic_op(op, np, inc); + return arithmetic_aop(op, np, inc); } static Node *