Martin Buchholz wrote: > On Wed, Dec 3, 2008 at 11:38, Joe Darcy <[EMAIL PROTECTED]> wrote: >> The source bundle for OpenJDK 6 build 14 is available for download from: >> >> http://download.java.net/openjdk/jdk6/ > > The new Hotspot 11 failed to compile on a modified 64-bit (debian arch=amd64) > Ubuntu dapper system as follows: > > cc1plus: warnings being treated as errors > /usr/local/google/home/martin/ws/buildAllOpenJDK6/hotspot/src/share/vm/utilities/ostream.cpp: > In member function 'bool networkStream::connect(const char*, short > int)': > /usr/local/google/home/martin/ws/buildAllOpenJDK6/hotspot/src/share/vm/utilities/ostream.cpp:835: > warning: comparison is always false due to limited range of data type > > 32-bit systems are unaffected (not sure why).
It's a bug. The code is basically this: #include <stdint.h> typedef uint32_t in_addr_t; in_addr_t s_addr; int pp () { return (s_addr == (unsigned long)-1); } Promoting -1 to unsigned long on an LP64 machine gives 0xffffffffffffffff, which won't fit in an in_addr_t. Another weird corner case in C: 6.3.1.3 para 2. Andrew.