From: Paolo Carlini Date: Wed, 23 Jun 2004 16:03:52 +0000 (+0000) Subject: re PR libstdc++/16154 (input iterator concept too restrictive) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=dcbbf6f31bcbb4a3f03793eb6415c6b8202b9f93;p=gcc.git re PR libstdc++/16154 (input iterator concept too restrictive) 2004-06-23 Paolo Carlini PR libstdc++/16154 * include/bits/boost_concept_check.h (struct _TrivialIteratorConcept): Don't require the _DefaultConstructibleConcept. (struct _ForwardIteratorConcept): Require it here. From-SVN: r83554 --- diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 4ab2ddd0fe5..18c1ead570c 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,10 @@ +2004-06-23 Paolo Carlini + + PR libstdc++/16154 + * include/bits/boost_concept_check.h (struct _TrivialIteratorConcept): + Don't require the _DefaultConstructibleConcept. + (struct _ForwardIteratorConcept): Require it here. + 2004-06-22 Alexandre Oliva * include/bits/istream.tcc (getline): Make sure arguments passed diff --git a/libstdc++-v3/include/bits/boost_concept_check.h b/libstdc++-v3/include/bits/boost_concept_check.h index cf084fb3ccf..7c99838dcb7 100644 --- a/libstdc++-v3/include/bits/boost_concept_check.h +++ b/libstdc++-v3/include/bits/boost_concept_check.h @@ -418,7 +418,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; }; struct _TrivialIteratorConcept { void __constraints() { - __function_requires< _DefaultConstructibleConcept<_Tp> >(); +// __function_requires< _DefaultConstructibleConcept<_Tp> >(); __function_requires< _AssignableConcept<_Tp> >(); __function_requires< _EqualityComparableConcept<_Tp> >(); // typedef typename std::iterator_traits<_Tp>::value_type _V; @@ -475,6 +475,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; }; { void __constraints() { __function_requires< _InputIteratorConcept<_Tp> >(); + __function_requires< _DefaultConstructibleConcept<_Tp> >(); __function_requires< _ConvertibleConcept< typename std::iterator_traits<_Tp>::iterator_category, std::forward_iterator_tag> >();