Usermode/libc++ - Many fixes and cleanups
[tpg/acess2.git] / Usermode / Libraries / libc++.so_src / include_exp / stdexcept
index f9e3e3e..7556207 100644 (file)
@@ -9,21 +9,37 @@
 #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 basic_string<char>& what_arg);
+       explicit logic_error(const string& what_arg);
 };
 
 class runtime_error:
-       public exception
+       public _bits::str_except
 {
 public:
-       explicit runtime_error(const basic_string<char>& what_arg);
+       explicit runtime_error(const string& what_arg);
 };
 
 class out_of_range:
@@ -33,7 +49,14 @@ public:
        explicit out_of_range(const string& what_arg);
 };
 
-}      // namespace std
+class length_error:
+       public logic_error
+{
+public:
+       explicit length_error(const string& what_arg);
+};
+
+};     // namespace std
 
 #endif
 

UCC git Repository :: git.ucc.asn.au