<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/64783>64783</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Missing -Wsign-compare warning with enum values
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
alexhenrie
</td>
</tr>
</table>
<pre>
```c
#include <stdio.h>
int main()
{
signed int a = 1;
enum : signed int { b = 1 };
unsigned int c = -1;
if (a < c) // condition is true, -Wsign-compare warns about it
puts("a < c");
if (b < c) // condition is true, but no warning
puts("b < c");
return 0;
}
```
The compiler should warn about both if statements.
$ clang --version
clang version 15.0.7
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMU02PnDgQ_TXFpQQC833gMDO9SHvY20p7XNlQDY6M3fLHTOffRwYm3VEUJa0WWPVevfcK29w5uWiiAepXqC8JD341duCK7itpKykRZv46QJMf_wnyC-QvwEqpJxVmQijfnJ-lyVYo_zrR_Sm1x41LDawD1p9I-3osEBF35xkjjyOUFyygfIJJhw2hfHnmQfuK4uAitJcf-EE_EaedlD4UHzx5RWBddHzDCViPwEZgI05Gz9JLo1E69DYQsDdM_4ui6WS2G7eEH9xqh1yY4FH6h2b83YJ3-6zsuzaLg_8qgfizBCJ41GZ3lno5RR5e4jdelnywGvMH1F7OxeeePrf8uxLGYaUii241Qc279TmzMH6N8Z3nnjbS3mXP3cAqnBTXC6bpO1knjT6Ao3iWsKizPGtPQ24X8nGb713zf1OltylVUod7uujwmckSn3EzM6lIvBkn7wf0t3aeK0XzRdoIARuDs8BGIXUyD-Xclz1PaCianpVF3uR9sg5CiGvXtBMrm1o0dG06PvGmYC1vC8FFkciB5azMu6JlrGiqPuuKvK7zgtqaqiurW6hy2rhUmVLvW2bskkjnAg1N1XZlorgg5T5vlB0iKRVhcVDlSjrvHm1eekXDP9I5GT_az4ctlj-kX4_b8M5VIJcEq4bV-5uD8uU4Oov0axDZZDZgY1Q_X-nNmi80eWDjntABG_eQ3wIAAP__yAwoNA">