diff options
-rw-r--r-- | libcxx/src/stdexcept.cpp | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/libcxx/src/stdexcept.cpp b/libcxx/src/stdexcept.cpp index acc938c86f4..01b66e4c8e0 100644 --- a/libcxx/src/stdexcept.cpp +++ b/libcxx/src/stdexcept.cpp @@ -102,28 +102,28 @@ namespace std // purposefully not using versioning namespace logic_error::logic_error(const string& msg) { - __libcpp_nmstr *s = static_cast<__libcpp_nmstr *>(__imp_); + __libcpp_nmstr *s = reinterpret_cast<__libcpp_nmstr *>(&__imp_); ::new(s) __libcpp_nmstr(msg.c_str()); } logic_error::logic_error(const char* msg) { - __libcpp_nmstr *s = static_cast<__libcpp_nmstr *>(__imp_); + __libcpp_nmstr *s = reinterpret_cast<__libcpp_nmstr *>(&__imp_); ::new(s) __libcpp_nmstr(msg); } logic_error::logic_error(const logic_error& le) _NOEXCEPT { - __libcpp_nmstr *s = static_cast<__libcpp_nmstr *>(__imp_); - const __libcpp_nmstr *s2 = static_cast<const __libcpp_nmstr *>(le.__imp_); + __libcpp_nmstr *s = reinterpret_cast<__libcpp_nmstr *>(&__imp_); + const __libcpp_nmstr *s2 = reinterpret_cast<const __libcpp_nmstr *>(&le.__imp_); ::new(s) __libcpp_nmstr(*s2); } logic_error& logic_error::operator=(const logic_error& le) _NOEXCEPT { - __libcpp_nmstr *s1 = static_cast<__libcpp_nmstr *>(__imp_); - const __libcpp_nmstr *s2 = static_cast<const __libcpp_nmstr *>(le.__imp_); + __libcpp_nmstr *s1 = reinterpret_cast<__libcpp_nmstr *>(&__imp_); + const __libcpp_nmstr *s2 = reinterpret_cast<const __libcpp_nmstr *>(&le.__imp_); *s1 = *s2; return *this; } @@ -132,14 +132,14 @@ logic_error::operator=(const logic_error& le) _NOEXCEPT logic_error::~logic_error() _NOEXCEPT { - __libcpp_nmstr *s = static_cast<__libcpp_nmstr *>(__imp_); + __libcpp_nmstr *s = reinterpret_cast<__libcpp_nmstr *>(&__imp_); s->~__libcpp_nmstr(); } const char* logic_error::what() const _NOEXCEPT { - __libcpp_nmstr *s = static_cast<__libcpp_nmstr *>(__imp_); + const __libcpp_nmstr *s = reinterpret_cast<const __libcpp_nmstr *>(&__imp_); return s->c_str(); } @@ -147,28 +147,28 @@ logic_error::what() const _NOEXCEPT runtime_error::runtime_error(const string& msg) { - __libcpp_nmstr *s = static_cast<__libcpp_nmstr *>(__imp_); + __libcpp_nmstr *s = reinterpret_cast<__libcpp_nmstr *>(&__imp_); ::new(s) __libcpp_nmstr(msg.c_str()); } runtime_error::runtime_error(const char* msg) { - __libcpp_nmstr *s = static_cast<__libcpp_nmstr *>(__imp_); + __libcpp_nmstr *s = reinterpret_cast<__libcpp_nmstr *>(&__imp_); ::new(s) __libcpp_nmstr(msg); } runtime_error::runtime_error(const runtime_error& le) _NOEXCEPT { - __libcpp_nmstr *s = static_cast<__libcpp_nmstr *>(__imp_); - const __libcpp_nmstr *s2 = static_cast<const __libcpp_nmstr *>(le.__imp_); + __libcpp_nmstr *s = reinterpret_cast<__libcpp_nmstr *>(&__imp_); + const __libcpp_nmstr *s2 = reinterpret_cast<const __libcpp_nmstr *>(&le.__imp_); ::new(s) __libcpp_nmstr(*s2); } runtime_error& runtime_error::operator=(const runtime_error& le) _NOEXCEPT { - __libcpp_nmstr *s1 = static_cast<__libcpp_nmstr *>(__imp_); - const __libcpp_nmstr *s2 = static_cast<const __libcpp_nmstr *>(le.__imp_); + __libcpp_nmstr *s1 = reinterpret_cast<__libcpp_nmstr *>(&__imp_); + const __libcpp_nmstr *s2 = reinterpret_cast<const __libcpp_nmstr *>(&le.__imp_); *s1 = *s2; return *this; } @@ -177,14 +177,14 @@ runtime_error::operator=(const runtime_error& le) _NOEXCEPT runtime_error::~runtime_error() _NOEXCEPT { - __libcpp_nmstr *s = static_cast<__libcpp_nmstr *>(__imp_); + __libcpp_nmstr *s = reinterpret_cast<__libcpp_nmstr *>(&__imp_); s->~__libcpp_nmstr(); } const char* runtime_error::what() const _NOEXCEPT { - __libcpp_nmstr *s = static_cast<__libcpp_nmstr *>(__imp_); + const __libcpp_nmstr *s = reinterpret_cast<const __libcpp_nmstr *>(&__imp_); return s->c_str(); } |