This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
This removes some seemingly redundant conditions from a few traits. If __is_trivially_assignable correctly checks the assignable condition as well as triviality, then we don't need is_assignable explicitly. Does anybody see a problem with that I added some extra tests for cases that had been problematic with __is_trivially_constructible. We can definitely do that change for is_trivially_constructible, because Ville fixed the intrinsic recently (PR 86398) It also simplifies some others to replace integral_constant<bool, foo<T>::value> with the equivalent foo<T>::type, or to replace integral_constant<bool, !foo<T>::value> with the equivalent __not_<foo<T>>::type. I also started a wholesale replacement of integral_constant<bool, X> with __bool_constant<X> but backed that out again. It's a fair bit of churn for not much benefit (the two cases I did change allow better line wrapping which makes me a happy boy). * include/std/type_traits (__is_member_object_pointer_helper): Use __not_<is_function<_Tp>>::type instead of integral_constant. (__is_member_function_pointer_helper): Likewise for is_function<_Tp>::type. (is_compund): Likewise for __not_<is_fundamental<_Tp>>::type. (__do_is_nt_destructible_impl): Use __bool_constant and reindent. (is_trivially_constructible): Remove redundant use of is_constructible. (__is_trivially_copy_assignable_impl): Remove redundant use of is_copy_assignable. (__is_trivially_move_assignable_impl): Remove redundant use of is_move_assignable. (is_trivially_destructible): Use __bool_constant. * testsuite/20_util/is_trivially_assignable/value.cc: Add some more tests for scalar types. Tested powerpc64le-linux.
Attachment:
patch.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |