Fixed std::map::erase is ambiguous problem in osx, clang, libc++ combination.

This commit is contained in:
Takatoshi Kondo
2015-08-18 18:15:10 +09:00
parent cd9d6c5940
commit 23a040f2e5

View File

@@ -51,11 +51,16 @@ struct proc:boost::static_visitor<void> {
} }
else if (key == "age") { else if (key == "age") {
// You can remove key-value pair from msgpack::type::variant_ref // You can remove key-value pair from msgpack::type::variant_ref
#if defined(MSGPACK_USE_CPP03) #if defined(MSGPACK_USE_CPP03)
v.erase(it++); v.erase(it++);
#else #else // defined(MSGPACK_USE_CPP03)
# if MSGPACK_LIB_STD_CXX
it = v.erase(std::multimap<msgpack::type::variant_ref, msgpack::type::variant_ref>::const_iterator(it));
# else // MSGPACK_LIB_STD_CXX
it = v.erase(it); it = v.erase(it);
#endif # endif // MSGPACK_LIB_STD_CXX
#endif // defined(MSGPACK_USE_CPP03)
} }
else if (key == "address") { else if (key == "address") {
// When you want to append string // When you want to append string