Skip to content

Commit

Permalink
libstdc++: use new built-in trait __is_reference for std::is_reference
Browse files Browse the repository at this point in the history
This patch gets std::is_reference to dispatch to new built-in trait
__is_reference.

libstdc++-v3/ChangeLog:

	* include/std/type_traits (is_reference): Use __is_reference built-in
	trait.

Signed-off-by: Ken Matsui <kmatsui@cs.washington.edu>
  • Loading branch information
ken-matsui authored and ouuleilei-bot committed Mar 26, 2023
1 parent 551fc23 commit a2c718a
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions libstdc++-v3/include/std/type_traits
Original file line number Diff line number Diff line change
Expand Up @@ -639,6 +639,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// Composite type categories.

/// is_reference
#if __has_builtin(__is_reference)
template<typename _Tp>
struct is_reference
: public __bool_constant<__is_reference(_Tp)>
{ };
#else
template<typename _Tp>
struct is_reference
: public false_type
Expand All @@ -653,6 +659,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
struct is_reference<_Tp&&>
: public true_type
{ };
#endif

/// is_arithmetic
template<typename _Tp>
Expand Down

0 comments on commit a2c718a

Please sign in to comment.