aboutsummaryrefslogtreecommitdiff
path: root/cores/arduino/new.cpp
diff options
context:
space:
mode:
authorCristian Maglie <c.maglie@bug.st>2014-09-06 12:42:25 +0200
committerCristian Maglie <c.maglie@bug.st>2014-09-06 12:42:25 +0200
commita4496b927bb7889ed076e7b7f0cc27fa0c4b9b75 (patch)
tree73ed5ef74695e8061c860783b7ffb46c73830fe0 /cores/arduino/new.cpp
parentdf778925a852608461d6153aa81c6336bb7966e7 (diff)
Correct implementation of gcc specific internal functions
The following empty stubs has been replaced by the gcc flag -fno-threadsafe-static: int __cxa_guard_acquire(__guard *); void __cxa_guard_release (__guard *); void __cxa_guard_abort (__guard *); The following empty stubs has been moved into their specific module abi.cpp: void __cxa_pure_virtual(void) __attribute ((noreturn)); void __cxa_deleted_virtual(void) __attribute ((noreturn)); Fix #107
Diffstat (limited to 'cores/arduino/new.cpp')
-rw-r--r--cores/arduino/new.cpp12
1 files changed, 3 insertions, 9 deletions
diff --git a/cores/arduino/new.cpp b/cores/arduino/new.cpp
index b81031e..1486012 100644
--- a/cores/arduino/new.cpp
+++ b/cores/arduino/new.cpp
@@ -1,7 +1,7 @@
-#include <new.h>
-void * operator new(size_t size)
-{
+#include <stdlib.h>
+
+void *operator new(size_t size) {
return malloc(size);
}
@@ -20,9 +20,3 @@ void operator delete[](void * ptr)
free(ptr);
}
-int __cxa_guard_acquire(__guard *g) {return !*(char *)(g);};
-void __cxa_guard_release (__guard *g) {*(char *)g = 1;};
-void __cxa_guard_abort (__guard *) {};
-
-void __cxa_pure_virtual(void) {};
-