shithub: scc

Download patch

ref: ffbb1e8dedda4975725bfa5dc501cfbf589301b9
parent: adb48e8988aad7d39acdeeb413e99fb4951695af
author: Roberto E. Vargas Caballero <[email protected]>
date: Tue Aug 25 11:25:28 EDT 2015

Use SYMICMP() in pcompare()

There are several cases in integer constants, so this macro must be
used.

--- a/cc1/expr.c
+++ b/cc1/expr.c
@@ -500,7 +500,7 @@
 {
 	switch (BTYPE(rp)) {
 	case INT:
-		if (rp->symbol && rp->sym->u.i == 0)
+		if (rp->constant && SYMICMP(rp->sym, 0))
 			rp = node(OCAST, pvoidtype, rp, NULL);
 		break;
 	case PTR: