Compile error with boost_1_41

Hi, First of all, I don't know whether this is the right group to submit this particular issue; if not, please direct me to the right one... ...The issue: I just downloaded the source from the current Boost release (i.e., boost_1_41_0). I compiled this load into a static library and a dynamic libray (on both Solaris 10 and CYGWIN). After that I I try to compile the "basic_client" and "basic_server" (Source from the boost.asio project). Previously, these compiled just fine under boost_1_40_0, but now I running into the following compile errors: g++ -o chat_client chat_client.cpp -I/home/song/MyProjects/LibDist/boostS_1_41/include -L/home/song/MyProjects/LibDist/boostS_1_41/lib -lposix4 -lboost_thread -lboost_system -pthreads -lsocket In file included from /home/song/MyProjects/LibDist/boostS_1_41/include/boost/thread/future.hpp:12, from /home/song/MyProjects/LibDist/boostS_1_41/include/boost/thread.hpp:24, from chat_client.cpp:16: /home/song/MyProjects/LibDist/boostS_1_41/include/boost/exception_ptr.hpp:43: error: looser throw specifier for `virtual boost::exception_ptr::~exception_ptr()' /home/song/MyProjects/LibDist/boostS_1_41/include/boost/exception/detail/exception_ptr_base.hpp:27: error: overriding `virtual boost::exception_detail::exception_ptr_base::~exception_ptr_base() throw ()' make: *** [chat_client_] Error 1 ...Any advice to fix this would be appreciated. Steven

On Tue, Dec 22, 2009 at 8:25 AM, Steve Ong
g++ -o chat_client chat_client.cpp -I/home/song/MyProjects/LibDist/boostS_1_41/include -L/home/song/MyProjects/LibDist/boostS_1_41/lib -lposix4 -lboost_thread -lboost_system -pthreads -lsocket In file included from /home/song/MyProjects/LibDist/boostS_1_41/include/boost/thread/future.hpp:12, from /home/song/MyProjects/LibDist/boostS_1_41/include/boost/thread.hpp:24, from chat_client.cpp:16: /home/song/MyProjects/LibDist/boostS_1_41/include/boost/exception_ptr.hpp:43: error: looser throw specifier for `virtual boost::exception_ptr::~exception_ptr()' /home/song/MyProjects/LibDist/boostS_1_41/include/boost/exception/detail/exception_ptr_base.hpp:27: error: overriding `virtual boost::exception_detail::exception_ptr_base::~exception_ptr_base() throw ()' make: *** [chat_client_] Error 1
...Any advice to fix this would be appreciated.
Already fixed in trunk (an example of an error introduced by "fixing" idiotic GCC warning.) A temporary patch is to add this destructor to exception_ptr, in boost/exception_ptr.hpp: ~exception_ptr() throw() { } Boost 1.40 doesn't have this problem. Emil Dotchevski Reverge Studios, Inc. http://www.revergestudios.com/reblog/index.php?n=ReCode

On Tue, Dec 22, 2009 at 10:57 AM, Emil Dotchevski
On Tue, Dec 22, 2009 at 8:25 AM, Steve Ong
wrote: g++ -o chat_client chat_client.cpp -I/home/song/MyProjects/LibDist/boostS_1_41/include -L/home/song/MyProjects/LibDist/boostS_1_41/lib -lposix4 -lboost_thread -lboost_system -pthreads -lsocket In file included from /home/song/MyProjects/LibDist/boostS_1_41/include/boost/thread/future.hpp:12, from /home/song/MyProjects/LibDist/boostS_1_41/include/boost/thread.hpp:24, from chat_client.cpp:16: /home/song/MyProjects/LibDist/boostS_1_41/include/boost/exception_ptr.hpp:43: error: looser throw specifier for `virtual boost::exception_ptr::~exception_ptr()' /home/song/MyProjects/LibDist/boostS_1_41/include/boost/exception/detail/exception_ptr_base.hpp:27: error: overriding `virtual boost::exception_detail::exception_ptr_base::~exception_ptr_base() throw ()' make: *** [chat_client_] Error 1
...Any advice to fix this would be appreciated.
Already fixed in trunk (an example of an error introduced by "fixing" idiotic GCC warning.) A temporary patch is to add this destructor to exception_ptr, in boost/exception_ptr.hpp:
~exception_ptr() throw() { }
Boost 1.40 doesn't have this problem.
I forgot to mention, another workaround is to upgrade to a newer GCC version. Emil Dotchevski Reverge Studios, Inc. http://www.revergestudios.com/reblog/index.php?n=ReCode
participants (2)
-
Emil Dotchevski
-
Steve Ong