boostorg / boostorg/property_tree

Compile error, VS 2017 Boost 1.69 property_tree equal_range

Open
#37 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
65
Forks
97
PR merge metrics
No merged PRs in 30d

Description

I am using VS 2017 15.9.5, Boost 1.69.0.

Code that compiles and works correctly using VS 2015 now causes a compile error with VS 2017.
Unable to find resolution or workaround.

The error is this :

boost\property_tree\detail\ptree_implementation.hpp(500): error C2440: '': cannot convert from '_Ty1' to 'boost::property_tree::basic_ptree>::assoc_iterator'
with
[
_Ty1=boost::multi_index::detail::bidir_node_iterator>>,std::allocator>>>>>>
]
and
[
Key=std::wstring
]
boost\property_tree\detail\ptree_implementation.hpp(500): note: No constructor could take the source type, or constructor overload resolution was ambiguous (compiling source file BPropertyTree.cpp)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with boost/property_tree/detail/ptree_implementation.hpp around line 500 and the equal_range call, using the reported VS 2017 15.9.5 and Boost 1.69.0 setup. Compare the behavior with VS 2015 and reduce the report to a reproducible case whose compilation no longer produces the C2440 error.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
data
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.