Subject: [Boost-bugs] [Boost C++ Libraries] #13539: Boost Polygon - MSVC 2017 - Ambiguous call to size() function
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2018-04-25 10:54:09
#13539: Boost Polygon - MSVC 2017 - Ambiguous call to size() function
-------------------------------------------+------------------------------
Reporter: Kai Benndorf <kai.benndorf@â¦> | Owner: Lucanus Simonson
Type: Bugs | Status: new
Milestone: To Be Determined | Component: polygon
Version: Boost 1.67.0 | Severity: Regression
Keywords: |
-------------------------------------------+------------------------------
We are currently switching our compiler from MSVC 2012 to MSVC 2017. Now I
have problems compiling out application using Boost Polygon. I get the
following error:
c:\khand\win64\include\boost\polygon\polygon_traits.hpp(606): error C2668:
"boost::polygon::size": ambiguous call to overloaded function
c:\khand\win64\include\boost\polygon\polygon_traits.hpp(467): note:
could be "unsigned __int64 boost::polygon::size<polygon_type>(const T &)"
with
[
polygon_type=DESIGN::GTL::Polygon,
T=DESIGN::GTL::Polygon
]
C:\Program Files (x86)\Microsoft Visual
Studio\2017\Professional\VC\Tools\MSVC\14.13.26128\include\xutility(1611):
note: or "unsigned __int64 std::size<polygon_type>(const _Container &)"
[bei der Verwendung der argumentbezogenen Suche gefunden]
with
[
polygon_type=DESIGN::GTL::Polygon,
_Container=DESIGN::GTL::Polygon
]
In size() function in polygon_traits.hpp conflicts with the now in C++
standard contained std::size().
I could solve the problem by using the completed name
boost:polygon::size() in polygon_traits.hpp. Please see appended diff.
-- Ticket URL: <https://svn.boost.org/trac10/ticket/13539> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2018-04-25 11:00:10 UTC