aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/java-tree.h
diff options
context:
space:
mode:
authorAndrew Haley <aph@redhat.com>2005-04-29 18:43:25 +0000
committerAndrew Haley <aph@gcc.gnu.org>2005-04-29 18:43:25 +0000
commit2c80f015490c820ec71549975d6276b41ed9ae4c (patch)
tree158742ad984de1e20c807a73f81b51044ae5edee /gcc/java/java-tree.h
parenta68b179c86764d41292502567a7b1252f4e57eae (diff)
downloadgcc-2c80f015490c820ec71549975d6276b41ed9ae4c.zip
gcc-2c80f015490c820ec71549975d6276b41ed9ae4c.tar.gz
gcc-2c80f015490c820ec71549975d6276b41ed9ae4c.tar.bz2
re PR java/19285 (Interfaces not initialized by static field access)
2005-04-28 Andrew Haley <aph@redhat.com> PR java/19285 * java-tree.h (soft_resolvepoolentry_node): New. (alloc_constant_fieldref): Declare. * expr.c (expand_java_field_op): Don't call class_init for accesses to static fields with indirect dispatch. * builtins.c (initialize_builtins): Add "__builtin_expect". * decl.c (soft_resolvepoolentry_node): New variable. (java_init_decl_processing): Create a decl for "_Jv_ResolvePoolEntry". * class.c (build_fieldref_cache_entry): New function. (build_static_field_ref): Rewrite for indirect dispatch. * constants.c (find_name_and_type_constant_tree): New function. (alloc_constant_fieldref): Likewise. (build_constants_constructor): Handle CONSTANT_Fieldref and CONSTANT_NameAndType. PR java/21115 * expr.c (force_evaluation_order): Convert outgoing args smaller than integer. From-SVN: r99010
Diffstat (limited to 'gcc/java/java-tree.h')
-rw-r--r--gcc/java/java-tree.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h
index 036fb83..a55e9ab 100644
--- a/gcc/java/java-tree.h
+++ b/gcc/java/java-tree.h
@@ -686,6 +686,9 @@ extern GTY(()) tree java_global_trees[JTI_MAX];
#define wfl_operator \
java_global_trees[JTI_WFL_OPERATOR]
+/* The decl for "_Jv_ResolvePoolEntry". */
+extern GTY(()) tree soft_resolvepoolentry_node;
+
extern const char *cyclic_inheritance_report;
struct lang_identifier GTY(())
@@ -1285,6 +1288,7 @@ extern tree get_method_index (tree decl);
extern void make_class_data (tree);
extern void register_class (void);
extern int alloc_name_constant (int, tree);
+extern int alloc_constant_fieldref (tree, tree);
extern void emit_register_classes (tree *);
extern tree emit_symbol_table (tree, tree, tree, tree, tree, int);
extern void lang_init_source (int);