locale_facets.tcc (__pad): correctly output hex numbers internally aligned.

2001-11-28  Paolo Carlini  <pcarlini@unitus.it>

	libstdc++/3655
	* include/bits/locale_facets.tcc (__pad): correctly output hex
	numbers internally aligned.
	* testsuite/27_io/ostream_inserter_arith.cc: Add testcase.

From-SVN: r47433
This commit is contained in:
Paolo Carlini 2001-11-29 01:27:54 +01:00 committed by Benjamin Kosnik
parent 35a53991ae
commit 5a4c85886a
3 changed files with 24 additions and 3 deletions

View File

@ -1,3 +1,10 @@
2001-11-28 Paolo Carlini <pcarlini@unitus.it>
libstdc++/3655
* include/bits/locale_facets.tcc (__pad): correctly output hex
numbers internally aligned.
* testsuite/27_io/ostream_inserter_arith.cc: Add testcase.
2001-11-28 Paolo Carlini <pcarlini@unitus.it> 2001-11-28 Paolo Carlini <pcarlini@unitus.it>
Loren J. Rittle <ljrittle@acm.org> Loren J. Rittle <ljrittle@acm.org>

View File

@ -1959,9 +1959,9 @@ namespace std
__news[1] = __olds[1]; __news[1] = __olds[1];
__mod += 2; __mod += 2;
__news += 2; __news += 2;
__beg = const_cast<char_type*>(__olds + __mod); __beg = __pads;
__beglen = __oldlen - __mod; __beglen = __plen;
__end = __pads; __end = const_cast<char_type*>(__olds + __mod);
} }
else if (__testsign) else if (__testsign)
{ {

View File

@ -308,11 +308,25 @@ test03()
return 0; return 0;
} }
// libstdc++/3655
int
test04()
{
stringbuf strbuf;
ostream o(&strbuf);
o << hex << showbase << setw(6) << internal << 255;
VERIFY( strbuf.str() == "0x ff" );
return 0;
}
int int
main() main()
{ {
test01(); test01();
test02(); test02();
test04();
#ifdef TEST_NUMPUT_VERBOSE #ifdef TEST_NUMPUT_VERBOSE
cout << "Test passed!" << endl; cout << "Test passed!" << endl;
#endif #endif