1 /*
2 * Copyright 2010-2011 PathScale, Inc. All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are met:
6 *
7 * 1. Redistributions of source code must retain the above copyright notice,
8 * this list of conditions and the following disclaimer.
9 *
10 * 2. Redistributions in binary form must reproduce the above copyright notice,
11 * this list of conditions and the following disclaimer in the documentation
12 * and/or other materials provided with the distribution.
13 *
14 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
15 * IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
16 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
17 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
18 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
19 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
20 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
21 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
22 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
23 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
24 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25 */
26
27 /**
28 * stdexcept.cc - provides stub implementations of the exceptions required by the runtime.
29 */
30 #include "stdexcept.h"
31
32 namespace std {
33
exception()34 exception::exception() _LIBCXXRT_NOEXCEPT {}
~exception()35 exception::~exception() {}
exception(const exception &)36 exception::exception(const exception&) _LIBCXXRT_NOEXCEPT {}
operator =(const exception &)37 exception& exception::operator=(const exception&) _LIBCXXRT_NOEXCEPT
38 {
39 return *this;
40 }
what() const41 const char* exception::what() const _LIBCXXRT_NOEXCEPT
42 {
43 return "std::exception";
44 }
45
bad_alloc()46 bad_alloc::bad_alloc() _LIBCXXRT_NOEXCEPT {}
~bad_alloc()47 bad_alloc::~bad_alloc() {}
bad_alloc(const bad_alloc &)48 bad_alloc::bad_alloc(const bad_alloc&) _LIBCXXRT_NOEXCEPT {}
operator =(const bad_alloc &)49 bad_alloc& bad_alloc::operator=(const bad_alloc&) _LIBCXXRT_NOEXCEPT
50 {
51 return *this;
52 }
what() const53 const char* bad_alloc::what() const _LIBCXXRT_NOEXCEPT
54 {
55 return "cxxrt::bad_alloc";
56 }
57
58
59
bad_cast()60 bad_cast::bad_cast() _LIBCXXRT_NOEXCEPT {}
~bad_cast()61 bad_cast::~bad_cast() {}
bad_cast(const bad_cast &)62 bad_cast::bad_cast(const bad_cast&) _LIBCXXRT_NOEXCEPT {}
operator =(const bad_cast &)63 bad_cast& bad_cast::operator=(const bad_cast&) _LIBCXXRT_NOEXCEPT
64 {
65 return *this;
66 }
what() const67 const char* bad_cast::what() const _LIBCXXRT_NOEXCEPT
68 {
69 return "std::bad_cast";
70 }
71
bad_typeid()72 bad_typeid::bad_typeid() _LIBCXXRT_NOEXCEPT {}
~bad_typeid()73 bad_typeid::~bad_typeid() {}
bad_typeid(const bad_typeid & __rhs)74 bad_typeid::bad_typeid(const bad_typeid &__rhs) _LIBCXXRT_NOEXCEPT {}
operator =(const bad_typeid & __rhs)75 bad_typeid& bad_typeid::operator=(const bad_typeid &__rhs) _LIBCXXRT_NOEXCEPT
76 {
77 return *this;
78 }
79
what() const80 const char* bad_typeid::what() const _LIBCXXRT_NOEXCEPT
81 {
82 return "std::bad_typeid";
83 }
84
bad_array_new_length()85 bad_array_new_length::bad_array_new_length() _LIBCXXRT_NOEXCEPT {}
~bad_array_new_length()86 bad_array_new_length::~bad_array_new_length() {}
bad_array_new_length(const bad_array_new_length &)87 bad_array_new_length::bad_array_new_length(const bad_array_new_length&) _LIBCXXRT_NOEXCEPT {}
operator =(const bad_array_new_length &)88 bad_array_new_length& bad_array_new_length::operator=(const bad_array_new_length&) _LIBCXXRT_NOEXCEPT
89 {
90 return *this;
91 }
92
what() const93 const char* bad_array_new_length::what() const _LIBCXXRT_NOEXCEPT
94 {
95 return "std::bad_array_new_length";
96 }
97
98 } // namespace std
99
100