diff options
Diffstat (limited to 'gcc/java/decl.c')
-rw-r--r-- | gcc/java/decl.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/java/decl.c b/gcc/java/decl.c index 9cb3c75..f78d683 100644 --- a/gcc/java/decl.c +++ b/gcc/java/decl.c @@ -2000,7 +2000,11 @@ java_mark_class_local (tree klass) for (t = TYPE_FIELDS (klass); t ; t = TREE_CHAIN (t)) if (FIELD_STATIC (t)) - java_mark_decl_local (t); + { + if (DECL_EXTERNAL (t)) + VEC_safe_push (tree, gc, pending_static_fields, t); + java_mark_decl_local (t); + } for (t = TYPE_METHODS (klass); t ; t = TREE_CHAIN (t)) if (!METHOD_ABSTRACT (t)) |