Simplify the base characteristics for some type traits
commit1c7a3c473555d3fad1a51374a19d2098a102cc89
authorredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 19 Jul 2018 19:12:37 +0000 (19 19:12 +0000)
committerredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 19 Jul 2018 19:12:37 +0000 (19 19:12 +0000)
tree0b17f34a924dc77b599a84866d689b54bc86fc97
parentb2cef49d85851321a4c60946ec8cf998fe9b1342
Simplify the base characteristics for some type traits

* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@262889 138bc75d-0d04-0410-961f-82ee72b054a4
libstdc++-v3/ChangeLog
libstdc++-v3/include/std/type_traits
libstdc++-v3/testsuite/20_util/is_trivially_assignable/value.cc