jump.c (redirect_jump): Move a NOTE_INSN_FUNCTION_END to the new label.

* jump.c (redirect_jump): Move a NOTE_INSN_FUNCTION_END to the
        new label.

From-SVN: r31721
This commit is contained in:
Jason Merrill 2000-01-31 18:52:34 +00:00 committed by Jason Merrill
parent d4bf484274
commit d4cf5733ee
2 changed files with 12 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2000-01-31 Jason Merrill <jason@casey.cygnus.com>
* jump.c (redirect_jump): Move a NOTE_INSN_FUNCTION_END to the
new label.
2000-01-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* gansidecl.h (PROTO, VPROTO, PVPROTO): Delete macros.

View File

@ -4639,6 +4639,13 @@ redirect_jump (jump, nlabel)
if (nlabel)
++LABEL_NUSES (nlabel);
/* If we're eliding the jump over exception cleanups at the end of a
function, move the function end note so that -Wreturn-type works. */
if (olabel && NEXT_INSN (olabel)
&& GET_CODE (NEXT_INSN (olabel)) == NOTE
&& NOTE_LINE_NUMBER (NEXT_INSN (olabel)) == NOTE_INSN_FUNCTION_END)
emit_note_after (NOTE_INSN_FUNCTION_END, nlabel);
if (olabel && --LABEL_NUSES (olabel) == 0)
delete_insn (olabel);