On 2016-07-15 22:15, Alan Third wrote: > Eli, I just wanted to run this by you because you wrote this code and > I'm not sure if that =- is just a typo or it's something I've never > seen before. My guess is it's a typo and gcc happily treats it as -=, > but clang handles it more like 'y = y - a - b' resulting in odd > behaviour on OS X. In fact, both Clang and GCC treat it the same (as '=' followed by a unary minus): #include int main () { int y = 1; y =- 1; // Same as y = -1; printf("%d\n", y); // Prints "-1" } Interestingly, clang warns about this: 5 5 warning use of unary operator that may be intended as compound assignment (-=) (c/c++-clang) Thanks for spotting it! Clément.