summaryrefslogtreecommitdiffstats
path: root/libstdc++/include/new
diff options
context:
space:
mode:
Diffstat (limited to 'libstdc++/include/new')
-rw-r--r--libstdc++/include/new29
1 files changed, 29 insertions, 0 deletions
diff --git a/libstdc++/include/new b/libstdc++/include/new
new file mode 100644
index 0000000..559308b
--- /dev/null
+++ b/libstdc++/include/new
@@ -0,0 +1,29 @@
+#ifndef __NEW__
+#define __NEW__
+
+#include <stddef.h>
+
+namespace std {
+ using ::size_t;
+
+ struct nothrow_t {};
+ extern const nothrow_t nothrow;
+}
+
+void* operator new(std::size_t);
+void* operator new[](std::size_t);
+void operator delete(void*);
+void operator delete[](void*);
+void* operator new(std::size_t, const std::nothrow_t&);
+void* operator new[](std::size_t, const std::nothrow_t&);
+void operator delete(void*, const std::nothrow_t&);
+void operator delete[](void*, const std::nothrow_t&);
+
+inline void* operator new(std::size_t, void* p) { return p; }
+inline void* operator new[](std::size_t, void* p) { return p; }
+
+// these next two are not really required, since exceptions are off
+inline void operator delete(void*, void*) { }
+inline void operator delete[](void*, void*) { }
+
+#endif // __NEW__