[libcxx-commits] [libcxx] r347585 - [libcxx] Fix XFAILs for aligned allocation tests

Nico Weber thakis at chromium.org
Thu Dec 6 11:17:12 PST 2018


Our bots seem happier now. Thanks for the quick fix!

On Thu, Dec 6, 2018 at 1:12 PM Louis Dionne <ldionne at apple.com> wrote:

>
>
> On Dec 6, 2018, at 10:50, Hans Wennborg <hans at chromium.org> wrote:
>
> Hi Louis,
>
> These tests now fail for us (they're xfailed and unexpectedly pass)
> when building libc++ for Chromium.
>
> We're building with MACOSX_DEPLOYMENT_TARGET=10.7, with AppleClang
> 9.0.0.9000037. Should the xfail checks be updated to take this into
> account?
>
>
> Thanks for the heads up and sorry about that. This should be fixed in
> r348507.
>
> These aligned allocation tests are incredibly tricky because they are
> unlike any other availability test we have. They depend on the compiler and
> standard library version used in subtle ways, and we don't have quite
> enough expressiveness in LIT to say what we want (that the tests should
> XFAIL for all apple-clang less than or equal to 10).
>
> Please LMK if you still see failures.
>
> Louis
>
>
>
> On Mon, Nov 26, 2018 at 8:32 PM Louis Dionne via libcxx-commits
> <libcxx-commits at lists.llvm.org> wrote:
>
>
>
>
>
> ---------- Forwarded message ----------
> From: Louis Dionne <ldionne at apple.com>
> To: libcxx-commits at lists.llvm.org
> Cc:
> Bcc:
> Date: Mon, 26 Nov 2018 19:30:08 -0000
> Subject: [libcxx] r347585 - [libcxx] Fix XFAILs for aligned allocation
> tests
> Author: ldionne
> Date: Mon Nov 26 11:30:08 2018
> New Revision: 347585
>
> URL: http://llvm.org/viewvc/llvm-project?rev=347585&view=rev
> Log:
> [libcxx] Fix XFAILs for aligned allocation tests
>
> In r339743, I marked several aligned allocation tests as downright
> unsupported on macosx in an attempt to unbreak the build. It turns
> out that marking them as unuspported whenever we're on OS X is way
> too coarse grained. This commit marks the tests as XFAIL with more
> granularity.
>
> Modified:
>
>    libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/delete_align_val_t_replace.pass.cpp
>
>    libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp
>
>    libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp
>
>    libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp
>
>    libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/delete_align_val_t_replace.pass.cpp
>
>    libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp
>
>    libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp
>
>    libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp
>
> Modified:
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/delete_align_val_t_replace.pass.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/delete_align_val_t_replace.pass.cpp?rev=347585&r1=347584&r2=347585&view=diff
>
> ==============================================================================
> ---
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/delete_align_val_t_replace.pass.cpp
> (original)
> +++
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/delete_align_val_t_replace.pass.cpp
> Mon Nov 26 11:30:08 2018
> @@ -17,22 +17,25 @@
> // None of the current GCC compilers support this.
> // UNSUPPORTED: gcc-5, gcc-6
>
> -// dylibs shipped before macosx10.13 do not provide aligned allocation,
> so that's a link error
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.12
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.11
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.10
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.9
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.8
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.7
> +// Aligned allocation was not provided before macosx10.12 and as a result
> we
> +// get availability errors when the deployment target is older than
> macosx10.13.
> +// However, AppleClang 10 (and older) don't trigger availability errors.
> +// XFAIL: !apple-clang-10 && availability=macosx10.12
> +// XFAIL: !apple-clang-10 && availability=macosx10.11
> +// XFAIL: !apple-clang-10 && availability=macosx10.10
> +// XFAIL: !apple-clang-10 && availability=macosx10.9
> +// XFAIL: !apple-clang-10 && availability=macosx10.8
> +// XFAIL: !apple-clang-10 && availability=macosx10.7
>
> -// Using aligned allocation functions is a compiler error when deploying
> to
> -// platforms older than macosx10.13
> -// UNSUPPORTED: macosx10.12
> -// UNSUPPORTED: macosx10.11
> -// UNSUPPORTED: macosx10.10
> -// UNSUPPORTED: macosx10.9
> -// UNSUPPORTED: macosx10.8
> -// UNSUPPORTED: macosx10.7
> +// On AppleClang 10 (and older), instead of getting an availability
> failure
> +// like above, we get a link error when we link against a dylib that does
> +// not export the aligned allocation functions.
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.12
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.11
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.10
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.9
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.8
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.7
>
> // On Windows libc++ doesn't provide its own definitions for new/delete
> // but instead depends on the ones in VCRuntime. However VCRuntime does not
>
> Modified:
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp?rev=347585&r1=347584&r2=347585&view=diff
>
> ==============================================================================
> ---
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp
> (original)
> +++
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp
> Mon Nov 26 11:30:08 2018
> @@ -15,22 +15,25 @@
> // FIXME change this to XFAIL.
> // UNSUPPORTED: no-aligned-allocation && !gcc
>
> -// dylibs shipped before macosx10.13 do not provide aligned allocation,
> so that's a link error
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.12
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.11
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.10
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.9
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.8
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.7
> +// Aligned allocation was not provided before macosx10.12 and as a result
> we
> +// get availability errors when the deployment target is older than
> macosx10.13.
> +// However, AppleClang 10 (and older) don't trigger availability errors.
> +// XFAIL: !apple-clang-10 && availability=macosx10.12
> +// XFAIL: !apple-clang-10 && availability=macosx10.11
> +// XFAIL: !apple-clang-10 && availability=macosx10.10
> +// XFAIL: !apple-clang-10 && availability=macosx10.9
> +// XFAIL: !apple-clang-10 && availability=macosx10.8
> +// XFAIL: !apple-clang-10 && availability=macosx10.7
>
> -// Using aligned allocation functions is a compiler error when deploying
> to
> -// platforms older than macosx10.13
> -// UNSUPPORTED: macosx10.12
> -// UNSUPPORTED: macosx10.11
> -// UNSUPPORTED: macosx10.10
> -// UNSUPPORTED: macosx10.9
> -// UNSUPPORTED: macosx10.8
> -// UNSUPPORTED: macosx10.7
> +// On AppleClang 10 (and older), instead of getting an availability
> failure
> +// like above, we get a link error when we link against a dylib that does
> +// not export the aligned allocation functions.
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.12
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.11
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.10
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.9
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.8
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.7
>
> // On Windows libc++ doesn't provide its own definitions for new/delete
> // but instead depends on the ones in VCRuntime. However VCRuntime does not
>
> Modified:
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp?rev=347585&r1=347584&r2=347585&view=diff
>
> ==============================================================================
> ---
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp
> (original)
> +++
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp
> Mon Nov 26 11:30:08 2018
> @@ -15,22 +15,25 @@
> // FIXME turn this into an XFAIL
> // UNSUPPORTED: no-aligned-allocation && !gcc
>
> -// dylibs shipped before macosx10.13 do not provide aligned allocation,
> so that's a link error
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.12
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.11
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.10
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.9
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.8
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.7
> +// Aligned allocation was not provided before macosx10.12 and as a result
> we
> +// get availability errors when the deployment target is older than
> macosx10.13.
> +// However, AppleClang 10 (and older) don't trigger availability errors.
> +// XFAIL: !apple-clang-10 && availability=macosx10.12
> +// XFAIL: !apple-clang-10 && availability=macosx10.11
> +// XFAIL: !apple-clang-10 && availability=macosx10.10
> +// XFAIL: !apple-clang-10 && availability=macosx10.9
> +// XFAIL: !apple-clang-10 && availability=macosx10.8
> +// XFAIL: !apple-clang-10 && availability=macosx10.7
>
> -// Using aligned allocation functions is a compiler error when deploying
> to
> -// platforms older than macosx10.13
> -// UNSUPPORTED: macosx10.12
> -// UNSUPPORTED: macosx10.11
> -// UNSUPPORTED: macosx10.10
> -// UNSUPPORTED: macosx10.9
> -// UNSUPPORTED: macosx10.8
> -// UNSUPPORTED: macosx10.7
> +// On AppleClang 10 (and older), instead of getting an availability
> failure
> +// like above, we get a link error when we link against a dylib that does
> +// not export the aligned allocation functions.
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.12
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.11
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.10
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.9
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.8
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.7
>
> // On Windows libc++ doesn't provide its own definitions for new/delete
> // but instead depends on the ones in VCRuntime. However VCRuntime does not
>
> Modified:
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp?rev=347585&r1=347584&r2=347585&view=diff
>
> ==============================================================================
> ---
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp
> (original)
> +++
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp
> Mon Nov 26 11:30:08 2018
> @@ -10,24 +10,25 @@
> // UNSUPPORTED: c++98, c++03, c++11, c++14
> // UNSUPPORTED: sanitizer-new-delete
>
> -// dylibs shipped before macosx10.13 do not provide aligned allocation,
> so our
> -// custom aligned allocation functions are not called and the test fails
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.12
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.11
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.10
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.9
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.8
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.7
> +// Aligned allocation was not provided before macosx10.12 and as a result
> we
> +// get availability errors when the deployment target is older than
> macosx10.13.
> +// However, AppleClang 10 (and older) don't trigger availability errors.
> +// XFAIL: !apple-clang-10 && availability=macosx10.12
> +// XFAIL: !apple-clang-10 && availability=macosx10.11
> +// XFAIL: !apple-clang-10 && availability=macosx10.10
> +// XFAIL: !apple-clang-10 && availability=macosx10.9
> +// XFAIL: !apple-clang-10 && availability=macosx10.8
> +// XFAIL: !apple-clang-10 && availability=macosx10.7
>
> -// Our custom aligned allocation functions are not called when deploying
> to
> -// platforms older than macosx10.13, since those platforms don't support
> -// aligned allocation.
> -// UNSUPPORTED: macosx10.12
> -// UNSUPPORTED: macosx10.11
> -// UNSUPPORTED: macosx10.10
> -// UNSUPPORTED: macosx10.9
> -// UNSUPPORTED: macosx10.8
> -// UNSUPPORTED: macosx10.7
> +// On AppleClang 10 (and older), instead of getting an availability
> failure
> +// like above, we get a link error when we link against a dylib that does
> +// not export the aligned allocation functions.
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.12
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.11
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.10
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.9
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.8
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.7
>
> // XFAIL: no-aligned-allocation && !gcc
>
>
> Modified:
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/delete_align_val_t_replace.pass.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/delete_align_val_t_replace.pass.cpp?rev=347585&r1=347584&r2=347585&view=diff
>
> ==============================================================================
> ---
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/delete_align_val_t_replace.pass.cpp
> (original)
> +++
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/delete_align_val_t_replace.pass.cpp
> Mon Nov 26 11:30:08 2018
> @@ -16,22 +16,25 @@
> // None of the current GCC compilers support this.
> // UNSUPPORTED: gcc-5, gcc-6
>
> -// dylibs shipped before macosx10.13 do not provide aligned allocation,
> so that's a link error
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.12
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.11
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.10
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.9
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.8
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.7
> +// Aligned allocation was not provided before macosx10.12 and as a result
> we
> +// get availability errors when the deployment target is older than
> macosx10.13.
> +// However, AppleClang 10 (and older) don't trigger availability errors.
> +// XFAIL: !apple-clang-10 && availability=macosx10.12
> +// XFAIL: !apple-clang-10 && availability=macosx10.11
> +// XFAIL: !apple-clang-10 && availability=macosx10.10
> +// XFAIL: !apple-clang-10 && availability=macosx10.9
> +// XFAIL: !apple-clang-10 && availability=macosx10.8
> +// XFAIL: !apple-clang-10 && availability=macosx10.7
>
> -// Using aligned allocation functions is a compiler error when deploying
> to
> -// platforms older than macosx10.13
> -// UNSUPPORTED: macosx10.12
> -// UNSUPPORTED: macosx10.11
> -// UNSUPPORTED: macosx10.10
> -// UNSUPPORTED: macosx10.9
> -// UNSUPPORTED: macosx10.8
> -// UNSUPPORTED: macosx10.7
> +// On AppleClang 10 (and older), instead of getting an availability
> failure
> +// like above, we get a link error when we link against a dylib that does
> +// not export the aligned allocation functions.
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.12
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.11
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.10
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.9
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.8
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.7
>
> // On Windows libc++ doesn't provide its own definitions for new/delete
> // but instead depends on the ones in VCRuntime. However VCRuntime does not
>
> Modified:
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp?rev=347585&r1=347584&r2=347585&view=diff
>
> ==============================================================================
> ---
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp
> (original)
> +++
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp
> Mon Nov 26 11:30:08 2018
> @@ -9,22 +9,25 @@
>
> // UNSUPPORTED: c++98, c++03, c++11, c++14
>
> -// dylibs shipped before macosx10.13 do not provide aligned allocation,
> so that's a link error
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.12
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.11
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.10
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.9
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.8
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.7
> +// Aligned allocation was not provided before macosx10.12 and as a result
> we
> +// get availability errors when the deployment target is older than
> macosx10.13.
> +// However, AppleClang 10 (and older) don't trigger availability errors.
> +// XFAIL: !apple-clang-10 && availability=macosx10.12
> +// XFAIL: !apple-clang-10 && availability=macosx10.11
> +// XFAIL: !apple-clang-10 && availability=macosx10.10
> +// XFAIL: !apple-clang-10 && availability=macosx10.9
> +// XFAIL: !apple-clang-10 && availability=macosx10.8
> +// XFAIL: !apple-clang-10 && availability=macosx10.7
>
> -// Using aligned allocation functions is a compiler error when deploying
> to
> -// platforms older than macosx10.13
> -// UNSUPPORTED: macosx10.12
> -// UNSUPPORTED: macosx10.11
> -// UNSUPPORTED: macosx10.10
> -// UNSUPPORTED: macosx10.9
> -// UNSUPPORTED: macosx10.8
> -// UNSUPPORTED: macosx10.7
> +// On AppleClang 10 (and older), instead of getting an availability
> failure
> +// like above, we get a link error when we link against a dylib that does
> +// not export the aligned allocation functions.
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.12
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.11
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.10
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.9
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.8
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.7
>
> // asan and msan will not call the new handler.
> // UNSUPPORTED: sanitizer-new-delete
>
> Modified:
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp?rev=347585&r1=347584&r2=347585&view=diff
>
> ==============================================================================
> ---
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp
> (original)
> +++
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp
> Mon Nov 26 11:30:08 2018
> @@ -9,22 +9,25 @@
>
> // UNSUPPORTED: c++98, c++03, c++11, c++14
>
> -// dylibs shipped before macosx10.13 do not provide aligned allocation,
> so that's a link error
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.12
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.11
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.10
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.9
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.8
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.7
> +// Aligned allocation was not provided before macosx10.12 and as a result
> we
> +// get availability errors when the deployment target is older than
> macosx10.13.
> +// However, AppleClang 10 (and older) don't trigger availability errors.
> +// XFAIL: !apple-clang-10 && availability=macosx10.12
> +// XFAIL: !apple-clang-10 && availability=macosx10.11
> +// XFAIL: !apple-clang-10 && availability=macosx10.10
> +// XFAIL: !apple-clang-10 && availability=macosx10.9
> +// XFAIL: !apple-clang-10 && availability=macosx10.8
> +// XFAIL: !apple-clang-10 && availability=macosx10.7
>
> -// Using aligned allocation functions is a compiler error when deploying
> to
> -// platforms older than macosx10.13
> -// UNSUPPORTED: macosx10.12
> -// UNSUPPORTED: macosx10.11
> -// UNSUPPORTED: macosx10.10
> -// UNSUPPORTED: macosx10.9
> -// UNSUPPORTED: macosx10.8
> -// UNSUPPORTED: macosx10.7
> +// On AppleClang 10 (and older), instead of getting an availability
> failure
> +// like above, we get a link error when we link against a dylib that does
> +// not export the aligned allocation functions.
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.12
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.11
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.10
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.9
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.8
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.7
>
> // asan and msan will not call the new handler.
> // UNSUPPORTED: sanitizer-new-delete
>
> Modified:
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp?rev=347585&r1=347584&r2=347585&view=diff
>
> ==============================================================================
> ---
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp
> (original)
> +++
> libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp
> Mon Nov 26 11:30:08 2018
> @@ -10,24 +10,25 @@
> // UNSUPPORTED: c++98, c++03, c++11, c++14
> // UNSUPPORTED: sanitizer-new-delete
>
> -// dylibs shipped before macosx10.13 do not provide aligned allocation,
> so our
> -// custom aligned allocation functions are not called and the test fails
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.12
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.11
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.10
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.9
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.8
> -// UNSUPPORTED: with_system_cxx_lib=macosx10.7
> +// Aligned allocation was not provided before macosx10.12 and as a result
> we
> +// get availability errors when the deployment target is older than
> macosx10.13.
> +// However, AppleClang 10 (and older) don't trigger availability errors.
> +// XFAIL: !apple-clang-10 && availability=macosx10.12
> +// XFAIL: !apple-clang-10 && availability=macosx10.11
> +// XFAIL: !apple-clang-10 && availability=macosx10.10
> +// XFAIL: !apple-clang-10 && availability=macosx10.9
> +// XFAIL: !apple-clang-10 && availability=macosx10.8
> +// XFAIL: !apple-clang-10 && availability=macosx10.7
>
> -// Our custom aligned allocation functions are not called when deploying
> to
> -// platforms older than macosx10.13, since those platforms don't support
> -// aligned allocation.
> -// UNSUPPORTED: macosx10.12
> -// UNSUPPORTED: macosx10.11
> -// UNSUPPORTED: macosx10.10
> -// UNSUPPORTED: macosx10.9
> -// UNSUPPORTED: macosx10.8
> -// UNSUPPORTED: macosx10.7
> +// On AppleClang 10 (and older), instead of getting an availability
> failure
> +// like above, we get a link error when we link against a dylib that does
> +// not export the aligned allocation functions.
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.12
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.11
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.10
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.9
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.8
> +// XFAIL: apple-clang-10 && with_system_cxx_lib=macosx10.7
>
> // NOTE: gcc doesn't provide -faligned-allocation flag to test for
> // XFAIL: no-aligned-allocation && !gcc
>
>
>
>
>
> ---------- Forwarded message ----------
> From: Louis Dionne via libcxx-commits <libcxx-commits at lists.llvm.org>
> To: libcxx-commits at lists.llvm.org
> Cc:
> Bcc:
> Date: Mon, 26 Nov 2018 11:30:09 -0800 (PST)
> Subject: [libcxx-commits] [libcxx] r347585 - [libcxx] Fix XFAILs for
> aligned allocation tests
> _______________________________________________
> libcxx-commits mailing list
> libcxx-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/libcxx-commits
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20181206/b1940e65/attachment-0001.html>


More information about the libcxx-commits mailing list