summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/language.support/support.dynamic
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2016-06-22 04:23:54 +0000
committerEric Fiselier <eric@efcs.ca>2016-06-22 04:23:54 +0000
commitcc4162293f31c413a792488f31c87302cefff8d6 (patch)
treed18b0581a532fc7bd4d92533a54aad07838e6f7c /libcxx/test/std/language.support/support.dynamic
parenta0d42c86dbcb150c2a7a3d8f2a8500dcfb98a5d1 (diff)
downloadbcm5719-llvm-cc4162293f31c413a792488f31c87302cefff8d6.tar.gz
bcm5719-llvm-cc4162293f31c413a792488f31c87302cefff8d6.zip
Placate MSVC's unchecked malloc warnings.
llvm-svn: 273374
Diffstat (limited to 'libcxx/test/std/language.support/support.dynamic')
-rw-r--r--libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array_nothrow_replace.pass.cpp4
-rw-r--r--libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array_replace.pass.cpp4
-rw-r--r--libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_nothrow_replace.pass.cpp5
-rw-r--r--libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_replace.pass.cpp4
4 files changed, 12 insertions, 5 deletions
diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array_nothrow_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array_nothrow_replace.pass.cpp
index dc4add7d061..5887bb0bdf3 100644
--- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array_nothrow_replace.pass.cpp
+++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array_nothrow_replace.pass.cpp
@@ -26,7 +26,9 @@ int new_called = 0;
void* operator new(std::size_t s) throw(std::bad_alloc)
{
++new_called;
- return std::malloc(s);
+ void* ret = std::malloc(s);
+ if (!ret) std::abort(); // placate MSVC's unchecked malloc warning
+ return ret;
}
void operator delete(void* p) throw()
diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array_replace.pass.cpp
index f3edaa0fba8..1e78ea8fe26 100644
--- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array_replace.pass.cpp
+++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array_replace.pass.cpp
@@ -26,7 +26,9 @@ volatile int new_called = 0;
void* operator new(std::size_t s) throw(std::bad_alloc)
{
++new_called;
- return std::malloc(s);
+ void* ret = std::malloc(s);
+ if (!ret) std::abort(); // placate MSVC's unchecked malloc warning
+ return ret;
}
void operator delete(void* p) throw()
diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_nothrow_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_nothrow_replace.pass.cpp
index 9604612f7f5..eb8319bac2f 100644
--- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_nothrow_replace.pass.cpp
+++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_nothrow_replace.pass.cpp
@@ -14,7 +14,6 @@
// TODO Investigate why UBSAN prevents nothrow new from calling our replacement.
// XFAIL: ubsan
-
#include <new>
#include <cstddef>
#include <cstdlib>
@@ -26,7 +25,9 @@ int new_called = 0;
void* operator new(std::size_t s) throw(std::bad_alloc)
{
++new_called;
- return std::malloc(s);
+ void* ret = std::malloc(s);
+ if (!ret) std::abort(); // placate MSVC's unchecked malloc warning
+ return ret;
}
void operator delete(void* p) throw()
diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_replace.pass.cpp
index 0df3a93703d..6056ed7bb0b 100644
--- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_replace.pass.cpp
+++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_replace.pass.cpp
@@ -22,7 +22,9 @@ int new_called = 0;
void* operator new(std::size_t s) throw(std::bad_alloc)
{
++new_called;
- return std::malloc(s);
+ void* ret = std::malloc(s);
+ if (!ret) std::abort(); // placate MSVC's unchecked malloc warning
+ return ret;
}
void operator delete(void* p) throw()
OpenPOWER on IntegriCloud