diff options
author | Richard Stallman <rms@gnu.org> | 1992-07-05 21:59:55 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1992-07-05 21:59:55 +0000 |
commit | 9ab0ddd73b118d0ba6d429dcf2770b889a5972ab (patch) | |
tree | 2c1b38896834606232521ff9fad41f0aca9fb013 | |
parent | 1600ec6700767b69c54c4071f6ea9f2392d13670 (diff) | |
download | gcc-9ab0ddd73b118d0ba6d429dcf2770b889a5972ab.zip gcc-9ab0ddd73b118d0ba6d429dcf2770b889a5972ab.tar.gz gcc-9ab0ddd73b118d0ba6d429dcf2770b889a5972ab.tar.bz2 |
*** empty log message ***
From-SVN: r1452
-rw-r--r-- | gcc/stmt.c | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -3232,6 +3232,9 @@ pushcase (value, label, duplicate) if (index_type == error_mark_node) return 0; + /* There may be NOP_EXPR around the value if we got it from an enum. */ + STRIP_NOPS (arg); + /* Convert VALUE to the type in which the comparisons are nominally done. */ if (value != 0) value = convert (nominal_type, value); @@ -3361,6 +3364,10 @@ pushcase_range (value1, value2, label, duplicate) } case_stack->data.case_stmt.seenlabel = 1; + /* There may be NOP_EXPR around the value if we got it from an enum. */ + STRIP_NOPS (value1); + STRIP_NOPS (value2); + /* Convert VALUEs to type in which the comparisons are nominally done. */ if (value1 == 0) /* Negative infinity. */ value1 = TYPE_MIN_VALUE(index_type); @@ -3525,7 +3532,7 @@ check_for_full_enumeration_handling (type) } /* Terminate a case (Pascal) or switch (C) statement - in which CASE_INDEX is the expression to be tested. + in which ORIG_INDEX is the expression to be tested. Generate the code to test it and jump to the right place. */ void |