summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2000-01-17 18:25:37 +0000
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2000-01-17 18:25:37 +0000
commitc7453f11e4d1fb8d3f73285f170d6474b1f15664 (patch)
treeaaf1a5e37096c283389fd0ef7ce0a55933864b03
parent8586815817b1d1dd8a803d7d070c517018549289 (diff)
downloadgcc-c7453f11e4d1fb8d3f73285f170d6474b1f15664.tar.gz
* gjavah.c (print_field_info): Allow non-static final fields.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31466 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/java/ChangeLog4
-rw-r--r--gcc/java/gjavah.c20
2 files changed, 14 insertions, 10 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 09d79d321f9..85c0b05d292 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,7 @@
+2000-01-17 Tom Tromey <tromey@cygnus.com>
+
+ * gjavah.c (print_field_info): Allow non-static final fields.
+
2000-01-16 Anthony Green <green@cygnus.com>
* parse.y (build_string_concatenation): Only use
diff --git a/gcc/java/gjavah.c b/gcc/java/gjavah.c
index 12cb72b0f05..4f973171592 100644
--- a/gcc/java/gjavah.c
+++ b/gcc/java/gjavah.c
@@ -1,7 +1,7 @@
/* Program to write C++-suitable header files from a Java(TM) .class
file. This is similar to SUN's javah.
-Copyright (C) 1996, 1998, 1999 Free Software Foundation, Inc.
+Copyright (C) 1996, 1998, 1999, 2000 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -436,7 +436,11 @@ DEFUN(print_field_info, (stream, jcf, name_index, sig_index, flags),
return;
}
- if (flags & ACC_FINAL)
+ fputs (" ", out);
+ if ((flags & ACC_STATIC))
+ fputs ("static ", out);
+
+ if ((flags & ACC_FINAL))
{
if (current_field_value > 0)
{
@@ -449,7 +453,7 @@ DEFUN(print_field_info, (stream, jcf, name_index, sig_index, flags),
{
jint num;
int most_negative = 0;
- fputs (" static const jint ", out);
+ fputs ("const jint ", out);
print_field_name (out, jcf, name_index, 0);
fputs (" = ", out);
num = JPOOL_INT (jcf, current_field_value);
@@ -468,7 +472,7 @@ DEFUN(print_field_info, (stream, jcf, name_index, sig_index, flags),
{
jlong num;
int most_negative = 0;
- fputs (" static const jlong ", out);
+ fputs ("const jlong ", out);
print_field_name (out, jcf, name_index, 0);
fputs (" = ", out);
num = JPOOL_LONG (jcf, current_field_value);
@@ -486,7 +490,7 @@ DEFUN(print_field_info, (stream, jcf, name_index, sig_index, flags),
case CONSTANT_Float:
{
jfloat fnum = JPOOL_FLOAT (jcf, current_field_value);
- fputs (" static const jfloat ", out);
+ fputs ("const jfloat ", out);
print_field_name (out, jcf, name_index, 0);
if (! java_float_finite (fnum))
fputs (";\n", out);
@@ -497,7 +501,7 @@ DEFUN(print_field_info, (stream, jcf, name_index, sig_index, flags),
case CONSTANT_Double:
{
jdouble dnum = JPOOL_DOUBLE (jcf, current_field_value);
- fputs (" static const jdouble ", out);
+ fputs ("const jdouble ", out);
print_field_name (out, jcf, name_index, 0);
if (! java_double_finite (dnum))
fputs (";\n", out);
@@ -517,10 +521,6 @@ DEFUN(print_field_info, (stream, jcf, name_index, sig_index, flags),
}
}
- fputs (" ", out);
- if ((flags & ACC_STATIC))
- fputs ("static ", out);
-
override = get_field_name (jcf, name_index, flags);
print_c_decl (out, jcf, name_index, sig_index, 0, override);
fputs (";\n", out);