microsoft / STL

MSVC's implementation of the C++ Standard Library.
Other
10.23k stars 1.51k forks source link

libcxx: Sporadic crash in `thread.thread.destr/dtor.pass.cpp` #5074

Open StephanTLavavej opened 2 weeks ago

StephanTLavavej commented 2 weeks ago

5073 encountered a sporadic crash in libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.destr/dtor.pass.cpp.

Test logs, x64:

Build steps:
Command: "C:\Program Files\Microsoft Visual Studio\2022\Preview\VC\Tools\MSVC\14.42.34430\bin\HostX64\x64\cl.EXE" "D:\a\_work\1\s\llvm-project\libcxx\test\std\thread\thread.threads\thread.thread.class\thread.thread.destr\dtor.pass.cpp" "-ID:\build\out\inc" "-ID:\a\_work\1\s\llvm-project\libcxx\test\support" "/nologo" "/Od" "/W4" "/w14061" "/w14242" "/w14265" "/w14582" "/w14583" "/w14587" "/w14588" "/w14749" "/w14841" "/w14842" "/w15038" "/w15214" "/w15215" "/w15216" "/w15217" "/w15262" "/sdl" "/WX" "/D_ENABLE_STL_INTERNAL_CHECK" "/bigobj" "/EHsc" "/MTd" "/std:c++latest" "/permissive-" "/utf-8" "/FImsvc_stdlib_force_include.h" "/wd4643" "/D_STL_CALL_ABORT_INSTEAD_OF_INVALID_PARAMETER" "/analyze:autolog-" "/Zc:preprocessor" "/wd6262" "-FeD:\build\tests\libcxx\std\thread\thread.threads\thread.thread.class\thread.thread.destr\Output\dtor.pass.cpp.dir\0\dtor.pass.exe" "-link" "-LIBPATH:D:\build\out\lib\amd64" "-LIBPATH:C:\Program Files\Microsoft Visual Studio\2022\Preview\VC\Tools\MSVC\14.42.34430\lib\x64" "/MANIFEST:EMBED"
Exit Code: 0 (0x0)
Standard Output:
--
dtor.pass.cpp
--

Intellisense response file steps:
Test setup steps:
Test steps:
Test step failed unexpectedly.
Command: "D:\build\tests\libcxx\std\thread\thread.threads\thread.thread.class\thread.thread.destr\Output\dtor.pass.cpp.dir\0\dtor.pass.exe"
Exit Code: 3221225477 (0xC0000005)
CaseyCarter commented 2 weeks ago

Maybe the problem is the data race on n_alive - not likely, but UB is UB - or maybe it's the timing assumption. In either case, we should skip this test case.