aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2015-11-03 11:43:54 -0500
committerJason Merrill <jason@gcc.gnu.org>2015-11-03 11:43:54 -0500
commit34148d68c7ac0bd2bb1b499b3bd8a267efbe83ad (patch)
tree9737cf57a2fb6976333981c534920e454b48ced8
parent428db0baaae865326c65df831e2386a2fe7ac1d9 (diff)
downloadgcc-34148d68c7ac0bd2bb1b499b3bd8a267efbe83ad.zip
gcc-34148d68c7ac0bd2bb1b499b3bd8a267efbe83ad.tar.gz
gcc-34148d68c7ac0bd2bb1b499b3bd8a267efbe83ad.tar.bz2
* libsupc++/new: Declare sized deletes.
From-SVN: r229713
-rw-r--r--libstdc++-v3/ChangeLog4
-rw-r--r--libstdc++-v3/libsupc++/new12
2 files changed, 16 insertions, 0 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 4f36a2a..abd4482 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,7 @@
+2015-11-03 Jason Merrill <jason@redhat.com>
+
+ * libsupc++/new: Declare sized deletes.
+
2015-11-03 Ville Voutilainen <ville.voutilainen@gmail.com>
Make the default constructors of tuple and pair conditionally explicit.
diff --git a/libstdc++-v3/libsupc++/new b/libstdc++-v3/libsupc++/new
index bd50b6c..0f6a05a 100644
--- a/libstdc++-v3/libsupc++/new
+++ b/libstdc++-v3/libsupc++/new
@@ -116,6 +116,12 @@ void operator delete(void*) _GLIBCXX_USE_NOEXCEPT
__attribute__((__externally_visible__));
void operator delete[](void*) _GLIBCXX_USE_NOEXCEPT
__attribute__((__externally_visible__));
+#if __cpp_sized_deallocation
+void operator delete(void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
+ __attribute__((__externally_visible__));
+void operator delete[](void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
+ __attribute__((__externally_visible__));
+#endif
void* operator new(std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
__attribute__((__externally_visible__));
void* operator new[](std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
@@ -124,6 +130,12 @@ void operator delete(void*, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
__attribute__((__externally_visible__));
void operator delete[](void*, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
__attribute__((__externally_visible__));
+#if __cpp_sized_deallocation
+void operator delete(void*, std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
+ __attribute__((__externally_visible__));
+void operator delete[](void*, std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
+ __attribute__((__externally_visible__));
+#endif
// Default placement versions of operator new.
inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT