<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=http://email.email.llvm.org/c/eJzlWl1v47oR_TXOCyFD1odlP-TBcZLb9KZIEAe7jwZFUbbuyqJKUrlOf31nSNkWFcfZuxUKFF04iUxSw3PODMkhuanI3q9ft4UitRQbSXeEiV1dlFQXoiKSq6bUihQVeVjejcLFyL8d-YvR1G8_5qvSsmGaLMgouSH2n63AJyYqpfkbLcliFMxGwRxbjZLbUwssN63waWpahLck4yXXfBTenDP1JoqM5Gfs4cPhFfu7qDTZ0aLqNO70nNws2teT23Fr8GTgaNXle8t3ArQgW61rhaIE9_DZMDbeiCwVpR4LuYGSf8GP3Cd_qOl3-XsXU8_e8-PdYnVHVJPuCk0oSZsNKF8LqYkW_V4KvW3SMTgJvpTl2-GPB-77gzMNXwulGq7ggdAqA9exssk40VtOmKRqS1LKfmhJGR8FS_A6hzcZV4pnRIlG2mJ8kyolWEE1VMimIorJotZjC3mlwQjJml19DAofqubPbRBRuWl2vNIInAAUUSMyG1pcenxfl0JyiWUlrTYeRFD1A76l6ChbNgpu4EO8DfEEmqB1jYYaXTd6rIi3Q9rE8_azqUfVzlPvlaZ7CB3wOC-Jt4I68ImnhSjZFiMgvL2IBBuritZqKzTxciagwssKuqmE0gWDLvNKeEZDt1jpDGwzCzjwifedlgDgO9-DzMSreUYraOlxKYVUEN3LVujwzko3QemgmIscykhNpeKSUE04uEHkJAeotmXQtjwZCBcJ_EwCFBpfLKoNyZuKmfGbwugG7RI7AJI28kdB6BN_78O_OM7nPg3DOQty8ixBOuPZVwyPVbGpaPk3CIUS9ZnhoBsFCxxFtkqNWY3-983P0fakZztJfZ-YUIVQCRfqXdmHZclp1dRPlbUGPTSVgkeIt1Kg_2G04oD89eCBj78PY4MAB_YRYuBADJIgmc3IEj37wpl44_K9Tx6UQUBOm6WASNvr8yqEbRdJnmYJi_MsZD5Zr2FG1QB-DWPbkiuLFH5DEK-nkVcWVbP3NlVjK2q9lZxmYyXGvuEyicGKwyTqMmFZmk7pjFgJjMgrvdPfClVApzdUQcQsT57Y0R98bSbVda0lDnuARCtRve9Eo0hFd1zVZp6Y2xe-QQTc7Wt5B3NwQ8EkvpPC-LKBiC2wK5zPXQR26m6DBy0s8TuMivPaxT1SjEbZ_zypqUsqieg8Im2n3LW-eP4Gxdyshl_iRxMPVS7a1h0ziOkvgkxckLM0DKZHkA_Vc2l6HgrrF60fjeUDgy_YtT77KZYzl-U8yDnrmz4BRuoLdbBo6hwF3NYvJmX6CHexem3ni0uE2pmx09fvRZUhK5shDTEhAmkk7Ewjc0eR2J_zydwZcXxH7dOzqBEWJAywwLTywFPL7ZBlDQEzMSiOMHFlcZYtFqbz-dw_D3PB9FN1X1SF2t63q-ENLIau5245K9vg6Y3tXkgNwic2cB0-zlLJJnwyC5IulGeTCXSeD1xgldYcE6yfJfXB0oqJmh_y7SHohQa9Qy9w6YXTbBr9FL1bnoPr8Mnl9mwTHKRIpZ2r-6Pog83sle_q0kxfufhs7HXfeoS29s2F1vKxOE6fw8hkVHBkCl2Z4jxn7CIl5P-bFE39qTqrGgd4n-VJt-NwdSPfZJWPglEr_aUguhfyBSpA1WJYfQx9R5-oF0aTLJ9_qc-T7ATTA7CVNsfsv2ecXKSN5uo77K0Mp_PxcVHaBcM9FNYVeYFsBwsXZOvIEffkCGJ_8qUc6HbQwlHl0yH2q6L04-W8KGPYpuhxMMOpkFiwH5dpJDrtEZ1FwWW_3-2tmzuEByU3mE-RiePTpEd1PosuU30V9SN_46Wd7bscn2r6z4Y_Q-4bLntj38wZLxw3mS3hQRe40MB2eLmZ1iTIfPqRF6RGvewal_EuwKGBGhwOUCcBSoOU8iToAl2KjP_Gq4UZO4d8jTMIorZouMQnikzvXXiBu19n6TzPnDF_L3FCr7Iz-AZEFnLTsYPM3e2zOAZ1XeFsXw8mpcUzi3PafU5luAwl5Aacg949CMhm4TQP3Zzc4DyReDsujrNLJIebLcLcgHJQOwlDkifMDyFhYJN1e9B52g0vpKTvZsQv2ZZ29ks4A8B855RBQeeMZwjwk4nB5oCPeuBnkzwjB52Xk1cz0DsUVjtalt84g6zlARK5s0xMjGSyePtkKQmcNZPSPMqy2J4inzo6nJqtpdHL1B5OhNuTAAZQ8Ph0nVfu7Gr7boNhOYF42FHYt_XG4Vm_nAqfauyelk7hCtaqamMnbdK6zRw4YuV6zfYgsv2SUlWwtTLtW5Wcxliw1pIWeCprq3vmgB2Gt5CnettlZzO0OG5G7TujICnpLs0oni8e1QKu7RHe30V63iXT_hlcloQdb5w7abM1L021ojkv3x1FL3tvqMEYGZhOPCe90Jpy9wTu_zE0hhGbGS0dsWeu2LAQ-vRTsU8XWf3J3HjAmcF7L2KDz_aKF5oeLrCGFMFwdESY90RgUZT_VRFgWKrPFYBa3Pc6ClyakY9hUtMCI8Sclv-8aIdYGl47lKarXe_ig2ZRFsWf4bztPDuJwJkM4DPN_7vaDaOaEcVRzUnyEj6jeIWCycYwWYJvDDo9Bs71CaRmfhqS9bosUpzHYAO57nR_6Q6F4e3J1PQTJGDE6aWfSCVZQom1P1T-gyaPfdp3JhE4kpjbQHwwhSRv0168fzcezin0mJE_YYtK-L7AwZhxAltDRNYoTrw3vB5WnJOik5a2PS1W_yAbXnG7CyYHAkRy3ciKY8ihrd599FV2HWbzcE6vaKO3Ql7f80xeNbK8_vVbaEi5o-hqe50xP5hwyGVpGmdRkkyYP-U5TeI4iqc8zK9KmvJSXY9i0C6o-J_EmIDnUXx79Z8jKK4DPwh8cMkk9v1wOoa_AU8iDj8zyBCjUeTDvrMox2gHr_Cv5LUxmTYbBZUlzIjqVEmVuazkBjAg1IUu-fXD8o4YvcFXxnXH_7Sgrgyga4Pm39tRM2w>53244</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
ICE on code with constevals
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
Fedr
</td>
</tr>
</table>
<pre>
This program compilation results in ICE:
```
struct A {
consteval A() {}
A(const A&) = delete;
consteval void f() {}
};
int main() {
A{A{}}.f();
}
```
Demo: https://gcc.godbolt.org/z/rx7js6WrK
```
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-trunk/bin/clang++ -g -o /app/output.s -mllvm --x86-asm-syntax=intel -S --gcc-toolchain=/opt/compiler-explorer/gcc-snapshot -fcolor-diagnostics -fno-crash-diagnostics -std=c++20 -Wall -Wextra -pedantic-errors <source>
1. <eof> parser at end of file
2. <source>:7:12: parsing function body 'main'
#0 0x000055f90a339c2f PrintStackTraceSignalHandler(void*) Signals.cpp:0:0
#1 0x000055f90a337b00 llvm::sys::CleanupOnSignal(unsigned long) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x3537b00)
#2 0x000055f90a272788 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
#3 0x00007fbd7c5fd3c0 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x153c0)
#4 0x000055f90cdbb6a8 clang::StmtVisitorBase<llvm::make_const_ptr, (anonymous namespace)::VoidExprEvaluator, bool>::Visit(clang::Stmt const*) ExprConstant.cpp:0:0
#5 0x000055f90cdbca4d clang::StmtVisitorBase<llvm::make_const_ptr, (anonymous namespace)::VoidExprEvaluator, bool>::Visit(clang::Stmt const*) ExprConstant.cpp:0:0
#6 0x000055f90cd74a94 Evaluate(clang::APValue&, (anonymous namespace)::EvalInfo&, clang::Expr const*) ExprConstant.cpp:0:0
#7 0x000055f90cd8b326 EvaluateInPlace(clang::APValue&, (anonymous namespace)::EvalInfo&, (anonymous namespace)::LValue const&, clang::Expr const*, bool) ExprConstant.cpp:0:0
#8 0x000055f90cd92fec clang::Expr::EvaluateAsConstantExpr(clang::Expr::EvalResult&, clang::ASTContext const&, clang::Expr::ConstantExprKind) const (/opt/compiler-explorer/clang-trunk/bin/clang+++0x5f92fec)
#9 0x000055f90c509e19 clang::Sema::PopExpressionEvaluationContext() (/opt/compiler-explorer/clang-trunk/bin/clang+++0x5709e19)
#10 0x000055f90c3b9990 clang::Sema::ActOnFinishFunctionBody(clang::Decl*, clang::Stmt*, bool) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x55b9990)
#11 0x000055f90c1e1827 clang::Parser::ParseFunctionStatementBody(clang::Decl*, clang::Parser::ParseScope&) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x53e1827)
#12 0x000055f90c136d64 clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&, clang::Parser::ParsedTemplateInfo const&, clang::Parser::LateParsedAttrList*) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x5336d64)
#13 0x000055f90c15ffcc clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, clang::DeclaratorContext, clang::SourceLocation*, clang::Parser::ForRangeInit*) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x535ffcc)
#14 0x000055f90c131df9 clang::Parser::ParseDeclOrFunctionDefInternal(clang::ParsedAttributesWithRange&, clang::ParsingDeclSpec&, clang::AccessSpecifier) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x5331df9)
#15 0x000055f90c132501 clang::Parser::ParseDeclarationOrFunctionDefinition(clang::ParsedAttributesWithRange&, clang::ParsingDeclSpec*, clang::AccessSpecifier) (.part.280) Parser.cpp:0:0
#16 0x000055f90c138429 clang::Parser::ParseExternalDeclaration(clang::ParsedAttributesWithRange&, clang::ParsingDeclSpec*) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x5338429)
#17 0x000055f90c139849 clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, bool) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x5339849)
#18 0x000055f90c12d0a9 clang::ParseAST(clang::Sema&, bool, bool) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x532d0a9)
#19 0x000055f90b2bae72 clang::CodeGenAction::ExecuteAction() (/opt/compiler-explorer/clang-trunk/bin/clang+++0x44bae72)
#20 0x000055f90acb9fd1 clang::FrontendAction::Execute() (/opt/compiler-explorer/clang-trunk/bin/clang+++0x3eb9fd1)
#21 0x000055f90ac55532 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x3e55532)
#22 0x000055f90ad836f3 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x3f836f3)
#23 0x000055f907f7c03c cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x117c03c)
#24 0x000055f907f781fd ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&) driver.cpp:0:0
#25 0x000055f90aaf4dd5 void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<llvm::Optional<llvm::StringRef> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, bool*) const::'lambda'()>(long) Job.cpp:0:0
#26 0x000055f90a272d73 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x3472d73)
#27 0x000055f90aaf6ea8 clang::driver::CC1Command::Execute(llvm::ArrayRef<llvm::Optional<llvm::StringRef> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, bool*) const (/opt/compiler-explorer/clang-trunk/bin/clang+++0x3cf6ea8)
#28 0x000055f90aacb90a clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&) const (/opt/compiler-explorer/clang-trunk/bin/clang+++0x3ccb90a)
#29 0x000055f90aacc44f clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*> >&) const (/opt/compiler-explorer/clang-trunk/bin/clang+++0x3ccc44f)
#30 0x000055f90aad4d45 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*> >&) (/opt/compiler-explorer/clang-trunk/bin/clang+++0x3cd4d45)
#31 0x000055f907e8a232 main (/opt/compiler-explorer/clang-trunk/bin/clang+++0x108a232)
#32 0x00007fbd7c0ad0b3 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x270b3)
#33 0x000055f907f77d7a _start (/opt/compiler-explorer/clang-trunk/bin/clang+++0x1177d7a)
clang-14: error: clang frontend command failed with exit code 139 (use -v to see invocation)
ASM generation compiler returned: 139
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzlWU1v4zgS_TXOhZAh68OyDjk4TjKbnSw6aAfdR4OiKFvTsqglqYyzv36qSNkW1Y67pyEssNjASWSSKr73qkgWyUzk77evu1KRRoqtpHvCxL4pK6pLURPJVVtpRcqaPK0eJuFy4t9P_OVk7ncf81Vp2TJNlmSS3BH7YyvwiYlaaf5GK7KcBItJkGKrSXJ_boHlphU-zU2L8J7kvOKaT8K7S6beRJmT4oI9fDi-Yv-WtSZ7Wta9xr2ek7tl93pyP-0Mng2crLp87_legBZkp3WjUJTgET5bxqZbkWei0lMht1DyH_iVh-QPNf8qf-9jGth7eX5Yrh-IarN9qQklWbsF5RshNdFi2Eupd202BSfBl6p6O_7zwH1_cKbha6lUyxU8EFrn4DpWtTknescJk1TtSEbZNy0p45NgBV7n8CbjSvGcKNFKW4xvUqUEK6mGCtnWRDFZNnpqIa81GCF5u29OQeFDVfrSBRGV23bPa43ACUARDSKzocWlxw9NJSSXWFbReutBBNXf4FuGjrJlk-AOPsTbEk-gCdo0aKjVTauninh7pE0877CYe1TtPfVea3qA0AGP84p4a6gDn3haiIrtMALC-6tIsLGqaaN2QhOvYAIqvLyk21ooXTLosqiFZzR0i5XOwTazgAOfeF9pBQC-8gPITLyG57SGlh6XUkgF0b3qhA4frHQzlA6KuSigjDRUKi4J1YSDG0RBCoBqWwZdy7OBcJnA7yxAofHFst6Soq2ZGb8ZjG7QLrEDIOkifxKEPvEPPvzEcZH6NAxTFhTkRYJ0xrOvGB7rclvT6h8QChXqs8BBNwmWOIpslZqyBv3vm9-T7dnAdpL5PjGhCqESLtW7sg-ritO6bT7V1hr00NYKHiHeKoH-h9GKA_LXgwc-_iGMDQIc2CeIgQMxSIJksSAr9OxnzsQbl-9D8qAMAnLarARE2kFfViHsukiKLE9YXOQh88lmAzOqBvAbGNuWXFVm8BeCeDOPvKqs24O3rVtb0eid5DSfKjH1DZdZDFYcJlGfCcuzbE4XxEpgRF7rvf5SqhI6vaMKImZ19sSefuMbM6luGi1x2AMkWov6fS9aRWq656ox80RqX_gCEfBwaOQDzMEtBZP4TgbjywYitsCucD53EdipuwsetLDC7zAqLmsXD0gxGuX_86TmLqkkomlEuk65a3358gWKuVkNf4gfTTzVheha98wgpr8JMnFBLrIwmJ9APtUvlel5LKw_aP1sLB8Z_IBd57OfYrlwWaZBwdnQ9BkwUl-qo0VT5yjgtv5sUqbv4S7Xr918cY1QNzP2-vq9rHNkZTOkMSZEII2EnWkkdRSJ_ZTPUmfE8T21Ty-iQViQMMAC08kDTx23Y5Y1BszEoDjBxJXFWbZYmKVp6l-GuWT6U_1Y1qXaPXar4R0shq7n7jmruuAZjO1BSI3CJzZwHT7OUslmfLYIkj6UF5MJ9J6PXGCV1hwTrJ8l9Z2lNRMNP-bbY9ALDXqHXuDSC-f5PPopeve8ANfhk8vtxSY4SJFKO1cPR9F3NvNXvm8qM30V4qOx13_rGdraN5day-fyNH2OI5NRwZEpdGWKi4Kxq5SQ_29StM2H6qwbHOBDlmfdTsPVjXyTVT4LRq3014LoUcjPUAGqluPqY-g7-kSDMJrlRfpDfT7JXjA9AVtpc8zhe8bJZdZqrr7C3spwuhwfV6VdMtxDYV1ZlMh2tHBBto4c8UCOIPZnP5QD3Q5aOKp8OMR-VZRhvFwWZQrbFD0NFjgVEgv2-2Uaic4HRBdRcN3vDwfr5h7hUcmN5lNk4vg0GVBNF9F1qq-ieeZvvLKzfZ_jp4b-u-UvkPuGq8HYN3PGZ46bzI7wqAtcaGA7vNxMaxbkPv2eF6RGg-wal_E-wLGBGhwOUCcByoKM8iToA12JnP_G66UZO8d8jTMIoq5ovMQnikzvfXiBu19nWVrkzph_lDih1_kFfCMiC7np2EHm7vZZHIO6rnC2ryeT0uKZxSXtPqYyXoYScgPOQe8eBOSLcF6Ebk5ucJ5JvJ0Wx8U1kuPNFmFhQDmonYQhKRLmh5AwsNmmO-g874aXUtJ3M-JXbEd7-yWcAWC-c8qgoHfGMwb42cxgc8BHA_CLWZGTo86r2asZ6D0K6z2tqi-cQdbyBIncRSYmRnJZvn2wlATOmklpEeV5bE-Rzx0dT8020uhlao8nwt1JAAMoeHy6KWp3drV9d8GwmkE87Cns2wbj8KJfzoWfGuyeVk7hGtaqemsnbdK5zRw4YuVmww4gsv2SUVWyjTLtO5Wcxliw0ZKWeCprqwfmgB2Gt5DnettlbzO0PG1G7TuTIKnoPsspni-e1AKu3RHeP0V22SXz4RlcnoQ9b1w6abM1n9t6TQtevTuKXvfeWIMxMjCdeE4GoTXn7gnc_2NojCM2M1o6Yi9csWEh9OmHYp8vsoaTufGAM4MPXsQGH-0VrzQ9XmCNKYLh6IiQDkRgUVT8XRFgWKqPFYBa3Pc6ClybkU9h0tASI8Sclv-8aMdYGl87lKav3eDig-ZRHsUf4bzvPTuJwIUM4CPN_7vajaOaEcVRzUnyEr6geIWCycY4WYJvDDo9Bs71CaRmfhaSzaYqM5zHYAO56XV_7Q6F4e3J3PQTJGDE6WWYSCV5Qom1P1b-gyZPfdp3ZhE4kpjbQHwwhaTo0l68fzceLij0mJM_YYtK-KHEwZhzAltDRNYqTrw3vB5WnJOyl5Z2PS3X_yJbXnO7CyZHAkRy3cqaY8ihrcF99E1-G-ZpmNIbXeqK3z6tHoh5G3o2QE5X8OqmldXtr99NQyIeRTe723Qxi2M2p76f8iyKi9jPfJj2eTyb5SwKi5uKZrxSt5MYFA1q_icxJuB5Et_flLeBHwQ-yDyLfT-cT-F_wJOIw-8Csr5oEvmwlyyrKeLAa_kbeWsgZe1WQWUFs5w6V1JlLiC56Q7s01bvhLx95Lm8Mf3eGtx_AfcZHcg">