Skip to content
Snippets Groups Projects
Unverified Commit ac5d63a4 authored by Arsen Arsenović's avatar Arsen Arsenović Committed by Arsen Arsenović
Browse files

libstdc++: fix _V badname in <generator>

libstdc++-v3/ChangeLog:

	* include/std/generator: Fix _V badname.
parent 5be2313b
No related branches found
No related tags found
No related merge requests found
...@@ -76,14 +76,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -76,14 +76,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @headerfile generator * @headerfile generator
* @since C++23 * @since C++23
*/ */
template<typename _Ref, typename _V = void, typename _Alloc = void> template<typename _Ref, typename _Val = void, typename _Alloc = void>
class generator; class generator;
/// @cond undocumented /// @cond undocumented
namespace __gen namespace __gen
{ {
/// _Reference type for a generator whose reference (first argument) and /// _Reference type for a generator whose reference (first argument) and
/// value (second argument) types are _Ref and _V. /// value (second argument) types are _Ref and _Val.
template<typename _Ref, typename _Val> template<typename _Ref, typename _Val>
using _Reference_t = __conditional_t<is_void_v<_Val>, using _Reference_t = __conditional_t<is_void_v<_Val>,
_Ref&&, _Ref>; _Ref&&, _Ref>;
...@@ -642,14 +642,16 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -642,14 +642,16 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
} // namespace __gen } // namespace __gen
/// @endcond /// @endcond
template<typename _Ref, typename _V, typename _Alloc> template<typename _Ref, typename _Val, typename _Alloc>
class generator class generator
: public ranges::view_interface<generator<_Ref, _V, _Alloc>> : public ranges::view_interface<generator<_Ref, _Val, _Alloc>>
{ {
using _Value = __conditional_t<is_void_v<_V>, remove_cvref_t<_Ref>, _V>; using _Value = __conditional_t<is_void_v<_Val>,
remove_cvref_t<_Ref>,
_Val>;
static_assert(__gen::_Cv_unqualified_object<_Value>, static_assert(__gen::_Cv_unqualified_object<_Value>,
"Generator value must be a cv-unqualified object type"); "Generator value must be a cv-unqualified object type");
using _Reference = __gen::_Reference_t<_Ref, _V>; using _Reference = __gen::_Reference_t<_Ref, _Val>;
static_assert(is_reference_v<_Reference> static_assert(is_reference_v<_Reference>
|| (__gen::_Cv_unqualified_object<_Reference> || (__gen::_Cv_unqualified_object<_Reference>
&& copy_constructible<_Reference>), && copy_constructible<_Reference>),
...@@ -737,8 +739,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -737,8 +739,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
bool _M_began = false; bool _M_began = false;
}; };
template<class _Ref, class _V, class _Alloc> template<class _Ref, class _Val, class _Alloc>
struct generator<_Ref, _V, _Alloc>::_Iterator struct generator<_Ref, _Val, _Alloc>::_Iterator
{ {
using value_type = _Value; using value_type = _Value;
using difference_type = ptrdiff_t; using difference_type = ptrdiff_t;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment