jboolean conflict error

Dhiraj.Nilange@iflexsolutions.com Dhiraj.Nilange@iflexsolutions.com
Tue Jun 12 13:27:00 GMT 2007


Hi,

I am trying to compile one C++ code using g++.

I am getting error of declaration conflict since GCC(g++) is finding 2
Declarations of jboolean; one in gcc's own header file and another
in jni.h (Java Native Interface)

/opt/jdk1.5/include/jni.h:39: error: conflicting declaration ?typedef
unsigned char jboolean?

/usr/lib/gcc/x86_64-redhat-linux/4.1.1/include/jni_md.h:84: error:
?jboolean? has a previous declaration as ?typedef signed char jboolean?


The file jni.h has the following declaration:-

typedef unsigned char   jboolean;

Whereas in the file jni_md.h there is following declaration(s):-

typedef int    jboolean __attribute__((__mode__(__QI__)));
typedef int8_t jboolean;

Anyone has any idea why it could be causing? The very source code being
used here works fine on other platforms/compilers. How to get away with
this error?

I am using GCC 4.1.1.  And my OS is Linux(RH5) AMD-64bit platform.

Thanks,
-Dhiraj



More information about the Gcc-help mailing list