Index: tcc.c =================================================================== RCS file: /sources/tinycc/tinycc/tcc.c,v retrieving revision 1.193 diff -u -r1.193 tcc.c --- tcc.c 19 Dec 2007 17:36:43 -0000 1.193 +++ tcc.c 13 Jan 2008 14:02:20 -0000 @@ -5464,9 +5464,9 @@ independent opt */ void gen_opic(int op) { - int c1, c2, t1, t2, n, c; + int c1, c2, t1, t2, n; SValue *v1, *v2; - long long l1, l2, l; + long long l1, l2; typedef unsigned long long U; v1 = vtop - 1; @@ -5533,8 +5533,9 @@ if (c1 && (op == '+' || op == '&' || op == '^' || op == '|' || op == '*')) { vswap(); - c = c1, c1 = c2, c2 = c; - l = l1, l1 = l2, l2 = l; + /* no swap needed (we do not use c1 or l1 below) */ + c2 = c1; + l2 = l1; } /* Filter out NOP operations like x*1, x-0, x&-1... */ if (c2 && (((op == '*' || op == '/' || op == TOK_UDIV ||