
The experimental-library-flag.cpp test was failing on FreeBSD builders, which turned to be caused by missing support for -stdlib=libcstdc++ (and just using a hardcoded libc++ in all cases). Simplify FreeBSD::AddCXXStdlibLibArgs() by deferring to the parent class and dealing with the FreeSBD < 14 profiling support as a special case. While touching the test file also drop the unnecessary `-o %t.o`. This is not needed since the RUN lines use -### and don't produce any output. Reviewed By: DimitryAndric, MaskRay Pull Request: https://github.com/llvm/llvm-project/pull/126302
24 lines
1.6 KiB
C++
24 lines
1.6 KiB
C++
// On some platforms, -stdlib=libc++ is currently ignored, so -lc++experimental is not added.
|
|
// Once -stdlib=libc++ works on those, this XFAIL can be removed.
|
|
// XFAIL: target={{.*-windows-msvc.*}}, target={{.*-(ps4|ps5)}}
|
|
|
|
// For some reason, this fails with a core dump on AIX. This needs to be investigated.
|
|
// UNSUPPORTED: target={{.*}}-aix{{.*}}
|
|
|
|
// RUN: %clangxx -fexperimental-library -stdlib=libc++ -### %s 2>&1 | FileCheck --check-prefixes=CHECK,CHECK-LIBCXX %s
|
|
// RUN: %clangxx -fexperimental-library -stdlib=libstdc++ -### %s 2>&1 | FileCheck --check-prefixes=CHECK,CHECK-LIBSTDCXX %s
|
|
// RUN: %clangxx -fexperimental-library -stdlib=libc++ -nostdlib++ -### %s 2>&1 | FileCheck --check-prefixes=CHECK,CHECK-NOSTDLIB %s
|
|
|
|
/// The FreeBSD driver did not support -stdlib=libstdc++ previously, check that it does the right thing here.
|
|
// RUN: %clangxx --target=x86_64-unknown-freebsd -fexperimental-library -stdlib=libc++ -### %s 2>&1 | FileCheck --check-prefixes=CHECK,CHECK-LIBCXX %s
|
|
// RUN: %clangxx --target=x86_64-unknown-freebsd -fexperimental-library -stdlib=libstdc++ -### %s 2>&1 | FileCheck --check-prefixes=CHECK,CHECK-LIBSTDCXX %s
|
|
// RUN: %clangxx --target=x86_64-unknown-freebsd -fexperimental-library -stdlib=libc++ -nostdlib++ -### %s 2>&1 | FileCheck --check-prefixes=CHECK,CHECK-NOSTDLIB %s
|
|
|
|
// -fexperimental-library must be passed to CC1.
|
|
// CHECK: -fexperimental-library
|
|
|
|
// Depending on the stdlib in use, we should (or not) pass -lc++experimental.
|
|
// CHECK-LIBCXX: -lc++experimental
|
|
// CHECK-LIBSTDCXX-NOT: -lc++experimental
|
|
// CHECK-NOSTDLIB-NOT: -lc++experimental
|