diff options
author | Howard Hinnant <hhinnant@apple.com> | 2012-02-17 19:24:42 +0000 |
---|---|---|
committer | Howard Hinnant <hhinnant@apple.com> | 2012-02-17 19:24:42 +0000 |
commit | f95d9f0a3a87472e83ab893b90c42d25d7df54b1 (patch) | |
tree | 225daf5af132703a7c14c20499973373c609e381 /libcxx/src/stdexcept.cpp | |
parent | 3e7d1557688fdd2478381e467cc9cdbf773fc68c (diff) | |
download | bcm5719-llvm-f95d9f0a3a87472e83ab893b90c42d25d7df54b1.tar.gz bcm5719-llvm-f95d9f0a3a87472e83ab893b90c42d25d7df54b1.zip |
Move typeinfos for exceptions in <stdexcept> to the abi
llvm-svn: 150835
Diffstat (limited to 'libcxx/src/stdexcept.cpp')
-rw-r--r-- | libcxx/src/stdexcept.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/libcxx/src/stdexcept.cpp b/libcxx/src/stdexcept.cpp index 28917887587..b516b0ca68b 100644 --- a/libcxx/src/stdexcept.cpp +++ b/libcxx/src/stdexcept.cpp @@ -15,6 +15,7 @@ #include <cstdint> #include <cstddef> #include "system_error" +#include <cxxabi.h> // Note: optimize for size @@ -113,6 +114,8 @@ logic_error::operator=(const logic_error& le) _NOEXCEPT return *this; } +#ifndef _LIBCPPABI_VERSION + logic_error::~logic_error() _NOEXCEPT { __libcpp_nmstr& s = (__libcpp_nmstr&)__imp_; @@ -126,6 +129,8 @@ logic_error::what() const _NOEXCEPT return s.c_str(); } +#endif + runtime_error::runtime_error(const string& msg) { __libcpp_nmstr& s = (__libcpp_nmstr&)__imp_; @@ -153,6 +158,8 @@ runtime_error::operator=(const runtime_error& le) _NOEXCEPT return *this; } +#ifndef _LIBCPPABI_VERSION + runtime_error::~runtime_error() _NOEXCEPT { __libcpp_nmstr& s = (__libcpp_nmstr&)__imp_; @@ -175,4 +182,6 @@ range_error::~range_error() _NOEXCEPT {} overflow_error::~overflow_error() _NOEXCEPT {} underflow_error::~underflow_error() _NOEXCEPT {} +#endif + } // std |