Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reliable crash shortly after initialization on Windows #1167

Closed
z2oh opened this issue Apr 4, 2024 · 2 comments · Fixed by apple/swift#73518
Closed

Reliable crash shortly after initialization on Windows #1167

z2oh opened this issue Apr 4, 2024 · 2 comments · Fixed by apple/swift#73518

Comments

@z2oh
Copy link
Contributor

z2oh commented Apr 4, 2024

I have stack traces this time!

The crash occurs on this line when trying to copy out a compiler flag from a deallocated buffer.

00 000000f1`762f9ac0 00007ffc`b0c2868d     vrfcore!VerifierStopMessageEx+0x81e
01 000000f1`762f9e20 00007ffc`a4717383     vrfcore!VfCoreRedirectedStopMessage+0x8d
02 000000f1`762f9eb0 00007ffc`c4e7636f     verifier!VerifierStopMessage+0xc3
03 000000f1`762f9f60 00007ffc`90f82853     ntdll!RtlApplicationVerifierStop+0xef
04 000000f1`762f9fd0 00007ffc`90f836a0     vfbasics!VerifierStopMessage+0x223
05 000000f1`762fa030 00007ffc`90f82bfa     vfbasics!AVrfpCheckFirstChanceException+0x148
06 000000f1`762fa0c0 00007ffc`c4e07a8a     vfbasics!AVrfpVectoredExceptionHandler+0x1a
07 000000f1`762fa110 00007ffc`c4dae242     ntdll!RtlpCallVectoredHandlers+0x112
08 000000f1`762fa1b0 00007ffc`c4e3340e     ntdll!RtlDispatchException+0x62
09 000000f1`762fa400 00007ffc`497211a3     ntdll!KiUserExceptionDispatch+0x2e
0a 000000f1`762fab38 00007ffb`bd224268     VCRUNTIME140!memcpy+0xe3 [D:\a\_work\1\s\src\vctools\crt\vcruntime\src\string\amd64\memcpy.asm @ 191] 
0b (Inline Function) --------`--------     sourcekitdInProc!std::_Char_traits<char,int>::copy+0x5 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xstring @ 64] 
0c 000000f1`762fab40 00007ffb`c04b364b     sourcekitdInProc!std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Construct<1,char const *>+0x48 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xstring @ 2663] 
0d (Inline Function) --------`--------     sourcekitdInProc!std::basic_string<char,std::char_traits<char>,std::allocator<char> >::{ctor}+0x1f [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xstring @ 2905] 
0e (Inline Function) --------`--------     sourcekitdInProc!std::_Default_allocator_traits<std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::construct+0x1f [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xmemory @ 723] 
0f (Inline Function) --------`--------     sourcekitdInProc!std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::_Emplace_back_with_unused_capacity+0x1f [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vector @ 798] 
10 000000f1`762fab70 00007ffb`c04d6529     sourcekitdInProc!std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::_Emplace_one_at_back<llvm::StringRef &>+0x3b [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vector @ 780] 
11 (Inline Function) --------`--------     sourcekitdInProc!std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::emplace_back+0xd [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vector @ 862] 
12 000000f1`762fabb0 00007ffb`c04e663d     sourcekitdInProc!swift::importer::addCommonInvocationArguments+0x869 [C:\a\swift-build\swift-build\SourceCache\swift\lib\ClangImporter\ClangImporter.cpp @ 842] 
13 000000f1`762fadb0 00007ffb`c04e5a5a     sourcekitdInProc!swift::ClangImporter::getClangDriverArguments+0xad [C:\a\swift-build\swift-build\SourceCache\swift\lib\ClangImporter\ClangImporter.cpp @ 1074] 
14 000000f1`762fae70 00007ffb`c04da8f9     sourcekitdInProc!swift::ClangImporter::getClangCC1Arguments+0x31a [C:\a\swift-build\swift-build\SourceCache\swift\lib\ClangImporter\ClangImporter.cpp @ 1130] 
15 000000f1`762fb120 00007ffb`bf10d1df     sourcekitdInProc!swift::ClangImporter::create+0x6c9 [C:\a\swift-build\swift-build\SourceCache\swift\lib\ClangImporter\ClangImporter.cpp @ 1267] 
16 000000f1`762fb9b0 00007ffb`bf10c846     sourcekitdInProc!swift::CompilerInstance::setUpModuleLoaders+0x4bf [C:\a\swift-build\swift-build\SourceCache\swift\lib\Frontend\Frontend.cpp @ 772] 
17 000000f1`762fd890 00007ffb`bf10e6df     sourcekitdInProc!swift::CompilerInstance::setUpASTContextIfNeeded+0x1f6 [C:\a\swift-build\swift-build\SourceCache\swift\lib\Frontend\Frontend.cpp @ 329] 
18 000000f1`762fd8f0 00007ffb`bcfe0e2a     sourcekitdInProc!swift::CompilerInstance::setup+0x35f [C:\a\swift-build\swift-build\SourceCache\swift\lib\Frontend\Frontend.cpp @ 532] 
19 (Inline Function) --------`--------     sourcekitdInProc!`anonymous namespace'::ASTBuildOperation::buildASTUnit+0x805 [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftASTManager.cpp @ 1102] 
1a (Inline Function) --------`--------     sourcekitdInProc!`anonymous namespace'::ASTBuildOperation::schedule::<lambda_6>::operator()+0x94e [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftASTManager.cpp @ 1208] 
1b 000000f1`762fd990 00007ffb`bcf8f51e     sourcekitdInProc!SourceKit::WorkQueue::DispatchData::callAndDelete<`lambda at C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftASTManager.cpp:1180:7'>+0x97a [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\include\SourceKit\Support\Concurrency.h @ 214] 
1c 000000f1`762ffd00 00007ffb`bcf8f54e     sourcekitdInProc!executeBlock+0xe [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\Support\Concurrency-libdispatch.cpp @ 103] 
1d (Inline Function) --------`--------     sourcekitdInProc!llvm::thread::GenericThreadProxy<std::tuple<void (*)(void *),void *> >::<lambda_1>::operator()+0x6 [C:\a\swift-build\swift-build\SourceCache\llvm-project\llvm\include\llvm\Support\thread.h @ 43] 
1e (Inline Function) --------`--------     sourcekitdInProc!std::invoke+0x6 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\type_traits @ 1741] 
1f (Inline Function) --------`--------     sourcekitdInProc!std::_Apply_impl+0x6 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\tuple @ 1077] 
20 (Inline Function) --------`--------     sourcekitdInProc!std::apply+0x6 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\tuple @ 1088] 
21 (Inline Function) --------`--------     sourcekitdInProc!llvm::thread::GenericThreadProxy+0x6 [C:\a\swift-build\swift-build\SourceCache\llvm-project\llvm\include\llvm\Support\thread.h @ 41] 
22 000000f1`762ffd30 00007ffc`c2739363     sourcekitdInProc!llvm::thread::ThreadProxy<std::tuple<void (*)(void *),void *> >+0xe [C:\a\swift-build\swift-build\SourceCache\llvm-project\llvm\include\llvm\Support\thread.h @ 65] 
23 000000f1`762ffd60 00007ffc`90f9786e     ucrtbase!thread_start<unsigned int (__cdecl*)(void *),1>+0x93
24 000000f1`762ffd90 00007ffc`c41b257d     vfbasics!AVrfpStandardThreadFunction+0x4e
25 000000f1`762ffdd0 00007ffc`c4deaa58     KERNEL32!BaseThreadInitThunk+0x1d
26 000000f1`762ffe00 00000000`00000000     ntdll!RtlUserThreadStart+0x28

The string ref into the argument list is captured here, but the compiler invocation object is decallocated with extant references stored in the ASTContext.

Here's a trace of the reference being captured:

00 000000f1`769f67a0 00007ffb`bf0feb3f     sourcekitdInProc!ParseSearchPathArgs+0x11df [C:\a\swift-build\swift-build\SourceCache\swift\lib\Frontend\CompilerInvocation.cpp @ 1970] 
01 000000f1`769f6c10 00007ffb`bef424fe     sourcekitdInProc!swift::CompilerInvocation::parseArgs+0x4bf [C:\a\swift-build\swift-build\SourceCache\swift\lib\Frontend\CompilerInvocation.cpp @ 3341] 
02 (Inline Function) --------`--------     sourcekitdInProc!swift::ide::initCompilerInvocation::__l2::<lambda_1>::operator()+0x7a [C:\a\swift-build\swift-build\SourceCache\swift\lib\IDETool\CompilerInvocation.cpp @ 185] 
03 000000f1`769f6e80 00007ffb`bfd3b615     sourcekitdInProc!llvm::function_ref<bool __cdecl(llvm::ArrayRef<char const *>)>::callback_fn<`swift::ide::initCompilerInvocation'::`2'::<lambda_1> >+0x7e [C:\a\swift-build\swift-build\SourceCache\llvm-project\llvm\include\llvm\ADT\STLFunctionalExtras.h @ 47] 
04 (Inline Function) --------`--------     sourcekitdInProc!llvm::function_ref<bool __cdecl(llvm::ArrayRef<char const *>)>::operator()+0x1f [C:\a\swift-build\swift-build\SourceCache\llvm-project\llvm\include\llvm\ADT\STLFunctionalExtras.h @ 68] 
05 000000f1`769f6ef0 00007ffb`bef43d1c     sourcekitdInProc!swift::driver::getSingleFrontendInvocationFromDriverArguments+0x7c5 [C:\a\swift-build\swift-build\SourceCache\swift\lib\Driver\FrontendUtil.cpp @ 144] 
06 000000f1`769f7260 00007ffb`bcfcac62     sourcekitdInProc!swift::ide::initCompilerInvocation+0x2cc [C:\a\swift-build\swift-build\SourceCache\swift\lib\IDETool\CompilerInvocation.cpp @ 192] 
07 (Inline Function) --------`--------     sourcekitdInProc!SourceKit::SwiftASTManager::initCompilerInvocation+0x9c [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftASTManager.cpp @ 698] 
08 000000f1`769f76b0 00007ffb`bcfeefb4     sourcekitdInProc!SourceKit::SwiftASTManager::getTypecheckInvocation+0x392 [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftASTManager.cpp @ 754] 
09 000000f1`769ff430 00007ffb`bcf84bb7     sourcekitdInProc!SourceKit::SwiftLangSupport::getDiagnostics+0x104 [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftSourceDocInfo.cpp @ 2241] 
0a (Inline Function) --------`--------     sourcekitdInProc!handleRequestDiagnostics::<lambda_26>::operator()+0x2dd [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\tools\sourcekitd\lib\Service\Requests.cpp @ 1893] 
0b (Inline Function) --------`--------     sourcekitdInProc!std::invoke+0x2dd [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\type_traits @ 1731] 
0c 000000f1`769ff5f0 00007ffb`bcf78fc7     sourcekitdInProc!std::_Func_impl_no_alloc<`lambda at C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\tools\sourcekitd\lib\Service\Requests.cpp:1882:35',void>::_Do_call+0x2f7 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\functional @ 808] 
0d (Inline Function) --------`--------     sourcekitdInProc!std::_Func_class<void>::operator()+0xf [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\functional @ 854] 
0e (Inline Function) --------`--------     sourcekitdInProc!handleSemanticRequest::<lambda_33>::operator()+0xf [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\tools\sourcekitd\lib\Service\Requests.cpp @ 577] 
0f 000000f1`769ff840 00007ffb`bcf8f51e     sourcekitdInProc!SourceKit::WorkQueue::DispatchData::callAndDelete<`lambda at C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\tools\sourcekitd\lib\Service\Requests.cpp:577:22'>+0x17 [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\include\SourceKit\Support\Concurrency.h @ 215] 
10 000000f1`769ff870 00007ffb`bcf8f54e     sourcekitdInProc!executeBlock+0xe [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\Support\Concurrency-libdispatch.cpp @ 103] 
11 (Inline Function) --------`--------     sourcekitdInProc!llvm::thread::GenericThreadProxy<std::tuple<void (*)(void *),void *> >::<lambda_1>::operator()+0x6 [C:\a\swift-build\swift-build\SourceCache\llvm-project\llvm\include\llvm\Support\thread.h @ 43] 
12 (Inline Function) --------`--------     sourcekitdInProc!std::invoke+0x6 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\type_traits @ 1741] 
13 (Inline Function) --------`--------     sourcekitdInProc!std::_Apply_impl+0x6 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\tuple @ 1077] 
14 (Inline Function) --------`--------     sourcekitdInProc!std::apply+0x6 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\tuple @ 1088] 
15 (Inline Function) --------`--------     sourcekitdInProc!llvm::thread::GenericThreadProxy+0x6 [C:\a\swift-build\swift-build\SourceCache\llvm-project\llvm\include\llvm\Support\thread.h @ 41] 
16 000000f1`769ff8a0 00007ffc`c2739363     sourcekitdInProc!llvm::thread::ThreadProxy<std::tuple<void (*)(void *),void *> >+0xe [C:\a\swift-build\swift-build\SourceCache\llvm-project\llvm\include\llvm\Support\thread.h @ 65] 
17 000000f1`769ff8d0 00007ffc`90f9786e     ucrtbase!thread_start<unsigned int (__cdecl*)(void *),1>+0x93
18 000000f1`769ff900 00007ffc`c41b257d     vfbasics!AVrfpStandardThreadFunction+0x4e
19 000000f1`769ff940 00007ffc`c4deaa58     KERNEL32!BaseThreadInitThunk+0x1d
1a 000000f1`769ff970 00000000`00000000     ntdll!RtlUserThreadStart+0x28

and the backing argument list being subsequently deallocated:

00 (Inline Function) --------`--------     sourcekitdInProc!std::_Deallocate+0x18 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xmemory @ 264] 
01 (Inline Function) --------`--------     sourcekitdInProc!std::_Default_allocator_traits<std::allocator<std::_List_node<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,void *> > >::deallocate+0x18 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xmemory @ 714] 
02 (Inline Function) --------`--------     sourcekitdInProc!std::_List_node<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,void *>::_Freenode0+0x18 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\list @ 312] 
03 (Inline Function) --------`--------     sourcekitdInProc!std::_List_node<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,void *>::_Freenode+0x52 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\list @ 318] 
04 000000f1`73ef6680 00007ffb`bfd3adcc     sourcekitdInProc!std::_List_node<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,void *>::_Free_non_head<std::allocator<std::_List_node<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,void *> > >+0x72 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\list @ 329] 
05 (Inline Function) --------`--------     sourcekitdInProc!std::list<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::_Tidy+0x13 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\list @ 1500] 
06 (Inline Function) --------`--------     sourcekitdInProc!std::list<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::{dtor}+0x13 [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\list @ 1045] 
07 (Inline Function) --------`--------     sourcekitdInProc!llvm::opt::InputArgList::{dtor}+0x2a [C:\a\swift-build\swift-build\SourceCache\llvm-project\llvm\include\llvm\Option\ArgList.h @ 431] 
08 (Inline Function) --------`--------     sourcekitdInProc!std::default_delete<llvm::opt::InputArgList>::operator()+0x2a [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\memory @ 3170] 
09 000000f1`73ef66b0 00007ffb`bfd4f13b     sourcekitdInProc!std::unique_ptr<llvm::opt::InputArgList,std::default_delete<llvm::opt::InputArgList> >::~unique_ptr<llvm::opt::InputArgList,std::default_delete<llvm::opt::InputArgList> >+0x3c [C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\memory @ 3280] 
0a 000000f1`73ef66e0 00007ffb`bfd3b66e     sourcekitdInProc!swift::driver::Compilation::~Compilation+0x6b [C:\a\swift-build\swift-build\SourceCache\swift\lib\Driver\Compilation.cpp @ 990] 
0b 000000f1`73ef6710 00007ffb`bef43d1c     sourcekitdInProc!swift::driver::getSingleFrontendInvocationFromDriverArguments+0x81e [C:\a\swift-build\swift-build\SourceCache\swift\lib\Driver\FrontendUtil.cpp @ 144] 
0c 000000f1`73ef6a80 00007ffb`bcfcac62     sourcekitdInProc!swift::ide::initCompilerInvocation+0x2cc [C:\a\swift-build\swift-build\SourceCache\swift\lib\IDETool\CompilerInvocation.cpp @ 192] 
0d (Inline Function) --------`--------     sourcekitdInProc!SourceKit::SwiftASTManager::initCompilerInvocation+0x9c [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftASTManager.cpp @ 698] 
0e 000000f1`73ef6ed0 00007ffb`bcfca8bd     sourcekitdInProc!SourceKit::SwiftASTManager::getTypecheckInvocation+0x392 [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftASTManager.cpp @ 754] 
0f 000000f1`73efec50 00007ffb`bcfb44ed     sourcekitdInProc!SourceKit::SwiftASTManager::getTypecheckInvocation+0x5d [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftASTManager.cpp @ 739] 
10 (Inline Function) --------`--------     sourcekitdInProc!`anonymous namespace'::SwiftDocumentSemanticInfo::setCompilerArgs+0x96 [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftEditor.cpp @ 685] 
11 000000f1`73efece0 00007ffb`bcfb8ee6     sourcekitdInProc!SourceKit::SwiftEditorDocument::initializeText+0x2ed [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftEditor.cpp @ 1990] 
12 000000f1`73efedf0 00007ffb`bcf6c038     sourcekitdInProc!SourceKit::SwiftLangSupport::editorOpen+0x316 [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\lib\SwiftLang\SwiftEditor.cpp @ 2401] 
13 (Inline Function) --------`--------     sourcekitdInProc!editorOpen+0x18c [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\tools\sourcekitd\lib\Service\Requests.cpp @ 3581] 
14 (Inline Function) --------`--------     sourcekitdInProc!handleRequestEditorOpen+0x1050 [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\tools\sourcekitd\lib\Service\Requests.cpp @ 821] 
15 (Inline Function) --------`--------     sourcekitdInProc!handleRequestImpl+0x2780 [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\tools\sourcekitd\lib\Service\Requests.cpp @ 2088] 
16 000000f1`73efef80 00007ffb`bcf520d3     sourcekitdInProc!sourcekitd::handleRequest+0x28f8 [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\tools\sourcekitd\lib\Service\Requests.cpp @ 400] 
17 (Inline Function) --------`--------     sourcekitdInProc!sourcekitd_send_request::<lambda_1>::operator()+0x2b [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\tools\sourcekitd\bin\InProc\sourcekitdInProc.cpp @ 170] 
18 000000f1`73eff620 00007ffc`83833b50     sourcekitdInProc!SourceKit::WorkQueue::DispatchData::callAndDelete<`lambda at C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\tools\sourcekitd\bin\InProc\sourcekitdInProc.cpp:169:18'>+0x33 [C:\a\swift-build\swift-build\SourceCache\swift\tools\SourceKit\include\SourceKit\Support\Concurrency.h @ 214] 
19 (Inline Function) --------`--------     dispatch!_dispatch_continuation_invoke_inline+0x8d [C:\a\swift-build\swift-build\SourceCache\swift-corelibs-libdispatch\src\inline_internal.h @ 2455] 
1a (Inline Function) --------`--------     dispatch!_dispatch_continuation_pop_inline+0xfb [C:\a\swift-build\swift-build\SourceCache\swift-corelibs-libdispatch\src\inline_internal.h @ 2498] 
1b (Inline Function) --------`--------     dispatch!_dispatch_root_queue_drain+0x1f0 [C:\a\swift-build\swift-build\SourceCache\swift-corelibs-libdispatch\src\queue.c @ 6114] 
1c (Inline Function) --------`--------     dispatch!_dispatch_worker_thread+0x2b3 [C:\a\swift-build\swift-build\SourceCache\swift-corelibs-libdispatch\src\queue.c @ 6249] 
1d 000000f1`73eff690 00007ffc`c2739363     dispatch!_dispatch_worker_thread_thunk+0x2e0 [C:\a\swift-build\swift-build\SourceCache\swift-corelibs-libdispatch\src\queue.c @ 6271] 
1e 000000f1`73eff750 00007ffc`90f9786e     ucrtbase!thread_start<unsigned int (__cdecl*)(void *),1>+0x93
1f 000000f1`73eff780 00007ffc`c41b257d     vfbasics!AVrfpStandardThreadFunction+0x4e
20 000000f1`73eff7c0 00007ffc`c4deaa58     KERNEL32!BaseThreadInitThunk+0x1d
21 000000f1`73eff7f0 00000000`00000000     ntdll!RtlUserThreadStart+0x28

I've been bisecting toolchain versions and it seems like this issue was introduced sometime around late February or early March (the toolchain we built on 2024/02/29 is good, but the one built on 2024/03/03 has this issue).

I'm continuing to investigate here, but wanted to flag early in case there's any insight or this has been reported elsewhere.

@z2oh z2oh changed the title Reliable crash after initialization on Windows Reliable crash shortly after initialization on Windows Apr 4, 2024
@ahoppen
Copy link
Collaborator

ahoppen commented Apr 4, 2024

Thanks for investigating this @z2oh! I am not aware of any related issue.

@ahoppen
Copy link
Collaborator

ahoppen commented Apr 4, 2024

Tracked in Apple’s issue tracker as rdar://125927586

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants