GIT 1.5.0-rc2 compiler warning
Hello,
Use CYGWIN.
gcc -o utf8.o -c -O2 -DNO_D_TYPE_IN_DIRENT -DNO_SYMLINK_HEAD -DNO_FAST_WORKING_DIRECTORY -DNO_IPV6 -DSHA1_HEADER='<openssl/sha.h>' -DNO_STRCASESTR utf8.cutf8.c: In function `wcwidth':
utf8.c:148: warning: comparison is always false due to limited range of data type
utf8.c:148: warning: comparison is always true due to limited range of data type
utf8.c:149: warning: comparison is always false due to limited range of data type
utf8.c:149: warning: comparison is always true due to limited range of data typeutf8.c: In function `reencode_string':
utf8.c:313: warning: passing arg 2 of `libiconv' from incompatible pointer type
'gcc -E .... utf8.c' gives me:
# 325 "/bin/../lib/gcc/i686-pc-cygwin/3.4.4/include/stddef.h" 3 4 typedef short unsigned int wchar_t;
Regards,
namsh
I know. Imported code.
I do not think we can do much on a platform where wchar_t is too narrow and BMP only anyway.
måndag 22 januari 2007 02:13 skrev Junio C Hamano:
Quoted 4 lines
I know. Imported code.
I do not think we can do much on a platform where
wchar_tis too narrow and BMP only anyway.
What's wrong is the assumption that wchar_t corresponds to a complete unicode character. On windows, two wchar_t (code units) may me combined to encode a unicode character outside of the BMP.
Without investigating further, I note that Java adds methods with an 'int' argument to the Character utility class to handle code points, vs the original 'char' that represents a code unit. (unlike C, an int is always 32-bit in Java).
-- robin