[Boost-bugs] [Boost C++ Libraries] #9188: named_slot_map.cpp fails to build in Solaris Studio 12.3

Subject: [Boost-bugs] [Boost C++ Libraries] #9188: named_slot_map.cpp fails to build in Solaris Studio 12.3
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-10-01 22:50:29


#9188: named_slot_map.cpp fails to build in Solaris Studio 12.3
-------------------------------------------------+-------------------------
 Reporter: Brian Vandenberg <phantall+boost@…> | Type: Bugs
   Status: new | Milestone: To Be
Component: None | Determined
 Severity: Problem | Version: Boost
                                                 | 1.54.0
                                                 | Keywords:
-------------------------------------------------+-------------------------
 I'm getting an "Overloading ambiguity error" when building
 libs/signals/src/named_slot_map.cpp on or around lines 105 & 128 on the
 calls to `groups.erase`.

 This may be related to an issue [http://www.open-
 std.org/jtc1/sc22/wg21/docs/lwg-unresolved.html talked about here], but
 that issue seems to indicate the problem would only exist in C++11.

 The error goes away with the following minor edits:

 {{{
 -105: groups.erase((const_group_iterator) group);
 +105: groups.erase(*(const_group_iterator) group);
 -128: if (empty(g)) groups.erase((const_group_iterator) g++);
 +128: if (empty(g)) groups.erase(*(const_group_iterator) g++);
 }}}

 I'm doing this work on an airgapped network, and the error is rather
 verbose ... but I'll give a shorted version of the error:

 {{{
 "libs/signals/src/named_slot_map.cpp", line 105: Overloading ambiguity
 between "std::map<A>::erase( __rw::__rw_tree_iter<B> )" and
 "std::map<A>::erase(const boost::signals::detail::stored_group&)".
 "libs/signals/src/named_slot_map.cpp", line 128: Overloading ambiguity
 between "std::map<A>::erase( __rw::__rw_tree_iter<B> )" and
 "std::map<A>::erase(const boost::signals::detail::stored_group&)".
 }}}

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/9188>
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 : 2017-02-16 18:50:14 UTC