Make a few tests optimization-proof. These tests were failing under -O3 because the optimizer was eliminating the call to new.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@172631 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Howard Hinnant 2013-01-16 17:56:06 +00:00
parent 0b93963db7
commit 5ce391e336
4 changed files with 4 additions and 4 deletions

View File

@ -35,7 +35,7 @@ int main()
std::set_new_handler(new_handler);
try
{
void* vp = operator new[] (std::numeric_limits<std::size_t>::max());
void*volatile vp = operator new[] (std::numeric_limits<std::size_t>::max());
assert(false);
}
catch (std::bad_alloc&)

View File

@ -35,7 +35,7 @@ int main()
std::set_new_handler(new_handler);
try
{
void* vp = operator new [] (std::numeric_limits<std::size_t>::max(), std::nothrow);
void*volatile vp = operator new [] (std::numeric_limits<std::size_t>::max(), std::nothrow);
assert(new_handler_called == 1);
assert(vp == 0);
}

View File

@ -29,7 +29,7 @@ void operator delete(void* p) throw()
std::free(p);
}
int A_constructed = 0;
volatile int A_constructed = 0;
struct A
{

View File

@ -15,7 +15,7 @@
#include <cassert>
#include <limits>
int new_called = 0;
volatile int new_called = 0;
void* operator new(std::size_t s) throw(std::bad_alloc)
{