diff options
author | Jim Wilson <wilson@cygnus.com> | 1998-04-21 19:43:55 +0000 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1998-04-21 12:43:55 -0700 |
commit | 0dacbd0e171bc16e917dc611f564e71cd5922d1f (patch) | |
tree | 23cc828dc0b45ba19c70710fbf42a44d2b68bf6d | |
parent | 2c5873953f9f865cb555ff24af23d26fbb81fd37 (diff) | |
download | gcc-0dacbd0e171bc16e917dc611f564e71cd5922d1f.zip gcc-0dacbd0e171bc16e917dc611f564e71cd5922d1f.tar.gz gcc-0dacbd0e171bc16e917dc611f564e71cd5922d1f.tar.bz2 |
Fix fortran failure reported by Craig Burley.
* stmt.c (check_seenlabel): When search for line number note for
warning, handle case where there is no such note.
From-SVN: r19364
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/stmt.c | 14 |
2 files changed, 13 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 58dc7f7..779e3c6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +1998-04-21 Jim Wilson <wilson@cygnus.com> + + * stmt.c (check_seenlabel): When search for line number note for + warning, handle case where there is no such note. + Tue Apr 21 20:48:37 1998 John Carr <jfc@mit.edu> * genemit.c (gen_exp): Allow machine description to set mode of @@ -3848,12 +3848,14 @@ check_seenlabel () { do insn = PREV_INSN (insn); - while (GET_CODE (insn) != NOTE || NOTE_LINE_NUMBER (insn) < 0); - - warning_with_file_and_line (NOTE_SOURCE_FILE(insn), - NOTE_LINE_NUMBER(insn), - "unreachable code at beginning of %s", - case_stack->data.case_stmt.printname); + while (insn && (GET_CODE (insn) != NOTE || NOTE_LINE_NUMBER (insn) < 0)); + + /* If insn is zero, then there must have been a syntax error. */ + if (insn) + warning_with_file_and_line (NOTE_SOURCE_FILE(insn), + NOTE_LINE_NUMBER(insn), + "unreachable code at beginning of %s", + case_stack->data.case_stmt.printname); break; } } |