forked from OSchip/llvm-project
[libc++] Mark some tests as unsupported on GCC 5
There used to be a workaround where we'd pretend that GCC 5 didn't support
C++14 because it doesn't implement it properly. Since that workaround has
been removed (in 1eb211ada1
), we need to mark a few individual tests as
failing with GCC 5.
This commit is contained in:
parent
3f17332aa7
commit
a42a58c9ce
|
@ -9,6 +9,7 @@
|
|||
// UNSUPPORTED: c++03, c++11, c++14
|
||||
// UNSUPPORTED: windows
|
||||
// UNSUPPORTED: libcpp-has-no-threads
|
||||
// UNSUPPORTED: libcpp-no-if-constexpr
|
||||
// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
|
||||
|
||||
// Can't test the system lib because this test enables debug mode
|
||||
|
|
|
@ -13,9 +13,10 @@
|
|||
// This test intentionally leaks memory, so it is unsupported under ASAN.
|
||||
// UNSUPPORTED: asan
|
||||
|
||||
// AppleClang9 doesn't yet support C++17's implicitly synthesized deduction
|
||||
// guides from existing ctors, needed by default_searcher() below.
|
||||
// AppleClang9 and GCC 5 don't support C++17's implicitly synthesized
|
||||
// deduction guides from existing ctors, needed by default_searcher() below.
|
||||
// UNSUPPORTED: apple-clang-9
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
// All entities to which libc++ applies [[nodiscard]] as an extension should
|
||||
// be tested here and in nodiscard_extensions.fail.cpp. They should also
|
||||
|
|
|
@ -14,6 +14,11 @@
|
|||
// RUN: %{cxx} -o %t.exe %t.first.o %t.second.o %{flags} %{link_flags}
|
||||
// RUN: %{run}
|
||||
|
||||
// GCC 5 pretends it supports C++17 features, but some features like static_assert
|
||||
// without a message are not actually supported. This causes some headers to fail
|
||||
// when included.
|
||||
// UNSUPPORTED: gcc-5 && c++17
|
||||
|
||||
// Prevent <ext/hash_map> from generating deprecated warnings for this test.
|
||||
#if defined(__DEPRECATED)
|
||||
#undef __DEPRECATED
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// UNSUPPORTED: c++03, c++11
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
// <filesystem>
|
||||
|
||||
|
|
|
@ -12,6 +12,9 @@
|
|||
// target, so this test would fail.
|
||||
// UNSUPPORTED: apple-clang-9, apple-clang-10
|
||||
|
||||
// GCC 5 doesn't support aligned allocation
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
// XFAIL: availability=macosx10.13
|
||||
// XFAIL: availability=macosx10.12
|
||||
// XFAIL: availability=macosx10.11
|
||||
|
|
|
@ -10,6 +10,9 @@
|
|||
// Test that headers are not tripped up by the surrounding code defining the
|
||||
// min() and max() macros.
|
||||
|
||||
// GCC 5 has incomplete support for C++17, so some headers fail when included.
|
||||
// UNSUPPORTED: gcc-5 && c++17
|
||||
|
||||
// Prevent <ext/hash_map> from generating deprecated warnings for this test.
|
||||
#if defined(__DEPRECATED)
|
||||
#undef __DEPRECATED
|
||||
|
|
|
@ -10,6 +10,9 @@
|
|||
// Ensure that none of the standard C++ headers implicitly include cassert or
|
||||
// assert.h (because assert() is implemented as a macro).
|
||||
|
||||
// GCC 5 has incomplete support for C++17, so some headers fail when included.
|
||||
// UNSUPPORTED: gcc-5 && c++17
|
||||
|
||||
// Prevent <ext/hash_map> from generating deprecated warnings for this test.
|
||||
#if defined(__DEPRECATED)
|
||||
#undef __DEPRECATED
|
||||
|
|
|
@ -7,6 +7,10 @@
|
|||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// UNSUPPORTED: c++03, c++11, c++14
|
||||
|
||||
// This test segfaults GCC 5
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
// <optional>
|
||||
|
||||
// optional<T>& operator=(const optional<T>& rhs);
|
||||
|
|
|
@ -7,6 +7,10 @@
|
|||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// UNSUPPORTED: c++03, c++11, c++14
|
||||
|
||||
// This test segfaults GCC 5
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
// <optional>
|
||||
|
||||
// optional<T>& operator=(optional<T>&& rhs);
|
||||
|
|
|
@ -9,6 +9,9 @@
|
|||
|
||||
// UNSUPPORTED: c++03, c++11, c++14
|
||||
|
||||
// GCC 5 pretends it supports C++17, but it doesn't properly support it
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
// <variant>
|
||||
|
||||
// template <class ...Types> class variant;
|
||||
|
|
|
@ -8,6 +8,10 @@
|
|||
|
||||
// <variant>
|
||||
|
||||
// GCC 5 pretends it supports C++17, but it doesn't properly support it, and
|
||||
// <variant> fails.
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
#include <variant>
|
||||
|
||||
#include "test_macros.h"
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
// UNSUPPORTED: c++03, c++11, c++14
|
||||
|
||||
// Test failure not investigated on GCC 5.
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
// <algorithm>
|
||||
|
||||
// template <class PopulationIterator, class SampleIterator, class Distance,
|
||||
|
|
|
@ -11,6 +11,10 @@
|
|||
// trait before that.
|
||||
// UNSUPPORTED: c++03, c++11, c++14
|
||||
|
||||
// libc++ doesn't implement std::is_aggregate on GCC 5 and GCC 6.
|
||||
// UNSUPPORTED: libc++ && gcc-5
|
||||
// UNSUPPORTED: libc++ && gcc-6
|
||||
|
||||
#include <array>
|
||||
#include <type_traits>
|
||||
|
||||
|
|
|
@ -10,6 +10,9 @@
|
|||
|
||||
// reference at (size_type); // constexpr in C++17
|
||||
|
||||
// GCC 5 doesn't implement the required constexpr support
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
#include <array>
|
||||
#include <cassert>
|
||||
|
||||
|
|
|
@ -10,6 +10,9 @@
|
|||
|
||||
// const_reference at (size_type) const; // constexpr in C++14
|
||||
|
||||
// GCC 5 doesn't implement the required constexpr support
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
#include <array>
|
||||
#include <cassert>
|
||||
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
// <array>
|
||||
|
||||
// GCC 5 doesn't implement the required constexpr support
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
// An array is a contiguous container
|
||||
|
||||
#include <array>
|
||||
|
|
|
@ -50,7 +50,7 @@ int main(int, char**)
|
|||
{
|
||||
constexpr const char *p = "123456789";
|
||||
constexpr auto iter = std::make_move_iterator<const char *>(p);
|
||||
static_assert(iter.base() == p);
|
||||
static_assert(iter.base() == p, "");
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
@ -17,6 +17,9 @@
|
|||
//
|
||||
// constexpr in C++17
|
||||
|
||||
// GCC 5 doesn't implement the required constexpr support
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
#include <iterator>
|
||||
#include <cassert>
|
||||
|
||||
|
|
|
@ -17,6 +17,9 @@
|
|||
//
|
||||
// constexpr in C++17
|
||||
|
||||
// GCC 5 doesn't implement the required constexpr support
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
#include <iterator>
|
||||
#include <cassert>
|
||||
|
||||
|
|
|
@ -17,6 +17,9 @@
|
|||
//
|
||||
// constexpr in C++17
|
||||
|
||||
// GCC 5 doesn't implement the required constexpr support
|
||||
// UNSUPPORTED: gcc-5
|
||||
|
||||
#include <iterator>
|
||||
#include <cassert>
|
||||
|
||||
|
|
Loading…
Reference in New Issue