The data type is specified as char but the literals are unsigned char. This
results in 798 truncation warnings in vs2010. The literals were converted
with a simple python script to signed char while taking two's complement and
the overflow into account.
Also tested on Ubuntu 12.04 with gcc 4.6.