// UNSUPPORTED: c++98, c++03
// GCC 7 is the first version to introduce [[nodiscard]]
-// UNSUPPORTED: gcc-4.9, gcc-5, gcc-6
+// UNSUPPORTED: gcc-5, gcc-6
// MODULES_DEFINES: _LIBCPP_ENABLE_NODISCARD
#define _LIBCPP_ENABLE_NODISCARD
// UNSUPPORTED: c++98, c++03
// GCC 7 is the first version to introduce [[nodiscard]]
-// UNSUPPORTED: gcc-4.9, gcc-5, gcc-6
+// UNSUPPORTED: gcc-5, gcc-6
// Test that _LIBCPP_DISABLE_NODISCARD_EXT only disables _LIBCPP_NODISCARD_EXT
// and not _LIBCPP_NODISCARD_AFTER_CXX17.
// UNSUPPORTED: c++98, c++03
// GCC 7 is the first version to introduce [[nodiscard]]
-// UNSUPPORTED: gcc-4.9, gcc-5, gcc-6
+// UNSUPPORTED: gcc-5, gcc-6
// MODULES_DEFINES: _LIBCPP_ENABLE_NODISCARD
// UNSUPPORTED: c++98, c++03
// GCC versions prior to 7.0 don't provide the required [[nodiscard]] attribute.
-// UNSUPPORTED: gcc-4, gcc-5, gcc-6
+// UNSUPPORTED: gcc-5, gcc-6
// AppleClang9 doesn't yet support C++17's implicitly synthesized deduction
// guides from existing ctors, needed by default_searcher() below.
// UNSUPPORTED: c++98, c++03
// Before GCC 6, this trait fails. See https://stackoverflow.com/q/41799015/627587.
-// UNSUPPORTED: gcc-4, gcc-5
+// UNSUPPORTED: gcc-5
// <type_traits>
//
//===----------------------------------------------------------------------===//
-// The test fails due to the missing is_trivially_constructible intrinsic.
-// XFAIL: gcc-4.9
-
// The test suite needs to define the ABI macros on the command line when
// modules are enabled.
// UNSUPPORTED: -fmodules
//
//===----------------------------------------------------------------------===//
-// The test fails due to the missing is_trivially_constructible intrinsic.
-// XFAIL: gcc-4.9
-
// <utility>
// template <class T1, class T2> struct pair
// UNSUPPORTED: c++98, c++03, c++11, c++14
-// See GCC PR63723.
-// UNSUPPORTED: gcc-4.9
-
// <experimental/simd>
//
// [simd.class]
// UNSUPPORTED: c++98, c++03, c++11, c++14
-// See GCC PR63723.
-// UNSUPPORTED: gcc-4.9
-
// <experimental/simd>
//
// [simd.class]
// <iterator>
-// Test fails due to use of is_trivially_* trait.
-// XFAIL: gcc-4.9
-
// template <class T, class charT = char, class traits = char_traits<charT>,
// class Distance = ptrdiff_t>
// class istream_iterator
// <iterator>
-// Test fails due to use of is_trivially_* trait.
-// XFAIL: gcc-4.9
-
// template<class charT, class traits = char_traits<charT> >
// class istreambuf_iterator
// : public iterator<input_iterator_tag, charT,
// (except clang-3.6 which temporarily enabled sized-deallocation)
// UNSUPPORTED: clang, apple-clang
-// NOTE: GCC 4.9.1 does not support sized-deallocation in C++14. However
-// GCC 5.1 does.
-// XFAIL: gcc-4.7, gcc-4.8, gcc-4.9
-
#include <new>
#include <cstddef>
#include <cstdlib>
// (except clang-3.6 which temporarily enabled sized-deallocation)
// UNSUPPORTED: clang, apple-clang
-// NOTE: GCC 4.9.1 does not support sized-deallocation in C++14. However
-// GCC 5.1 does.
-// XFAIL: gcc-4.7, gcc-4.8, gcc-4.9
-
#include <new>
#include <cstddef>
#include <cstdlib>
// Before GCC 6, aggregate initialization kicks in.
// See https://stackoverflow.com/q/41799015/627587.
-// UNSUPPORTED: gcc-4, gcc-5
+// UNSUPPORTED: gcc-5
// struct nothrow_t {
// explicit nothrow_t() = default;
// Before GCC 6, aggregate initialization kicks in.
// See https://stackoverflow.com/q/41799015/627587.
-// UNSUPPORTED: gcc-4, gcc-5
+// UNSUPPORTED: gcc-5
// <mutex>
// Test that reference wrapper meets the requirements of CopyConstructible and
// CopyAssignable, and TriviallyCopyable (starting in C++14).
-// Test fails due to use of is_trivially_* trait.
-// XFAIL: gcc-4.9 && c++14
-
#include <functional>
#include <type_traits>
#include <string>
// Before GCC 6, aggregate initialization kicks in.
// See https://stackoverflow.com/q/41799015/627587.
-// UNSUPPORTED: gcc-4, gcc-5
+// UNSUPPORTED: gcc-5
// <memory>
//===----------------------------------------------------------------------===//
// UNSUPPORTED: c++98, c++03, c++11, c++14
-// XFAIL: gcc-4, gcc-5, gcc-6
+// XFAIL: gcc-5, gcc-6
// <memory>
//===----------------------------------------------------------------------===//
// UNSUPPORTED: c++98, c++03, c++11, c++14
-// UNSUPPORTED: clang-3, clang-4, clang-5, apple-clang, gcc-4, gcc-5, gcc-6
+// UNSUPPORTED: clang-3, clang-4, clang-5, apple-clang, gcc-5, gcc-6
// type_traits
// is_trivially_assignable
-// XFAIL: gcc-4.9
-
#include <type_traits>
#include "test_macros.h"
// is_trivially_copy_assignable
-// XFAIL: gcc-4.9
-
#include <type_traits>
#include "test_macros.h"
// is_trivially_copy_constructible
-// XFAIL: gcc-4.9
-
#include <type_traits>
#include "test_macros.h"
// is_trivially_move_assignable
-// XFAIL: gcc-4.9
-
#include <type_traits>
#include "test_macros.h"
// is_trivially_move_constructible
-// XFAIL: gcc-4.9
-
#include <type_traits>
#include "test_macros.h"
// Before GCC 6, aggregate initialization kicks in.
// See https://stackoverflow.com/q/41799015/627587.
-// UNSUPPORTED: gcc-4, gcc-5
+// UNSUPPORTED: gcc-5
// <tuple>
// struct tuple_size<tuple<Types...>>
// : public integral_constant<size_t, sizeof...(Types)> { };
-// XFAIL: gcc-4.9
// UNSUPPORTED: c++98, c++03
#include <tuple>
// class tuple_size<tuple<Types...>>
// : public integral_constant<size_t, sizeof...(Types)> { };
-// XFAIL: gcc-4.9
// UNSUPPORTED: c++98, c++03
#include <tuple>
// Before GCC 6, aggregate initialization kicks in.
// See https://stackoverflow.com/q/41799015/627587.
-// UNSUPPORTED: gcc-4, gcc-5
+// UNSUPPORTED: gcc-5
// <utility>
// Before GCC 6, aggregate initialization kicks in.
// See https://stackoverflow.com/q/41799015/627587.
-// UNSUPPORTED: gcc-4, gcc-5
+// UNSUPPORTED: gcc-5
// <utility>
// explicit(see-below) constexpr pair();
-// This test doesn't pass due to a constexpr bug in GCC 4.9 that fails
-// to initialize any type without a user provided constructor in a constant
-// expression (e.g. float).
-// XFAIL: gcc-4.9
-
// NOTE: The SFINAE on the default constructor is tested in
// default-sfinae.pass.cpp
// pair(pair const&) = default;
// pair(pair&&) = default;
-// Doesn't pass due to use of is_trivially_* trait.
-// XFAIL: gcc-4.9
-
#include <utility>
#include <cassert>
// UNSUPPORTED: c++98, c++03
-// This workaround option is specific to MSVC's C1XX, so we don't care that
-// it isn't set for older GCC versions.
-// XFAIL: gcc-4.9
-
// Verify TEST_WORKAROUND_C1XX_BROKEN_IS_TRIVIALLY_COPYABLE.
#include <type_traits>