<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/140898>140898</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Assertion failure "Assertion `isa<LabelDecl>(D) && "declaration not instantiated in this scope"' failed"
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang,
crash-on-invalid
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
hokein
</td>
</tr>
</table>
<pre>
https://godbolt.org/z/qGcnPe635
```
template <typename T>
void s() {
if (Unknown tr) tr;
switch (Unknown tr)
tr;
}
void abc() {
s<int>();
}
```
```
clang++: /root/llvm-project/llvm/tools/clang/lib/Sema/SemaTemplateInstantiate.cpp:4558: llvm::PointerUnion<clang::Decl*, llvm::SmallVector<clang::ValueDecl*, 4>*>* clang::LocalInstantiationScope::findInstantiationOf(const clang::Decl*): Assertion `isa<LabelDecl>(D) && "declaration not instantiated in this scope"' failed.
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-assertions-trunk/bin/clang++ -gdwarf-4 -g -o /app/output.s -fno-verbose-asm -c --gcc-toolchain=/opt/compiler-explorer/gcc-snapshot -fcolor-diagnostics -fno-crash-diagnostics -std=c++20 <source>
1. <eof> parser at end of file
2. <source>:2:6: instantiating function definition 's<int>'
#0 0x0000000003fa47b8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x3fa47b8)
#1 0x0000000003fa2444 llvm::sys::CleanupOnSignal(unsigned long) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x3fa2444)
#2 0x0000000003ee7078 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
#3 0x000072d9b1242520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
#4 0x000072d9b12969fc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x969fc)
#5 0x000072d9b1242476 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x42476)
#6 0x000072d9b12287f3 abort (/lib/x86_64-linux-gnu/libc.so.6+0x287f3)
#7 0x000072d9b122871b (/lib/x86_64-linux-gnu/libc.so.6+0x2871b)
#8 0x000072d9b1239e96 (/lib/x86_64-linux-gnu/libc.so.6+0x39e96)
#9 0x00000000071edce5 clang::LocalInstantiationScope::findInstantiationOf(clang::Decl const*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x71edce5)
#10 0x00000000072974f6 clang::Sema::FindInstantiatedDecl(clang::SourceLocation, clang::NamedDecl*, clang::MultiLevelTemplateArgumentList const&, bool) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x72974f6)
#11 0x00000000071dbd71 (anonymous namespace)::TemplateInstantiator::TransformDecl(clang::SourceLocation, clang::Decl*) SemaTemplateInstantiate.cpp:0:0
#12 0x0000000007223550 clang::TreeTransform<(anonymous namespace)::TemplateInstantiator>::TransformDeclRefExpr(clang::DeclRefExpr*) SemaTemplateInstantiate.cpp:0:0
#13 0x0000000007223a3b (anonymous namespace)::TemplateInstantiator::TransformDeclRefExpr(clang::DeclRefExpr*) SemaTemplateInstantiate.cpp:0:0
#14 0x00
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJy8V11v47gV_TX0CyGDJvX54AeNE7cF0u5gM7uvA4q6ktlQpEpSmaS_viAlr2zPYAG3mQZKYvleHp77ocsj7pzsNcAeZZ9Q9rDhkz8Zuz-ZF5B605j2fX_yfnSI1YgeET32pm2M8ltje0SP_0b0-K-_CP0ZcpYhUocrJ8tFag_DqLgHjNjBv4-g-QD4C2KPiNSvRrbYIVoiWmFUfEKkxlh2GNHyN_2izTeNvQ02bxGbre6b9OL0nUewnZ1Q8TDTiPC8ETcbOMQOUvtAIRquVl0wv7kViuse0U_hYjVG9GiN8YgelXodktGaf4I43yJ69MYoh-hxWXZUskH0-AwDX_59WRLzN-08115yD1sxjojVaZaVYYuIxGrE6s9Gag_2Ny2NRuwwY0bLAwiFaI3o4cL9eeBK_Q7CG3vt_TtXE1wsSWMS6vkvvnB8MoKrlZk0-lmYEWZjJ3V7ZfulQ7QURjuPf0StCsHUzoENzhjlRDqO2OGJN6CiVyzFQywSzRHNMaK0BaG4jfhYG4_lmqcWS439STrsIitKES1wx6WCdotI_fnpsX5-xG5qBukxx83UYwujsR57g2-aWfrT1GyFGdba3VRUOjdBqCXmOmwt1NQC9ifAwnJ3wg0XL95yASGlo4XRGgHOQYudmez8dVjJnTNi5m8njZ2wcvSB77Pn4gW30xCqj0hNtohUn63pLR8wt_00gPZu6TozBk7CDKNUYBN4G5WxYM-tlvBzol3i7aRfED02Uq-dGBoYJ337jdsuSXHS48QEXD6OAX3y4-S3DiedNskr2MY4SLgbcCJwkvRCJKGzxYlLjdjDn_IJzk7z0Z2Mx0knjDI2aSXvtXFeimWPmMPrr51vEXsQM1dKwuhYMhnHxi6kB7EDmA6xRzxy68Bi7jHoFpsOd1IBIjVd3NalrKaI1XlI5NpNUve4m7SIjdZCJ7Wc25QWl5OiCLMDUUYweSPnH9bxtGjKi0fPvbvlkbVS-1jYL3NrlKuT5d--Guct8CH2-wGHXWL3lx9UYUQ_kbeF3jIfEWW7G_I0TdMfkT8o4Hoaf9HPstdcIVpOOh4SLVYmbPEzqAYyK1V6RRWgIEWJD6FXfgVhXsG-z9z-ynWrwo7lksMrn4PRHt78MlhJ_J3x2YJf0LZqdjSlWWi0GNQ8qt_K_GueJkrq6S3p9TQbxNaZbR4pxyUr4fQasMqrTuDRnyzw9uuLVOo-9Lh-Rc9u6aZFjnsXU3Av7bTIV-D8GpiWRccwb8KsvAs2Llxhi-9gd83dgLtmBSyvAVkFVX4fYFyyAlaXDVbsoBWQ_a9H4PXhh-OROB-BH_28LITncMKTfTWXCloVaZdfhhOVR_x0vOIO7XxOX5J_jhMzJCBQCfPpwvgPPpzX1Demv0_Kyyd4BXUWN_VyeD3JoA3mdMSB1xijfkZa5sDXtOyuq9w2bbELm3Jt9PtgJoeDIHVjHNHVHMb3yizoqGixXLvO2OHOnK1SCP-59DtPqECdXleUsiwjl6BfLMAfhBA7_FdRPf4gsF-he3wb7fcN_YfhzkjYbSScNR9UhA_nOo_xS-2_afesrVjFN7DfFWlRspRSsjntacZ5s2u7kpCGFmmRtUXVQtswTjiQEjZyTwnNSEZ3O8YIJds8T2lXCcLbrGR5vkMpgYFLtQ1ncHif2kStud-lpKzKjQoC2cX3MkqXVqeIHsJdVE1GJ1K_ciXbYMgeNnYftWsz9Q6lREnn3YrtpVewX4V4EMyThSC2_1_qHFG6may6faG8Q4MvqXnd0_8EAAD__7RRiPY">