[
https://issues.apache.org/jira/browse/STDCXX-233?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Martin Sebor closed STDCXX-233.
-------------------------------
Resolution: Fixed
The test case passes with the latest trunk. The test mentioned in the issue has
moved to a test named 27_setbuf.cpp (not in svn yet) and that one passes as
well, so the problem must have been fixed a long time ago. Closing.
> std::strstreambuf::seekpos() fails to properly position get sequence
> --------------------------------------------------------------------
>
> Key: STDCXX-233
> URL: https://issues.apache.org/jira/browse/STDCXX-233
> Project: C++ Standard Library
> Issue Type: Bug
> Components: 27. Input/Output
> Affects Versions: 4.2
> Reporter: Martin Sebor
> Assignee: Martin Sebor
>
> Moved from the Rogue Wave bug tracking database:
> ****Created By: sebor @ Jul 01, 2000 08:28:15 PM****
> This program fails with exit status of 1. It exits successfully (with 0) when
> std::strstreambuf is replaced with std::stringbuf. I don't see anything in
> D.7.1 that would require this behavior. Looks like a bug...
> The (enhanced) regress/test_bug10430.cpp exercises this bug and fails as a
> result.
> #include <strstream>
> int main ()
> {
> std::strstreambuf sb;
> sb.sputn ("a", 1);
> sb.pubseekpos (0);
> char buf[2] = { 'X', 'Y' };
> return !( 1 == sb.sgetn (buf, sizeof buf)
> && 'a' == buf [0] && 'Y' == buf [1]);
> }
> ****Modified By: sebor @ Nov 28, 2000 10:09:20 PM****
> $ cat test_bug10430.out
> ## -------------------------------
> ## TestTag = RWQETest test_bug10430
> ## CompilerId = g++-2.95.2
> ## MachineId = SunOS killer 5.7 Generic_106541-12 sun4u sparc SUNW,Ultra-4
> ## Remark =
> ## RunTag = test_bug10430 regression test
> ## FunctionTag = Issue #10430 -- streambufs delete passed in buffers.
> ## StepTag = stringbuf
> ## StepTag = filebuf
> ## StepTag = wstringstream
> ## StepTag = wfilebuf
> ## StepTag = strstreambuf
> ## - AssertionTag = strstreambuf::sgetn ("", 11) == 11 (got 11)
> ## - FileName =
> /build2/sebor/dev/stdlib/tests/regress/test_bug10430.cpp
> ## - LineNumber = 102
> ## - AssertionTag = strstreambuf::sgetn ("", 11); expected "0123456789"
> ## - FileName =
> /build2/sebor/dev/stdlib/tests/regress/test_bug10430.cpp
> ## - LineNumber = 107
> ## - AssertionTag = strstreambuf::setbuf (0, 0) must have no effect
> ## - FileName =
> /build2/sebor/dev/stdlib/tests/regress/test_bug10430.cpp
> ## - LineNumber = 113
> ## - AssertionTag = strstreambuf::sgetn ("", 11) == 11 (got 0)
> ## - FileName =
> /build2/sebor/dev/stdlib/tests/regress/test_bug10430.cpp
> ## - LineNumber = 121
> ## - AssertionTag = strstreambuf::sgetn ("", 11); expected "0123456789"
> ## - FileName =
> /build2/sebor/dev/stdlib/tests/regress/test_bug10430.cpp
> ## - LineNumber = 126
> ## - AssertionTag = strstreambuf<>::setbuf (63720, 1) must fail
> ## - FileName =
> /build2/sebor/dev/stdlib/tests/regress/test_bug10430.cpp
> ## - LineNumber = 133
> ## - AssertionTag = strstreambuf<>::setbuf (63720, 1) must succeed
> ## - FileName =
> /build2/sebor/dev/stdlib/tests/regress/test_bug10430.cpp
> ## - LineNumber = 142
> ## - AssertionTag = strstreambuf<>::setbuf (63720, 12) must succeed
> ## - FileName =
> /build2/sebor/dev/stdlib/tests/regress/test_bug10430.cpp
> ## - LineNumber = 151
> ## - AssertionTag = strstreambuf<>::setbuf (63720, 22) must succeed
> ## - FileName =
> /build2/sebor/dev/stdlib/tests/regress/test_bug10430.cpp
> ## - LineNumber = 160
> ## Assertions = 75
> ## FailedAssertions = 9
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.