summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '3rdParty/Boost/src/boost/system/system_error.hpp')
-rw-r--r--3rdParty/Boost/src/boost/system/system_error.hpp13
1 files changed, 6 insertions, 7 deletions
diff --git a/3rdParty/Boost/src/boost/system/system_error.hpp b/3rdParty/Boost/src/boost/system/system_error.hpp
index 4091647..065d365 100644
--- a/3rdParty/Boost/src/boost/system/system_error.hpp
+++ b/3rdParty/Boost/src/boost/system/system_error.hpp
@@ -17,9 +17,11 @@ namespace boost
{
namespace system
{
- // class system_error --------------------------------------------------//
+ // class system_error ------------------------------------------------------------//
- class system_error : public std::runtime_error
+ class BOOST_SYMBOL_VISIBLE system_error : public std::runtime_error
+ // BOOST_SYMBOL_VISIBLE is needed by GCC to ensure system_error thrown from a shared
+ // library can be caught. See svn.boost.org/trac/boost/ticket/3697
{
public:
system_error( error_code ec )
@@ -62,11 +64,8 @@ namespace boost
try
{
m_what = this->std::runtime_error::what();
- if ( m_error_code )
- {
- if ( !m_what.empty() ) m_what += ": ";
- m_what += m_error_code.message();
- }
+ if ( !m_what.empty() ) m_what += ": ";
+ m_what += m_error_code.message();
}
catch (...) { return std::runtime_error::what(); }
}