<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/63819>63819</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang] Crashing during coroutine-related template instantiation with recursive TreeTransform
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
lanza
</td>
</tr>
</table>
<pre>
With the code given here: https://gist.github.com/lanza/99f404d08cc8b6905c6dc57e235f7a37
clang crashes with the following invocation:
```
$ clang -std=c++20 file.cpp
```
It's attempting to do some tree transformation but just getting confused and recursing forever. It eventually crashers on an assert that `idx < size()`.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxsUstq9DoMfhpnIyZ45FwXWbQdBrovnLVjK4mLxx5sJT3t0x-SaTnl5wcjXyX5u-ic3RyIBlE_i_pS6JWXmAavw5cuxmg_h38cL8ALgYmWYHYbBVgokVBPsDDfs1BPAq8Cr7PLXM6Ol3UsTbwJvB5lBF77fqpkZWVnTDc2vaxNY03dEqp6arVqhbwI-fSIxuswg0k6L5Th46f7FL2PHy7M4MIWjWYXw975V6Zo5Pd4bLGCR7FTZivUxQh8FviMEibnqTT3-9_zjvjKAtsMmplud977cgQbIccbASfagw55iul2_AXGleF9zQwz8fHexDCtmSzoYCGRWVPej6eYaKNUwisDbRR41d5_fgNOGWIAHUDnTImBF80gGunsvyDUC2T3RQI7gb1oZAmFHZTtVa8LGs5N15-xUaotlkFZW5MejT2jamrVWq2tmVQzWuqnhmzhBpSoZHtGea5q1ZZIiPbcY2e1rroaRSXppp0vvd9uZUxz4XJeaWhUd-4Lr0fy-TANYqAPOC4F4u6hNOw5p3Gds6ikd5nz_1XYsT_cdkgj6gu87Mh3ZuyaHryluLILdErkNZOFXYJ9BS5k1oHdg_HDG9_EbgRviejtR5NiTX74056_nem3n-l0T_GdDAu8HiiywOuB8r8AAAD__3XkAUI">