PR libstdc++/86398 fix std::is_trivially_constructible regression
authorJonathan Wakely <jwakely@redhat.com>
Wed, 4 Jul 2018 09:03:18 +0000 (10:03 +0100)
committerJonathan Wakely <redi@gcc.gnu.org>
Wed, 4 Jul 2018 09:03:18 +0000 (10:03 +0100)
commite9029d55f24c824698de277abc1961e4673512db
tree8ed81f56279a8f78b37a8d052c88e432d1a44e8c
parent90fc44ecfa4741a055ec3d35722e2624c2231f98
PR libstdc++/86398 fix std::is_trivially_constructible regression

The intrinsic doesn't check for allowed conversions between scalar
types, so restore the std::is_constructible check.

Also make some trivial whitespace changes.

PR libstdc++/86398
* include/std/type_traits (is_trivially_constructible): Check
is_constructible before __is_trivially_constructible.
* testsuite/20_util/is_trivially_constructible/value.cc: Add more
tests, including negative cases.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Use
zero for dg-error lineno.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.

From-SVN: r262379
libstdc++-v3/ChangeLog
libstdc++-v3/include/std/type_traits
libstdc++-v3/testsuite/20_util/is_trivially_constructible/value.cc
libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs_neg.cc
libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc