Commit b0e63d94 by Jonathan Wakely Committed by Jonathan Wakely

PR libstdc++/83830 Define std::has_unique_object_representations_v

	PR libstdc++/83830
	* include/std/type_traits (has_unique_object_representations_v): Add
	variable template.
	* testsuite/20_util/has_unique_object_representations/value.cc: Check
	variable template.

From-SVN: r256701
parent e8f3b70d
2018-01-15 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/83830
* include/std/type_traits (has_unique_object_representations_v): Add
variable template.
* testsuite/20_util/has_unique_object_representations/value.cc: Check
variable template.
2018-01-15 Ville Voutilainen <ville.voutilainen@gmail.com> 2018-01-15 Ville Voutilainen <ville.voutilainen@gmail.com>
Make optional conditionally Make optional conditionally
......
...@@ -2903,6 +2903,10 @@ template <typename _From, typename _To> ...@@ -2903,6 +2903,10 @@ template <typename _From, typename _To>
remove_cv_t<remove_all_extents_t<_Tp>> remove_cv_t<remove_all_extents_t<_Tp>>
)> )>
{ }; { };
template<typename _Tp>
inline constexpr bool has_unique_object_representations_v
= has_unique_object_representations<_Tp>::value;
#endif #endif
#undef _GLIBCXX_HAVE_BUILTIN_HAS_UNIQ_OBJ_REP #undef _GLIBCXX_HAVE_BUILTIN_HAS_UNIQ_OBJ_REP
......
...@@ -108,3 +108,17 @@ void test01() ...@@ -108,3 +108,17 @@ void test01()
static_assert(test_category<has_unique_object_representations, static_assert(test_category<has_unique_object_representations,
Aligned[][1]>(false), ""); Aligned[][1]>(false), "");
} }
void
test02()
{
using std::has_unique_object_representations;
using std::has_unique_object_representations_v;
static_assert(has_unique_object_representations_v<int>
== has_unique_object_representations<int>::value);
static_assert(has_unique_object_representations_v<void>
== has_unique_object_representations<void>::value);
static_assert(has_unique_object_representations_v<float>
== has_unique_object_representations<float>::value);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment