Simplify the base characteristics for some type traits
authorJonathan Wakely <jwakely@redhat.com>
Thu, 19 Jul 2018 19:12:37 +0000 (20:12 +0100)
committerJonathan Wakely <redi@gcc.gnu.org>
Thu, 19 Jul 2018 19:12:37 +0000 (20:12 +0100)
commitc01f9216b73597b7dc03d9387ac7e21a5089f801
tree0b17f34a924dc77b599a84866d689b54bc86fc97
parent20a0c4e3dc9948b3d182943c8c47d4608c0bec9d
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.

From-SVN: r262889
libstdc++-v3/ChangeLog
libstdc++-v3/include/std/type_traits
libstdc++-v3/testsuite/20_util/is_trivially_assignable/value.cc