Update these declarations of operator delete (and delete[]) to have noexcept,

as required per core issue 1552 and warned about with
-Wimplicit-exception-spec-mismatch.

llvm-svn: 201014
This commit is contained in:
Nick Lewycky 2014-02-08 01:29:07 +00:00
parent e253b098d3
commit fff46e01fd
2 changed files with 16 additions and 10 deletions

View File

@ -81,15 +81,21 @@ INTERCEPTOR(void *, _ZnamRKSt9nothrow_t, size_t size, std::nothrow_t const&) {
#if !SANITIZER_MAC
INTERCEPTOR_ATTRIBUTE
void operator delete(void *ptr) { OPERATOR_DELETE_BODY(FROM_NEW); }
void operator delete(void *ptr) noexcept {
OPERATOR_DELETE_BODY(FROM_NEW);
}
INTERCEPTOR_ATTRIBUTE
void operator delete[](void *ptr) { OPERATOR_DELETE_BODY(FROM_NEW_BR); }
void operator delete[](void *ptr) noexcept {
OPERATOR_DELETE_BODY(FROM_NEW_BR);
}
INTERCEPTOR_ATTRIBUTE
void operator delete(void *ptr, std::nothrow_t const&)
{ OPERATOR_DELETE_BODY(FROM_NEW); }
void operator delete(void *ptr, std::nothrow_t const&) {
OPERATOR_DELETE_BODY(FROM_NEW);
}
INTERCEPTOR_ATTRIBUTE
void operator delete[](void *ptr, std::nothrow_t const&)
{ OPERATOR_DELETE_BODY(FROM_NEW_BR); }
void operator delete[](void *ptr, std::nothrow_t const&) {
OPERATOR_DELETE_BODY(FROM_NEW_BR);
}
#else // SANITIZER_MAC
INTERCEPTOR(void, _ZdlPv, void *ptr) {

View File

@ -576,14 +576,14 @@ void *operator new[](__sanitizer::uptr size, std::nothrow_t const&) {
user_free(thr, pc, ptr);
SANITIZER_INTERFACE_ATTRIBUTE
void operator delete(void *ptr);
void operator delete(void *ptr) {
void operator delete(void *ptr) noexcept;
void operator delete(void *ptr) noexcept {
OPERATOR_DELETE_BODY(_ZdlPv);
}
SANITIZER_INTERFACE_ATTRIBUTE
void operator delete[](void *ptr);
void operator delete[](void *ptr) {
void operator delete[](void *ptr) noexcept;
void operator delete[](void *ptr) noexcept {
OPERATOR_DELETE_BODY(_ZdlPvRKSt9nothrow_t);
}