Re: fossil build failure on riscv64
Agreed, the bug might have to do with signed vs unsigned chars.
But it's still a bug, because {char c; unsigned int u=SOMETHING*-1;
c='0'+(u%10); ...} should NEVER result in c being outside the range
'0'..'9'.
(Unless the compiler is taking advantage of some guarantee about
SOMETHING not being the most negative integer here because of some
corner case in the C specs, and then using this to justify using
signed arithmetic on unsigned quantities because it's more efficient.)
Reply to: