[meta] Remove non-existing gcc4 trait implementation

This commit is contained in:
Behdad Esfahbod 2022-05-19 15:27:52 -06:00
parent 679b900e9b
commit c19f116952
2 changed files with 1 additions and 3 deletions

View File

@ -192,14 +192,12 @@ template <> struct hb_int_max<unsigned long long> : hb_integral_constant<unsigne
#define hb_is_trivially_copyable(T) __has_trivial_copy(T) #define hb_is_trivially_copyable(T) __has_trivial_copy(T)
#define hb_is_trivially_copy_assignable(T) __has_trivial_assign(T) #define hb_is_trivially_copy_assignable(T) __has_trivial_assign(T)
#define hb_is_trivially_constructible(T) __has_trivial_constructor(T) #define hb_is_trivially_constructible(T) __has_trivial_constructor(T)
#define hb_is_copy_constructible(T) __has_copy_constructor(T)
#define hb_is_trivially_copy_constructible(T) __has_trivial_copy_constructor(T) #define hb_is_trivially_copy_constructible(T) __has_trivial_copy_constructor(T)
#define hb_is_trivially_destructible(T) __has_trivial_destructor(T) #define hb_is_trivially_destructible(T) __has_trivial_destructor(T)
#else #else
#define hb_is_trivially_copyable(T) std::is_trivially_copyable<T>::value #define hb_is_trivially_copyable(T) std::is_trivially_copyable<T>::value
#define hb_is_trivially_copy_assignable(T) std::is_trivially_copy_assignable<T>::value #define hb_is_trivially_copy_assignable(T) std::is_trivially_copy_assignable<T>::value
#define hb_is_trivially_constructible(T) std::is_trivially_constructible<T>::value #define hb_is_trivially_constructible(T) std::is_trivially_constructible<T>::value
#define hb_is_copy_constructible(T) std::is_copy_constructible<T>::value
#define hb_is_trivially_copy_constructible(T) std::is_trivially_copy_constructible<T>::value #define hb_is_trivially_copy_constructible(T) std::is_trivially_copy_constructible<T>::value
#define hb_is_trivially_destructible(T) std::is_trivially_destructible<T>::value #define hb_is_trivially_destructible(T) std::is_trivially_destructible<T>::value
#endif #endif

View File

@ -264,7 +264,7 @@ struct hb_vector_t : std::conditional<sorted, hb_vector_t<Type, false>, hb_empty
} }
template <typename T = Type, template <typename T = Type,
hb_enable_if (!hb_is_trivially_copyable (T) && hb_enable_if (!hb_is_trivially_copyable (T) &&
hb_is_copy_constructible (T))> std::is_copy_constructible<T>::value)>
void void
copy_vector (const hb_vector_t &other) copy_vector (const hb_vector_t &other)
{ {