diff options
author | Cristian Maglie <c.maglie@bug.st> | 2014-09-06 12:42:25 +0200 |
---|---|---|
committer | Cristian Maglie <c.maglie@bug.st> | 2014-09-06 12:42:25 +0200 |
commit | a4496b927bb7889ed076e7b7f0cc27fa0c4b9b75 (patch) | |
tree | 73ed5ef74695e8061c860783b7ffb46c73830fe0 /cores/arduino/new.cpp | |
parent | df778925a852608461d6153aa81c6336bb7966e7 (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.cpp | 12 |
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) {}; - |