On Tue, May 23, 2006 at 01:29:57PM +0100, Andrew Haley wrote:
> > On 64-bit hosts jint type is apparently 64-bit
> > (javaop.h has
> > #ifndef int32
> > #define int32 long
> > #endif
> > ...
> > typedef int32 jint;
> That's right. jint is 32 bit, always.
> > ), but the following hunk in print_field_info relies on it being
> > 64-bit. Either we could change jint to be always exactly 32-bit
> > type on all hosts, or we need something like the patch below,
> > otherwise headers generated by 64-bit gcjh generate warnings in 32-bit
> > compilation.
> jint is defined as
> typedef __java_int jint;
Only in libjava/gcj/javaprims.h, i.e. it has the right type in libjava.
But not in gcc/java, where it is typedefed to long.