-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Description
Hi,
We found 3 failures when build CoreCLR with permissive- by msvc on windows, could you help take a look?
You can repro this issue as the steps below:
- git clone https://github.com/dotnet/coreclr D:\CoreCLR\src
- Open VS2017 x86 command prompt and browse to D:\CoreCLR\src
- Set CL=/wd5043 /permissive-
- build x86 release -Rebuild -- /clp:ShowCommandLine
- build-test.cmd x86 release -- /clp:ShowCommandLine
See the issue as following:
Issue dotnet/coreclr#1:
d:\coreclr\src\src\classlibnative\bcltype\grisu3.h(36): error C4596: 'BiggestPowerTenLessThanOrEqualTo': illegal qualified name in member declaration
Probably fix:
Change
static void Grisu3::BiggestPowerTenLessThanOrEqualTo(UINT32 number, int bits, UINT32 *power, int *exponent);
To
static void BiggestPowerTenLessThanOrEqualTo(UINT32 number, int bits, UINT32 *power, int *exponent);
Issue dotnet/coreclr#2
d:\coreclr\src\src\vm\dllimport.cpp(6098): error C2664: 'BOOL SString::Find(SString::CIterator &,WCHAR) const': cannot convert argument 1 from 'SString::CIterator' to 'SString::CIterator &' [D:\CoreCLR\src\bin\obj\Windows_NT.x86.Release\src\vm\wks\cee_wks.vcxproj]
d:\coreclr\src\src\vm\dllimport.cpp(6098): note: A non-const reference may only be bound to an lvalue
Probably fix:
Needs to change from:
if (!libNameIsRelativePath ||
!libName.Find(libName.Begin(), W('.')) ||
To:
auto it = libName.Begin();
if (!libNameIsRelativePath ||
!libName.Find(it, W('.')) ||
Issue dotnet/coreclr#3
d:\coreclr\src\src\inc\winrt\paraminstanceapi.h(422): error C3861: '_size': identifier not found (compiling source file D:\CoreCLR\src\src\vm\interoputil.cpp
Probably fix:
Change
for (size_t i = 0; i != _size; ++i)
To
for (size_t i = 0; i != size; ++i)