<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">