PR middle-end/10336, c++/10401

PR middle-end/10336, c++/10401
        * jump.c (never_reached_warning): Also stop looking if we reach the
        beginning of the function.

From-SVN: r65637
This commit is contained in:
Jason Merrill 2003-04-15 12:13:14 -04:00 committed by Jason Merrill
parent 55adc7bd57
commit 9547e8fd98
3 changed files with 20 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2003-04-14 Jason Merrill <jason@redhat.com>
PR middle-end/10336, c++/10401
* jump.c (never_reached_warning): Also stop looking if we reach the
beginning of the function.
2003-04-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
PR target/10338

View File

@ -1913,7 +1913,8 @@ never_reached_warning (avoided_insn, finish)
us the head of a block, a NOTE_INSN_BASIC_BLOCK, which often follows
the line note. */
for (insn = PREV_INSN (avoided_insn); ; insn = PREV_INSN (insn))
if (GET_CODE (insn) != NOTE)
if (GET_CODE (insn) != NOTE
|| NOTE_LINE_NUMBER (insn) == NOTE_INSN_FUNCTION_BEG)
{
insn = NEXT_INSN (insn);
break;

View File

@ -0,0 +1,12 @@
/* PR middle-end/10336 */
/* { dg-options "-Wunreachable-code" } */
void foo(int i)
{
switch(i) {
case 0:
break;
case 1:
break;
}
}