diff options
author | Steven Bosscher <stevenb@suse.de> | 2004-07-17 00:31:15 +0000 |
---|---|---|
committer | Steven Bosscher <steven@gcc.gnu.org> | 2004-07-17 00:31:15 +0000 |
commit | 165b54c3f3249b748d8e7ac186d9ad93dab86d86 (patch) | |
tree | e09da04f98976ea28aef332274d380cd05ad342a /gcc/java | |
parent | cd0408d8ffac72f1f807c200896d154b798927c4 (diff) | |
download | gcc-165b54c3f3249b748d8e7ac186d9ad93dab86d86.zip gcc-165b54c3f3249b748d8e7ac186d9ad93dab86d86.tar.gz gcc-165b54c3f3249b748d8e7ac186d9ad93dab86d86.tar.bz2 |
cfgcleanup.c (try_simplify_condjump): Don't remove line notes to avoid unreachable code warnings.
* cfgcleanup.c (try_simplify_condjump): Don't remove line
notes to avoid unreachable code warnings.
* toplev.c (backend_init): Don't emit line notes for
unreachable code warnings.
* combine.c (distribute_notes): Don't distribute a
REG_VTABLE_REF note.
* final.c (final_scan_insn): Don't handle it.
* rtl.c (reg_note_name): Remove it.
* rtl.h (enum reg_node): Dito.
* emit-rtl.c (force_line_numbers, restore_line_number_status):
Remove.
* rtl.h (force_line_numbers, restore_line_number_status):
Remove prototypes.
* stmt.c (using_eh_for_cleanups_p, using_eh_for_cleanups): Move...
* tree-eh.c (using_eh_for_cleanups_p): ...here. Make static.
(using_eh_for_cleanups): Also moved here.
* expr.c (expand_expr_real_1) <CASE_LABEL_EXPR>: Die if we see one.
<SWITCH_EXPR>: Die if we have a non-NULL SWITCH_BODY. Update calls
to expand_start_case and add_case_node.
* stmt.c (struct nesting): Cleanup unused fields condition_code,
last_unconditional_cleanup, nominal_type, printname, and
line_number_status.
(struct fixup_goto): Remove.
(struct stmt_status): Remove x_goto_fixup_chain field.
(goto_fixup_chain): Remove.
(strip_default_case_nodes, group_case_nodes, emit_jump_if_reachable,
pushcase, pushcase_range): Remove.
(expand_start_bindings_and_block): Don't set unused fields in
the nesting stack.
(expand_start_case, add_case_node): Cleanup unused formal arguments.
(expand_end_case_type): Don't simplify the case-list. Use emit_jump
instead of emit_jump_if_reachable.
(emit_case_nodes): Likewise.
* tree-cfg.c (group_case_labels, cleanup_dead_labels): No longer
static.
(update_eh_label): Work around left-over exception handing regions.
* tree-flow.h (group_case_labels, cleanup_dead_labels): Add protos.
* tree-optimize.c (execute_cleanup_cfg_post_optimizing): New function.
(pass_cleanup_cfg_post_optimizing): New pass.
(init_tree_optimization_passes): Run the new pass after all
optimizations.
* tree.h (pushcase, pushcase_range): Remove prototypes.
(expand_start_case, add_case_node): Update prototypes.
cp/
* cp-tree.h (struct lang_type): Don't have three GTY options on a
single bit GTY desc.
java/
* parse.y (java_complete_expand_methods, java_expand_classes): Don't
abuse restore_line_number_status.
From-SVN: r84849
Diffstat (limited to 'gcc/java')
-rw-r--r-- | gcc/java/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/java/parse.y | 22 |
2 files changed, 6 insertions, 21 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 76bef66..5cd390e 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,8 @@ +2004-07-16 Steven Bosscher <stevenb@suse.de> + + * parse.y (java_complete_expand_methods, java_expand_classes): Don't + abuse restore_line_number_status. + 2004-07-15 Frank Ch. Eigler <fche@redhat.com> g++/15861 diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 283176f..2ca09a2 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -7742,21 +7742,9 @@ java_complete_expand_methods (tree class_decl) /* Now do the constructors */ for (decl = first_decl ; !java_error_count && decl; decl = TREE_CHAIN (decl)) { - int no_body; - if (!DECL_CONSTRUCTOR_P (decl)) continue; - - no_body = !DECL_FUNCTION_BODY (decl); - /* Don't generate debug info on line zero when expanding a - generated constructor. */ - if (no_body) - restore_line_number_status (1); - java_complete_expand_method (decl); - - if (no_body) - restore_line_number_status (0); } /* First, do the ordinary methods. */ @@ -9032,9 +9020,7 @@ java_expand_classes (void) { if (DECL_CONSTRUCTOR_P (d)) { - restore_line_number_status (1); java_complete_expand_method (d); - restore_line_number_status (0); break; /* There is only one constructor. */ } } @@ -9056,11 +9042,7 @@ java_expand_classes (void) for (d = TYPE_METHODS (current_class); d; d = TREE_CHAIN (d)) { if (DECL_RESULT (d) == NULL_TREE) - { - restore_line_number_status (1); - java_complete_expand_method (d); - restore_line_number_status (0); - } + java_complete_expand_method (d); } } } @@ -9089,9 +9071,7 @@ java_expand_classes (void) if (DECL_RESULT (d) == NULL_TREE) { something_changed = 1; - restore_line_number_status (1); java_complete_expand_method (d); - restore_line_number_status (0); } } } |