<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/63403>63403</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Multiple issues with -ferror-limit
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
pmor13
</td>
</tr>
</table>
<pre>
https://clang.llvm.org/docs/UsersManual.html says:
> -ferror-limit=123
> Stop emitting diagnostics after 123 errors have been produced. The default is 20, and the error limit can be disabled with -ferror-limit=0.
Issue 1:
```
$ echo "int_ x; int x=0.5;" | clang -xc - -ferror-limit=1
<stdin>:1:1: error: unknown type name 'int_'; did you mean 'int'?
int_ x; int x=0.5;
^~~~
int
<stdin>:1:15: warning: implicit conversion from 'double' to 'int' changes value from 0.5 to 0 [-Wliteral-conversion]
int_ x; int x=0.5;
~ ^~~
1 warning and 1 error generated.
```
Here we see that despite of `-ferror-limit=1` diagnostic `warning: implicit conversion ...` was emitted. This contradicts with the manual.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMVE2PpDYQ_TXmUgKZcvMxBw4z04OSw56SKMfI4GpwYmxkm-mdy_z2yNC7vcrsKov4MKp6Va_KryxD0JMl6lj1xKpzJrc4O9-ti_OlyAan3ro5xjUw8ciwZ9iPRtqpMOZ1KZyfGPbKjYFh_0cgHz5Ju0lTzHExEOTbjuJnxh-ZeIH8Qt47nxu96MjEuURxN_4W3Qq06Bi1nUBpOVkXoh4DyEskDyUK2OEBZvlKMBBZWL1T20iqgN9nAkUXuZkIOgByhs8grYI404GDPS2M0sJAoHSQgyEFVx3nD8x4cSO2v38NYSMo77XU_HYfv3gCGmcHDFHb-Bd8ZuIJtI1pceZFxcQTQwTWPMPePMg_j5B_bMeXZjyHqLRl4oWJx_L2HDWkxWb_se5qIb6tBFYuBAyblJdhkxIrreDNbbCQtDfTbumP8D9keCSvXt7f3796_pBRlZhcpbfaTmmpl9XoMbXX2VfyQTsLF--WREC5bTDEsIHo7oRgnKWdKMCrNBsdzryokg8HVj3lfxodyUuT30Oy6vwzRcA31zvsJR2G8gvlXRnlTRcTWfIykiq-u72_kCe4EgQiiLOMoCisOhK4C7Caf9zFmn8j3-TyP30qiiJhrjIc-j_krEPyiV4qPcZwyDRpeTkmLFOdUA_iQWbUlXXbYH3ilcjmrq1awdUgealUjQ_0UJZtS0StwssJW8x0hxwFr5GXiI0QBVZDVQ_UDKdGlFXTshOnRWrzdcYznQagq8WJi8zIgUzYTwtES1fYjQwxHR6-S5h82KbATtzoEMM9StTRUPdpM1Gvhg5c-M78ZZs3_zlzJh3nbShGtzDsU8DbJ1-9-5vGyLA_wjHsd5r_BgAA__8LfX_g">