From 492d7134f3bdd76415d8e7b20a4f1c9a42b85e44 Mon Sep 17 00:00:00 2001 From: Shoaib Meenai Date: Mon, 9 Oct 2017 19:25:17 +0000 Subject: [libc++] Support Microsoft ABI without vcruntime headers The vcruntime headers are hairy and clash with both libc++ headers themselves and other libraries. libc++ normally deals with the clashes by deferring to the vcruntime headers and silencing its own definitions, but for clients which don't want to depend on vcruntime headers, it's desirable to support the opposite, i.e. have libc++ provide its own definitions. Certain operator new/delete replacement scenarios are not currently supported in this mode, which requires some tests to be marked XFAIL. The added documentation has more details. Differential Revision: https://reviews.llvm.org/D38522 llvm-svn: 315234 --- .../new.delete/new.delete.array/new_array_nothrow_replace.pass.cpp | 1 + .../new.delete/new.delete.array/new_array_replace.pass.cpp | 1 + .../new.delete/new.delete.single/new_nothrow_replace.pass.cpp | 1 + 3 files changed, 3 insertions(+) (limited to 'libcxx/test/std/language.support') 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 53e26c99f92..ba3f930c5f1 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 @@ -10,6 +10,7 @@ // test operator new [] nothrow by replacing only operator new // UNSUPPORTED: sanitizer-new-delete +// XFAIL: libcpp-no-vcruntime #include #include 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 b0820b14f41..3f8122745cc 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 @@ -10,6 +10,7 @@ // test operator new[] replacement by replacing only operator new // UNSUPPORTED: sanitizer-new-delete +// XFAIL: libcpp-no-vcruntime #include 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 dbc64bace33..31e1901511f 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 @@ -10,6 +10,7 @@ // test operator new nothrow by replacing only operator new // UNSUPPORTED: sanitizer-new-delete +// XFAIL: libcpp-no-vcruntime #include #include -- cgit v1.2.3