From: DJ Delorie Date: Fri, 22 Jul 2005 02:35:54 +0000 (-0400) Subject: c-typeck.c (parser_build_binary_op): Add warning control to warning calls. X-Git-Tag: misc/cutover-cvs2svn~1592 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c303630a7dd9010c0ef35d7c436dbbd282de36ea;p=thirdparty%2Fgcc.git c-typeck.c (parser_build_binary_op): Add warning control to warning calls. * c-typeck.c (parser_build_binary_op): Add warning control to warning calls. (c_finish_if_stmt): Likewise. From-SVN: r102265 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 34b0263e3188..01322a4d7536 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -2,6 +2,8 @@ * toplev.c (warn_deprecated_use): Add warning control to warning call. + * c-typeck.c (parser_build_binary_op): Likewise. + (c_finish_if_stmt): Likewise. 2005-07-21 Richard Henderson diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c index 48395916dbd8..cb28838ffd02 100644 --- a/gcc/c-typeck.c +++ b/gcc/c-typeck.c @@ -2363,14 +2363,16 @@ parser_build_binary_op (enum tree_code code, struct c_expr arg1, { if (code1 == PLUS_EXPR || code1 == MINUS_EXPR || code2 == PLUS_EXPR || code2 == MINUS_EXPR) - warning (0, "suggest parentheses around + or - inside shift"); + warning (OPT_Wparentheses, + "suggest parentheses around + or - inside shift"); } if (code == TRUTH_ORIF_EXPR) { if (code1 == TRUTH_ANDIF_EXPR || code2 == TRUTH_ANDIF_EXPR) - warning (0, "suggest parentheses around && within ||"); + warning (OPT_Wparentheses, + "suggest parentheses around && within ||"); } if (code == BIT_IOR_EXPR) @@ -2379,11 +2381,13 @@ parser_build_binary_op (enum tree_code code, struct c_expr arg1, || code1 == PLUS_EXPR || code1 == MINUS_EXPR || code2 == BIT_AND_EXPR || code2 == BIT_XOR_EXPR || code2 == PLUS_EXPR || code2 == MINUS_EXPR) - warning (0, "suggest parentheses around arithmetic in operand of |"); + warning (OPT_Wparentheses, + "suggest parentheses around arithmetic in operand of |"); /* Check cases like x|y==z */ if (TREE_CODE_CLASS (code1) == tcc_comparison || TREE_CODE_CLASS (code2) == tcc_comparison) - warning (0, "suggest parentheses around comparison in operand of |"); + warning (OPT_Wparentheses, + "suggest parentheses around comparison in operand of |"); } if (code == BIT_XOR_EXPR) @@ -2392,28 +2396,33 @@ parser_build_binary_op (enum tree_code code, struct c_expr arg1, || code1 == PLUS_EXPR || code1 == MINUS_EXPR || code2 == BIT_AND_EXPR || code2 == PLUS_EXPR || code2 == MINUS_EXPR) - warning (0, "suggest parentheses around arithmetic in operand of ^"); + warning (OPT_Wparentheses, + "suggest parentheses around arithmetic in operand of ^"); /* Check cases like x^y==z */ if (TREE_CODE_CLASS (code1) == tcc_comparison || TREE_CODE_CLASS (code2) == tcc_comparison) - warning (0, "suggest parentheses around comparison in operand of ^"); + warning (OPT_Wparentheses, + "suggest parentheses around comparison in operand of ^"); } if (code == BIT_AND_EXPR) { if (code1 == PLUS_EXPR || code1 == MINUS_EXPR || code2 == PLUS_EXPR || code2 == MINUS_EXPR) - warning (0, "suggest parentheses around + or - in operand of &"); + warning (OPT_Wparentheses, + "suggest parentheses around + or - in operand of &"); /* Check cases like x&y==z */ if (TREE_CODE_CLASS (code1) == tcc_comparison || TREE_CODE_CLASS (code2) == tcc_comparison) - warning (0, "suggest parentheses around comparison in operand of &"); + warning (OPT_Wparentheses, + "suggest parentheses around comparison in operand of &"); } /* Similarly, check for cases like 1<=i<=10 that are probably errors. */ if (TREE_CODE_CLASS (code) == tcc_comparison && (TREE_CODE_CLASS (code1) == tcc_comparison || TREE_CODE_CLASS (code2) == tcc_comparison)) - warning (0, "comparisons like X<=Y<=Z do not have their mathematical meaning"); + warning (OPT_Wparentheses, "comparisons like X<=Y<=Z do not " + "have their mathematical meaning"); } @@ -6979,7 +6988,8 @@ c_finish_if_stmt (location_t if_locus, tree cond, tree then_block, found: if (COND_EXPR_ELSE (inner_if)) - warning (0, "%Hsuggest explicit braces to avoid ambiguous %", + warning (OPT_Wparentheses, + "%Hsuggest explicit braces to avoid ambiguous %", &if_locus); }