1*eb8650a7SLouis Dionne //===----------------------------------------------------------------------===// 2e9c9f002SEric Fiselier // 357b08b09SChandler Carruth // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 457b08b09SChandler Carruth // See https://llvm.org/LICENSE.txt for license information. 557b08b09SChandler Carruth // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6e9c9f002SEric Fiselier // 7e9c9f002SEric Fiselier //===----------------------------------------------------------------------===// 8e9c9f002SEric Fiselier 9e9c9f002SEric Fiselier #include "stdexcept" 10e9c9f002SEric Fiselier #include "new" 11e9c9f002SEric Fiselier #include <cstdlib> 12e9c9f002SEric Fiselier #include <cstring> 13e9c9f002SEric Fiselier #include <cstdint> 14e9c9f002SEric Fiselier #include <cstddef> 15f8b1cc36SLouis Dionne #include "include/refstring.h" // from libc++ 1672b18a86SNico Weber 17e9c9f002SEric Fiselier static_assert(sizeof(std::__libcpp_refstring) == sizeof(const char *), ""); 18e9c9f002SEric Fiselier 19e9c9f002SEric Fiselier namespace std // purposefully not using versioning namespace 20e9c9f002SEric Fiselier { 21e9c9f002SEric Fiselier ~logic_error()225601305fSLouis Dionnelogic_error::~logic_error() noexcept {} 23e9c9f002SEric Fiselier 24e9c9f002SEric Fiselier const char* what() const255601305fSLouis Dionnelogic_error::what() const noexcept 26e9c9f002SEric Fiselier { 27e9c9f002SEric Fiselier return __imp_.c_str(); 28e9c9f002SEric Fiselier } 29e9c9f002SEric Fiselier ~runtime_error()305601305fSLouis Dionneruntime_error::~runtime_error() noexcept {} 31e9c9f002SEric Fiselier 32e9c9f002SEric Fiselier const char* what() const335601305fSLouis Dionneruntime_error::what() const noexcept 34e9c9f002SEric Fiselier { 35e9c9f002SEric Fiselier return __imp_.c_str(); 36e9c9f002SEric Fiselier } 37e9c9f002SEric Fiselier ~domain_error()385601305fSLouis Dionnedomain_error::~domain_error() noexcept {} ~invalid_argument()395601305fSLouis Dionneinvalid_argument::~invalid_argument() noexcept {} ~length_error()405601305fSLouis Dionnelength_error::~length_error() noexcept {} ~out_of_range()415601305fSLouis Dionneout_of_range::~out_of_range() noexcept {} 42e9c9f002SEric Fiselier ~range_error()435601305fSLouis Dionnerange_error::~range_error() noexcept {} ~overflow_error()445601305fSLouis Dionneoverflow_error::~overflow_error() noexcept {} ~underflow_error()455601305fSLouis Dionneunderflow_error::~underflow_error() noexcept {} 46e9c9f002SEric Fiselier 47e9c9f002SEric Fiselier } // std 48