<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/70347>70347</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
A null pointer dereference was not detected in versions after 12.0.1 [Clang Static Analyzer]
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
tianxinghe
</td>
</tr>
</table>
<pre>
llvm16.0.0
https://godbolt.org/z/rTh9hx84z
llvm12.0.1
https://godbolt.org/z/vv6Tq6qeE
The old version of the checker correctly reports the npd bug and the path that triggers it.
After modifying the **if** to **goto** at line 436, csa16 can also find it.
![截图 2023-10-26 23-28-10](https://github.com/llvm/llvm-project/assets/26410605/3aaaa611-24b3-4d81-bbd8-44678bbc8aa7)
https://godbolt.org/z/5xcrW17Yh
I am trying to provide the minimal version and find the reason for this phenomenon. Can you give me some suggestions? Thank you!
@steakhal
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUk02P_KYPx18Nc7ESAXmY5JBD9iHS__xfqerRAU-gS2B-QKY7--qrZLbtqr38ejEK2LH9-dqYkl080cCaJ9a8nHDLJsQhW_Qf1i-GTnPQ98G52yrakpec8RfGR5PzNbFqZHJiclqCnoPLZYgLk9Mnk1N8M7356OrPh_sRLkteip8Lv93atx_tD3p9uD_smyEITsONYrLBQ7hANgTKkHqnCCrESCq7O0S6hpjT8eqvGuZtAfT6-L5iNpANZsjRLgvFBDaX39OMl0wR1qDt5W79ckQxOTI52svjhBy-bpaQw9cdZnDWE9RVy-QzqISiBYUe0KUAF-v1t0RS7LhfW9Z1bBzZa8P6J_b0CpLLqhC8kC3IqpBdIThrXpjs_gHMZrPNpQork9PO9usorjH8RiozOWFKlBOTk2xrwVveMDlViIitEIWs56qodSeKedZdUdftuZtn1SGemex_TqLmQ8VfxPlX853dw_4PcIUcH_QCXGO4WU0HyNV6u6L7S8NdloPN_hgJU_BwCRGysQmuhnxYyQdfwjN6uIcNFnsjWAlS2M22LJSyDT6xaoI3g_5999r5PuqpecqE7wbdv8s86aHSfdXjiQbR9l1V1VXVnsygKxSkpOYCFc51zbnUTT8rLTinM_UnO-xCCS5b0VSSd6WWqu0Edv1ZnWdODas5rWhduauyQzvZlDYazryqzyeHM7l0bJyUyqFfmJT78sVjz4p5WxKrubMpp7__kG12NIzgN-fgGqzfx1RTpAtF8orgd0zgQwZNmVQmDdb_yTkBHlP92EFgzdPznhb-nzFbBaNHd_-kuNewRTf852k7utun7WjwjwAAAP__5otX3g">