Bug #1296: [trunk/22981] 64-bit issues on trunk in ext/zlib
http://redmine.ruby-lang.org/issues/show/1296

Author: Ollivier Robert
Status: Open, Priority: Normal
Category: ext, Target version: 1.9.1
ruby -v: ruby 1.9.2dev (2009-03-16) [i386-darwin9.6.0]

I've configured Ruby to be compiled in 64-bit mode under OS X 10.5.6 with gcc 4.2.  I get the following warnings in ext/zlib which are a bit worrying.

gcc-4.2 -I. -I../../.ext/include/i386-darwin9.6.0 -I../../../include -I../../../ext/zlib -DRUBY_EXTCONF_H=\"extconf.h\" -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE   -fno-common -O -pipe -m64 -D_FILE_OFFSET_BITS=64 -O3 -g -Wall -Wno-unused-parameter -Wno-parentheses -Wno-missing-field-initializers -Wshorten-64-to-32 -Wpointer-arith -Wwrite-strings  -o zlib.o -c ../../../ext/zlib/zlib.c
../../../ext/zlib/zlib.c: In function ¡Ædo_checksum¡Ç:
../../../ext/zlib/zlib.c:300: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Æzstream_expand_buffer¡Ç:
../../../ext/zlib/zlib.c:457: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Æzstream_shift_buffer¡Ç:
../../../ext/zlib/zlib.c:550: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Æzstream_passthrough_input¡Ç:
../../../ext/zlib/zlib.c:631: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Æzstream_run¡Ç:
../../../ext/zlib/zlib.c:707: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Æzstream_sync¡Ç:
../../../ext/zlib/zlib.c:766: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c:770: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ædeflate_run¡Ç:
../../../ext/zlib/zlib.c:1167: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ædo_deflate¡Ç:
../../../ext/zlib/zlib.c:1226: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ærb_deflate_set_dictionary¡Ç:
../../../ext/zlib/zlib.c:1353: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Æinflate_run¡Ç:
../../../ext/zlib/zlib.c:1413: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ædo_inflate¡Ç:
../../../ext/zlib/zlib.c:1467: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ærb_inflate_inflate¡Ç:
../../../ext/zlib/zlib.c:1499: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ærb_inflate_addstr¡Ç:
../../../ext/zlib/zlib.c:1532: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ærb_inflate_sync¡Ç:
../../../ext/zlib/zlib.c:1560: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ærb_inflate_set_dictionary¡Ç:
../../../ext/zlib/zlib.c:1602: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ægzfile_read_raw_ensure¡Ç:
../../../ext/zlib/zlib.c:1838: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c:1839: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c:1841: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ægzfile_read_raw_until_zero¡Ç:
../../../ext/zlib/zlib.c:1859: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ægzfile_make_header¡Ç:
../../../ext/zlib/zlib.c:1923: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c:1926: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c:1930: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ægzfile_make_footer¡Ç:
../../../ext/zlib/zlib.c:1944: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ægzfile_read_header¡Ç:
../../../ext/zlib/zlib.c:1998: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c:2001: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c:2008: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c:2015: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ægzfile_read_more¡Ç:
../../../ext/zlib/zlib.c:2078: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ægzfile_calc_crc¡Ç:
../../../ext/zlib/zlib.c:2089: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c:2093: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ægzfile_getc¡Ç:
../../../ext/zlib/zlib.c:2235: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ærb_gzwriter_write¡Ç:
../../../ext/zlib/zlib.c:2817: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ærb_gzreader_ungetc¡Ç:
../../../ext/zlib/zlib.c:3147: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c: In function ¡Ægzreader_gets¡Ç:
../../../ext/zlib/zlib.c:3246: warning: implicit conversion shortens 64-bit value into a 32-bit value
../../../ext/zlib/zlib.c:3272: warning: implicit conversion shortens 64-bit value into a 32-bit value
cc -dynamic -bundle -undefined suppress -flat_namespace -o ../../.ext/i386-darwin9.6.0/zlib.bundle zlib.o -L. -L../.. -L. -m64 -L/usr/local/lib    -lz  -lpthread -ldl -lobjc


----------------------------------------
http://redmine.ruby-lang.org