On Sun, Dec 12, 2010 at 10:22:09AM +0100, Henri Gomez wrote: > While building latest 32bits version of OpenJDK 1.7 on SnowLeopard in > 32bits mode : > > g++ -D_ALLBSD_SOURCE -D_GNU_SOURCE -DIA32 -DPRODUCT -I. [snip] > -I../generated -DHOTSPOT_RELEASE_VERSION="\"20.0-b03\"" > -DHOTSPOT_BUILD_TARGET="\"product\"" -DHOTSPOT_BUILD_USER="\"henri\"" > -DHOTSPOT_LIB_ARCH=\"i386\" > -DJRE_RELEASE_VERSION="\"1.7.0-internal-henri_2010_12_12_10_06-b00\"" > -DHOTSPOT_VM_DISTRO="\"OpenJDK\"" -DCOMPILER2 -DCOMPILER1 -fPIC > -fno-rtti -fno-exceptions -pthread -fcheck-new -m32 -march=i586 > -mstackrealign -pipe -O3 -fno-strict-aliasing -DVM_LITTLE_ENDIAN > -Werror -Wpointer-arith -Wconversion -Wsign-compare -D_XOPEN_SOURCE > -D_DARWIN_C_SOURCE -c -o arguments.o > /Users/henri/Documents/openjdk-osx-build-read-only/bsd-port/hotspot/src/share/vm/runtime/arguments.cpp > cc1plus: warnings being treated as errors > /Users/henri/Documents/openjdk-osx-build-read-only/bsd-port/hotspot/src/share/vm/runtime/arguments.cpp: > In static member function 'static void > Arguments::set_aggressive_opts_flags()': > /Users/henri/Documents/openjdk-osx-build-read-only/bsd-port/hotspot/src/share/vm/runtime/arguments.cpp:1583: > warning: format '%d' expects type 'int', but argument 3 has type > 'intx' [snip] > > Offending line is : > > sprintf(buffer, "java.lang.Integer.IntegerCache.high=" > INTX_FORMAT, AutoBoxCacheMax); > > > I didn't had this error on building 64bits version of VM on the same machine.
That's because the 64 bits will use 64 bit pointers by default. IIRC, on MacOS X with the 32 bit build pointers are still 64 bits, which is unlike other platforms. The problems can be seen in the definitions of INTX_FORMAT, etc. in hotspot/src/share/vm/utilities/globalDefinitions.hpp -- Greg Lewis Email : gle...@eyesbeyond.com Eyes Beyond Web : http://www.eyesbeyond.com Information Technology FreeBSD : gle...@freebsd.org