diff options
author | Tom Tromey <tromey@cygnus.com> | 2000-01-26 23:44:40 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2000-01-26 23:44:40 +0000 |
commit | 673fdf6d778614d291d139ed4beecea7df6a014d (patch) | |
tree | 461b8f76d096da3afccc45b05b8b7d560438451b /libjava/resolve.cc | |
parent | fa76d9e04ebf753eee8e6dffb45430579c31ebf3 (diff) | |
download | gcc-673fdf6d778614d291d139ed4beecea7df6a014d.zip gcc-673fdf6d778614d291d139ed4beecea7df6a014d.tar.gz gcc-673fdf6d778614d291d139ed4beecea7df6a014d.tar.bz2 |
resolve.cc (get_ffi_type_from_signature): Handle case where boolean is an int.
* resolve.cc (get_ffi_type_from_signature): Handle case where
boolean is an int.
From-SVN: r31637
Diffstat (limited to 'libjava/resolve.cc')
-rw-r--r-- | libjava/resolve.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libjava/resolve.cc b/libjava/resolve.cc index ae8ae90..92d66c2 100644 --- a/libjava/resolve.cc +++ b/libjava/resolve.cc @@ -856,6 +856,16 @@ get_ffi_type_from_signature (unsigned char* ptr) break; case 'Z': + // On some platforms a bool is a byte, on others an int. + if (sizeof (jboolean) == sizeof (jbyte)) + return &ffi_type_sint8; + else + { + JvAssert (sizeof (jbyte) == sizeof (jint)); + return &ffi_type_sint32; + } + break; + case 'B': return &ffi_type_sint8; break; |