laurynas-biveinis/unodb

Internal Compiler Error with MSVC 17.7 (19.37)

Closed this issue · 2 comments

Haven't figured out how to reduce the testcase. LLVM backend works.

FAILED: benchmark/CMakeFiles/micro_benchmark_key_prefix.dir/micro_benchmark_key_prefix.cpp.obj 
[97](https://github.com/laurynas-biveinis/unodb/actions/runs/6275796639/job/17044078192?pr=546#step:6:98)
C:\PROGRA~1\MICROS~2\2022\ENTERP~1\VC\Tools\MSVC\1437~1.328\bin\Hostx64\x64\cl.exe  /nologo /TP -DBENCHMARK_STATIC_DEFINE -DUNODB_DETAIL_STANDALONE -ID:\a\unodb\unodb\benchmark\. -ID:\a\unodb\unodb\. -external:ID:\a\unodb\unodb\3rd_party\benchmark\include -external:ID:\a\unodb\unodb\3rd_party\GSL\include -external:ID:\a\unodb\unodb\boost\boost\include\boost-1_78 -external:W0 /DWIN32 /D_WINDOWS  /GR /EHsc /MDd /ZI /Ob0 /Od /RTC1 -std:c++17 /external:anglebrackets /external:W0 /permissive- /arch:AVX2 /WX /Wall /wd4324 /wd5030 /wd5072 /wd4623 /wd4625 /wd4626 /wd4582 /wd4820 /wd4710 /wd4711 /wd4868 /wd5026 /wd5027 /wd5045 /wd5246 /wd5264 /Od /analyze /analyze:external- /analyze:pluginEspXEngine.dll "/analyze:rulesetdirectoryC:\Program Files\Microsoft Visual Studio\2022\Enterprise;/analyze:rulesetNativeRecommendedRules.ruleset" /wd26429 /wd26446 /wd26482 /wd26415 /wd26472 /wd26494 /analyze:log:format:sarif /analyze:logmsvc.sarif /analyze:log:compilerwarnings /showIncludes /Fobenchmark\CMakeFiles\micro_benchmark_key_prefix.dir\micro_benchmark_key_prefix.cpp.obj /Fdbenchmark\CMakeFiles\micro_benchmark_key_prefix.dir\ /FS -c D:\a\unodb\unodb\benchmark\micro_benchmark_key_prefix.cpp
[98](https://github.com/laurynas-biveinis/unodb/actions/runs/6275796639/job/17044078192?pr=546#step:6:99)
D:\a\unodb\unodb\boost\boost\include\boost-1_78\boost\accumulators\numeric\detail\pod_singleton.hpp(16): fatal error C1001: Internal compiler error.
[99](https://github.com/laurynas-biveinis/unodb/actions/runs/6275796639/job/17044078192?pr=546#step:6:100)
(compiler file 'D:\a\_work\1\s\src\vctools\Compiler\CxxFE\sl\p1\c\symbols.c', line 32907)
[100](https://github.com/laurynas-biveinis/unodb/actions/runs/6275796639/job/17044078192?pr=546#step:6:101)
 To work around this problem, try simplifying or changing the program near the locations listed above.
[101](https://github.com/laurynas-biveinis/unodb/actions/runs/6275796639/job/17044078192?pr=546#step:6:102)
If possible please provide a repro here: https://developercommunity.visualstudio.com/ 
[102](https://github.com/laurynas-biveinis/unodb/actions/runs/6275796639/job/17044078192?pr=546#step:6:103)
Please choose the Technical Support command on the Visual C++ 
[103](https://github.com/laurynas-biveinis/unodb/actions/runs/6275796639/job/17044078192?pr=546#step:6:104)
 Help menu, or open the Technical Support help file for more information
[104](https://github.com/laurynas-biveinis/unodb/actions/runs/6275796639/job/17044078192?pr=546#step:6:105)
D:\a\unodb\unodb\benchmark\micro_benchmark_key_prefix.cpp(445): note: see reference to function template instantiation 'void `anonymous-namespace'::unpredictable_leaf_key_prefix_split<unodb::db>(benchmark::State &)' being compiled

Same with 17.8

Seems to be gone with the toolchain version 14.38