runtime: Error when compiling with Windows 10 SDK 10.0.14393.0
Almost two thousand errors complaining about constexpr
.
c:\program files (x86)\windows kits\10\include\10.0.14393.0\um\shlwapi.h(1764): error C3249: illegal statement or sub-expression for ‘constexpr’ function [C:\DEV\GIT\Forks\coreclr\bin\obj\Windows_NT.x64.Checked\src\debug\ee\dac\cordbee_dac.vcxproj]
About this issue
- Original URL
- State: closed
- Created 8 years ago
- Reactions: 1
- Comments: 39 (23 by maintainers)
Commits related to this issue
- Update _MSC_FULL_VER check for constexpr handling Previously the code was comparing against 190024210 (VS2015 Update 3). Update it to instead compare against 190024315, the last pre-release build bef... — committed to JosephTremoulet/coreclr by JosephTremoulet 8 years ago
- Update _MSC_FULL_VER check for constexpr handling Previously the code was comparing against 190024210 (VS2015 Update 3). Update it to instead compare against 190024315, the last pre-release build bef... — committed to JosephTremoulet/coreclr by JosephTremoulet 8 years ago
- Update _MSC_FULL_VER check for constexpr handling Previously the code was comparing against 190024210 (VS2015 Update 3). Update it to instead compare against 190024315, the last pre-release build bef... — committed to JosephTremoulet/coreclr by JosephTremoulet 8 years ago
I would suggest the following change to debugreturn.h:
Replace: #ifdef _DEBUG With: // This is disabled in VS2015 Update 3 and earlier because only C++11 constexpr is supported, // which doesn’t allow the use of ‘if’ statements within the body of a constexpr function. #if defined(_DEBUG) && (!defined(_MSC_FULL_VER) || _MSC_FULL_VER > 190024210)