Note that in test/utf8_test.cpp, the first comparison was redundant. For a signed char, this iterates from -128 to -1, unsigned from 0 to 128.