<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/102912>102912</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
clang/lib/Sema/SemaOverload.cpp: 2 * boolean in compare ?
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang,
code-quality
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
dcb314
</td>
</tr>
</table>
<pre>
Static analyser cppcheck says:
1.
clang/lib/Sema/SemaOverload.cpp:512:26: style: Comparison of a variable having boolean value using relational (<, >, <= or >=) operator. [comparisonOfBoolWithBoolError]
Source code is
return (FromWidth < ToWidth + (FromSigned == ToSigned)) &&
(FromSigned <= ToSigned);
I am pretty sure comparison operators don't apply to booleans.
2.
clang/lib/Sema/SemaOverload.cpp:545:44: style: Comparison of a variable having boolean value using relational (<, >, <= or >=) operator. [comparisonOfBoolWithBoolError]
Duplicate.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzUVM1uozAQfprhMmoEYyDhwCEJRdpTD6nUszGT4F0Hs7aJlLdfOaFt2tNqbyshj2csz3w_gPRen0bmGoodFE0i5zBYV_eqE1medLa_1ocgg1YoR2munh2qaVIDq1_o5dWD2ELaQLqs2eoxU0aOJ6DW6A6oPfBZLuHlws5Y2a_UNIHYFhmB2FIJYos-XA3Hzd6eJ-m0tyPaI0q8SKdlZxgHedHjCTtrDcsRL9LMjLOPNcdGBm1HaRBoA2IPtEcQz_ewB9GgdbeCaIAqtBM7GaxbIRQ79THw5biz1rzpMMT47Jx1UDSPzA52dopR2Z5Re3w8QsdhdmME0Dp7ftN9GOJwfLXLnnbvh4eofY8RjWjw1d5zoCqCAyrjc2_6_cL--wWxewTxA-UZJ8chXNHPLiL9VHMh7bG3I9A6oJwmc8Vg3zX1X1ykf_M0L0Bs8_z_8bSZJ6OVDPyF731N-lr0lahkwnW2JpGvhSirZKiLkomOopOqULTuVF9mVFbdpt9UuWKlEl1TSnm6ySjLRZlWq_LYV3mpuoq44OM6gzzls9RmZczlvLLulGjvZ66zlKqMEiM7Nv72eRIt4hPQPma256ffszQ6XGOxaBJXxy5P3XzykKdG--A_-wYdDNd_ayASAm0_LNHj8g4xgmiT2Zl6CGG6_QCoBWpPOgxzt1L2HJuby3t4mpz9ySoAtTdiHqhduF1q-hMAAP__FFFi3A">