1*8f1d5724Srobert //===----------------------------------------------------------------------===// 279c2e3e6Spatrick // 379c2e3e6Spatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 479c2e3e6Spatrick // See https://llvm.org/LICENSE.txt for license information. 579c2e3e6Spatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 679c2e3e6Spatrick // 779c2e3e6Spatrick //===----------------------------------------------------------------------===// 879c2e3e6Spatrick 979c2e3e6Spatrick #include "stdexcept" 1079c2e3e6Spatrick #include "new" 1179c2e3e6Spatrick #include <cstdlib> 1279c2e3e6Spatrick #include <cstring> 1379c2e3e6Spatrick #include <cstdint> 1479c2e3e6Spatrick #include <cstddef> 15*8f1d5724Srobert #include "include/refstring.h" // from libc++ 164e0cc08cSpatrick 1779c2e3e6Spatrick static_assert(sizeof(std::__libcpp_refstring) == sizeof(const char *), ""); 1879c2e3e6Spatrick 1979c2e3e6Spatrick namespace std // purposefully not using versioning namespace 2079c2e3e6Spatrick { 2179c2e3e6Spatrick ~logic_error()224e0cc08cSpatricklogic_error::~logic_error() noexcept {} 2379c2e3e6Spatrick 2479c2e3e6Spatrick const char* what() const254e0cc08cSpatricklogic_error::what() const noexcept 2679c2e3e6Spatrick { 2779c2e3e6Spatrick return __imp_.c_str(); 2879c2e3e6Spatrick } 2979c2e3e6Spatrick ~runtime_error()304e0cc08cSpatrickruntime_error::~runtime_error() noexcept {} 3179c2e3e6Spatrick 3279c2e3e6Spatrick const char* what() const334e0cc08cSpatrickruntime_error::what() const noexcept 3479c2e3e6Spatrick { 3579c2e3e6Spatrick return __imp_.c_str(); 3679c2e3e6Spatrick } 3779c2e3e6Spatrick ~domain_error()384e0cc08cSpatrickdomain_error::~domain_error() noexcept {} ~invalid_argument()394e0cc08cSpatrickinvalid_argument::~invalid_argument() noexcept {} ~length_error()404e0cc08cSpatricklength_error::~length_error() noexcept {} ~out_of_range()414e0cc08cSpatrickout_of_range::~out_of_range() noexcept {} 4279c2e3e6Spatrick ~range_error()434e0cc08cSpatrickrange_error::~range_error() noexcept {} ~overflow_error()444e0cc08cSpatrickoverflow_error::~overflow_error() noexcept {} ~underflow_error()454e0cc08cSpatrickunderflow_error::~underflow_error() noexcept {} 4679c2e3e6Spatrick 4779c2e3e6Spatrick } // std 48