regehr@home:~$ echo > foo.c regehr@home:~$ /home/regehr/z/checked-gcc-install/bin/gcc -c -O0 foo.c CLANG ARITHMETIC UNDEFINED at : Op: <<, Reason : Signed Left Shift: left operand is negative || left operand is nonnegative, but the result can not be represented in the result signed type, BINARY OPERATION: left (int64): -1 right (int64): 63 CLANG ARITHMETIC UNDEFINED at : Op: <<, Reason : Signed Left Shift: left operand is negative || left operand is nonnegative, but the result can not be represented in the result signed type, BINARY OPERATION: left (int64): 1 right (int64): 63 CLANG ARITHMETIC UNDEFINED at : Op: <<, Reason : Signed Left Shift: left operand is negative || left operand is nonnegative, but the result can not be represented in the result signed type, BINARY OPERATION: left (int64): -1 right (int64): 63 CLANG ARITHMETIC UNDEFINED at : Op: <<, Reason : Signed Left Shift: left operand is negative || left operand is nonnegative, but the result can not be represented in the result signed type, BINARY OPERATION: left (int64): -1 right (int64): 0 CLANG ARITHMETIC UNDEFINED at : Op: <<, Reason : Signed Left Shift: left operand is negative || left operand is nonnegative, but the result can not be represented in the result signed type, BINARY OPERATION: left (int64): 1 right (int64): 63 CLANG ARITHMETIC UNDEFINED at : Op: -, Reason : Signed Subtraction Overflow, BINARY OPERATION: left (int64): -9223372036854775808 right (int64): 1 CLANG ARITHMETIC UNDEFINED at : Op: <<, Reason : Signed Left Shift: left operand is negative || left operand is nonnegative, but the result can not be represented in the result signed type, BINARY OPERATION: left (int64): 1 right (int64): 63 CLANG ARITHMETIC UNDEFINED at : Op: -, Reason : Signed Subtraction Overflow, BINARY OPERATION: left (int64): -9223372036854775808 right (int64): 1 regehr@home:~$ /home/regehr/tmp/llvm-3.1.checked-install/bin/clang -c -O0 foo.c CLANG ARITHMETIC UNDEFINED at : Op: <<=, Reason : Signed Left Shift: left operand is negative || left operand is nonnegative, but the result can not be represented in the result signed type, BINARY OPERATION: left (int64): -1 right (int64): 2 CLANG ARITHMETIC UNDEFINED at : Op: <<=, Reason : Signed Left Shift: left operand is negative || left operand is nonnegative, but the result can not be represented in the result signed type, BINARY OPERATION: left (int64): -2 right (int64): 2 CLANG ARITHMETIC UNDEFINED at : Op: <<=, Reason : Signed Left Shift: left operand is negative || left operand is nonnegative, but the result can not be represented in the result signed type, BINARY OPERATION: left (int64): -1 right (int64): 2 CLANG ARITHMETIC UNDEFINED at : Op: <<=, Reason : Signed Left Shift: left operand is negative || left operand is nonnegative, but the result can not be represented in the result signed type, BINARY OPERATION: left (int64): -2 right (int64): 2