Skip to content

Commit e781e03

Browse files
committed
[libc++] Remove workaround for broken __is_trivially_copyable on old GCC
All supported versions of GCC now do the right thing. Differential Revision: https://reviews.llvm.org/D108997
1 parent c28473f commit e781e03

File tree

2 files changed

+0
-10
lines changed

2 files changed

+0
-10
lines changed

libcxx/include/type_traits

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3708,13 +3708,7 @@ _LIBCPP_INLINE_VAR _LIBCPP_CONSTEXPR bool is_standard_layout_v
37083708
// is_trivially_copyable;
37093709

37103710
template <class _Tp> struct _LIBCPP_TEMPLATE_VIS is_trivially_copyable
3711-
#if __has_feature(is_trivially_copyable)
37123711
: public integral_constant<bool, __is_trivially_copyable(_Tp)>
3713-
#elif _GNUC_VER >= 501
3714-
: public integral_constant<bool, !is_volatile<_Tp>::value && __is_trivially_copyable(_Tp)>
3715-
#else
3716-
: integral_constant<bool, is_scalar<typename remove_all_extents<_Tp>::type>::value>
3717-
#endif
37183712
{};
37193713

37203714
#if _LIBCPP_STD_VER > 14 && !defined(_LIBCPP_HAS_NO_VARIABLE_TEMPLATES)

libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_trivially_copyable.pass.cpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,6 @@
1010

1111
// is_trivially_copyable
1212

13-
// GCC has not implemented Core 2094 which makes volatile
14-
// qualified types trivially copyable.
15-
// XFAIL: gcc
16-
1713
#include <type_traits>
1814
#include <cassert>
1915
#include "test_macros.h"

0 commit comments

Comments
 (0)