-
Notifications
You must be signed in to change notification settings - Fork 15.5k
Open
Labels
c++20confirmedVerified by a second partyVerified by a second partycoroutinesC++20 coroutinesC++20 coroutinescrashPrefer [crash-on-valid] or [crash-on-invalid]Prefer [crash-on-valid] or [crash-on-invalid]llvm:optimizationsplatform:windows
Description
Environment
- Github workflow
- Github hosted windows-latest runner (matches windows-2025 on this report date)
- using
CMakewith visual studio generator usingClangCltoolset.
Reproduction steps
The crash was generated in this repo github actions.
The repo workflow uses windows, ubuntu and Macos github hosted runners. It runs CMake to build C++ sources.
The issue is in the windows-clang job. Note that clang works perfectly on Ubuntu (see ubuntu-clang and macos-clang jobs).
The issue appears when the C++ sources were modified to use unique_ptr<char[]>.
Crash report
It is available here.
basically:
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: "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\Llvm\\x64\\bin\\clang-cl.exe" @C:\\Users\\runneradmin\\AppData\\Local\\Temp\\MSBuildTemp\\tmp53ddccde22e94fa5985920d130732494.rsp
1. <eof> parser at end of file
2. Optimizer
3. Running pass "require<globals-aa>,function(invalidate<aa>),require<profile-summary>,cgscc(devirt<4>(inline,function-attrs<skip-non-recursive-function-attrs>,argpromotion,openmp-opt-cgscc,function<eager-inv;no-rerun>(sroa<modify-cfg>,early-cse<memssa>,speculative-execution<only-if-divergent-target>,jump-threading,correlated-propagation,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-use-loop-info;no-verify-fixpoint>,aggressive-instcombine,libcalls-shrinkwrap,tailcallelim,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,reassociate,constraint-elimination,loop-mssa(loop-instsimplify,loop-simplifycfg,licm<no-allowspeculation>,loop-rotate<header-duplication;no-prepare-for-lto>,licm<allowspeculation>,simple-loop-unswitch<nontrivial;trivial>),simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-use-loop-info;no-verify-fixpoint>,loop(loop-idiom,indvars,simple-loop-unswitch<nontrivial;trivial>,loop-deletion,loop-unroll-full),sroa<modify-cfg>,vector-combine,mldst-motion<no-split-footer-bb>,gvn<>,sccp,bdce,instcombine<max-iterations=1;no-use-loop-info;no-verify-fixpoint>,jump-threading,correlated-propagation,adce,memcpyopt,dse,move-auto-init,loop-mssa(licm<allowspeculation>),coro-elide,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;hoist-common-insts;sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-use-loop-info;no-verify-fixpoint>),function-attrs,function(require<should-not-run-function-passes>),coro-split)),function(invalidate<should-not-run-function-passes>),cgscc(devirt<4>())" on module "D:\a\CppCoroutines\CppCoroutines\examples\Gor\client.cpp"
4. Running pass "cgscc(devirt<4>(inline,function-attrs<skip-non-recursive-function-attrs>,argpromotion,openmp-opt-cgscc,function<eager-inv;no-rerun>(sroa<modify-cfg>,early-cse<memssa>,speculative-execution<only-if-divergent-target>,jump-threading,correlated-propagation,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-use-loop-info;no-verify-fixpoint>,aggressive-instcombine,libcalls-shrinkwrap,tailcallelim,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,reassociate,constraint-elimination,loop-mssa(loop-instsimplify,loop-simplifycfg,licm<no-allowspeculation>,loop-rotate<header-duplication;no-prepare-for-lto>,licm<allowspeculation>,simple-loop-unswitch<nontrivial;trivial>),simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-use-loop-info;no-verify-fixpoint>,loop(loop-idiom,indvars,simple-loop-unswitch<nontrivial;trivial>,loop-deletion,loop-unroll-full),sroa<modify-cfg>,vector-combine,mldst-motion<no-split-footer-bb>,gvn<>,sccp,bdce,instcombine<max-iterations=1;no-use-loop-info;no-verify-fixpoint>,jump-threading,correlated-propagation,adce,memcpyopt,dse,move-auto-init,loop-mssa(licm<allowspeculation>),coro-elide,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;hoist-common-insts;sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-use-loop-info;no-verify-fixpoint>),function-attrs,function(require<should-not-run-function-passes>),coro-split))" on module "D:\a\CppCoroutines\CppCoroutines\examples\Gor\client.cpp"
5. Running pass "jump-threading" on function "?session@@YA?AV?$future@U?$pair@_K_K@std@@@std@@AEAVio_service@asio@@AEAV?$basic_resolver_iterator@Vtcp@ip@asio@@@ip@4@_KAEAU?$atomic@_N@2@@Z.resume"
Exception Code: 0xC0000005
#0 0x00007ff790d194ce (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0xec94ce)
#1 0x00007ff7911330ea (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x12e30ea)
#2 0x00007ff79164d3c4 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x17fd3c4)
#3 0x00007ff791645076 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x17f5076)
#4 0x00007ff79173db96 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x18edb96)
#5 0x00007ff7917390af (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x18e90af)
#6 0x00007ff7917355f0 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x18e55f0)
#7 0x00007ff791177c24 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x1327c24)
#8 0x00007ff791177a71 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x1327a71)
#9 0x00007ff7914b9643 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x1669643)
#10 0x00007ff7914b92c1 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x16692c1)
#11 0x00007ff791280680 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x1430680)
#12 0x00007ff79128037b (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x143037b)
#13 0x00007ff7916f5fab (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x18a5fab)
#14 0x00007ff7916f5c8b (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x18a5c8b)
#15 0x00007ff791835b59 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x19e5b59)
#16 0x00007ff7918358eb (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x19e58eb)
#17 0x00007ff7917eb4d6 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x199b4d6)
#18 0x00007ff790235b71 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x3e5b71)
#19 0x00007ff79012a260 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x2da260)
#20 0x00007ff790642c50 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x7f2c50)
#21 0x00007ff790642a81 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x7f2a81)
#22 0x00007ff79012a260 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x2da260)
#23 0x00007ff790125918 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x2d5918)
#24 0x00007ff79011c432 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x2cc432)
#25 0x00007ff7914bc015 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x166c015)
#26 0x00007ff7919ac588 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x1b5c588)
#27 0x00007ff79040d8a1 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x5bd8a1)
#28 0x00007ff79040d432 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x5bd432)
#29 0x00007ff79040a1a6 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x5ba1a6)
#30 0x00007ff790407165 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x5b7165)
#31 0x00007ff790405afe (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x5b5afe)
#32 0x00007ff790b1f23d (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0xccf23d)
#33 0x00007ff79058db25 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x73db25)
#34 0x00007ff79058d918 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x73d918)
#35 0x00007ff79028b8[78](https://github.com/MiguelBarro/CppCoroutines/actions/runs/14553506438/job/40827454188#step:3:79) (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x43b878)
#36 0x00007ff[79](https://github.com/MiguelBarro/CppCoroutines/actions/runs/14553506438/job/40827454188#step:3:80)028abfe (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x43abfe)
#37 0x00007ff79028a777 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x43a777)
#38 0x00007ff7902[81](https://github.com/MiguelBarro/CppCoroutines/actions/runs/14553506438/job/40827454188#step:3:82)f06 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x431f06)
#39 0x00007ff79027f683 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x42f683)
#40 0x00007ff791a4c[82](https://github.com/MiguelBarro/CppCoroutines/actions/runs/14553506438/job/40827454188#step:3:83)8 (C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin\clang-cl.exe+0x1bfc828)
#41 0x00007ffe114f4cb0 (C:\Windows\System32\KERNEL32.DLL+0x14cb0)
#42 0x00007ffe11d3edcb (C:\Windows\SYSTEM32\ntdll.dll+0x7edcb)
clang-cl : error : clang frontend command failed due to signal (use -v to see invocation) [D:\a\CppCoroutines\CppCoroutines\examples\build\Gor\client.vcxproj]
clang version 19.1.1
Target: amd64-pc-windows-msvc
Thread model: posix
InstalledDir: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin
clang-cl : message : diagnostic msg: [D:\a\CppCoroutines\CppCoroutines\examples\build\Gor\client.vcxproj]
********************
PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang-cl : message : diagnostic msg: C:\Users\RUNNER~1\AppData\Local\Temp\client-85519e.cpp [D:\a\CppCoroutines\CppCoroutines\examples\build\Gor\client.vcxproj]
clang-cl : message : diagnostic msg: C:\Users\RUNNER~1\AppData\Local\Temp\client-85519e.sh [D:\a\CppCoroutines\CppCoroutines\examples\build\Gor\client.vcxproj]
clang-cl : message : diagnostic msg: [D:\a\CppCoroutines\CppCoroutines\examples\build\Gor\client.vcxproj]
********************
Metadata
Metadata
Assignees
Labels
c++20confirmedVerified by a second partyVerified by a second partycoroutinesC++20 coroutinesC++20 coroutinescrashPrefer [crash-on-valid] or [crash-on-invalid]Prefer [crash-on-valid] or [crash-on-invalid]llvm:optimizationsplatform:windows