[v3 PATCH] PR libstdc++/80675, PR libstdc++/80940
Jonathan Wakely
jwakely@redhat.com
Thu Jun 15 11:01:00 GMT 2017
On 10/06/17 04:38 +0300, Ville Voutilainen wrote:
>- static void __check(...);
>+ template<typename _Tp>
>+ struct __is_convertible_to_basic_istream
>+ : __is_convertible_to_basic_istream_impl<_Tp>
>+ {
> public:
>- using istream_type =
>- decltype(__check(declval<typename remove_reference<_Tp>::type*>()));
>- using type = __not_<is_same<istream_type, void>>;
>+ using type = __not_<is_same<void,
>+ typename __is_convertible_to_basic_istream_impl<_Tp>::__istream_type>>;
This could use is_void<...> instead of is_same<void, ...>, same below.
Otherwise OK for trunk, thanks for dealing with this.
80940 is a regression, so we need this on gcc-7-branch too, assuming
it passes testing there.
More information about the Libstdc++
mailing list