[libstdc++ patch] Fix basic_string::_S_construct null pointer check
Paolo Carlini
pcarlini@unitus.it
Mon Jul 14 18:53:00 GMT 2003
Doug Gregor wrote:
> basic_string::_S_construct attempts to do a null-pointer check by
> comparing the "__beg" iterator to a default-constructed iterator of
> the same type. This both triggers an error in debug mode ("attempt to
> compare against a singular iterator") and could cause incorrect
> behavior in release mode in the following unlikely circumstance:
>
> 1) [begin, end) is an empty iterator range, and
> 2) end is equal to a default-constructed iterator, and
> 3) the user passes in an allocator that is not equivalent to a
> default-constructed allocator
Nathan, you already investigated the issue: do you consider this the
most correct fix?
Thanks,
Paolo.
More information about the Libstdc++
mailing list