This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug java/16843] New: gcjh generated headers don't define final constants
- From: "mark at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 31 Jul 2004 10:19:24 -0000
- Subject: [Bug java/16843] New: gcjh generated headers don't define final constants
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Some JNI header generators like kaffeh output C #defines for final static
(primitive and String) fields. gcjh doesn't do this.
The output of running kaffeh on the following class:
public class T extends Thread
{
public static final String Hello = "World";
public static final float f = 1.4f;
public static final double d = Math.PI;
}
gets you the following defines in T.h:
#define T_MIN_PRIORITY 1
#define T_NORM_PRIORITY 5
#define T_MAX_PRIORITY 10
#define T_Hello "World"
#define T_f 1.4000000e+00
#define T_d 8.6191995128153828e+97
Note that some of these constants come from the super class.
Also note that the float and double results look like bugs in kaffeh.
Unfortunately I cannot find the specification that defines this behaviour.
--
Summary: gcjh generated headers don't define final constants
Product: gcc
Version: 3.5.0
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: java
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: mark at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu
dot org,robilad at kaffe dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16843