summaryrefslogtreecommitdiffstats
path: root/libcxx/include/new
diff options
context:
space:
mode:
authorLarisse Voufo <lvoufo@google.com>2015-02-20 06:13:05 +0000
committerLarisse Voufo <lvoufo@google.com>2015-02-20 06:13:05 +0000
commite4864e0bc2cf9f6a0e450d654f9775cf15e5aa7d (patch)
tree377ae08e61e6109a560c7e917ccda964b980a5c9 /libcxx/include/new
parent62ac78ae3e5e8198aaba8acaed891349b3de615f (diff)
downloadbcm5719-llvm-e4864e0bc2cf9f6a0e450d654f9775cf15e5aa7d.tar.gz
bcm5719-llvm-e4864e0bc2cf9f6a0e450d654f9775cf15e5aa7d.zip
More on adding sized deallocation functions in libc++: Continuing from r229281, this adds version guards and test cases.
llvm-svn: 229968
Diffstat (limited to 'libcxx/include/new')
-rw-r--r--libcxx/include/new8
1 files changed, 6 insertions, 2 deletions
diff --git a/libcxx/include/new b/libcxx/include/new
index 7268b4bd95d..29c1a839680 100644
--- a/libcxx/include/new
+++ b/libcxx/include/new
@@ -139,9 +139,11 @@ _LIBCPP_NEW_DELETE_VIS void* operator new(std::size_t __sz)
;
_LIBCPP_NEW_DELETE_VIS void* operator new(std::size_t __sz, const std::nothrow_t&) _NOEXCEPT _NOALIAS;
_LIBCPP_NEW_DELETE_VIS void operator delete(void* __p) _NOEXCEPT;
-_LIBCPP_NEW_DELETE_VIS void operator delete(void* __p, std::size_t __sz) _NOEXCEPT;
_LIBCPP_NEW_DELETE_VIS void operator delete(void* __p, const std::nothrow_t&) _NOEXCEPT;
+#if defined(_LIBCPP_BUILDING_NEW) || _LIBCPP_STD_VER >= 14
+_LIBCPP_NEW_DELETE_VIS void operator delete(void* __p, std::size_t __sz) _NOEXCEPT;
_LIBCPP_NEW_DELETE_VIS void operator delete(void* __p, std::size_t __sz, const std::nothrow_t&) _NOEXCEPT;
+#endif
_LIBCPP_NEW_DELETE_VIS void* operator new[](std::size_t __sz)
#if !__has_feature(cxx_noexcept)
@@ -150,9 +152,11 @@ _LIBCPP_NEW_DELETE_VIS void* operator new[](std::size_t __sz)
;
_LIBCPP_NEW_DELETE_VIS void* operator new[](std::size_t __sz, const std::nothrow_t&) _NOEXCEPT _NOALIAS;
_LIBCPP_NEW_DELETE_VIS void operator delete[](void* __p) _NOEXCEPT;
-_LIBCPP_NEW_DELETE_VIS void operator delete[](void* __p, std::size_t __sz) _NOEXCEPT;
_LIBCPP_NEW_DELETE_VIS void operator delete[](void* __p, const std::nothrow_t&) _NOEXCEPT;
+#if defined(_LIBCPP_BUILDING_NEW) || _LIBCPP_STD_VER >= 14
+_LIBCPP_NEW_DELETE_VIS void operator delete[](void* __p, std::size_t __sz) _NOEXCEPT;
_LIBCPP_NEW_DELETE_VIS void operator delete[](void* __p, std::size_t __sz, const std::nothrow_t&) _NOEXCEPT;
+#endif
inline _LIBCPP_INLINE_VISIBILITY void* operator new (std::size_t, void* __p) _NOEXCEPT {return __p;}
inline _LIBCPP_INLINE_VISIBILITY void* operator new[](std::size_t, void* __p) _NOEXCEPT {return __p;}
OpenPOWER on IntegriCloud