<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/60835>60835</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Clang analyzer crash when using __builtin_bit_cast()
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
pfent
</td>
</tr>
</table>
<pre>
Clang analyzer crashes for the following input:
```cpp
void* data = nullptr;
int main() { return __builtin_bit_cast(long, data) + 1; }
```
With a debug build from `main`, I get an assertion of "No dispatcher registered for an event":
```console
$ clang++ -cc1 -analyze -analyzer-checker=nullability.NullReturnedFromNonnull crash.cpp
clang++: /home/fent/llvm-project/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp:56: void clang::ento::CheckerManager::finishedCheckerRegistration(): Assertion `Event.second.HasDispatcher && "No dispatcher registered for an event"' failed.
...
```
This seems related to #60657, but still reproduces on `main` with @steakhal's fix.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUlE2PpDYQhn9NcSkNArsx3QcO9HRQcsgcNpFyHBlcgLNuG9lmOpNfHxnQbD5GkVZqtfxRrnp56rVlCHqyRA1UV6humVzj7HyzjGRj1jv13jwbaSeUVpr3P8nj4GWYKeDoPMaZcHTGuIe2E2q7rBF4C8UNihZEsf-GZdlX3pxWwFpUMkoEfkO7GrNED_y6B2gb8S61BXYGdkGor-gprt7i62u_ahO1fe11fB1kiMDOxtkJ2POWb4tnVyyBXxHq2780HNPt_zcdZ5SoqF8nTGkVjt7dEUSxFRdFSvoTThRRWpQhkI_aWXQjAmMvDpUOi4zDTB49TTpE8qQ2INIivZGNwNgnIJwNztCxyk44JLLArkn40zCU-HRQ_hj4p2Gm4St54LdES_ba6Piev6zGfNnQkOq8u784m7b35uQfxP9WAHiLwLrZ3QlYN24aO2Pe7k-Ld7_TkKZHeGd0D6z7Jcqoh_YQAqx7dj6dfd4V_SytnMhvxXhbiVQgdfj4Kt4Cb8lGt4_-eWhfG7XVYSZ17H3ZUHqZWO8OSCnbD_wgih8S2zzQ4KzKf5Th9q0RwAQw8V0NYjWOUhtS-U4rz_P_sc2vsw4YiO4BPRkZSWF0CIyLQlR1sky_RgxRG4OeFu_UOlDAXfhhLHwk78GpCJHk11kaYHXAUf-RZ6rh6sIvMqOmFLUQvKjKMpubeqhP7FIKKc_jOKqCs4tiZypLUUsuSp7phhWMF6ysy-JUVmV-qUVVC1I9ERt5f4ZTQXepTZ66nTs_ZTqElRpRnHmVGdmTCdvtZ8zSA7fNhKe6Zb7ZHNKvU4BTYXSI4VuWqKOhT18HfMxkcQ3pUfj05gK7ZKs3zRzjEpIZWAesm3Sc1z4f3P2w5n8duokLwLpN_F8BAAD__xrHgCQ">