Fixed formatting, trying to fix msvc build error in appveyor

This commit is contained in:
Artöm Bakri Al-Sarmini 2020-04-08 00:26:43 +03:00
parent a74a031bba
commit 4ce31695f1

View file

@ -238,28 +238,17 @@ TEST_CASE("controlled bad_alloc")
namespace namespace
{ {
template<class T> template<class T>
struct allocator_no_forward struct allocator_no_forward : std::allocator<T>
{ {
typedef T value_type;
template <typename U> template <typename U>
struct rebind struct rebind {
{
typedef allocator_no_forward<U> other; typedef allocator_no_forward<U> other;
}; };
T* allocate(size_t sz) template <class... Args>
void construct(T* p, const Args&... args)
{ {
return static_cast<T*>(malloc(sz * sizeof(T))); ::new (static_cast<void*>(p)) T(args...);
}
void deallocate(T* p, size_t)
{
free(p);
}
void construct(T* p, const T& arg)
{
::new (static_cast<void*>(p)) T(arg);
} }
}; };
} }
@ -269,16 +258,16 @@ TEST_CASE("bad my_allocator::construct")
SECTION("my_allocator::construct doesn't forward") SECTION("my_allocator::construct doesn't forward")
{ {
using bad_alloc_json = nlohmann::basic_json<std::map, using bad_alloc_json = nlohmann::basic_json<std::map,
std::vector, std::vector,
std::string, std::string,
bool, bool,
std::int64_t, std::int64_t,
std::uint64_t, std::uint64_t,
double, double,
allocator_no_forward>; allocator_no_forward>;
bad_alloc_json json; bad_alloc_json json;
json["test"] = bad_alloc_json::array_t(); json["test"] = bad_alloc_json::array_t();
json["test"].push_back("should not leak"); json["test"].push_back("should not leak");
} }
} }