Opened 13 years ago

Closed 13 years ago

#3887 closed Bugs (fixed)

[patch] boost::asio fails to compile with SunStudio 12.1 on Solaris 10

Reported by: John Keeping <john@…> Owned by: chris_kohlhoff
Milestone: Boost 1.42.0 Component: asio
Version: Boost Development Trunk Severity: Problem
Keywords: Cc:

Description

The boost::asio examples fail to compile with Sun Studio with the following error:

"../../../../../boost/bind/bind.hpp", line 392: Error: Could not find a match for boost::_mfi::mf2<void, http::server3::connection, const boost::system::error_code&, unsigned>::operator()(boost::shared_ptr<http::server3::connection>, boost::asio::error::basic_errors, int) needed in boost::_bi::list3<boost::_bi::value<boost::shared_ptr<http::server3::connection>>, boost::arg<1>, boost::arg<2>>::operator()<boost::_mfi::mf2<void, http::server3::connection, const boost::system::error_code&, unsigned>, boost::_bi::list2<boost::asio::error::basic_errors&, int&>>(boost::_bi::type<void>, boost::_mfi::mf2<void, http::server3::connection, const boost::system::error_code&, unsigned>&, boost::_bi::list2<boost::asio::error::basic_errors&, int&>&, int).

This seems to be because the compiler doesn't perform the implicit conversion from boost::asio::error::basic_errors to boost::system::error_code. The attached patch makes this conversion explicit where errors are passed to handlers (I think I found all of the relevant places, I certainly fixed enough to run the HTTP examples).

Attachments (1)

boost-asio-sunstudio.patch (5.3 KB ) - added by John Keeping <john@…> 13 years ago.

Download all attachments as: .zip

Change History (2)

by John Keeping <john@…>, 13 years ago

Attachment: boost-asio-sunstudio.patch added

comment:1 by chris_kohlhoff, 13 years ago

Resolution: fixed
Status: newclosed

Major changes just committed to the release branch, in changeset [60680], mean that the patch is no longer relevant. However, as part of the changes all implicit error_code conversions have been removed. Please reopen and attach a new patch if problems persist.

Note: See TracTickets for help on using tickets.