You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@stdcxx.apache.org by "Farid Zaripov (JIRA)" <ji...@apache.org> on 2008/03/17 15:29:24 UTC

[jira] Updated: (STDCXX-170) std::string::replace (iterator, iterator, InputIterator, InputIterator) inserting self incorrect

     [ https://issues.apache.org/jira/browse/STDCXX-170?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Farid Zaripov updated STDCXX-170:
---------------------------------

       Patch Info:   (was: [Patch Available])
    Fix Version/s:     (was: 4.2.1)
                   4.3

The current patch causing problems. The issue should be fixed using type traits templates and adding overloads for existing methods. This is not binary compatible changes and issue is deferred to 4.3 release.

The patch partially reverted from trunk thus: http://svn.apache.org/viewvc?rev=637897&view=rev
The patch partially reverted and regression test deleted from branches/4.2.x thus: http://svn.apache.org/viewvc?rev=637898&view=rev


> std::string::replace (iterator, iterator, InputIterator, InputIterator) inserting self incorrect
> ------------------------------------------------------------------------------------------------
>
>                 Key: STDCXX-170
>                 URL: https://issues.apache.org/jira/browse/STDCXX-170
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: 21. Strings
>    Affects Versions: 4.1.3, 4.1.4, 4.2.0
>         Environment: all
>            Reporter: Anton Pevtsov
>            Assignee: Farid Zaripov
>            Priority: Minor
>             Fix For: 4.3
>
>         Attachments: 21.string.replace.stdcxx-170.cpp, string.cc.diff
>
>   Original Estimate: 8h
>          Time Spent: 10h
>  Remaining Estimate: 0h
>
> This test fails:
> #include <iostream>
> #include <string>
> static const char* test = "babc";
> int main (void)
> {
>     std::string s ("abc");
>     s.replace (s.begin (), s.begin (), s.begin () + 1, s.begin () + 2);
>     std::cout << "Expected " << test << " and got " << s << '\n';
>     return 0;
> }
> The output is "Expected babc and got aabc".
> See details here:
> http://mail-archives.apache.org/mod_mbox/incubator-stdcxx-dev/200604.mbox/%3c44337C76.4020909@roguewave.com%3e

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.