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

    <tr>
        <th>Summary</th>
        <td>
            [clang-17 regression] clang from trunk crashes inside clang::TemplateArgument::pack_size()
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

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

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

<pre>
    The following piece of code leads to ICE when compiled with clang from trunk:

```cpp
template<bool... Vals>
constexpr bool All = (Vals && ...);

template<typename T>
concept UnaryConcept = true;

template<typename... Ts>
class Class {
 template<typename>
    requires All<UnaryConcept<Ts>...>
    void Foo();
};

template<typename... Ts>
template<typename>
requires All<UnaryConcept<Ts>...>
void Class<Ts...>::Foo() {
};
```

Compiler Explorer with full stacktrace: https://godbolt.org/z/E8P4M3bhK
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUk82OpDgMx5_GXKxGkEAVHDhUVxXSarXSHmr3OgrEQKYCYZLQX08_Aqq76ZnRjFpCQYlj-_d3bOGcageiAtJ7SE-BmHxnbKGNu07ePASVkc_FpSNsjNbmUQ0tjopqQtNgbSShJiEdeoN_Hc_42NGAtelHpUnio_Id1loMLTbW9OjtNFyBHyA6QfS67qL1q8dxPfHUj1p4An6sjNFhGOL_Qjvg59Vem8F5ehotzmY8aI3ATwgsm68hsB2wHYZhCCwHfr9Ntgntn0caRE942QauafT43yDs8_G2mUN7O9GfI82glw2mFs7hcVlhf3PGX_i9eSAiWvo2KUtulgX8uEUBflzCz8q2Lg9GSSyNAZZ9ULw_fZr5d3SfJFuoFvWL9WbiB-CHN9b3unyAfe2ILftx7SmL56dRG0t2ba5m0hqdF_XVW1ET8AN23o9uTsRKYGVrZGW0D41tgZUvwMpz9m_yD6-6vwNZcJnzXARUxLssj6IkzvKgK5o4zqmJaMfrJqNYZqyRKRf7LM1SWSUyUAWLGI_2cRSnSZ7kYcrSeJ8wHqfRTuZxCklEvVA61Pqhn3MHyrmJih3fZyzQoiLtXgfOFvOlu2pqHSSRVs67dzevvF5Gc5miu3iPllpLzikzQHr6abiwtsJ15FANTkla7WvVL7e3Pdh26mnw6-ko6usXp15ofZFgsrr4oYLKd1MV1qYHVs5gt9_daM1Xqj2wchHngJWLvu8BAAD__1IVUPE">