X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;ds=inline;f=Usermode%2FLibraries%2Flibc%2B%2B.so_src%2Finclude_exp%2Fexception;h=63e35bdea7813e2d4c7264593dacc21dc8f26a0b;hb=94602b5642f62821d759a1317b35e3bd770aefad;hp=6edf82b8692d2c4487f030c3ebf41e39d74fb5a2;hpb=a7880f755a4f48b2254616ff761ba5fecbf790a7;p=tpg%2Facess2.git diff --git a/Usermode/Libraries/libc++.so_src/include_exp/exception b/Usermode/Libraries/libc++.so_src/include_exp/exception index 6edf82b8..63e35bde 100644 --- a/Usermode/Libraries/libc++.so_src/include_exp/exception +++ b/Usermode/Libraries/libc++.so_src/include_exp/exception @@ -10,18 +10,39 @@ #define noexcept throw() +#include "string" + namespace std { class exception { + string m_what_str; public: exception() noexcept; exception(const exception& e) noexcept; exception& operator= (const exception& e) noexcept; virtual ~exception() noexcept; virtual const char* what() const noexcept; +protected: + exception(const string& what_str) noexcept; }; +class bad_exception: + public exception +{ +public: + bad_exception() noexcept; +}; + +typedef void (*terminate_handler)(); +typedef void (*unexpected_handler)(); + +extern void set_terminate(terminate_handler f) throw(); +extern void set_unexpected(unexpected_handler f) throw(); +extern void terminate(); +extern void unexpected(); +extern bool uncaught_exception() throw(); + }; // namespace std #endif