X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FLibraries%2Flibc%2B%2B.so_src%2Finclude_exp%2Fstdexcept;h=75562073bf8ce252b3e020f94cca2ccd3ded0b25;hb=341d51ca40a4a26ed89914feaacc940c64b22197;hp=aea1afd3e2002506058f6006bf73cc3d0c42e43d;hpb=2f3e82a7b2847e6ff7d65e73295bf3d6469236ab;p=tpg%2Facess2.git diff --git a/Usermode/Libraries/libc++.so_src/include_exp/stdexcept b/Usermode/Libraries/libc++.so_src/include_exp/stdexcept index aea1afd3..75562073 100644 --- a/Usermode/Libraries/libc++.so_src/include_exp/stdexcept +++ b/Usermode/Libraries/libc++.so_src/include_exp/stdexcept @@ -9,18 +9,34 @@ #define _LIBCXX_STDEXCEPT_ #include "exception" +#include "string" namespace std { -class logic_error: +namespace _bits { + +class str_except: public exception +{ + ::std::string m_str; +public: + explicit str_except(const string& what_arg); + virtual ~str_except() noexcept; + str_except& operator= (const str_except& e) noexcept; + virtual const char* what() const noexcept; +}; + +} // namespace _bits + +class logic_error: + public _bits::str_except { public: explicit logic_error(const string& what_arg); }; class runtime_error: - public exception + public _bits::str_except { public: explicit runtime_error(const string& what_arg); @@ -33,6 +49,13 @@ public: explicit out_of_range(const string& what_arg); }; +class length_error: + public logic_error +{ +public: + explicit length_error(const string& what_arg); +}; + }; // namespace std #endif