<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/57011>57011</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            clang-tidy crash for clang-analyzer-fuchsia.HandleChecker
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          ottojo
      </td>
    </tr>
</table>

<pre>
    Commandline: `clang-tidy src/handle_attributes.cpp -checks=-\*,clang-analyzer-fuchsia.HandleChecker -- --std=c++20`

Input source:
```cpp
struct zx_handle_t{};

[[clang::acquire_handle("Fuchsia")]] zx_handle_t open_thing();

void close_thing(zx_handle_t handle [[clang::release_handle("Fuchsia")]]) noexcept;

void use_thing(zx_handle_t handle [[clang::use_handle("Fuchsia")]]);

void doStuff() {
    zx_handle_t handle = open_thing();
    close_thing(handle);
    close_thing(handle);
}
```

Backtrace:
```
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: clang-tidy src/handle_attributes.cpp -checks=-*,clang-analyzer-fuchsia.HandleChecker -- --std=c++20
1.      <eof> parser at end of file
2.      While analyzing stack: 
        #0 Calling doStuff()
3.      /home/jonas/Workspace/sandbox/src/handle_attributes.cpp:10:5: Error evaluating statement
 #0 0x00007f21a32d545a (/usr/lib/libLLVM-14.so+0xcd545a)
 #1 0x00007f21a32d2aef llvm::sys::RunSignalHandlers() (/usr/lib/libLLVM-14.so+0xcd2aef)
 #2 0x00007f21a32d2c3d (/usr/lib/libLLVM-14.so+0xcd2c3d)
 #3 0x00007f21a2054a40 (/usr/lib/libc.so.6+0x38a40)
 #4 0x00007f21ab8817e0 clang::ento::SymbolReaper::isLive(clang::ento::SymExpr const*) (/usr/lib/libclang-cpp.so.14+0x20817e0)
 #5 0x00007f21ab946b47 (/usr/lib/libclang-cpp.so.14+0x2146b47)
 #6 0x00007f21ab75e6b6 clang::ento::CheckerManager::runCheckersForDeadSymbols(clang::ento::ExplodedNodeSet&, clang::ento::ExplodedNodeSet const&, clang::ento::SymbolReaper&, clang::Stmt const*, clang::ento::ExprEngine&, clang::ProgramPoint::Kind) (/usr/lib/libclang-cpp.so.14+0x1f5e6b6)
 #7 0x00007f21ab7c6919 clang::ento::ExprEngine::removeDead(clang::ento::ExplodedNode*, clang::ento::ExplodedNodeSet&, clang::Stmt const*, clang::LocationContext const*, clang::Stmt const*, clang::ProgramPoint::Kind) (/usr/lib/libclang-cpp.so.14+0x1fc6919)
 #8 0x00007f21ab7daabc clang::ento::ExprEngine::ProcessStmt(clang::Stmt const*, clang::ento::ExplodedNode*) (/usr/lib/libclang-cpp.so.14+0x1fdaabc)
 #9 0x00007f21ab7ddbaf clang::ento::ExprEngine::processCFGElement(clang::CFGElement, clang::ento::ExplodedNode*, unsigned int, clang::ento::NodeBuilderContext*) (/usr/lib/libclang-cpp.so.14+0x1fddbaf)
#10 0x00007f21ab7890ff clang::ento::CoreEngine::dispatchWorkItem(clang::ento::ExplodedNode*, clang::ProgramPoint, clang::ento::WorkListUnit const&) (/usr/lib/libclang-cpp.so.14+0x1f890ff)
#11 0x00007f21ab789308 clang::ento::CoreEngine::ExecuteWorkList(clang::LocationContext const*, unsigned int, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>) (/usr/lib/libclang-cpp.so.14+0x1f89308)
#12 0x00007f21abb5ea20 (/usr/lib/libclang-cpp.so.14+0x235ea20)
#13 0x00007f21abb6764d (/usr/lib/libclang-cpp.so.14+0x236764d)
#14 0x00007f21ab5bfe50 clang::MultiplexConsumer::HandleTranslationUnit(clang::ASTContext&) (/usr/lib/libclang-cpp.so.14+0x1dbfe50)
#15 0x00007f21a9fd9efb clang::ParseAST(clang::Sema&, bool, bool) (/usr/lib/libclang-cpp.so.14+0x7d9efb)
#16 0x00007f21ab5b39b9 clang::FrontendAction::Execute() (/usr/lib/libclang-cpp.so.14+0x1db39b9)
#17 0x00007f21ab552e67 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/lib/libclang-cpp.so.14+0x1d52e67)
#18 0x00007f21ab701528 clang::tooling::FrontendActionFactory::runInvocation(std::shared_ptr<clang::CompilerInvocation>, clang::FileManager*, std::shared_ptr<clang::PCHContainerOperations>, clang::DiagnosticConsumer*) (/usr/lib/libclang-cpp.so.14+0x1f01528)
#19 0x00005632543db198 (/usr/bin/clang-tidy+0x48d198)
#20 0x00007f21ab6e8f87 clang::tooling::ToolInvocation::runInvocation(char const*, clang::driver::Compilation*, std::shared_ptr<clang::CompilerInvocation>, std::shared_ptr<clang::PCHContainerOperations>) (/usr/lib/libclang-cpp.so.14+0x1ee8f87)
#21 0x00007f21ab7007d4 clang::tooling::ToolInvocation::run() (/usr/lib/libclang-cpp.so.14+0x1f007d4)
#22 0x00007f21ab702220 clang::tooling::ClangTool::run(clang::tooling::ToolAction*) (/usr/lib/libclang-cpp.so.14+0x1f02220)
#23 0x00005632543df17a clang::tidy::runClangTidy(clang::tidy::ClangTidyContext&, clang::tooling::CompilationDatabase const&, llvm::ArrayRef<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, llvm::IntrusiveRefCntPtr<llvm::vfs::OverlayFileSystem>, bool, bool, llvm::StringRef) (/usr/bin/clang-tidy+0x49117a)
#24 0x0000563254053c11 clang::tidy::clangTidyMain(int, char const**) (/usr/bin/clang-tidy+0x105c11)
#25 0x00007f21a203f2d0 (/usr/lib/libc.so.6+0x232d0)
#26 0x00007f21a203f38a __libc_start_main (/usr/lib/libc.so.6+0x2338a)
#27 0x000056325404a915 _start (/usr/bin/clang-tidy+0xfc915)
[1]    187653 segmentation fault (core dumped)  clang-tidy src/handle_attributes.cpp  -- --std=c++20
```

Version:
```
clang-tidy --version
LLVM (http://llvm.org/):
  LLVM version 14.0.6
  Optimized build.
  Default target: x86_64-pc-linux-gnu
  Host CPU: znver2
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJytWVuT2rgS_jWeFxWU79gPPMwYOJk6k81USHYfKVmWwYmxfCR5lsmv35Zsg8XgGcgeijC-tLq__rqlbikpy17nCdvvcZWVRUUt7x5ZoU1KXG0nsshekeDEclc79Z5usJS8SBtJxZTUNZqQHSU_heUtJlaQWO695SbtUFzh8vUX5ZO8ITtR4OknrSBR8pSjyQS-QmYwErQ_wNe1waxlLyz7vv19rOpGIsEaThSq7lVot1-w3j4RkjdEol-HTQdRWrMHa7awvIehNit4gK_GppR595j8ryk47UZZbmS57qrFCleWG1vBAr5DxYjVtNrIXQE6lHx8ZuOFFRkiJRP0KDQc3V6gN0g4LSkWHyKBC1QxeiC0lpcMNzeaba4yeclSxtayyfOWA6To1u8QfC4Z9hbjxKkxJmM9pNtkVMDNBBmifsDkp-T4Uh61t89Py_v1Eokm3RcSYZQ2W8RpzbhEkqGdlLVQQ90VfLeF3DXplLA93JTlS_9nUnP2gxIJt4UQDRVwgQAoKipSNhlFckcR4VjsUNrjmbbm1xIeoKzZ10eA9hTpzzNnW473CPNts6eVVDjQb8zOfzk1NSanw2R5CWW55S1RjbmAIVgiCo6yHOUFxEULu53wXzt4hFqbED0klK96lTkGV-t0PRsluCyVjJFgrZzX2wZn2R5iv_rBKqw4_ovxn6JWwXVXAjxJ2UFdjfMCxh0bfgKFYsk544i-4LLBssMnqWK6w6eB2QcbPrPcdbDnZoEfYKTBrRrBVfiLtP19evrz88Txp4IBbfaBaNGjD0qXc6bLxTRHOov0pBSvor342lTrYgustcHhop9tV5lVWg2z7rlZ4mXX6gJRQ5c31OXagY99-7IuAlqmodbjRSBlqPGHatIocmbURoP1CULA2qv16z5l5VeKa8rbJ4V4Kl7UujUmvzzUHBFWCakzf4S3dj5ASiicjq-BurZGYkANDKixH6b-7AaNjh5gaAwNjbOAhml42fluWn6GGbTt3edN1T0WK8YXFGctRWKMEaCjZBnN_oCfNQVOICjJZXtnoj2J4wOM6LyRW8u9HARi3ChfVlvVf7zR0K2Az6yAOamf_Leospti6uSaYCMCMzMCJIyd-ENwXb3esxeqWL-G7g_cfj8s77H3xAisWKxKWCXpYVTsPRX_F2o1cwa1kUlthnFKrqMWABEqhMJscnt1Gpm83-SIxmk4Ep85kqU4v86RunUkWf1nWbbVxHBn-PxaXxLUVAJKAlUdxfg4Jf_QFGVGeZcZv8GEcvTIhKpatslEFNv5CBMJ43TIRFZAcZZkp8r0I1TW35szRqaOua5MPBVCfq-K4bp1k-vaM8N159x1z46uc315oASajh6W6fl70_c80Kf-4LGC7Y6A2veV5kklnyVUhOQimI6xtWpnOuXe8mYywFeDDKOPSNOAQgNwQyX09ABDo2dqDGehP9KZXNaoBxgazcYiSHMaGI3F56aURV3SA1AvoKnuimrbaH3juBKljoxKIzNm9-tvxzl1Y2JlGoaB0-gq4jyLaZ4aOa-aazB5thLSPe4KRcpYefp7A5qZtmWACc9I8-LUKIcrrhyvsnuiqDHy-73OdIQLpd0wb1bjIHBpOBuaT9i-hn0Ef4Q8xhUxJ1iHyaDpDO_N4dIIDIhnVc12AtdYByREobhsfoWJZPzV6pu3x-qlm_2ASG-1dO-_w5xmm_p8Tp98P45SM9lYBFcg0LeI7Rryodrn5JNKZgzLFf8CvZvWLN6qXhR4WzEhC3KcLzcXFE2WwWZfWoPQcwPfy1InjgyNaQHkrE47Xa3JjzKQGypyzcoU0iiPZqNh-QY3QxovxYMAX2OtRsZh6eXDsHSjrqN8NJL_Jli3BIJqegz-zsobXGT-rfzdvALk2oyBwz3D4bquPYojUc8VmCGE90D3y8DNiatgGDi9s8TNnRk2cKpcPe7SNE6dvdFFmaPAsK4k436fcm6BJU6xoMYG7dQo3HOOX6FJgDQ6JtdmQw4Hx2lvYGxBNkJyrTxRWW9konqwkRwX6sipfX2Wq7gsVSIwfnqPun9XNC2n1y95d-bxBeZWiV_VWrZ-FapXbDWZdW6oea3hf9WHHVesHrEDwTKi6RvRtAOPQL93MVKkj9RnrHRHfSNqrhZv8usiEMcOwI4BJDAPVbzczT4-VIFxmZmd4bkaL8Jos1HDINaYy80e4F-hGMYZimcmUT6OoX9pVX7sb05A-qQueHDUyTp8nGgWBh4SdKv2QjqvUY6hP1M6CbTT-lCU6i3ptaee7xxgXjwc_pNy0S1ml4QGVieTl05Wv1EnZQqnOh62-tNhlZtTxrf6Lj4qRUhLd-OR409toLp79aWWxb74Bf1-qjZu0_75grZcAMlbqjbo6BCFm9Cf1GQCa0JzmGyrphf-BCUaJc_fldivCgy5Z-7c0bkTBnEc-RHcZHMvi70Y38lClnQ-8LI9os4ZR9ccF981vJz__gF5AH2Uc7ebp7PUD7DtuXmcpcHM9Wimanvm5aGPQ0LuSpzSUszV_2K4bkX_RlqF-s-KYHFXzF1YqO3Ijpwo8J14mubgqI-J60VOFlHH8m1om4ty2ofnjs81pLTZCnhZwvZMnF5iofdfVJsD_biRO8bnTEr2g91py3ON_B8L_SJE">