> Perhaps so, but using that obfuscates the code, so it's undesirable if
> it can be avoided.

There is no obfuscation.  This is the only way to make it work
correctly.

Well ... maybe write it :

          if (negative_number)
            u_number_value = ~ u_number_value + 1;

which would more closely match the earlier comment in the code
and avoid lame guys like me to ask about it.
(And also avoid stupid compiler warnings).

I have another question related to strftime.c : is there any reason not to use the system one on Windows ?

Fabrice