<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=http://email.email.llvm.org/c/eJy9WFtz4joS_jXkRQVlyfcHHghx5rAnM5MKqdna80LJkkx8jm8lyQT2129LMiQ4ye7OGWZSBGRJ7v66--vWJW_5Yf74JFDRVlX7XDZbxFouUE6V4KhtkIaxiiqNxJ7WXSVQ2aBJeA0fLepuxgXvmZ5tRSMkrSbhzYTcpvYnedK6m_gL6ICPENWsVNBgE3INHy5poeHxlZAJ8Qcx03RC0ol3M_EWk8gbPvbRTK-oFmjiLxnAUuhx4mdujPa6RX-C4kcEslI0hRHEBav0oRPQbVEbYHbi_r0p-1nZ7GhVcjM4ia8nsZlvpJmPf-0U7dqSW0Wz2cz1owv8Dfa-aCgMZofDavMGXQbUe755fCoVkkL1lVYmSrRBq2UGgZWIQj8TjUbgM4hwDfEUEuV9WfEZMtE_BveZKoh_3ZUVRL9XQIeTKvuqCx4O0FRpPvFvhmgSD00Z0kLpGeu6E6JFwwdAIK10XHrhWU7ZX1pSJt61Zjbx0nvZbiWtEZXbvgb4CuiEXuGY_i8gVhI2ooAvoi1MuDsqFRhPgdEAry1QAca6mcTMPL3sL0L4j4zOu7tvn9HqATl-6hLyAl40xKHD44TEEK_YyfE_kvNpeP-YZSY2H0pZa3AQ4n3doedSP7W9RupQ522FGloLBZMT0aheCnRoe_REd5Co1a6euknlv8FI8DmMSXS_ePwNgS4ltA2CaHalbBvjU7SjEoHXjYmb9b8-X3-9W_2RPWzMK9CNIFW6toR50ChtJvgDSSF7eyXhuypz-N4n0SYKplXZ9PvptundgBELYZqpdoYB8OaPL4EB6auDwuG9BMHWzEfDg-zhy3qDsaTPm1ZpKWidlRBTb098ozeEVlyEjEQsJnnkm2S-DJD4oW_W5bah1W-04ZWQKttZxaE3VuwVgXc5xeGyErTpu6-D-qy2ajl_Yy_J-Q-ptXLzhIK0c9l57pm-V7L_m9ROP0FcuJHqHaViEvsjP3k4Nn3fBdjm9RQSxkIOnKtC2xsvIVkgd8BfrnHbN8wkDA6zutQPQveyua5a9tcQtyQ4wxPEcRJHwS_Agw2eRXPI9p3M7n8HPge2-WXtbTBZbLffaNWLddXqLHfOK86RhkUQesWv8txq27RS8DFax_30DbKApz8fWWKArXWtB0S26XImWUhJDw-iWLmhhdYyyxxcnISjmJOIBuHPx0ss4CUsmm3fcIP2n65ar1nbQU0zSDF5PZ7l79DB8ZaNbPCxR9gvYENkbDg-XcOe8LXzLbQgH6cUz9P8F0Ajw6IpzEBmnOl9qtqcVjewcGb3AzOO062_wbnB8tOxa9UUrbMhImRshIgxubwR_tD43PK-Eo4hDvQR1I0oyqa0iD8wCWPXZykycByP-ZHGRfoT-DHC773g_3u4k2SMm-A8-dm4Hasf2-5O7MQRI5DathwheDoGlmPyw0XOGU3jKKSj8p7g0PRdRH7KI8KLMaFD03cpxyb3ZrO8WD_arVmwFjXNcrdwEXEeUz-mQRpcLqY4uIUdqoY9-sImTJztBeu1GFb4YMSowo_z-ILao6U7BclVozRtmMD-AGAx1BlD_xFGRyrYm55jE4yEeXQxbCQckLxA3LXMHiAsv99iH3DFeOQzGnoRPuE6P1hZjQljeFPTsnm7_rIsW5PNvYtG6p3CEWCfhslHQt0MnHs_vDC7HBBBUnijop6L2PRdYpNOvKWk6ulBsHYn5GFpgr3XqTku0EJUB1sDSTHU9I0Ez9zudsctyXgbD1vt9Hu38e_y4HdHhIjLEmBhb7nEEPIazi6nLBkH7AsEK_naGZi0sk_pWsPxawuDmfkD5uh4s2F7WGUwyakq2UbZGSu21rDyPFG5geN6qdWKZWsKX_DSsIn16ZsQpJxe3lLsmG25joOXNDCmDyt_fHq8X_sbR_zAH8HLuUe_8_z43fDwAO8fba6O2KB9VyoNxcMtleG6plX1TTDdylXdVau1DjpaylV5f27MkVJx_MYSP40vVloGQ6IbZ09yVmjose7B9gqfd_1Na0YJEuQcx4x_XJBMJRouBNL8peBgIvL_9wDLjNGRsXljnoDiVOrNSbA43-WShBfeq13u2xJp33eYTjkQeIKFr9h_vNi64nOfp35Kr2gPJwQ5r1vJKZSUq15Wc3Ndqk73pVs4Q_T5jLW1wQ3eHX6mnWz_FOay9LZUqhfmSjUkaRRfPc2xR6M48n2eE0hgFgteRDTiXhiKNA1C_6qiuajU3FyEEtKIZ2RFQBuwXv04gnJOPEI87PlwGMMhnrHAIz5LCp-LNBdwrAXPgKurmZEza-X2Ss6tyLzfKhisIDfUyyBVqtw2Qszdze2VLnUl5uZOk_emMKHTbfDxghC5m2Qg5ZXFNrfA_gOFMhIN>52967</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            ICE during template argument deduction
        </td>
    </tr>

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

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

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

<pre>
    The following code based on the last example in [[temp.deduct.general]/9](http://eel.is/c++draft/temp.deduct#general-9)
```
template <class T>
auto j(T t) -> decltype([](auto x) -> decltype(x.invalid) {}(t));
void j(...);                                                                    

void f() { j(0); }
```
This results in an ICE for a recent clang master build. The example was compiled using
`clang++14 -std=c++20 -c test.cpp`
And resulted in the following backtrace
```
.       Program arguments: clang++-14 -std=c++20 -c test.cpp
1.      <eof> parser at end of file
2.      test.cpp:5:6: LLVM IR generation of declaration 'f'
3.      test.cpp:5:6: Generating code for declaration 'f'
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
/usr/lib/x86_64-linux-gnu/libLLVM-14.so.1(_ZN4llvm3sys15PrintStackTraceERNS_11raw_ostreamEi+0x23)[0x7f5c26c72b63]
/usr/lib/x86_64-linux-gnu/libLLVM-14.so.1(_ZN4llvm3sys17RunSignalHandlersEv+0x50)[0x7f5c26c70f40]
/usr/lib/x86_64-linux-gnu/libLLVM-14.so.1(_ZN4llvm3sys15CleanupOnSignalEm+0xdd)[0x7f5c26c722bd]
/usr/lib/x86_64-linux-gnu/libLLVM-14.so.1(+0xb8ac26)[0x7f5c26bb0c26]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12730)[0x7f5c26017730]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang7CodeGen15CodeGenFunction15EmitReturnBlockEv+0x84)[0x7f5c24778764]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang7CodeGen15CodeGenFunction11EmitAnyExprEPKNS_4ExprENS0_12AggValueSlotEb+0x1f)[0x7f5c245f450f]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang7CodeGen15CodeGenFunction15EmitIgnoredExprEPKNS_4ExprE+0x59)[0x7f5c245f44d9]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang7CodeGen15CodeGenFunction8EmitStmtEPKNS_4StmtEN4llvm8ArrayRefIPKNS_4AttrEEE+0x185)[0x7f5c24726a45]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang7CodeGen15CodeGenFunction28EmitCompoundStmtWithoutScopeERKNS_12CompoundStmtEbNS0_12AggValueSlotE+0x8c)[0x7f5c2473102c]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang7CodeGen15CodeGenFunction16EmitFunctionBodyEPKNS_4StmtE+0x4b)[0x7f5c2477db9b]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang7CodeGen15CodeGenFunction12GenerateCodeENS_10GlobalDeclEPN4llvm8FunctionERKNS0_14CGFunctionInfoE+0x622)[0x7f5c2477e712]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang7CodeGen13CodeGenModule28EmitGlobalFunctionDefinitionENS_10GlobalDeclEPN4llvm11GlobalValueE+0x11c)[0x7f5c24797f9c]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang7CodeGen13CodeGenModule20EmitGlobalDefinitionENS_10GlobalDeclEPN4llvm11GlobalValueE+0x188)[0x7f5c247921b8]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang7CodeGen13CodeGenModule16EmitTopLevelDeclEPNS_4DeclE+0x6d9)[0x7f5c2479b129]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(+0x1a765af)[0x7f5c248155af]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(+0x19d62df)[0x7f5c247752df]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang8ParseASTERNS_4SemaEbb+0x2e8)[0x7f5c237a4948]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang14FrontendAction7ExecuteEv+0x48)[0x7f5c24f37b78]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang16CompilerInstance13ExecuteActionERNS_14FrontendActionE+0x2b6)[0x7f5c24ec25b6]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang25ExecuteCompilerInvocationEPNS_16CompilerInstanceE+0x271)[0x7f5c24fa5061]
clang++-14(_Z8cc1_mainN4llvm8ArrayRefIPKcEES2_Pv+0x908)[0x413a58]
clang++-14[0x411b05]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(+0x1e48f02)[0x7f5c24be7f02]
/usr/lib/x86_64-linux-gnu/libLLVM-14.so.1(_ZN4llvm20CrashRecoveryContext9RunSafelyENS_12function_refIFvvEEE+0xdd)[0x7f5c26bb09bd]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZNK5clang6driver10CC1Command7ExecuteEN4llvm8ArrayRefINS2_8OptionalINS2_9StringRefEEEEEPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPb+0x13a)[0x7f5c24be79da]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZNK5clang6driver11Compilation14ExecuteCommandERKNS0_7CommandERPS3_+0x243)[0x7f5c24bbd0a3]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZNK5clang6driver11Compilation11ExecuteJobsERKNS0_7JobListERN4llvm15SmallVectorImplISt4pairIiPKNS0_7CommandEEEE+0x77)[0x7f5c24bbd397]
/usr/lib/x86_64-linux-gnu/libclang-cpp.so.14(_ZN5clang6driver6Driver18ExecuteCompilationERNS0_11CompilationERN4llvm15SmallVectorImplISt4pairIiPKNS0_7CommandEEEE+0xdd)[0x7f5c24bd17cd]
clang++-14(main+0x239b)[0x4112eb]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7f5c228df09b]
clang++-14(_start+0x2a)[0x40ec5a]
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy9WFtz4joS_jXkRQVlyfcHHghx5rAnM5MKqdna80LJkkx8jm8lyQT2129LMiQ4ye7OGWZSBGRJ7v66--vWJW_5Yf74JFDRVlX7XDZbxFouUE6V4KhtkIaxiiqNxJ7WXSVQ2aBJeA0fLepuxgXvmZ5tRSMkrSbhzYTcpvYnedK6m_gL6ICPENWsVNBgE3INHy5poeHxlZAJ8Qcx03RC0ol3M_EWk8gbPvbRTK-oFmjiLxnAUuhx4mdujPa6RX-C4kcEslI0hRHEBav0oRPQbVEbYHbi_r0p-1nZ7GhVcjM4ia8nsZlvpJmPf-0U7dqSW0Wz2cz1owv8Dfa-aCgMZofDavMGXQbUe755fCoVkkL1lVYmSrRBq2UGgZWIQj8TjUbgM4hwDfEUEuV9WfEZMtE_BveZKoh_3ZUVRL9XQIeTKvuqCx4O0FRpPvFvhmgSD00Z0kLpGeu6E6JFwwdAIK10XHrhWU7ZX1pSJt61Zjbx0nvZbiWtEZXbvgb4CuiEXuGY_i8gVhI2ooAvoi1MuDsqFRhPgdEAry1QAca6mcTMPL3sL0L4j4zOu7tvn9HqATl-6hLyAl40xKHD44TEEK_YyfE_kvNpeP-YZSY2H0pZa3AQ4n3doedSP7W9RupQ522FGloLBZMT0aheCnRoe_REd5Co1a6euknlv8FI8DmMSXS_ePwNgS4ltA2CaHalbBvjU7SjEoHXjYmb9b8-X3-9W_2RPWzMK9CNIFW6toR50ChtJvgDSSF7eyXhuypz-N4n0SYKplXZ9PvptundgBELYZqpdoYB8OaPL4EB6auDwuG9BMHWzEfDg-zhy3qDsaTPm1ZpKWidlRBTb098ozeEVlyEjEQsJnnkm2S-DJD4oW_W5bah1W-04ZWQKttZxaE3VuwVgXc5xeGyErTpu6-D-qy2ajl_Yy_J-Q-ptXLzhIK0c9l57pm-V7L_m9ROP0FcuJHqHaViEvsjP3k4Nn3fBdjm9RQSxkIOnKtC2xsvIVkgd8BfrnHbN8wkDA6zutQPQveyua5a9tcQtyQ4wxPEcRJHwS_Agw2eRXPI9p3M7n8HPge2-WXtbTBZbLffaNWLddXqLHfOK86RhkUQesWv8txq27RS8DFax_30DbKApz8fWWKArXWtB0S26XImWUhJDw-iWLmhhdYyyxxcnISjmJOIBuHPx0ss4CUsmm3fcIP2n65ar1nbQU0zSDF5PZ7l79DB8ZaNbPCxR9gvYENkbDg-XcOe8LXzLbQgH6cUz9P8F0Ajw6IpzEBmnOl9qtqcVjewcGb3AzOO062_wbnB8tOxa9UUrbMhImRshIgxubwR_tD43PK-Eo4hDvQR1I0oyqa0iD8wCWPXZykycByP-ZHGRfoT-DHC773g_3u4k2SMm-A8-dm4Hasf2-5O7MQRI5DathwheDoGlmPyw0XOGU3jKKSj8p7g0PRdRH7KI8KLMaFD03cpxyb3ZrO8WD_arVmwFjXNcrdwEXEeUz-mQRpcLqY4uIUdqoY9-sImTJztBeu1GFb4YMSowo_z-ILao6U7BclVozRtmMD-AGAx1BlD_xFGRyrYm55jE4yEeXQxbCQckLxA3LXMHiAsv99iH3DFeOQzGnoRPuE6P1hZjQljeFPTsnm7_rIsW5PNvYtG6p3CEWCfhslHQt0MnHs_vDC7HBBBUnijop6L2PRdYpNOvKWk6ulBsHYn5GFpgr3XqTku0EJUB1sDSTHU9I0Ez9zudsctyXgbD1vt9Hu38e_y4HdHhIjLEmBhb7nEEPIazi6nLBkH7AsEK_naGZi0sk_pWsPxawuDmfkD5uh4s2F7WGUwyakq2UbZGSu21rDyPFG5geN6qdWKZWsKX_DSsIn16ZsQpJxe3lLsmG25joOXNDCmDyt_fHq8X_sbR_zAH8HLuUe_8_z43fDwAO8fba6O2KB9VyoNxcMtleG6plX1TTDdylXdVau1DjpaylV5f27MkVJx_MYSP40vVloGQ6IbZ09yVmjose7B9gqfd_1Na0YJEuQcx4x_XJBMJRouBNL8peBgIvL_9wDLjNGRsXljnoDiVOrNSbA43-WShBfeq13u2xJp33eYTjkQeIKFr9h_vNi64nOfp35Kr3SpKzE3t3O8NymGTveax6su5O5Ewb1Xvazm5i5VnS5Tt3DA6PMZa2tjFLh--Jl2sv1TmJvU21KpXpj71pCkUXz1NA_8KA6wCD3I7UCQNPGIx3nCOIVkpb53VUGjUnNzS0pII56RFQFtMOSqnBOPEA97PpyzcIhnLPCIz5LC5yLNBZxYwWjwYjUzOGat3F7JuYWU91sFgxXQXr0MUqXKbSPE3F3KXtEejkxyXreSU6ixV1b33GL_DzHT_HM">