This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
[PATCH, RFC] Fix libstdc++/6513
- From: Paolo Carlini <pcarlini at unitus dot it>
- To: libstdc++ at gcc dot gnu dot org
- Cc: bkoz <bkoz at redhat dot com>, Mark Mitchell<mitchell at mail dot codesourcery dot com>
- Date: Wed, 01 May 2002 03:34:42 +0200
- Subject: [PATCH, RFC] Fix libstdc++/6513
Hi again,
luckily, comparing the code before Stephen's and after Stephen's commit,
6513 turns out to be due to a very trivial typo: before the commit
__value_type is computed for __result which is _Forward_Iter, after the
commit it is iterator_traits<_InputIter>::value_type which is typdef-ed
to _ValueType.
However, I'd like that we all carefully check and re-check the one-liner
below.
For sure there are no regressions in the testsuite and 6513 now runs ok.
In case we all agree the fix is ok it should definitely go in 3.1.0 too,
IMHO.
Ciao (your sleepy)
Paolo.
////////////////////
--- stl_uninitialized.h.~1.12.~ 2002-01-04 22:27:32.000000000 +0100
+++ stl_uninitialized.h 2002-05-01 03:15:44.000000000 +0200
@@ -107,7 +107,7 @@
inline _ForwardIter
uninitialized_copy(_InputIter __first, _InputIter __last,
_ForwardIter __result)
{
- typedef typename iterator_traits<_InputIter>::value_type _ValueType;
+ typedef typename iterator_traits<_ForwardIter>::value_type
_ValueType;
typedef typename __type_traits<_ValueType>::is_POD_type _Is_POD;
return __uninitialized_copy_aux(__first, __last, __result,
_Is_POD());
}