blob: 8189159c81da4b32e96a27927947fada8bf66cd6 [file] [log] [blame]
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08001#include "new"
2#include <stdlib.h>
3
4const std::nothrow_t std::nothrow = {};
5
6void* operator new(std::size_t size)
7{
8 void* p = malloc(size);
9 if (p == NULL) {
10 // abort();
11 }
12 return p;
13}
14
15void* operator new[](std::size_t size)
16{
17 void* p = malloc(size);
18 if (p == NULL) {
19 // abort();
20 }
21 return p;
22}
23
24void operator delete(void* ptr)
25{
26 if (ptr) {
27 free(ptr);
28 }
29}
30
31void operator delete[](void* ptr)
32{
33 if (ptr) {
34 free(ptr);
35 }
36}
37
38void* operator new(std::size_t size, const std::nothrow_t&)
39{
40 return malloc(size);
41}
42
43void* operator new[](std::size_t size, const std::nothrow_t&)
44{
45 return malloc(size);
46}
47
48void operator delete(void* ptr, const std::nothrow_t&)
49{
50 if (ptr) {
51 free(ptr);
52 }
53}
54
55void operator delete[](void* ptr, const std::nothrow_t&)
56{
57 if (ptr) {
58 free(ptr);
59 }
60}
61
62
63
64
65