This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH 6/9]: C++ P0482R5 char8_t: A small correction to a common testsuite header file
- From: Tom Honermann <tom at honermann dot net>
- To: gcc-patches <gcc-patches at gcc dot gnu dot org>
- Cc: tom at honermann dot net
- Date: Mon, 5 Nov 2018 14:40:11 -0500
- Subject: [PATCH 6/9]: C++ P0482R5 char8_t: A small correction to a common testsuite header file
This patch corrects ambiguous partial specializations of
typelist::detail::append_. Previously, neither append_<chain<Hd, Tl>,
Typelist_Chain> nor append_<Typelist_Chain, null_type> was a better
match for append_<chain<Hd, Tl>, null_type>.
libstdc++-v3/ChangeLog:
2018-11-04 Tom Honermann <tom@honermann.net>
* include/ext/typelist.h: Constrained a partial specialization of
typelist::detail::append_ to only match chain<T1,T2>.
Tom.
diff --git a/libstdc++-v3/include/ext/typelist.h b/libstdc++-v3/include/ext/typelist.h
index b21f01ffb43..2cdbc3efafa 100644
--- a/libstdc++-v3/include/ext/typelist.h
+++ b/libstdc++-v3/include/ext/typelist.h
@@ -215,10 +215,10 @@ namespace detail
typedef Typelist_Chain type;
};
- template<typename Typelist_Chain>
- struct append_<Typelist_Chain, null_type>
+ template<typename Hd, typename Tl>
+ struct append_<chain<Hd, Tl>, null_type>
{
- typedef Typelist_Chain type;
+ typedef chain<Hd, Tl> type;
};
template<>