Make gcc accept the bitwise-boolean magic

Forgot to compile check...
This commit is contained in:
Bill Currie 2020-02-16 12:08:08 +09:00
parent 9d2d33fa50
commit 32c21ec559

View file

@ -1445,7 +1445,7 @@ op_call:
// as division: -5 % 3 = -2, so need to add b (3 here) // as division: -5 % 3 = -2, so need to add b (3 here)
// if c's sign is incorrect, but only if c is non-zero // if c's sign is incorrect, but only if c is non-zero
int mask = (a ^ b) >> 31; int mask = (a ^ b) >> 31;
mask &= ~!!c + 1; mask &= ~(!!c + 0) + 1; // +0 to convert bool to int (gcc)
OPC.integer_var = c + (mask & b); OPC.integer_var = c + (mask & b);
} }
break; break;