From cdff3806811de210abd0ea368364441a1eac2fa0 Mon Sep 17 00:00:00 2001 From: Eric Fiselier Date: Sat, 8 Jun 2019 00:45:45 +0000 Subject: [PATCH] Fix some incorrect std::function tests llvm-svn: 362861 --- .../func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp b/libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp index 6fa0d6f..bcc93ad 100644 --- a/libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp +++ b/libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp @@ -64,7 +64,9 @@ void test_FreeFunction(AllocType& alloc) FuncType* target = &FreeFunction; assert(globalMemCounter.checkOutstandingNewEq(0)); std::function f2(std::allocator_arg, alloc, target); - assert(globalMemCounter.checkOutstandingNewEq(0)); + // The allocator may not fit in the small object buffer, if we allocated + // check it was done via the allocator. + assert(globalMemCounter.checkOutstandingNewEq(test_alloc_base::alloc_count)); assert(f2.template target()); assert(*f2.template target() == target); assert(f2.template target() == 0); @@ -81,7 +83,7 @@ void test_MemFunClass(AllocType& alloc) TargetType target = &MemFunClass::foo; assert(globalMemCounter.checkOutstandingNewEq(0)); std::function f2(std::allocator_arg, alloc, target); - assert(globalMemCounter.checkOutstandingNewEq(0)); + assert(globalMemCounter.checkOutstandingNewEq(test_alloc_base::alloc_count)); assert(f2.template target()); assert(*f2.template target() == target); assert(f2.template target() == 0); -- 2.7.4