You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stdcxx.apache.org by "Martin Sebor (JIRA)" <ji...@apache.org> on 2006/07/11 23:43:31 UTC
[jira] Resolved: (STDCXX-206) std::operator<<(ostream, string)
doesn't call width(0) on ios_base::failure
[ http://issues.apache.org/jira/browse/STDCXX-206?page=all ]
Martin Sebor resolved STDCXX-206:
---------------------------------
Fix Version: 4.2
Resolution: Fixed
Fixed by the referenced patch and tested in http://svn.apache.org/repos/asf/incubator/stdcxx/trunk/tests/strings/21.string.io.cpp.
> std::operator<<(ostream, string) doesn't call width(0) on ios_base::failure
> ---------------------------------------------------------------------------
>
> Key: STDCXX-206
> URL: http://issues.apache.org/jira/browse/STDCXX-206
> Project: C++ Standard Library
> Type: Bug
> Components: 21. Strings
> Versions: 4.1.3
> Environment: all
> Reporter: Anton Pevtsov
> Assignee: Martin Sebor
> Priority: Minor
> Fix For: 4.2
>
> The following test fails:
> #include <iostream>
> #include <strstream>
> #include <string>
> #include <cassert>
> int main(int argc, char* argv[])
> {
> std::string str ("abcdefghijk");
> char buf[10];
> std::ostrstream os (buf, sizeof(buf));
> const std::streamsize width = 2;
> os.width (width);
> os.exceptions (std::ios_base::failbit | std::ios_base::badbit);
> try {
> os << str;
> }
> catch (std::ios_base::failure&) {
> }
> assert (0 == os.width ());
> return 0;
> }
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira