diff options
author | Per Bothner <per@bothner.com> | 2001-08-30 21:14:44 -0700 |
---|---|---|
committer | Per Bothner <bothner@gcc.gnu.org> | 2001-08-30 21:14:44 -0700 |
commit | be0c7ff4050a473ce2d989b7ab7ac85fc640490c (patch) | |
tree | 171237c0c04c33e34c982639ef722505236101e0 /gcc/java/jcf-write.c | |
parent | f0cdee96aa2a739a34f820638c98814b139e3bd5 (diff) | |
download | gcc-be0c7ff4050a473ce2d989b7ab7ac85fc640490c.zip gcc-be0c7ff4050a473ce2d989b7ab7ac85fc640490c.tar.gz gcc-be0c7ff4050a473ce2d989b7ab7ac85fc640490c.tar.bz2 |
jcf-write.c (generate_classfile): Check that field is primitive or string before emitting ConstantValue attribute.
* jcf-write.c (generate_classfile): Check that field is primitive
or string before emitting ConstantValue attribute.
From-SVN: r45306
Diffstat (limited to 'gcc/java/jcf-write.c')
-rw-r--r-- | gcc/java/jcf-write.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/java/jcf-write.c b/gcc/java/jcf-write.c index d090b56..026ceb5 100644 --- a/gcc/java/jcf-write.c +++ b/gcc/java/jcf-write.c @@ -2885,7 +2885,9 @@ generate_classfile (clas, state) PUT2(i); have_value = DECL_INITIAL (part) != NULL_TREE && FIELD_STATIC (part) && CONSTANT_VALUE_P (DECL_INITIAL (part)) - && FIELD_FINAL (part); + && FIELD_FINAL (part) + && (JPRIMITIVE_TYPE_P (TREE_TYPE (part)) + || TREE_TYPE (part) == string_ptr_type_node); if (have_value) attr_count++; |