aboutsummaryrefslogtreecommitdiff
path: root/gcc/java
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/java')
-rw-r--r--gcc/java/ChangeLog12
-rw-r--r--gcc/java/class.c19
-rw-r--r--gcc/java/decl.c6
-rw-r--r--gcc/java/java-tree.h4
-rw-r--r--gcc/java/jcf-parse.c3
-rw-r--r--gcc/java/lang.c2
6 files changed, 16 insertions, 30 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index fd9e2b1..ebd3f17 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,15 @@
+2015-06-05 Aldy Hernandez <aldyh@redhat.com>
+
+ * class.c: Remove pending_static_fields.
+ (add_field): Remove use of pending_static_fields.
+ (java_write_globals): Remove.
+ * decl.c (java_mark_class_local): Remove use of
+ pending_static_fields.
+ * java-tree.h: Remove pending_static_fields and
+ java_write_globals.
+ * jcf-parse.c (java_parse_file): Call global_decl_processing.
+ * lang.c (LANG_HOOKS_WRITE_GLOBALS): Remove.
+
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* boehm.c: Adjust includes for restructured coretypes.h.
diff --git a/gcc/java/class.c b/gcc/java/class.c
index 54aea3c..1d66c72 100644
--- a/gcc/java/class.c
+++ b/gcc/java/class.c
@@ -120,10 +120,6 @@ static GTY(()) vec<tree, va_gc> *registered_class;
currently being compiled. */
static GTY(()) tree this_classdollar;
-/* A list of static class fields. This is to emit proper debug
- info for them. */
-vec<tree, va_gc> *pending_static_fields;
-
/* Return the node that most closely represents the class whose name
is IDENT. Start the search from NODE (followed by its siblings).
Return NULL if an appropriate node does not exist. */
@@ -892,8 +888,6 @@ add_field (tree klass, tree name, tree field_type, int flags)
/* Considered external unless we are compiling it into this
object file. */
DECL_EXTERNAL (field) = (is_compiled_class (klass) != 2);
- if (!DECL_EXTERNAL (field))
- vec_safe_push (pending_static_fields, field);
}
return field;
@@ -3270,17 +3264,4 @@ in_same_package (tree name1, tree name2)
return (pkg1 == pkg2);
}
-/* lang_hooks.decls.final_write_globals: perform final processing on
- global variables. */
-
-void
-java_write_globals (void)
-{
- tree *vec = vec_safe_address (pending_static_fields);
- int len = vec_safe_length (pending_static_fields);
- write_global_declarations ();
- emit_debug_global_declarations (vec, len);
- vec_free (pending_static_fields);
-}
-
#include "gt-java-class.h"
diff --git a/gcc/java/decl.c b/gcc/java/decl.c
index 8a2c66d..de75eb6 100644
--- a/gcc/java/decl.c
+++ b/gcc/java/decl.c
@@ -1967,11 +1967,7 @@ java_mark_class_local (tree klass)
for (t = TYPE_FIELDS (klass); t ; t = DECL_CHAIN (t))
if (FIELD_STATIC (t))
- {
- if (DECL_EXTERNAL (t))
- vec_safe_push (pending_static_fields, t);
- java_mark_decl_local (t);
- }
+ java_mark_decl_local (t);
for (t = TYPE_METHODS (klass); t ; t = DECL_CHAIN (t))
if (!METHOD_ABSTRACT (t))
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h
index 22c9789..58a60b8 100644
--- a/gcc/java/java-tree.h
+++ b/gcc/java/java-tree.h
@@ -1194,10 +1194,6 @@ extern void rewrite_reflection_indexes (void *);
int cxx_keyword_p (const char *name, int length);
-extern GTY(()) vec<tree, va_gc> *pending_static_fields;
-
-extern void java_write_globals (void);
-
#define DECL_FINAL(DECL) DECL_LANG_FLAG_3 (DECL)
/* Access flags etc for a method (a FUNCTION_DECL): */
diff --git a/gcc/java/jcf-parse.c b/gcc/java/jcf-parse.c
index 038f7f8..ba216a1 100644
--- a/gcc/java/jcf-parse.c
+++ b/gcc/java/jcf-parse.c
@@ -1996,6 +1996,9 @@ java_parse_file (void)
/* Arrange for any necessary initialization to happen. */
java_emit_static_constructor ();
gcc_assert (global_bindings_p ());
+
+ /* Do final processing on globals. */
+ global_decl_processing ();
}
diff --git a/gcc/java/lang.c b/gcc/java/lang.c
index 8caa28e..84b1680 100644
--- a/gcc/java/lang.c
+++ b/gcc/java/lang.c
@@ -146,8 +146,6 @@ struct GTY(()) language_function {
#define LANG_HOOKS_DECL_PRINTABLE_NAME lang_printable_name
#undef LANG_HOOKS_PRINT_ERROR_FUNCTION
#define LANG_HOOKS_PRINT_ERROR_FUNCTION java_print_error_function
-#undef LANG_HOOKS_WRITE_GLOBALS
-#define LANG_HOOKS_WRITE_GLOBALS java_write_globals
#undef LANG_HOOKS_TYPE_FOR_MODE
#define LANG_HOOKS_TYPE_FOR_MODE java_type_for_mode