summaryrefslogtreecommitdiffstats
path: root/libcxx/src
diff options
context:
space:
mode:
authorLarisse Voufo <lvoufo@google.com>2015-02-15 05:18:55 +0000
committerLarisse Voufo <lvoufo@google.com>2015-02-15 05:18:55 +0000
commitd36bd7005987fe6677e2f54341ada8c45c752d8f (patch)
tree15c37653840bef75ef9b6c4a4c8aaae34f21c182 /libcxx/src
parentf02ad93270b31d07df7f4daa6c2e64c8e5437186 (diff)
downloadbcm5719-llvm-d36bd7005987fe6677e2f54341ada8c45c752d8f.tar.gz
bcm5719-llvm-d36bd7005987fe6677e2f54341ada8c45c752d8f.zip
Implement C++14's sized deallocation functions, since there are no longer implicitly defined by clang, as of r229241.
llvm-svn: 229281
Diffstat (limited to 'libcxx/src')
-rw-r--r--libcxx/src/new.cpp30
1 files changed, 29 insertions, 1 deletions
diff --git a/libcxx/src/new.cpp b/libcxx/src/new.cpp
index a88d4cc7c24..a9b3733df08 100644
--- a/libcxx/src/new.cpp
+++ b/libcxx/src/new.cpp
@@ -126,6 +126,13 @@ operator delete(void* ptr) _NOEXCEPT
_LIBCPP_WEAK _LIBCPP_NEW_DELETE_VIS
void
+operator delete(void* ptr, size_t) _NOEXCEPT
+{
+ ::operator delete(ptr);
+}
+
+_LIBCPP_WEAK _LIBCPP_NEW_DELETE_VIS
+void
operator delete(void* ptr, const std::nothrow_t&) _NOEXCEPT
{
::operator delete(ptr);
@@ -133,9 +140,23 @@ operator delete(void* ptr, const std::nothrow_t&) _NOEXCEPT
_LIBCPP_WEAK _LIBCPP_NEW_DELETE_VIS
void
+operator delete(void* ptr, size_t, const std::nothrow_t&) _NOEXCEPT
+{
+ ::operator delete(ptr);
+}
+
+_LIBCPP_WEAK _LIBCPP_NEW_DELETE_VIS
+void
operator delete[] (void* ptr) _NOEXCEPT
{
- ::operator delete (ptr);
+ ::operator delete(ptr);
+}
+
+_LIBCPP_WEAK _LIBCPP_NEW_DELETE_VIS
+void
+operator delete[] (void* ptr, size_t) _NOEXCEPT
+{
+ ::operator delete[](ptr);
}
_LIBCPP_WEAK _LIBCPP_NEW_DELETE_VIS
@@ -145,6 +166,13 @@ operator delete[] (void* ptr, const std::nothrow_t&) _NOEXCEPT
::operator delete[](ptr);
}
+_LIBCPP_WEAK _LIBCPP_NEW_DELETE_VIS
+void
+operator delete[] (void* ptr, size_t, const std::nothrow_t&) _NOEXCEPT
+{
+ ::operator delete[](ptr);
+}
+
#endif // !__GLIBCXX__
namespace std
OpenPOWER on IntegriCloud