[libcxx] Fix copy_move.pass test
authorHaowei Wu <haowei@google.com>
Wed, 19 Jul 2023 23:22:29 +0000 (16:22 -0700)
committerHaowei Wu <haowei@google.com>
Wed, 19 Jul 2023 23:52:10 +0000 (16:52 -0700)
When LLVM is built under MSVC and libcxx ABI is set to 2, the
'copy_move.pass' test will unexpectedly pass. This patch mitigate
this issue by setting this test will only expecting FAIL when libcxx
ABI version is set to 1.

This is a re-land of be9f55f4fff47badcdca17be5bcc0a4a15894739

Differential Revision: https://reviews.llvm.org/D155760
Fixes: https://github.com/llvm/llvm-project/issues/63442

libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy_move.pass.cpp

index 6ad6e2a..4a2a272 100644 (file)
@@ -8,7 +8,7 @@
 
 // FIXME: In MSVC mode, even "std::function<int(int)> f(aref);" causes
 // allocations.
-// XFAIL: target=x86_64-pc-windows-msvc && stdlib=libc++
+// XFAIL: target=x86_64-pc-windows-msvc && stdlib=libc++ && libcpp-abi-version=1
 
 // UNSUPPORTED: c++03