// output of ./demo/bits/gotcha-demo.cc: // Description: //% A pitfall with two's complement: one nonzero value equals its own negative. c=................ -c=................ c= 0 -c= 0 <--= c=...............1 -c=1111111111111111 c= 1 -c= -1 c=..............1. -c=111111111111111. c= 2 -c= -2 c=..............11 -c=11111111111111.1 c= 3 -c= -3 c=.............1.. -c=11111111111111.. c= 4 -c= -4 c=.............1.1 -c=1111111111111.11 c= 5 -c= -5 c=.............11. -c=1111111111111.1. c= 6 -c= -6 [--snip--] c=.1111111111111.1 -c=1.............11 c= 32765 -c=-32765 c=.11111111111111. -c=1.............1. c= 32766 -c=-32766 c=.111111111111111 -c=1..............1 c= 32767 -c=-32767 c=1............... -c=1............... c=-32768 -c=-32768 <--= c=1..............1 -c=.111111111111111 c=-32767 -c= 32767 c=1.............1. -c=.11111111111111. c=-32766 -c= 32766 c=1.............11 -c=.1111111111111.1 c=-32765 -c= 32765 c=1............1.. -c=.1111111111111.. c=-32764 -c= 32764 c=1............1.1 -c=.111111111111.11 c=-32763 -c= 32763 c=1............11. -c=.111111111111.1. c=-32762 -c= 32762 [--snip--] c=1111111111111..1 -c=.............111 c= -7 -c= 7 c=1111111111111.1. -c=.............11. c= -6 -c= 6 c=1111111111111.11 -c=.............1.1 c= -5 -c= 5 c=11111111111111.. -c=.............1.. c= -4 -c= 4 c=11111111111111.1 -c=..............11 c= -3 -c= 3 c=111111111111111. -c=..............1. c= -2 -c= 2 c=1111111111111111 -c=...............1 c= -1 -c= 1