From d9b2d86c74a2153b07fb9d63baf220d385043a9d Mon Sep 17 00:00:00 2001 From: Ville Voutilainen Date: Thu, 1 Dec 2016 09:14:19 +0200 Subject: [PATCH] The convertible_to traits need to use a variadic catch-all for the false-cases. The convertible_to traits need to use a variadic catch-all for the false-cases. * include/std/istream (__is_convertible_to_basic_istream): Change the parameter of the false-case of __check to a variadic. * include/std/ostream (__is_convertible_to_basic_ostream): Likewise. From-SVN: r243098 --- libstdc++-v3/ChangeLog | 9 +++++++++ libstdc++-v3/include/std/istream | 2 +- libstdc++-v3/include/std/ostream | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index b5f94c09c63..cc0b3ae0c6a 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,12 @@ +2016-12-01 Ville Voutilainen + + The convertible_to traits need to use a variadic catch-all for the + false-cases. + * include/std/istream (__is_convertible_to_basic_istream): + Change the parameter of the false-case of __check to a variadic. + * include/std/ostream (__is_convertible_to_basic_ostream): + Likewise. + 2016-12-01 Bernd Edlinger * crossconfig.m4 (*-linux*): Add link-check for memalign. diff --git a/libstdc++-v3/include/std/istream b/libstdc++-v3/include/std/istream index 319e2264e79..1d77d302025 100644 --- a/libstdc++-v3/include/std/istream +++ b/libstdc++-v3/include/std/istream @@ -915,7 +915,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION template static basic_istream<_Ch, _Up>& __check(basic_istream<_Ch, _Up>*); - static void __check(void*); + static void __check(...); public: using istream_type = decltype(__check(declval::type*>())); diff --git a/libstdc++-v3/include/std/ostream b/libstdc++-v3/include/std/ostream index 70fd10ba954..9dea778bf8f 100644 --- a/libstdc++-v3/include/std/ostream +++ b/libstdc++-v3/include/std/ostream @@ -619,7 +619,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION template static basic_ostream<_Ch, _Up>& __check(basic_ostream<_Ch, _Up>*); - static void __check(void*); + static void __check(...); public: using ostream_type = decltype(__check(declval::type*>())); -- 2.30.2