diff options
author | Tom Tromey <tromey@redhat.com> | 2005-12-16 00:00:43 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2005-12-16 00:00:43 +0000 |
commit | 86bcd3a2247ce5405642631f1a7167933a487f36 (patch) | |
tree | e06c0bfb5fa1f496d9e6efbc365804803285a3a4 /gcc/java | |
parent | 094bb856e66fc86a004c604331cbc4bd17472369 (diff) | |
download | gcc-86bcd3a2247ce5405642631f1a7167933a487f36.zip gcc-86bcd3a2247ce5405642631f1a7167933a487f36.tar.gz gcc-86bcd3a2247ce5405642631f1a7167933a487f36.tar.bz2 |
re PR java/25429 (can't see private static final int CREATE = 1)
gcc/java:
PR java/25429
* parse.y (resolve_expression_name): Don't generate accessor
methods for constant fields.
libjava:
* testsuite/libjava.compile/rh175833.java: New file.
* testsuite/libjava.compile/pr25429.java: New file.
Co-Authored-By: Andrew Haley <aph@redhat.com>
From-SVN: r108608
Diffstat (limited to 'gcc/java')
-rw-r--r-- | gcc/java/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/java/parse.y | 11 |
2 files changed, 16 insertions, 2 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 05577d5..9843b6c 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,10 @@ +2005-12-15 Tom Tromey <tromey@redhat.com> + Andrew Haley <aph@redhat.com> + + PR java/25429 + * parse.y (resolve_expression_name): Don't generate accessor + methods for constant fields. + 2005-12-13 Andrew Haley <aph@redhat.com> PR java/25366 diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 056feea..a467ff1 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -9584,8 +9584,15 @@ resolve_expression_name (tree id, tree *orig) /* If we're processing an inner class and we're trying to access a field belonging to an outer class, build - the access to the field. */ - if (nested_member_access_p (current_class, decl)) + the access to the field. + As usual, we have to treat initialized static final + variables as a special case. */ + if (nested_member_access_p (current_class, decl) + && ! (JDECL_P (decl) && CLASS_FINAL_VARIABLE_P (decl) + && DECL_INITIAL (decl) != NULL_TREE + && (JSTRING_TYPE_P (TREE_TYPE (decl)) + || JNUMERIC_TYPE_P (TREE_TYPE (decl))) + && TREE_CONSTANT (DECL_INITIAL (decl)))) { if (!fs && CLASS_STATIC (TYPE_NAME (current_class))) { |