Ivan,

Thanks for this patch; I've merged your pull request.

-Pieter

On Sun, May 20, 2012 at 7:36 AM, Ivan Pechorin <[email protected]> wrote:
> Hello!
>
> libzmq master fails to compile with Sun C++ on Solaris. I used just
> ./autogen.sh && ./configure && gmake
>
> The error is:
>
> "socket_base.cpp", line 550: Error: Could not find a match for
> std::multimap<std::string, zmq::own_t*, std::less<std::string>,
> std::allocator<std::pair<const std::string,
> zmq::own_t*>>>::insert(std::pair<std::string, zmq::own_t*>) needed in
> zmq::socket_base_t::add_endpoint(const char*, zmq::own_t*).
>
> Please, see config.log and full build output here:
> https://zeromq.jira.com/browse/LIBZMQ-368
>
> It seems like the solution is to use insert(endpoints_t::value_type(first,
> second)) instead of insert(std::make_pair(first, second))
> Please, see pull request https://github.com/zeromq/libzmq/pull/342
>
>
> --- a/src/socket_base.cpp
> +++ b/src/socket_base.cpp
> @@ -547,7 +547,7 @@ void zmq::socket_base_t::add_endpoint (const char
> *addr_, own_t *endpoint_)
> {
>     //  Activate the session. Make it a child of this socket.
>     launch_child (endpoint_);
> -   endpoints.insert (std::make_pair (std::string (addr_), endpoint_));
> +   endpoints.insert (endpoints_t::value_type (std::string (addr_),
> endpoint_));
> }
>
> int zmq::socket_base_t::term_endpoint (const char *addr_)
>
>
> Regards,
> Ivan
>
> _______________________________________________
> zeromq-dev mailing list
> [email protected]
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
_______________________________________________
zeromq-dev mailing list
[email protected]
http://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to