Open
Description
Description:
After the MSVC team implented P2468R2 The Equality Operator You Are Looking For, we got a compiler error with /std:c++latest like below, the error is due to the equality operator here
utility/test/call_traits_test.cpp
Line 204 in 3aa25c9
libs\utility\test\call_traits_test.cpp(131): error C2666: 'comparible_UDT::operator ==': overloaded functions have similar conversions
libs\utility\test\call_traits_test.cpp(204): note: could be 'bool comparible_UDT::operator ==(const comparible_UDT &)'
libs\utility\test\call_traits_test.cpp(204): note: or 'bool comparible_UDT::operator ==(const comparible_UDT &)' [synthesized expression 'y == x']
Note: this issue will be reproduced on next release version of VS (VS17.6 or later)
Repro steps:
- open VS2019 x64 tools command
- git clone https://github.com/boostorg/boost.git F:\gitP\boostorg\boost
- git -C "F:\gitP\boostorg\boost" fetch --recurse-submodules=no --force
- git -C "F:\gitP\boostorg\boost" reset --hard 0c4090b
- git -C "F:\gitP\boostorg\boost" submodule sync
- git -C "F:\gitP\boostorg\boost" submodule foreach git reset --hard
- git -C "F:\gitP\boostorg\boost" submodule foreach git clean -xdf
- git -C "F:\gitP\boostorg\boost" submodule update -f --init --recursive
- set CL= /std:c++latest
- cd F:\gitP\boostorg\boost
- .\bootstrap
- .\b2 headers variant=release --build-dir=F:\gitP\boostorg\boost\out\amd64rel address-model=64
- .\b2 variant=release --build-dir=F:\gitP\boostorg\boost\out\amd64rel address-model=64
- set CL=/D_SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING /D_HAS_DEPRECATED_ADAPTOR_TYPEDEFS=1 /D_HAS_AUTO_PTR_ETC=1 /D_HAS_DEPRECATED_RAW_STORAGE_ITERATOR=1 /D_HAS_DEPRECATED_TEMPORARY_BUFFER=1 /D_HAS_DEPRECATED_NEGATORS=1 /Zc:enumTypes %CL%
- set related reference path (in my environment like below):
set OPENSSL_ROOT=F:\tools\OpenSSL\64
set path=F:\tools\OpenSSL\64\bin;%path%
set path=C:\Python\Python27;%path% - .\b2 -j16 variant=release --build-dir=F:\gitP\boostorg\boost\out\amd64rel libs\utility\test address-model=64 > utility_test.log
Detailed log:
utility_test.log
Metadata
Metadata
Assignees
Labels
No labels