Commit f9eb0973 by Jeff Law

Mark switch expression as used to avoid bogus warning

        PR c/88660
        * c-parser.c (c_parser_switch_statement): Make sure to request
        marking the switch expr as used.

        PR c/88660
        * gcc.dg/pr88660.c: New test.
parent 5fb07870
2020-01-30 Jeff Law <law@redhat.com>
PR c/88660
* c-parser.c (c_parser_switch_statement): Make sure to request
marking the switch expr as used.
2020-01-22 Joseph Myers <joseph@codesourcery.com> 2020-01-22 Joseph Myers <joseph@codesourcery.com>
PR c/93348 PR c/93348
......
...@@ -6607,7 +6607,7 @@ c_parser_switch_statement (c_parser *parser, bool *if_p) ...@@ -6607,7 +6607,7 @@ c_parser_switch_statement (c_parser *parser, bool *if_p)
&& c_token_starts_typename (c_parser_peek_2nd_token (parser))) && c_token_starts_typename (c_parser_peek_2nd_token (parser)))
explicit_cast_p = true; explicit_cast_p = true;
ce = c_parser_expression (parser); ce = c_parser_expression (parser);
ce = convert_lvalue_to_rvalue (switch_cond_loc, ce, true, false); ce = convert_lvalue_to_rvalue (switch_cond_loc, ce, true, true);
expr = ce.value; expr = ce.value;
/* ??? expr has no valid location? */ /* ??? expr has no valid location? */
parens.skip_until_found_close (parser); parens.skip_until_found_close (parser);
......
2020-01-30 Jeff Law <law@redhat.com
PR c/88660
* gcc.dg/pr88660.c: New test
2020-01-30 Jakub Jelinek <jakub@redhat.com> 2020-01-30 Jakub Jelinek <jakub@redhat.com>
PR lto/93384 PR lto/93384
......
/* { dg-do-compile } */
/* { dg-options "-O -Wunused-but-set-variable" } */
int main(void)
{
const int i = 0;
switch(i)
{
default: break;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment