libzmq: Problem: compilation broken with Solaris Studio

"src/ctx.cpp", line 506: Error: Could not find a match for std::map<std::string,zmq::endpoint_t>::insert(std::pair<const char*, zmq::endpoint_t>) needed in zmq::ctx_t::register_endpoint(const char*, const zmq::endpoint_t&).
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/utility", line 103: Note: Candidate 'std::pair<const std::string, zmq::endpoint_t>::pair(const std::string &, const zmq::endpoint_t&)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/utility", line 104: Note: Candidate 'std::pair<const std::string, zmq::endpoint_t>::pair()' is not viable: too many arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 235: Note: Candidate 'std::map<std::string,zmq::endpoint_t>::insert(const std::pair<const std::string, zmq::endpoint_t>&)' is not viable: argument 'x' can't be converted from 'std::pair<const char*, zmq::endpoint_t>' to 'const std::pair<const std::string, zmq::endpoint_t>&'.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 269: Note: Candidate 'std::map<std::string,zmq::endpoint_t>::insert(__rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::endpoint_t>, __rwstd::__select1st<std::pair<const std::string, zmq::endpoint_t>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::endpoint_t>>>::const_iterator, __rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::endpoint_t>, __rwstd::__select1st<std::pair<const std::string, zmq::endpoint_t>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::endpoint_t>>>::const_iterator)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 265: Note: Candidate 'std::map<std::string,zmq::endpoint_t>::insert(__rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::endpoint_t>, __rwstd::__select1st<std::pair<const std::string, zmq::endpoint_t>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::endpoint_t>>>::iterator, __rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::endpoint_t>, __rwstd::__select1st<std::pair<const std::string, zmq::endpoint_t>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::endpoint_t>>>::iterator)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 261: Note: Candidate 'std::map<std::string,zmq::endpoint_t>::insert(const std::pair<const std::string, zmq::endpoint_t>*, const std::pair<const std::string, zmq::endpoint_t>*)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/utility", line 103: Note: Candidate 'std::pair<std::string, zmq::endpoint_t>::pair(const std::string &, const zmq::endpoint_t&)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/utility", line 104: Note: Candidate 'std::pair<std::string, zmq::endpoint_t>::pair()' is not viable: too many arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 248: Note: Candidate 'std::map<std::string,zmq::endpoint_t>::insert(const std::pair<std::string, zmq::endpoint_t>&)' is not viable: argument '__x' can't be converted from 'std::pair<const char*, zmq::endpoint_t>' to 'const std::pair<std::string, zmq::endpoint_t>&'.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 243: Note: Candidate 'std::map<std::string,zmq::endpoint_t>::insert(__rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::endpoint_t>, __rwstd::__select1st<std::pair<const std::string, zmq::endpoint_t>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::endpoint_t>>>::iterator, const std::pair<const std::string, zmq::endpoint_t>&)' is not viable: too few arguments.


"src/ctx.cpp", line 582: Error: Could not find a match for std::multimap<std::string, zmq::ctx_t::pending_connection_t, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::ctx_t::pending_connection_t>>>::insert(std::pair<std::string, zmq::ctx_t::pending_connection_t>) needed in zmq::ctx_t::pend_connection(const std::string &, const zmq::endpoint_t&, zmq::pipe_t**).
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/utility", line 103: Note: Candidate 'std::pair<const std::string, zmq::ctx_t::pending_connection_t>::pair(const std::string &, const zmq::ctx_t::pending_connection_t&)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/utility", line 104: Note: Candidate 'std::pair<const std::string, zmq::ctx_t::pending_connection_t>::pair()' is not viable: too many arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 487: Note: Candidate 'std::multimap<std::string, zmq::ctx_t::pending_connection_t, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::ctx_t::pending_connection_t>>>::insert(const std::pair<const std::string, zmq::ctx_t::pending_connection_t>&)' is not viable: argument 'x' can't be converted from 'std::pair<std::string, zmq::ctx_t::pending_connection_t>' to 'const std::pair<const std::string, zmq::ctx_t::pending_connection_t>&'.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 508: Note: Candidate 'std::multimap<std::string, zmq::ctx_t::pending_connection_t, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::ctx_t::pending_connection_t>>>::insert(__rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::ctx_t::pending_connection_t>, __rwstd::__select1st<std::pair<const std::string, zmq::ctx_t::pending_connection_t>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::ctx_t::pending_connection_t>>>::const_iterator, __rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::ctx_t::pending_connection_t>, __rwstd::__select1st<std::pair<const std::string, zmq::ctx_t::pending_connection_t>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::ctx_t::pending_connection_t>>>::const_iterator)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 504: Note: Candidate 'std::multimap<std::string, zmq::ctx_t::pending_connection_t, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::ctx_t::pending_connection_t>>>::insert(__rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::ctx_t::pending_connection_t>, __rwstd::__select1st<std::pair<const std::string, zmq::ctx_t::pending_connection_t>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::ctx_t::pending_connection_t>>>::iterator, __rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::ctx_t::pending_connection_t>, __rwstd::__select1st<std::pair<const std::string, zmq::ctx_t::pending_connection_t>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::ctx_t::pending_connection_t>>>::iterator)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 500: Note: Candidate 'std::multimap<std::string, zmq::ctx_t::pending_connection_t, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::ctx_t::pending_connection_t>>>::insert(const std::pair<const std::string, zmq::ctx_t::pending_connection_t>*, const std::pair<const std::string, zmq::ctx_t::pending_connection_t>*)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 488: Note: Candidate 'std::multimap<std::string, zmq::ctx_t::pending_connection_t, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::ctx_t::pending_connection_t>>>::insert(__rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::ctx_t::pending_connection_t>, __rwstd::__select1st<std::pair<const std::string, zmq::ctx_t::pending_connection_t>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::ctx_t::pending_connection_t>>>::iterator, const std::pair<const std::string, zmq::ctx_t::pending_connection_t>&)' is not viable: too few arguments.


"src/radio.cpp", line 81: Error: Could not find a match for std::multimap<std::string, zmq::pipe_t*, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::pipe_t*>>>::insert(std::pair<std::string, zmq::pipe_t*>) needed in zmq::radio_t::xread_activated(zmq::pipe_t*).
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/utility", line 103: Note: Candidate 'std::pair<const std::string, zmq::pipe_t*>::pair(const std::string &, zmq::pipe_t*const&)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/utility", line 104: Note: Candidate 'std::pair<const std::string, zmq::pipe_t*>::pair()' is not viable: too many arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 487: Note: Candidate 'std::multimap<std::string, zmq::pipe_t*, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::pipe_t*>>>::insert(const std::pair<const std::string, zmq::pipe_t*>&)' is not viable: argument 'x' can't be converted from 'std::pair<std::string, zmq::pipe_t*>' to 'const std::pair<const std::string, zmq::pipe_t*>&'.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 508: Note: Candidate 'std::multimap<std::string, zmq::pipe_t*, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::pipe_t*>>>::insert(__rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::pipe_t*>, __rwstd::__select1st<std::pair<const std::string, zmq::pipe_t*>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::pipe_t*>>>::const_iterator, __rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::pipe_t*>, __rwstd::__select1st<std::pair<const std::string, zmq::pipe_t*>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::pipe_t*>>>::const_iterator)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 504: Note: Candidate 'std::multimap<std::string, zmq::pipe_t*, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::pipe_t*>>>::insert(__rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::pipe_t*>, __rwstd::__select1st<std::pair<const std::string, zmq::pipe_t*>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::pipe_t*>>>::iterator, __rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::pipe_t*>, __rwstd::__select1st<std::pair<const std::string, zmq::pipe_t*>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::pipe_t*>>>::iterator)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 500: Note: Candidate 'std::multimap<std::string, zmq::pipe_t*, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::pipe_t*>>>::insert(const std::pair<const std::string, zmq::pipe_t*>*, const std::pair<const std::string, zmq::pipe_t*>*)' is not viable: too few arguments.
"/opt/developerstudio12.6/lib/compilers/include/CC/Cstd/map", line 488: Note: Candidate 'std::multimap<std::string, zmq::pipe_t*, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::pipe_t*>>>::insert(__rwstd::__rb_tree<std::string, std::pair<const std::string, zmq::pipe_t*>, __rwstd::__select1st<std::pair<const std::string, zmq::pipe_t*>, std::string>, std::less<std::string>, std::allocator<std::pair<const std::string, zmq::pipe_t*>>>::iterator, const std::pair<const std::string, zmq::pipe_t*>&)' is not viable: too few arguments.

@sigiesec https://github.com/zeromq/libzmq/pull/2796 and https://github.com/zeromq/libzmq/pull/2799 causes a regression on Solaris 10/11, reported in https://github.com/zeromq/pyzmq/issues/1157 any idea how to fix the above? SunCC only supports C++97

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 15 (15 by maintainers)

Commits related to this issue

Most upvoted comments

Would it make sense to add a Travis job doing just that? Or the download would need an Oracle login to be passed (perhaps Travis credentials can take care of that too, like for publish)?

On Sun, May 13, 2018 at 4:55 PM, Luca Boccassi notifications@github.com wrote:

For the next time around, the Sun compilers can be dowloaded for Linux from http://www.oracle.com/technetwork/server-storage/ developerstudio/downloads/developer-studio-12-6-tarfile-3778508.html

it’s enough to untar the archive and then use configure CC=/tmp/ OracleDeveloperStudio12.6-linux-x86-bin/developerstudio12.6/bin/cc CXX=/tmp/OracleDeveloperStudio12.6-linux-x86-bin/ developerstudio12.6/bin/CC

There’s actually a few more errors still there that way, that aren’t on Solaris 10

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/zeromq/libzmq/issues/3090#issuecomment-388632880, or mute the thread https://github.com/notifications/unsubscribe-auth/ABj5lEC9q1iKiW7x2XrVN7z8wJwUa39Oks5tyElTgaJpZM4T8k34 .