c-common.c (c_common_truthvalue_conversion): Inhibit Wint-in-bool-context warning with from_macro_definition_at.
2016-09-21 Bernd Edlinger <bernd.edlinger@hotmail.de> * c-common.c (c_common_truthvalue_conversion): Inhibit Wint-in-bool-context warning with from_macro_definition_at. Mention the expression will always evaluate to true. From-SVN: r240331
This commit is contained in:
parent
63cb392608
commit
a09e9e35a6
2 changed files with 10 additions and 2 deletions
|
@ -1,3 +1,9 @@
|
|||
2016-09-21 Bernd Edlinger <bernd.edlinger@hotmail.de>
|
||||
|
||||
* c-common.c (c_common_truthvalue_conversion): Inhibit
|
||||
Wint-in-bool-context warning with from_macro_definition_at.
|
||||
Mention the expression will always evaluate to true.
|
||||
|
||||
2016-09-21 Martin Sebor <msebor@redhat.com>
|
||||
|
||||
PR bootstrap/77676
|
||||
|
|
|
@ -4652,7 +4652,8 @@ c_common_truthvalue_conversion (location_t location, tree expr)
|
|||
TREE_OPERAND (expr, 0));
|
||||
|
||||
case COND_EXPR:
|
||||
if (warn_int_in_bool_context)
|
||||
if (warn_int_in_bool_context
|
||||
&& !from_macro_definition_at (EXPR_LOCATION (expr)))
|
||||
{
|
||||
tree val1 = fold_for_warn (TREE_OPERAND (expr, 1));
|
||||
tree val2 = fold_for_warn (TREE_OPERAND (expr, 2));
|
||||
|
@ -4663,7 +4664,8 @@ c_common_truthvalue_conversion (location_t location, tree expr)
|
|||
&& (!integer_onep (val1)
|
||||
|| !integer_onep (val2)))
|
||||
warning_at (EXPR_LOCATION (expr), OPT_Wint_in_bool_context,
|
||||
"?: using integer constants in boolean context");
|
||||
"?: using integer constants in boolean context, "
|
||||
"the expression will always evaluate to %<true%>");
|
||||
}
|
||||
/* Distribute the conversion into the arms of a COND_EXPR. */
|
||||
if (c_dialect_cxx ())
|
||||
|
|
Loading…
Add table
Reference in a new issue