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

    <tr>
        <th>Summary</th>
        <td>
            ICE in getLambdaCallOperatorHelper
        </td>
    </tr>

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

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

    <tr>
      <th>Reporter</th>
      <td>
          jeremy-rifkin
      </td>
    </tr>
</table>

<pre>
    The following reduced code ICEs clang 20.1.

```cpp
template < template < typename> typename> struct TypeTList;
template < typename >
constexpr auto LambdaThing = []< template < typename> typename... Args >( TypeTList< Args... > ) {};
template < template < typename > typename TheThingT, typename TheParam >
struct TraitApplier {
    template < typename >
    using X = TheThingT< TheParam >;
};
template < typename Traits >
concept FooTraitsConcept = requires {
 LambdaThing< typename Traits::FooTypes >;
};
template < FooTraitsConcept >
class Foo;
struct FooTraits {
    using FooTypes = int;
};
void foo() {
    TraitApplier< Foo, FooTraits> x;
}
```

```
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments: /opt/compiler-explorer/clang-20.1.0/bin/clang++ -gdwarf-4 -g -o /app/output.s -mllvm --x86-asm-syntax=intel -fno-verbose-asm -S --gcc-toolchain=/opt/compiler-explorer/gcc-14.2.0 -fcolor-diagnostics -fno-crash-diagnostics -std=c++23 <source>
1.      <source>:19:36: current parser token ';'
2.      <source>:18:12: parsing function body 'foo'
3.      <source>:18:12: in compound statement ('{}')
4.      <source>:5:8: instantiating class definition 'TraitApplier<Foo, FooTraits>'
  #0 0x0000000003a59568 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/compiler-explorer/clang-20.1.0/bin/clang+++0x3a59568)
  #1 0x0000000003a576ac llvm::sys::CleanupOnSignal(unsigned long) (/opt/compiler-explorer/clang-20.1.0/bin/clang+++0x3a576ac)
  #2 0x00000000039a69e8 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
  #3 0x00007235a6442520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
  #4 0x0000000007375203 getLambdaCallOperatorHelper(clang::CXXRecordDecl const&) (.part.0) DeclCXX.cpp:0:0
  #5 0x00000000073760db clang::CXXRecordDecl::getLambdaCallOperator() const (/opt/compiler-explorer/clang-20.1.0/bin/clang+++0x73760db)
......
```

https://godbolt.org/z/qnGbPzTKv

This appears to be a clang 20.x regression.



</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJysls1u2zgQx5-Gvgwk0JQtyQcfFDveFlugwcaH3AqKGstsaFIlqcTu0y9IKY2dOt3Fbg3nQ_yY-fE_Mxxx52SrEZdkfkPm6wnv_d7Y5Ve0eDglVu4epZ7Upjktt3uEnVHKPEvdgsWmF9iAMA3Cx9WtA6G4boHRdJoSWoVvToev6DpCK4-HTnGPQLIVXD6cOtT8gCS7vfjfedsLD9tTh9tP0nmS3fxkZ1wOJLsltBJGO4_HzgLvvYFP_FA3fLsPwCRbw3DGf-U_TVOobOuiYVaeQ6ziRFgQNhC2AFLckGJ9De891teH7R4j4Jaw1cXoHbf8MJ7rRQnLpa-6Tkm00SmtAOB9L-N874IAD1GCV3fZ6tJLpH_nGD-wAoB7FVtg52FjzDC-GgeCH4vfemnRvWCeheKKRZJVJKuCoVOH7p9wrjiMPIo7FyaHLaNmPxafCTYIcuZuDVL7Ny6fjGxgZwxh5UuMh93nURhxQux-OArhPb4aOyuEN3VBaHX36ba6vwXX1wfpgUPdh9LqjPXgDey976I2bEPYppV-39epMAfCNko9vfxJOmu-ovCEbaRzPTrCNsB1A1IL1TcIfo8gLHd7qLl49JYLDMCdxc4agc5hA870dhgOO7lzRkjusQHba3DCys6Hsr73XDxC0x-6gEUrmhK6uLOmDVnEbdsfUMdwAmEb0wUmYQ6dVGgTPHbKWLRhLNwVSbwrKGGbWuqXQcJuCLuBpG2eud0lM0haSEywxrsu2Ox91_vUQXIIZ4ckOZZ5wt0hcSft-ZFka6k9Kkh22iRPaGvjMMxDcg9J0gqReGOU2HOpSbb-JWVYPJ2lLKWQ7IRRxiaN5K02zkvhBg9R18th5xuSrcVwEpaFlB3VjWkarsfFxVhWTRckq7I86CZ6a1F76Lh1aMGbR9RAWBESihWEVuza_jL8YmF_2Beye9dr4aXREC7vYCCmcjCQ_dqA1BDEML1uwHnuMYQUYhUU40XHCsIWhFazK5bmJKvKwY7zXHvJfcAZirPBndQyYhFWvCmkK3U0AAMQllGgR_ryyfh8Mc9LiFUQ7w53Gi-ROyu1j2m6HRK9fF1k-fMX47xFfiAsD85C2YfiDqf7H_lK2A09jlCDNJF5-oa5yLm4xrxSyHXffdb3stVcEVb2OrblBpQJPn4fYUA4I2QXhAueL7CEVcjpv1CYJ7SnAekD140KjspRsYs1K6M9Hn0aGn1W0fgzOshGBwXL5jyfzdic0fEwStaEbY5l_iWfJUrq_pi0uh8mROpMmkfouOUMeXaOXGTFnNEMWvRDh1lxpT53aLk39gOqLjIPOgxSPzwEatusUSiI7wsxFaLCacetD_otIEyvHh6uHWn-BiCnTQ3vuRiGruKNjSUy_J74jjCDWGn8_Nx-3jQV09RG-dTYlrDNd8I23_Qf9d337Z9Pw_LtXjrgXYfcutCTagT--q53BIutReek0S-vfbSaNMusWWQLPsHltJjNQwgLNtkvxSxnpSjLsskX9ZyW03xWlLwokNHpYspwIpeMsjmdsWyas-mUpSHAmOd1SXdskYmazCgeuFRpKKNAPYk9bznNCjqdTRSvUbn4MsuYxmeIs4Sx8G5rl7Fd1n3ryIwq6bx7NeOlV7j8uLoNF-Av0mnSW7X874155Hxasr8DAAD__5dMg3o">