diff options
author | Tom Tromey <tromey@gcc.gnu.org> | 2003-02-06 19:01:24 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2003-02-06 19:01:24 +0000 |
commit | 2bbc9ee16f93b578e7974917ce80f52404b5d651 (patch) | |
tree | 74518b1eef03e5da93d316d0a16a9fa1a4a156c7 /gcc/java/except.c | |
parent | 5dc911525c4b8d4366eb7f9270b8af1fb1dedb66 (diff) | |
download | gcc-2bbc9ee16f93b578e7974917ce80f52404b5d651.zip gcc-2bbc9ee16f93b578e7974917ce80f52404b5d651.tar.gz gcc-2bbc9ee16f93b578e7974917ce80f52404b5d651.tar.bz2 |
Reverted erroneously applied patch
From-SVN: r62493
Diffstat (limited to 'gcc/java/except.c')
-rw-r--r-- | gcc/java/except.c | 33 |
1 files changed, 4 insertions, 29 deletions
diff --git a/gcc/java/except.c b/gcc/java/except.c index dcfefb7..9ad41a6 100644 --- a/gcc/java/except.c +++ b/gcc/java/except.c @@ -324,35 +324,10 @@ prepare_eh_table_type (tree type) else if (is_compiled_class (type)) exp = build_class_ref (type); else - { - tree ctype = make_node (RECORD_TYPE); - tree field = NULL_TREE; - tree cinit, decl; - tree utf8_ref = build_utf8_ref (DECL_NAME (TYPE_NAME (type))); - char buf[64]; - sprintf (buf, "%s_ref", - IDENTIFIER_POINTER (DECL_NAME (TREE_OPERAND (utf8_ref, 0)))); - PUSH_FIELD (ctype, field, "dummy", ptr_type_node); - PUSH_FIELD (ctype, field, "utf8", utf8const_ptr_type); - FINISH_RECORD (ctype); - START_RECORD_CONSTRUCTOR (cinit, ctype); - PUSH_FIELD_VALUE (cinit, "dummy", integer_minus_one_node); - PUSH_FIELD_VALUE (cinit, "utf8", utf8_ref); - FINISH_RECORD_CONSTRUCTOR (cinit); - TREE_CONSTANT (cinit) = 1; - decl = build_decl (VAR_DECL, get_identifier (buf), utf8const_type); - TREE_STATIC (decl) = 1; - DECL_ARTIFICIAL (decl) = 1; - DECL_IGNORED_P (decl) = 1; - TREE_READONLY (decl) = 1; - TREE_THIS_VOLATILE (decl) = 0; - DECL_INITIAL (decl) = cinit; - layout_decl (decl, 0); - pushdecl (decl); - rest_of_decl_compilation (decl, (char*) 0, global_bindings_p (), 0); - make_decl_rtl (decl, (char*) 0); - exp = build1 (ADDR_EXPR, utf8const_ptr_type, decl); - } + exp = fold (build + (PLUS_EXPR, ptr_type_node, + build_utf8_ref (DECL_NAME (TYPE_NAME (type))), + size_one_node)); return exp; } |