Uploaded image for project: 'C++ Standard Library'
[MSVC] std::num_put bad formatting of 0.0 with precision and showpoint
Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
4.1.2, 4.1.3, 4.1.4, 4.2.0
-
None
-
Windows/MSVC
-
Incorrect Behavior
Description
When compiled with MSVC (any version), the program below aborts at runtime.
$ cat t.cpp && cl -D_RWCONFIG=11s_msvc_7_1 -Ic:/contrib/cygwin/build/sebor/dev-hal/include -I./../../../../include -Ic:/contrib/cygwin/build/sebor/dev-hal/examples/stdlib/manual/../include -Ic:/contrib/cygwin/build/sebor/dev-hal/include/ansi -I./../../../..
-Ic:/contrib/cygwin/build/sebor/dev-hal -Ic:/contrib/cygwin/build/sebor/dev-hal/examples/stdlib/manual -I. -nologo -GX -MLd -W3 -Zi -GA -GR -GF -GZ -c t.cpp && link -nologo /NODEFAULTLIB:libcpd /debug /LIBPATH:./../../../../lib /OUT:t.exe t.obj std11s_msvc_7_1.lib user32.lib t.cpp && ./t.exe
#include <cassert>
#include <sstream>
int main ()
{
std::ostringstream strm;
strm.setf (strm.showpoint);
strm.precision (2);
strm << 0.0;
assert ("0.0" == strm.str ());
}
Assertion failed: "0.0" == strm.str (), file t.cpp, line 13
Attachments
Attachments
- 22.locale.num.put.stdcxx-2.cpp
- 2 kB
- Farid Zaripov
Issue Links
- depends upon
-
Bug - A problem which impairs or prevents the functions of the product. STDCXX-496 [MSVC 7.1] printf("%#.2g", 0.0) incorrect output
- Major - Major loss of function.
- Open
- is duplicated by
-
Bug - A problem which impairs or prevents the functions of the product. STDCXX-497 [MSVC 7.1] std::num_put bad formatting of 0.0 with precision and showpoint
- Major - Major loss of function.
- Closed
- is related to
-
Improvement - An improvement or enhancement to an existing feature or task. STDCXX-51 infinity, NaN formatted differently on different platforms
- Minor - Minor loss of function, or other problem where easy workaround is present.
- Reopened