Bug Description
Observed on both MSVC 19.44.35224 and 19.50.35728.
When initializing a quantity_point<deg_C>, MSVC throws an internal error:
C:\PROGRA1\MICROS4\18\PROFES1\VC\Tools\MSVC\14501.357\bin\Hostx64\x64\cl.exe /nologo /TP -DFMT_SHARED -DMP_UNITS_API_CONTRACTS=2 -DMP_UNITS_API_NATURAL_UNITS=1 -DMP_UNITS_API_NO_CRTP=0 -DMP_UNITS_API_STD_FORMAT=0 -DMP_UNITS_API_THROWING_CONSTRAINTS=0 -DMP_UNITS_HOSTED=1 -D_HAS_EXCEPTIONS=0 -D_MBCS -ID:\dev\foundation-sdk\libs\log\include -ID:\dev\foundation-sdk\libs\core\include -external:ID:\dev\foundation-sdk\build\dev\vcpkg_installed\x64-windows\include -external:W0 /DWIN32 /D_WINDOWS /Ob0 /Od -std:c++20 -MDd -RTC1 -Zi /W4 /permissive- /w14242 /w14254 /w14263 /w14265 /w14287 /w14296 /w14311 /w14545 /w14546 /w14547 /w14549 /w14555 /w14619 /w14640 /w14826 /w14905 /w14906 /w14928 /WX /EHs-c- /utf-8 /showIncludes @examples\foundation-example-app\CMakeFiles\foundation-example-app.dir\main.cpp.obj.modmap /Foexamples\foundation-example-app\CMakeFiles\foundation-example-app.dir\main.cpp.obj /Fdexamples\foundation-example-app\CMakeFiles\foundation-example-app.dir\ /FS -c D:\dev\foundation-sdk\examples\foundation-example-app\main.cpp
D:\dev\foundation-sdk\build\dev\vcpkg_installed\x64-windows\include\mp-units/framework/reference.h(54): fatal error C1001: Internal compiler error.
Is there any workaround for this? Unfortunately this looks like stopping mp-units dead in its tracks for our use case based on Unreal on Windows.
Steps to Reproduce
// Minimal reproducible example
#include <mp-units/systems/si.h>
int main()
{
using namespace mp_units::si::unit_symbols;
mp_units::quantity_point<deg_C> temp = mp_units::point<deg_C>(100);
return 0;
}
🚀 Compiler Explorer Link (Recommended)
No response
Compiler
MSVC 194
C++ Standard
C++20
mp-units Version
2.5.0 via vcpkg
Build Configuration
Additional Context
No response
Checklist
Bug Description
Observed on both MSVC 19.44.35224 and 19.50.35728.
When initializing a
quantity_point<deg_C>, MSVC throws an internal error:Is there any workaround for this? Unfortunately this looks like stopping mp-units dead in its tracks for our use case based on Unreal on Windows.
Steps to Reproduce
🚀 Compiler Explorer Link (Recommended)
No response
Compiler
MSVC 194
C++ Standard
C++20
mp-units Version
2.5.0 via vcpkg
Build Configuration
Additional Context
No response
Checklist