Closed BurningEnlightenment closed 2 years ago
@ned14 the status-code tests cannot compile until ned14/kerneltest#3 is merged.
Compiling kerneltest on VS2022 (but not on VS2019) seems to be broken regardless:
D:\a\llfio\llfio\prebuilt\install\include\kerneltest\v1.0\hooks/filesystem_workspace.hpp(320,46): error C2039: 'c_str': is not a member of 'std::filesystem::path' [D:\a\llfio\llfio\prebuilt\llfio_hl--byte_socket_handle.vcxproj]
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.32.31326\include\fstream(29): message : see declaration of 'std::filesystem::path' [D:\a\llfio\llfio\prebuilt\llfio_hl--byte_socket_handle.vcxproj]
D:\a\llfio\llfio\prebuilt\install\include\kerneltest\v1.0\hooks/filesystem_workspace.hpp(385): message : see reference to class template instantiation 'kerneltest_v1_0b98ef67::hooks::filesystem_setup_impl::impl<is_throwing,Parent,RetType>' being compiled [D:\a\llfio\llfio\prebuilt\llfio_hl--byte_socket_handle.vcxproj]
https://github.com/ned14/llfio/runs/7835250833?check_suite_focus=true#step:4:109 or latest develop CI run https://github.com/ned14/llfio/runs/7795234431?check_suite_focus=true#step:4:109
I can reproduce it locally, but cannot make sense of it. I took a look at the preprocessor output and verified that <filesystem>
got included and contains a definition of path::c_str()
. The command line params look innocent too (see below), so my guess would be a compiler bug.
/permissive-
/ifcOutput
"llfio_sl--byte_socket_handle.dir\Debug\"
/GS
/W4
/wd"4503"
/Zc:wchar_t
/I"C:\devel\source\ned14\llfio\include"
/I"C:\devel\source\ned14\llfio\include\llfio\ntkernel-error-category\include"
/I"C:\devel\source\ned14\build\llfio\install\include"
/Zi
/Gm-
/Od
/Ob0
/Fd"llfio_sl--byte_socket_handle.dir\Debug\vc143.pdb"
/Zc:inline
/fp:precise
/D "_MBCS"
/D "WIN32"
/D "_WINDOWS"
/D "_CRT_NONSTDC_NO_WARNINGS"
/D "LLFIO_INCLUDE_STORAGE_PROFILE=1"
/D "LLFIO_ENABLE_TEST_IO_MULTIPLEXERS=1"
/D "QUICKCPPLIB_ENABLE_VALGRIND=1"
/D "LLFIO_DYNAMIC_THREAD_POOL_GROUP_USING_GCD=0"
/D "LLFIO_HEADERS_ONLY=0"
/D "CMAKE_INTDIR=\"Debug\""
/errorReport:prompt
/WX-
/Zc:forScope
/RTC1
/Gd
/MDd
/std:c++20
/Fa"llfio_sl--byte_socket_handle.dir\Debug\"
/EHsc
/nologo
/Fo"llfio_sl--byte_socket_handle.dir\Debug\"
/Fp"llfio_sl--byte_socket_handle.dir\Debug\llfio_sl--byte_socket_handle.pch"
/diagnostics:column
There were a few releases there of VS2022 which were quite quite buggy.
4 files + 1 62 suites - 34 22m 23s :stopwatch: + 5m 17s 58 tests + 1 58 :heavy_check_mark: + 1 0 :zzz: ±0 0 :x: ±0 120 runs - 60 120 :heavy_check_mark: - 60 0 :zzz: ±0 0 :x: ±0
Results for commit 48ea96b2. ± Comparison against base commit 78ffd901.
2 files - 1 60 suites - 36 4m 47s :stopwatch: - 12m 19s 53 tests - 4 52 :heavy_check_mark: - 5 0 :zzz: ±0 1 :x: +1 112 runs - 68 110 :heavy_check_mark: - 70 0 :zzz: ±0 2 :x: +2
For more details on these failures, see this check.
Results for commit 48ea96b2. ± Comparison against base commit 78ffd901.
6 files + 3 192 suites +96 28m 31s :stopwatch: + 11m 25s 57 tests ± 0 57 :heavy_check_mark: ± 0 0 :zzz: ±0 0 :x: ±0 360 runs +180 360 :heavy_check_mark: +180 0 :zzz: ±0 0 :x: ±0
Results for commit 48ea96b2. ± Comparison against base commit 78ffd901.
Integrate upstream changes from ned14/outcome#258 to allow using a system wide status-code installation.