From c84363b8c5c8b545ea922fd2aa12f14f17990815 Mon Sep 17 00:00:00 2001 From: Patrick Palka <ppalka@redhat.com> Date: Wed, 10 Jan 2024 19:00:49 -0500 Subject: [PATCH] libstdc++: Use _GLIBCXX_USE_BUILTIN_TRAIT for _Nth_type Since _Nth_type has a fallback native implementation, use _GLIBCXX_USE_BUILTIN_TRAIT when checking for __type_pack_element so that we can easily toggle which implementation to use. libstdc++-v3/ChangeLog: * include/bits/utility.h (_Nth_type): Use _GLIBCXX_USE_BUILTIN_TRAIT instead of __has_builtin. --- libstdc++-v3/include/bits/utility.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libstdc++-v3/include/bits/utility.h b/libstdc++-v3/include/bits/utility.h index 45d7241da9fb..d8a5fb960feb 100644 --- a/libstdc++-v3/include/bits/utility.h +++ b/libstdc++-v3/include/bits/utility.h @@ -225,7 +225,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION #endif // C++17 -#if __has_builtin(__type_pack_element) +#if _GLIBCXX_USE_BUILTIN_TRAIT(__type_pack_element) template<size_t _Np, typename... _Types> struct _Nth_type { using type = __type_pack_element<_Np, _Types...>; }; -- GitLab