You need to CC libstd...@gcc.gnu.org for any patches touching libstdc++. On Sat, 2023-03-18 at 21:21 -0700, Ken Matsui via Gcc-patches wrote: > libstdc++-v3/ChangeLog: > > * include/std/type_traits (is_reference): Use __is_reference built-in > trait.
Bad ChangeLog format. You should have a tab (not 4 or 8 spaces, nor nothing) to indent the ChangeLog content. Is there any benefit to use a builtin, instead of the existing implementation? I can see no but maybe I'm stupid. > --- > diff --git a/libstdc++-v3/include/std/type_traits > b/libstdc++-v3/include/std/type_traits The patch fails to apply. It seems because your mail client inserted an additional newline before "b/". Try to use git-send-email or configure the mail client properly. > index 2bd607a8b8f..18408d8ceb6 100644 > --- a/libstdc++-v3/include/std/type_traits > +++ b/libstdc++-v3/include/std/type_traits > @@ -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 integral_constant<bool, __is_reference(_Tp)> If a patch depends on another patch not applied yet, sent them in a series. Or people are puzzled because when this patch is applied alone, the code fails to build. > + { }; > +#else > template<typename _Tp> > struct is_reference > : public false_type > @@ -653,6 +659,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION > struct is_reference<_Tp&&> > : public true_type > { }; > +#endif > > /// is_arithmetic > template<typename _Tp> -- Xi Ruoyao <xry...@xry111.site> School of Aerospace Science and Technology, Xidian University