ChangeLog revision 132720
12004-07-20 Danny Smith <dannysmith@users.sourceforge.net> 2 3 * include/c_std/std_cwchar.h (wcsstr): Correct signature. 4 52004-07-19 Benjamin Kosnik <bkoz@redhat.com> 6 7 PR libstdc++/15488 8 * testsuite/lib/libstdc++.exp (v3-copy-files): Revert. 9 102004-07-17 Richard Sandiford <rsandifo@redhat.com> 11 12 PR bootstrap/16469 13 * scripts/create_testsuite_files: Pass -print to find. 14 152004-07-15 Paolo Carlini <pcarlini@suse.de> 16 17 * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 30. 18 * docs/html/ext/howto.html: Tweak entries for DRs 167/253/389/402. 19 202004-07-15 Jakub Jelinek <jakub@redhat.com> 21 22 PR libstdc++/14697 23 * acinclude.m4 (glibcxx_shared_libgcc): Correct 24 glibcxx_shared_libgcc test for multilibs. 25 * configure: Rebuilt. 26 272004-07-14 Paolo Carlini <pcarlini@suse.de> 28 29 * include/bits/locale_facets.tcc (time_get<>::do_get_time, 30 time_get<>::do_get_date): Use only once _M_extract_via_format, 31 instead of going through "%X"/"%x" and calling it two times 32 (+ using widen). 33 342004-07-14 Paolo Carlini <pcarlini@suse.de> 35 36 PR libstdc++/16401 37 * include/bits/sstream.tcc (overflow): When reallocating _M_string 38 use an exponential grow policy. 39 * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: New. 40 * testsuite/performance/27_io/stringbuf_overflow.cc: New. 41 422004-07-12 Benjamin Kosnik <bkoz@redhat.com> 43 44 * include/bits/concurrence.h: Tweak comments. 45 462004-07-12 Benjamin Kosnik <bkoz@redhat.com> 47 Per Bothner <per@bothner.com> 48 Mohan Embar <gnustuff@thisiscool.com> 49 50 PR libstdc++/16248 51 * include/bits/concurrence.h (__glibcxx_mutex_type): New. 52 (__glibcxx_mutex): Encapsulate mutex init function into type for 53 threaded configurations without __GTHREAD_MUTEX_INIT. 54 (lock::lock): Make device member a reference. 55 (lock::~lock): Same. 56 * include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change 57 to mutex_type. 58 * src/allocator.cc: Same. 59 602004-07-12 Brad Spencer <spencer@infointeractive.com> 61 62 * include/ext/mt_allocator.h: Handle allocations at static 63 initialization that happen before _S_options is (automatically) 64 constructed; set _S_init even if _M_force_new is true. 65 662004-07-12 Paul Brook <paul@codesourcery.com> 67 68 * include/bits/concurrence.h: Still create mutex object when 69 single-threaded. 70 712004-07-12 Benjamin Kosnik <bkoz@redhat.com> 72 73 * include/bits/concurrence.h (__gnu_cxx::lock): New. 74 * include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove. 75 (__pool_base::_M_get_mutex): New. 76 * include/bits/allocator.h: Tweak. 77 * src/allocator.cc (__pool_base::_M_get_free_list): Correct offset. 78 79 * src/allocator.cc: Move all instantiations... 80 * src/allocator-inst.cc: ...here. 81 822004-07-12 Benjamin Kosnik <bkoz@redhat.com> 83 84 * include/ext/pool_allocator.h: Qualify __throw_bad_alloc. 85 (__pool_base): Remove unused template parameter. Add 86 protected. Move lock data into __pool_base::_Lock. Remove static 87 on member functions. 88 (__pool_base::_M_get_free_list): New. 89 (__pool_alloc): Move _S_force new here. 90 * src/allocator.cc: Move out of line __pool_base definitions here. 91 * config/linker-map.gnu: Export bits from __pool_base. 92 932004-07-07 Benjamin Kosnik <bkoz@redhat.com> 94 95 * configure.ac (libtool_VERSION): To 6:2:0. 96 * configure: Regenerated. 97 98 * testsuite/testsuite_abi.cc (check_version): Add 3.4.2. 99 1002004-07-07 Aaron W. LaFramboise <aaronraolete36@aaronwl.com> 101 102 PR libstdc++/16411 103 * config/linker-map.gnu: Add stdio_sync_filebuf::file exports. 104 1052004-07-06 Anssi Hannula <anssi.hannula@mbnet.fi> 106 107 PR libstdc++/15928 108 * crossconfig.m4: Add in bits for djgpp. 109 * configure: Regenerate. 110 1112004-07-06 Paolo Carlini <pcarlini@suse.de> 112 113 PR libstdc++/16210 114 * acinclude.m4 (GLIBCXX_ENABLE_LONG_LONG): Do not check for the 115 availability of strto(u)ll, not used anymore in the iostreams. 116 * aclocal.m4: Regenerate. 117 * configure: Regenerate. 118 1192004-07-06 Paolo Carlini <pcarlini@suse.de> 120 121 * include/bits/cpp_type_traits.h: Move the additions to 122 namespace __gnu_internal outside of namespace std; trivial 123 formatting fixes. 124 1252004-07-06 Paolo Carlini <pcarlini@suse.de> 126 127 * docs/html/17_intro/contribute.html: Update some links. 128 * docs/html/17_intro/porting-howto.html: Likewise. 129 * docs/html/17_intro/porting-howto.xml: Likewise. 130 * docs/html/18_support/howto.html: Likewise. 131 * docs/html/21_strings/howto.html: Likewise. 132 * docs/html/27_io/howto.html: Likewise. 133 * docs/html/configopts.html: Likewise. 134 * docs/html/ext/howto.html: Likewise. 135 * docs/html/faq/index.html: Likewise. 136 * docs/html/install.html: Don't mention 2.x compilers. 137 1382004-07-01 Release Manager 139 140 * GCC 3.4.1 released. 141 1422004-06-28 Benjamin Kosnik <bkoz@redhat.com> 143 144 * include/debug/safe_base.h (__gnu_debug::_Safe_sequence_base): 145 Revert -Weffc++ changes that defined copy ctory and or assignment 146 operator. 147 * libsupc++/tinfo.cc (__upcast_result): Same. 148 1492004-06-25 Benjamin Kosnik <bkoz@redhat.com> 150 151 PR libstdc++/16182 152 * linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Revert to 153 AC_DEFINE_UNQUOTED. 154 * configure: Regenerate. 155 1562004-06-25 Benjamin Kosnik <bkoz@redhat.com> 157 158 * include/debug/formatter.h (__gnu_debug::_Error_formatter): 159 Remove copy constructor and assignment operator. 160 1612004-06-23 Paolo Carlini <pcarlini@suse.de> 162 163 PR libstdc++/16154 164 * include/bits/boost_concept_check.h (struct _TrivialIteratorConcept): 165 Don't require the _DefaultConstructibleConcept. 166 (struct _ForwardIteratorConcept): Require it here. 167 1682004-06-21 Loren J. Rittle <ljrittle@acm.org> 169 170 * config/linker-map.gnu: Use wildcards for 171 __basic_file::sys_open(FILE*, _Ios_Openmode). 172 1732004-06-18 Paolo Carlini <pcarlini@suse.de> 174 175 * include/ext/mt_allocator (__mt_alloc<>::_Tune): Add _M_align, 176 the alignment requested. 177 (__mt_alloc<>::_Tune::_Tune): Tweak consistently. 178 (__mt_alloc<>::allocate): Use it instead of sizeof(_Block_record). 179 (__mt_alloc<>::deallocate): Likewise. 180 1812004-06-18 Paolo Carlini <pcarlini@suse.de> 182 183 PR libstdc++/16020 184 * include/debug/safe_base.h 185 (_Safe_sequence_base::_Safe_sequence_base(const _Safe_sequence_base&), 186 _Safe_sequence_base::operator=): Provide definitions. 187 * testsuite/23_containers/bitset/cons/16020.cc: New. 188 1892004-06-18 Paolo Carlini <pcarlini@suse.de> 190 191 * include/ext/rope (rope(_CharT, const allocator_type&)): Fix 192 to use _Data_allocate. 193 * include/ext/ropeimpl.h (rope<>::_S_leaf_concat_char_iter): Likewise. 194 (rope<>::_S_substring): Likewise. 195 (rope<>::rope(size_t, _CharT, const allocator_type&)): Likewise. 196 (rope<>::c_str()): Likewise. 197 (rope<>::replace_with_c_str()): Likewise. 198 199 * include/ext/ropeimpl.h (_Rope_iterator_base<>::_S_setbuf): 200 Correctly qualify _S_leaf, _S_function, etc., with _Rope_constants::, 201 not _RopeRep. 202 (_Rope_iterator_base<>::_S_setcache): Likewise. 203 (_Rope_iterator_base<>::_S_setcache_for_incr): Likewise. 204 (rope<>::_S_substring): Likewise. 205 (rope<>::_S_dump): Likewise. 206 (rope<>::_S_fetch_ptr): Likewise. 207 (rope<>::_S_compare): Likewise. 208 (rope<>::replace_with_c_str()): Likewise. 209 210 * testsuite/ext/rope.cc: Rename to testsuite/ext/rope/1.cc. 211 * testsuite/ext/rope/2.cc: New. 212 2132004-06-18 Paolo Carlini <pcarlini@suse.de> 214 Matt Austern <austern@apple.com> 215 216 * testsuite/ext/rope/3.cc: New. 217 2182004-06-17 Paolo Carlini <pcarlini@suse.de> 219 220 * include/bits/locale_facets.tcc (time_get<>::_M_extract_name): 221 Don't use the 'magic number' 10 in the computation of __minlen; 222 never access __name past __minlen; in the loop over __i3, don't 223 decrease __nmatches and increase __i3 at once, only either of 224 the two; tidy. 225 2262004-06-17 Paolo Carlini <pcarlini@suse.de> 227 228 * include/ext/pool_allocator.h: Convert to a global free-list, 229 as per the original SGI/HP design: move the implementation 230 details to struct __pool_base, from which __pool_alloc derives. 231 * src/allocator.cc: Instantiate __pool_base. 232 2332004-06-11 Paolo Carlini <pcarlini@suse.de> 234 235 PR libstdc++/15775 236 * include/bits/stl_deque.h: Consistently with stl_set.h, define 237 pointer as allocator's pointer, likewise for reference, 238 const_pointer, and const_reference. 239 * include/bits/stl_list.h: Likewise. 240 * include/bits/stl_map.h: Likewise. 241 * include/bits/stl_multimap.h: Likewise. 242 * include/bits/stl_vector.h: Likewise. 243 2442004-06-11 Dhruv Matani <dhruvbird@gmx.net> 245 Paolo Carlini <pcarlini@suse.de> 246 247 * testsuite/testsuite_performance.h 248 (resource_counter::allocated_memory): Make it return the right 249 number of bytes requested by the allocators/application. This is 250 the sbrk+mmaped memory. 251 2522004-06-10 Benjamin Kosnik <bkoz@redhat.com> 253 254 * crossconfig.m4: Remove signbit, signbitf, signbitl. 255 * linkage.m4: Comment LIBMATHOBJS, tweak others. AC_DEFINES for 256 builtin math functions instead of AC_DEFINE_UNQUOTED. 257 * configure: Regenerate. 258 2592004-06-10 Benjamin Kosnik <bkoz@redhat.com> 260 261 * docs/doxygen/filter.sed: Rename _GLIBCXX_STD to std. 262 * docs/doxygen/mainpage.html: Remove links. 263 2642004-06-08 Jason Merrill <jason@redhat.com> 265 266 * config/linker-map.gnu: Use wildcards for 267 __basic_file::{xsgetn,xsputn,seekoff,xsputn_2}. 268 2692004-05-31 Benjamin Kosnik <bkoz@redhat.com> 270 271 * config/linker-map.gnu (GLIBCXX_3.4.1): Add. 272 * testsuite/testsuite_abi.cc: Same. 273 * configure.ac (libtool_VERSION): Bump to 6:1:0. 274 * configure: Regenerate. 275 * aclocal.m4: Regenerate. 276 2772004-05-31 Richard B. Kreckel <Richard.Kreckel@Framatome-ANP.com> 278 Benjamin Kosnik <bkoz@redhat.com> 279 280 PR libstdc++/14600 281 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New. 282 * include/ext/stdio_filebuf.h (stdio_filebuf::file): New. 283 * config/io/basic_file_stdio.cc (__basic_file::file): New. 284 * config/io/basic_file_stdio.h: Define. 285 2862004-05-30 Benjamin Kosnik <bkoz@redhat.com> 287 288 PR libstdc++/15675 289 * docs/html/documentation.html: Update doxygen links for 3.4.0. 290 2912004-05-30 Jan Beulich <jbeulich@novell.com> 292 293 * scripts/create_testsuite_files: Tweak. 294 2952004-05-30 Paolo Carlini <pcarlini@suse.de> 296 297 * include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor 298 tweaks. 299 3002004-05-30 Dhruv Matani <dhruvbird@gmx.net> 301 302 * include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write 303 allocation loop which removes blocks from the global free list 304 from O(N) to O(1) when the required blocks are <= the number 305 available. 306 3072004-05-30 Paolo Carlini <pcarlini@suse.de> 308 309 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): 310 Consistently update __bin._M_free[0]. 311 (__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use 312 __bin._M_free[0] to simplify the while loop (i.e., the number 313 of iterations becomes known at the outset). 314 3152004-05-30 Paolo Carlini <pcarlini@suse.de> 316 317 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): 318 The critical section is actually very small, only two assignments. 319 3202004-05-30 Paolo Carlini <pcarlini@suse.de> 321 322 * include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out 323 some duplicated code. 324 (__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used 325 in the single threaded case. 326 3272004-05-30 Paolo Carlini <pcarlini@suse.de> 328 329 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): 330 Rearrange arithmetic to avoid computing two divisions at 331 each deallocation. 332 3332004-05-30 Paolo Carlini <pcarlini@suse.de> 334 335 * include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize): 336 Streamline the second half, wrapping it in a single 337 '#ifdef __GTHREADS if (__gthread_active_p())' and avoiding 338 conditionals inside loops. 339 3402004-05-30 Paolo Carlini <pcarlini@suse.de> 341 342 * include/ext/mt_allocator.h: Uglify consistently names of 343 variables, members and classes; tidy. 344 3452004-05-30 Dhruv Matani <dhruvbird@gmx.net> 346 347 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): 348 Deallocation loop rewrote. 349 3502004-05-30 Paolo Carlini <pcarlini@suse.de> 351 352 * include/ext/mt_allocator.h (__mt_alloc<>::allocate, 353 __mt_alloc<>::deallocate): Protect two instances of 354 block->thread_id with __GTHREADS. 355 3562004-05-30 Paolo Carlini <pcarlini@suse.de> 357 358 * include/ext/mt_allocator.h (__mt_alloc<>::tune): 359 Add _M_min_bin, the size in bytes of the smallest bin. 360 (__mt_alloc<>::tune()): Tweak accordingly. 361 (__mt_alloc<>::tune(size_t, ...)): Likewise. 362 (__mt_alloc<>::block_record): Change to a union: members next 363 and thread_id are never used at the same time. 364 (__mt_alloc<>::allocate): Update consistently. 365 (__mt_alloc<>::deallocate): Likewise. 366 (__mt_alloc<>::_S_initialize): Update setups of _S_binmap and 367 _S_bin_size for the configurable _M_min_size. 368 3692004-05-30 Paolo Carlini <pcarlini@suse.de> 370 371 * include/ext/mt_allocator.h (__mt_alloc<>::allocate, 372 __mt_alloc<>::deallocate): Avoid redundant conditionals. 373 3742004-05-27 Paolo Carlini <pcarlini@suse.de> 375 376 PR libstdc++/15565 377 * include/bits/locale_facets.tcc (__int_to_char(unsigned long), 378 __int_to_char(unsigned long long)): Showpos is not relevant 379 for unsigned types. 380 * testsuite/22_locale/num_put/put/char/15565.cc: New. 381 * testsuite/22_locale/num_put/put/wchar_t/15565.cc: New. 382 383 * testsuite/22_locale/num_put/put/wchar_t/1.cc: Use L for the fill 384 char. 385 * testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise. 386 * testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise. 387 * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise. 388 * testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise. 389 * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise. 390 * testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise. 391 3922004-05-25 Paolo Carlini <pcarlini@suse.de> 393 394 * include/bits/istream.tcc (ignore): Correctly deal with 395 n == numeric_limits<streamsize>::max(). 396 * testsuite/27_io/basic_istream/ignore/char/2.cc: New. 397 398 * include/bits/istream.tcc (basic_istream<>::getline): Prefer 399 '_M_gcount + 1 < __n' to '--__n; _M_gcount < __n', just in case 400 __n == numeric_limits<>::min(). 401 402 * include/bits/istream.tcc: Minor tweaks. 403 404 * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc: 405 Tighten. 406 * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc: 407 Likewise. 408 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc: 409 Likewise. 410 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc: 411 Likewise. 412 * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise. 413 4142004-05-25 Paolo Carlini <pcarlini@suse.de> 415 416 * include/bits/istream.tcc (ignore): Remove redundant line. 417 (readsome): Tidy, closely following 27.6.1.3, p30. 418 4192004-05-25 Paolo Carlini <pcarlini@suse.de> 420 421 * include/bits/istream.tcc (operator>>(basic_istream<>&, 422 basic_string<>&)): Use a temporary buffer, thus avoiding 423 reallocation for common case. 424 * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc: 425 New. 426 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc: 427 Likewise. 428 429 * include/bits/istream.tcc: Const-ification of a few variables. 430 431 * include/bits/ostream.tcc: Trivial formatting fixes and 432 const-ification of some variables. 433 4342004-05-25 Benjamin Kosnik <bkoz@redhat.com> 435 436 PR libstdc++/15489 437 * scripts/create_testsuite_files: Revert xtype change, add 438 non-GNU bits to do the same thing. 439 4402004-05-24 Benjamin Kosnik <bkoz@redhat.com> 441 442 PR libstdc++/12854 443 Fixups for -Weffc++. 444 * include/bits/basic_string.h (basic_string::operator=): Return 445 pointer to this instead of result of assign. Although redundant, 446 this doesn't impact resultant codegen. 447 448 * include/bits/locale_facets.h (__numpunct_cache): Declare 449 assignment opxserator and copy constructor private. 450 (__timepunct_cache): Same. 451 (__moneypunct_cache): Same. 452 (collate): Use member initialization list for _M_c_locale_collate. 453 * config/locale/gnu/messages_members.h: Same. 454 * config/locale/gnu/time_members.h (__timepunct): Same. 455 * src/codecvt.cc: Use member initialization list to initialize 456 _M_c_locale_codecvt. 457 * src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok. 458 * config/os/gnu-linux/ctype_noninline.h: Same. 459 * src/locale.cc (_Impl): Same. 460 * src/locale_init.cc: Same. 461 * src/localename.cc: Same. 462 463 * include/bits/basic_ios.h (basic_ios): Complete member 464 initialization list. 465 * include/bits/istream.tcc (basic_istream::sentry): Same. 466 * include/bits/ostream.tcc (basic_ostream::sentry): Same. 467 * include/bits/fstream.tcc (basic_filebuf): Add _M_lock and 468 _M_pback to member initialization list. 469 * include/std/std_streambuf.h: Same. 470 * include/std/std_sstream.h: Same, for _M_mode. 471 * src/ios.cc (ios_base): Same. 472 473 * include/ext/rope: Make derived classes match exception 474 475 specifications. Add copy constructors and assignment operators. 476 477 * include/debug/safe_base.h (_Safe_sequence_base): Declare copy 478 constructor and assignment operator protected. 479 (_Safe_iterator_base): Same. 480 * include/debug/formatter.h (_Error_formatter): Define copy 481 constructor and assignment operator. 482 483 * include/backward/strstream: Declare assignment operator and copy 484 constructor private. 485 4862004-05-24 Benjamin Kosnik <bkoz@redhat.com> 487 488 * testsuite/testsuite_hooks.h (func_callback): Declare copy 489 constructor and assignment operator private. 490 * testsuite/23_containers/deque/cons/clear_allocator.cc: Match 491 exception specifications of base class. 492 * testsuite/23_containers/list/cons/clear_allocator.cc: Same. 493 * testsuite/23_containers/vector/cons/clear_allocator.cc: Same. 494 * testsuite/23_containers/vector/bool/clear_allocator.cc: New. 495 4962004-05-24 Benjamin Kosnik <bkoz@redhat.com> 497 498 * libsupc++/cxxabi.h: Remove duplicated and useless public and 499 private keywords in class declarations. Format. Use 500 stddef.h. Expose declarations to "C" compilation. 501 * libsupc++/tinfo.cc (__upcast_result): Add copy constructor and 502 assignment operator. 503 (__dyncast_result): Same. 504 * libsupc++/vec.cc (uncatch_exception): Same, use member 505 initialization list. 506 5072004-05-22 Benjamin Kosnik <bkoz@redhat.com> 508 509 * testsuite/abi_check.cc: Add unistd.h. 510 5112004-05-21 Matthias Klose <doko@debian.org> 512 513 * docs/doxygen/run_doxygen: Bump required version. 514 5152004-05-21 Benjamin Kosnik <bkoz@redhat.com> 516 517 * docs/html/abi.html (libgcc_s): Additions suggested by Matthias Klose. 518 * docs/doxygen/Intro.3: Subtractions suggested by Phil Edwards. 519 5202004-05-21 Benjamin Kosnik <bkoz@redhat.com> 521 522 PR libstdc++/15123 523 PR libstdc++/13928 524 * docs/doxygen/Intro.3: Remove Allocators.3. 525 Add new extension headers, extension namespace list. 526 * docs/doxygen/run_doxygen (problematic): Remove Allocators.3 527 Rename GLIBCXXSTD names to std::. Rename __gnu_debug to 528 __gnu_debug::. Remove __policy_ renames. 529 * docs/doxygen/guide.html: Add dot note. 530 * docs/doxygen/stdheader.cc: Edit, add files. 531 * docs/doxygen/user.cfg.in: Regenerate with Doxygen 1.3.7. 532 5332004-05-19 Jan Beulich <jbeulich@novell.com> 534 535 PR libstdc++/15489 536 * scripts/create_testsuite_files: Also find source files through 537 symbolic links. 538 5392004-05-19 Jan Beulich <jbeulich@novell.com> 540 541 PR libstdc++/15488 542 * testsuite/lib/libstdc++.exp: Make test files writable. 543 5442004-05-18 Jonathan Wakely <redi@gcc.gnu.org> 545 546 * include/ext/stdio_filebuf.h: Update comments to reflect PR 11691. 547 5482004-05-18 Benjamin Kosnik <bkoz@redhat.com> 549 550 * testsuite/testsuite_hooks.h (__gnu_test::conversion): New class. 551 * testsuite/23_containers/deque/14340.cc: New. 552 * testsuite/23_containers/list/14340.cc: New. 553 * testsuite/23_containers/map/14340.cc: New. 554 * testsuite/23_containers/multimap/14340.cc: New. 555 * testsuite/23_containers/multiset/14340.cc: New. 556 * testsuite/23_containers/set/14340.cc: New. 557 * testsuite/23_containers/vector/14340.cc: New. 558 5592004-05-18 Douglas Gregor <gregod@cs.rpi.edu> 560 561 PR libstdc++/14340 562 * include/debug/safe_iterator.h (_Safe_iterator converting 563 constructor): Only allow declaration to instantiate when the 564 incoming _Safe_iterator has exactly the right iterator type. 565 5662004-05-18 Jonathan Wakely <redi@gcc.gnu.org> 567 568 * include/ext/enc_filebuf.h: Move concept-check macro to class scope. 569 5702004-05-17 Jonathan Wakely <redi@gcc.gnu.org> 571 572 * include/bits/boost_concept_check.h: Fix old attribute syntax. 573 * testsuite/23_containers/map/modifiers/swap.cc: Define operator< 574 to pass concept-checks. 575 * testsuite/23_containers/multimap/modifiers/swap.cc: Same. 576 * testsuite/23_containers/set/modifiers/swap.cc: Same. 577 * testsuite/23_containers/multiset/modifiers/swap.cc: Same. 578 5792004-05-15 Benjamin Kosnik <bkoz@redhat.com> 580 581 PR libstdc++/15046 582 * crossconfig.m4: Add C99 math bits for linux crosses. 583 * configure: Regenerate. 584 5852004-05-15 Simon Marshall <simon.marshall@misys.com> 586 Benjamin Kosnik <bkoz@redhat.com> 587 588 PR libstdc++/15090 589 * include/bits/locale_facets.h: Fix for -fno-for-scope. 590 * include/debug/safe_sequence.h: Same. 591 * include/debug/safe_iterator.tcc: Same. 592 * src/debug.cc: Same. 593 * src/locale.cc: Same. 594 * src/locale_init.cc: Same. 595 * src/localename.cc: Same. 596 * config/locale/gnu/ctype_members.cc: Same. 597 * config/locale/gnu/numeric_members.cc: Same. 598 * testsuite/testsuite_abi.cc: Same. 599 * testsuite/testsuite_hooks.cc: Same. 600 6012004-05-15 Jonathan Wakely <redi@gcc.gnu.org> 602 603 * docs/html/abi.html: Document effect of -fabi-version on value 604 of __GXX_ABI_VERSION, and that it's defined in c-cppbuiltin.c. 605 Fix markup. 606 6072004-05-15 Benjamin Kosnik <bkoz@redhat.com> 608 609 * docs/html/abi.html: New. 610 * docs/html/abi.txt: Remove. 611 * docs/html/documentation.html: Add link. 612 * testsuite/Makefile.am: Add files. 613 * testsuite/Makefile.in: Regenerated. 614 * testsuite/abi_check.cc: Move and modify code into... 615 * testsuite/testsuite_abi.cc: Add. 616 * testsuite/testsuite_abi.h: Add. 617 618 * docs/html/17_intro/TODO: Update. 619 * include/bits/stl_pair.h: Format. 620 6212004-05-14 Paolo Carlini <pcarlini@suse.de> 622 Ivan Godard <igodard@pacbell.net> 623 624 PR libstdc++/15361 625 * include/std/std_bitset.h (_Base_bitset<_Nw>::_M_do_find_next): Fix. 626 * testsuite/23_containers/bitset/ext/15361.cc: New. 627 6282004-05-14 Paolo Carlini <pcarlini@suse.de> 629 630 PR libstdc++/14775 631 * acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS. 632 * acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call 633 GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define 634 to _GLIBCXX_RES_LIMITS. 635 (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to 636 HAVE_LIMIT_*. 637 * testsuite/testsuite_hooks.h: Declare set_file_limit. 638 * testsuite/testsuite_hooks.cc: Define it, using getrlimit 639 and setrlimit(RLIMIT_FSIZE). 640 * testsuite/27_io/fpos/14775.cc: New. 641 * config.h.in: Regenerate. 642 * configure: Likewise. 643 6442004-05-13 Benjamin Kosnik <bkoz@redhat.com> 645 646 PR libstdc++/15074 647 * docs/html/faq/index.html: Update docs for libsupc++ usage. 648 6492004-05-13 Benjamin Kosnik <bkoz@redhat.com> 650 651 PR libstdc++/15412 652 * include/bits/stl_threads.h (_GLIBCXX_mutex): Move to namespace 653 __gnu_internal. 654 (_GLIBCXX_mutex_address): Same. 655 (_GLIBCXX_once): Same. 656 (_GLIBCXX_mutex_init): Same. 657 (_GLIBCXX_mutex_address_init): Same. 658 6592004-05-09 Paolo Carlini <pcarlini@suse.de> 660 661 * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc: 662 New. 663 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc: 664 Likewise. 665 * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise. 666 6672004-05-09 Paolo Carlini <pcarlini@suse.de> 668 669 PR libstdc++/15002 (continued again) 670 * include/bits/istream.tcc (getline(basic_istream<>&, 671 basic_string<>&, _CharT)): Use a temporary buffer, thus 672 avoiding reallocation for common case. 673 674 * include/bits/basic_string.tcc (_S_construct(_InIterator, 675 _InIterator, const _Alloc&, input_iterator_tag)): Tweak size 676 of temporary buffer to a power of two. 677 678 * testsuite/27_io/basic_istream/getline/char/4.cc: Add comment. 679 6802004-05-09 Paolo Carlini <pcarlini@suse.de> 681 Petur Runolfsson <peturr02@ru.is> 682 683 PR libstdc++/15002 (continued) 684 * include/bits/istream.tcc (basic_istream<>::getline(char_type*, 685 streamsize, char_type)): Use traits::find/copy in a loop to speed 686 up greatly the function in the common case (I/O buffer size >> 1). 687 6882004-05-09 Paolo Carlini <pcarlini@suse.de> 689 690 * testsuite/27_io/basic_istream/getline/char/4.cc: New. 691 692 * include/bits/istream.tcc (getline(basic_istream<>&, 693 basic_string<>&, _CharT)): Change to use sgetc()/snextc() instead 694 of sbumpc(), consistently with the other functions, thus also 695 dealing correctly with the case of exceeded string::max_size(). 696 6972004-05-06 Matthias Klose <doko@debian.org> 698 699 * include/backward/iterator.h: Add GPL copyright info, 700 with exception clause. 701 * include/bits/boost_concept_check.h: Likewise. 702 * include 703 * libsupc++/tinfo.h: Likewise. 704 * po/string_literals.cc: Likewise. 705 7062004-05-02 Paolo Carlini <pcarlini@suse.de> 707 708 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator. 709 * aclocal.m4: Regenerate. 710 * configure: Regenerate. 711 * config/allocator/pool_allocator_base.h: New. 712 * include/ext/pool_allocator.h: Convert to a standard-conforming 713 allocator. 714 * src/allocator.cc: Tweak instantiations. 715 * testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc. 716 * testsuite/performance/20_util/allocator/insert_insert.cc: Ditto. 717 * testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto. 718 * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto. 719 * testsuite/performance/20_util/allocator/map_thread.cc: Ditto. 720 * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto. 721 7222004-04-30 Paolo Carlini <pcarlini@suse.de> 723 724 PR libstdc++/14220 725 * include/bits/locale_facets.tcc (num_put<>::_M_insert_float): 726 Don't clip the precision passed down to __convert_from_v: 727 22.2.2.2.2 nowhere says so. 728 * testsuite/22_locale/num_put/put/char/14220.cc: New. 729 * testsuite/22_locale/num_put/put/wchar_t/14220.c: Likewise. 730 7312004-04-29 Benjamin Kosnik <bkoz@redhat.com> 732 733 * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc: 734 Clarify assertion, set test variable to false before assert. 735 * testsuite/27_io/basic_istringstream/str/char/1.cc: Same. 736 * testsuite/27_io/basic_stringstream/str/char/1.cc: Same. 737 * testsuite/27_io/ios_base/storage/2.cc: Same. 738 739 * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Fix 740 function returns. 741 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Same. 742 * testsuite/27_io/fpos/14320-3.cc: Same. 743 744 * testsuite/27_io/basic_filebuf/2.cc: Instantiate in namespace std. 745 * testsuite/27_io/fpos/1.cc: Same. 746 * testsuite/27_io/basic_stringstream/2.cc: Same. 747 * testsuite/27_io/basic_stringbuf/4.cc: Same. 748 * testsuite/27_io/basic_stringbuf/1.cc: Same. 749 * testsuite/27_io/basic_stringbuf/2.cc: Same. 750 * testsuite/27_io/basic_streambuf/2.cc: Same. 751 * testsuite/27_io/basic_ostringstream/2.cc: Same. 752 * testsuite/27_io/basic_ostream/2.cc: Same. 753 * testsuite/27_io/basic_ofstream/2.cc: Same. 754 * testsuite/27_io/basic_istringstream/2.cc: Same. 755 * testsuite/27_io/basic_istream/2.cc: Same. 756 * testsuite/27_io/basic_iostream/2.cc: Same. 757 * testsuite/27_io/basic_ios/2.cc: Same. 758 * testsuite/27_io/basic_ifstream/2.cc: Same. 759 * testsuite/27_io/basic_fstream/2.cc: Same. 760 * testsuite/ext/stdio_filebuf/char/1.cc: Same, in namespace __gnu_cxx. 761 762 * testsuite/21_strings/basic_string/capacity/1.cc: Don't compare 763 unsigned against zero. 764 * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Same. 765 * testsuite/21_strings/basic_string/capacity/char/1.cc: Same. 766 767 * testsuite/18_support/new_delete_placement.cc: Initialize 768 variables before first use. 769 * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Same. 770 * testsuite/21_strings/char_traits/requirements/char/1.cc: Same. 771 * testsuite/21_strings/char_traits/requirements/short/1.cc: Same. 772 * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc: 773 Same. 774 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_badbit_throw.cc: Same. 775 * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc: 776 Same. 777 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_failbit_throw.cc: Same. 778 * testsuite/27_io/types/2.cc: Same. 779 780 * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Fix temporary 781 file name. 782 7832004-04-29 Benjamin Kosnik <bkoz@redhat.com> 784 785 Fixups for EDG front end. 786 * include/ext/rope: Instead of non-existent function 787 _Data_allocate, use allocator's allocate. Use this. 788 (namespace _Rope_constants): Move _S_max_rope_depth, and _Tag 789 enumerations from _Rope_RopeRep here. 790 * include/ext/ropeimpl.h: Same. 791 * src/ext-inst.cc (_S_min_len): Fix up definition. 792 793 * config/locale/gnu/ctype_members.cc: Qualify base class members 794 with this. 795 * config/locale/generic/ctype_members.cc: Same. 796 * config/locale/gnu/messages_members.h: Same. 797 * config/locale/generic/messages_members.h: Same. 798 * src/ctype.cc: Same. 799 * include/bits/codecvt.h: Same. 800 801 * include/bits/boost_concept_check.h: Declare. 802 (__error_type_must_be_an_unsigned_integer_type): Remove this. 803 (__error_type_must_be_an_integer_type): Remove this. 804 (__error_type_must_be_a_signed_integer_type): Remove this. 805 806 * config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast. 807 808 * libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception 809 specification to definition. 810 (__cxa_allocate_exception): Same. 811 * libsupc++/eh_catch.cc (__cxa_begin_catch): Same. 812 * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same. 813 (__cxa_get_globals): Same. 814 815 * libsupc++/del_op.cc: Add comment about freestanding. 816 8172004-04-29 Dhruv Matani <dhruvbird@gmx.net> 818 819 * include/ext/malloc_allocator.h: Fixed the construct function to 820 call global placement new instead of assignment. Added a check 821 after the return from malloc to check whether returned pointer is 822 NULL, and if so, throw std::bad_alloc(). 823 * include/ext/debug_allocator.h: Added a check in the deallocate 824 function to check whether the user has passed a NULL pointer or 825 not. 826 8272004-04-29 Benjamin Kosnik <bkoz@redhat.com> 828 829 * docs/html/20_util/allocator.html: Add bitmap_allocator links. 830 8312004-04-29 Dhruv Matani <dhruvbird@gmx.net> 832 833 * include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this 834 function call __builtin_ctz instead of the while loop. 835 (allocate) -> If condition has __builtin_expect. 836 (deallocate) -> Ditto. 837 Renamed a few left-over variables and typedefs according to the 838 C++STYLE mentioned in the documentation. 839 Protected calls to __gthread* by __gthread_active_p(), whose value 840 is cached in the local variable __threads_active. 841 8422004-04-29 Felix Yen <fwy@alumni.brown.edu> 843 844 * testsuite/performance/20_util/allocator/producer_consumer.cc: 845 Use linear algorithm for producer. 846 8472004-04-29 Paolo Carlini <pcarlini@suse.de> 848 849 PR libstdc++/14975 850 * include/bits/fstream.tcc (basic_filebuf::imbue): Zero _M_codecvt 851 in case of error. 852 * testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: New. 853 * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: New. 854 8552004-04-26 Paolo Carlini <pcarlini@suse.de> 856 857 * include/bits/istream.tcc: Fix comment. 858 8592004-04-26 Paolo Carlini <pcarlini@suse.de> 860 861 * src/locale.cc (locale::operator==): When _M_impl == __rhs._M_impl 862 avoid constructing unnecessarily this->name(). 863 8642004-04-24 Loren J. Rittle <ljrittle@acm.org> 865 866 * testsuite/thread/pthread7-rope.cc: Update comment to reflect test. 867 8682004-04-24 Paolo Carlini <pcarlini@suse.de> 869 870 * testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending 871 on allocator behavior, the memory pointed by data2 may well be not 872 trashed. 873 8742004-04-24 Paolo Carlini <pcarlini@suse.de> 875 876 * config/locale/generic/time_members.cc 877 (__timepunct<char>::_M_initialize_timepunct, 878 __timepunct<wchar_t>::_M_initialize_timepunct): The correct 879 _M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively. 880 * config/locale/gnu/time_members.cc 881 (__timepunct<char>::_M_initialize_timepunct, 882 __timepunct<wchar_t>::_M_initialize_timepunct): Ditto. 883 * testsuite/22_locale/time_get/get_monthname/char/4.cc: New. 884 * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New. 885 8862004-04-24 Paolo Carlini <pcarlini@suse.de> 887 Petur Runolfsson <peturr02@ru.is> 888 889 * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New, 890 adapted from libstdc++/11378. 891 8922004-04-24 Paolo Carlini <pcarlini@suse.de> 893 Andrew Pinski <pinskia@physics.uc.edu> 894 895 * include/bits/basic_string.tcc (_M_mutate): Don't compute 896 __src unnecessarily. 897 8982004-04-24 Paolo Carlini <pcarlini@suse.de> 899 900 PR libstdc++/15002 (partial) 901 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe): 902 Special case __n2 == 1, not calling traits_type::assign/copy. 903 9042004-04-24 Matthias Klose <doko@debian.org> 905 906 Jonathan Wakely <cow@compsoc.man.ac.uk> 907 * docs/html/configopts.html: Fix reference to allocator config option. 908 9092004-04-23 Daniel Jacobowitz <drow@mvista.com> 910 911 PR libstdc++/15047, libstdc++/11610 912 * testsuite/lib/libstdc++.exp (v3-copy-files): Use remote_download. 913 (libstdc++_init): Don't pass outdir to v3-copy-files. 914 9152004-04-23 Paolo Carlini <pcarlini@suse.de> 916 917 * config/locale/gnu/monetary_members.cc 918 (moneypunct<wchar_t>::_M_initialize_moneypunct): Prefer 919 _NL_MONETARY_DECIMAL_POINT_WC, _NL_MONETARY_THOUSANDS_SEP_WC, 920 and __MON_GROUPING to _NL_NUMERIC_DECIMAL_POINT_WC, 921 _NL_NUMERIC_THOUSANDS_SEP_WC, and GROUPING. 922 * config/locale/gnu/numeric_members.cc 923 (numpunct<char>::_M_initialize_numpunct): Prefer DECIMAL_POINT 924 and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP. 925 9262004-04-21 Chavdar Botev <cbotev@yahoo.com> 927 928 PR libstdc++/14245 929 * include/bits/basic_string.tcc 930 (basic_string::basic_string(const basic_string&)): Pass to 931 _Rep::_M_grab the actual allocator of the string being constructed 932 not the default constructed one. 933 9342004-04-21 Paolo Carlini <pcarlini@suse.de> 935 Petur Runolfsson <peturr02@ru.is> 936 937 PR libstdc++/12077 938 * include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's 939 no way to find out the conversion used by the underlying FILE*. 940 * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New. 941 * testsuite/27_io/objects/char/9.cc: Tweak. 942 9432004-04-18 Release Manager 944 945 * GCC 3.4.0 released. 946 9472004-04-17 Benjamin Kosnik <bkoz@redhat.com> 948 949 * include/bits/stl_bvector.h: Use _M_impl._M_start. 950 9512004-04-16 Benjamin Kosnik <bkoz@redhat.com> 952 953 * include/bits/c++config (_GLIBCXX_STD): New. 954 * src/list.cc: Use it. 955 * include/std/std_bitset.h: Same. 956 * include/bits/vector.tcc: Same. 957 * include/bits/stl_set.h: Same. 958 * include/bits/stl_multiset.h: Same. 959 * include/bits/stl_multimap.h: Same. 960 * include/bits/stl_map.h: Same. 961 * include/bits/stl_list.h: Same. 962 * include/bits/stl_vector.h: Same. 963 * include/bits/stl_bvector.h: Same. 964 * include/bits/stl_deque.h: Same. 965 * include/bits/deque.tcc: Same. 966 * include/bits/list.tcc: Same. 967 * include/debug/vector: Same. 968 * include/debug/set.h: Same. 969 * include/debug/multiset.h: Same. 970 * include/debug/multimap.h: Same. 971 * include/debug/map.h: Same. 972 * include/debug/list: Same. 973 * include/debug/deque: Same. 974 * include/debug/bitset: Same. 975 * include/debug/formatter.h (__gnu_debug): Remove using directive. 976 Add using declaration for std::type_info. 977 * include/debug/safe_iterator.h: Add using declaration for 978 std::iterator_traits and std::pair. 979 * src/debug_list.cc: New. 980 * src/Makefile.am: Add debug_list.cc. 981 * src/Makefile.in: Regenerate. 982 * config/linker-map.gnu: Add _List_node_base exports for std and 983 __gnu_norm. 984 985 * include/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl 986 idiom that other containers use. 987 * testsuite/23_containers/vector/bool/clear_allocator.cc: New. 988 9892004-04-14 Zack Weinberg <zack@codesourcery.com> 990 991 * testsuite/Makefile.am: Add definition of AM_CXXFLAGS. 992 Change definition of CXX to use $(shell) instead of backticks. 993 * testsuite/Makefile.in: Regenerate. 994 9952004-04-09 Andreas Schwab <schwab@suse.de> 996 997 * testsuite/lib/prune.exp (prune_g++_output): Ignore errata 998 warning from IA64 assembler. 999 10002004-03-30 Benjamin Kosnik <bkoz@redhat.com> 1001 1002 PR libstdc++/14783 1003 * include/bits/stl_tree.h: Adjust initialization list order. 1004 10052004-03-26 Benjamin Kosnik <bkoz@redhat.com> 1006 1007 libstdc++ PR/13598 1008 * config/locale/ieee_1003.1-2001/codecvt_specializations.h 1009 (__enc_traits::_M_destroy): New. 1010 (__enc_traits::~__enc_traits): Use it. 1011 (__enc_traits::operator=): Use _M_destroy, _M_init. 1012 (__enc_traits::__enc_traits): Same. 1013 10142004-03-26 Petur Runolfsson <peturr02@ru.is> 1015 1016 * testsuite/ext/enc_filebuf/char/13598.cc: New. 1017 10182004-03-25 Gawain Bolton <gp.bolton@computer.org> 1019 1020 * include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator 1021 default argument in constructors. 1022 (_Rb_tree::_M_empty_initialize): Remove. 1023 10242004-03-25 Benjamin Kosnik <bkoz@redhat.com> 1025 1026 * testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers. 1027 * testsuite/23_containers/set/operators/1_neg.cc: Same. 1028 10292004-03-25 Dhruv Matani <dhruvbird@gmx.net> 1030 1031 * include/bits/cpp_type_traits.h: Changed __is_pod 1032 completely. Now, it does not use any of the previous type_traits 1033 to detect the pod types, and it also detects function pointers as 1034 POD types. 1035 1036 * include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl, 1037 which encapsulates the internal implementation of an rb_tree. Made 1038 the allocator a base class of this class instead of the rb_tree, 1039 which was not conforming. This _Rb_tree_impl class is also 1040 specialized on whether the _Compare parameter is a POD type or 1041 not. If so, then it maintains the comparison function as a data 1042 member, otherwise it makes the _Compare parameter a base class of 1043 itself. Also, _M_key_compare is now a function instead of a data 1044 member, so that the above trick can work properly. Delegated the 1045 initialization of the other data members to this newly created 1046 class. Also, now other member functions of rb_tree must refer to 1047 _M_key_compare as _M_impl._M_key_compare(). The other data members 1048 (*) can be referenced to as _M_impl.(*), where 1049 (*) includes _M_header, and _M_node_count. 1050 10512004-03-25 Dhruv Matani <dhruvbird@gmx.net> 1052 1053 * include/bits/stl_list.h: Created a _List_impl class and made it 1054 derive from the allocator, instead of the list deriving from the 1055 allocator class, which was not conformant. Changed all references 1056 from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same 1057 as above (changed all references to the concerned variables). 1058 10592004-03-25 Dhruv Matani <dhruvbird@gmx.net> 1060 1061 * include/bits/stl_deque.h: Created a _Deque_impl class and made 1062 it derive from the allocator, instead of the deque deriving from 1063 the allocator class, which was not conformant. Changed all 1064 references to the _M_start, _M_finish, _M_map, and _M_map_size to 1065 _M_impl.*. 1066 (_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this-> 1067 qualification in 2 places where it was missing. 1068 (_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as 1069 above. 1070 * include/bits/deque.tcc: Same as above (changed all references to 1071 the concerned variables). 1072 10732004-03-25 Dhruv Matani <dhruvbird@gmx.net> 1074 1075 * include/bits/stl_vector.h: Created a _Vector_impl class and made 1076 it derive from the allocator, instead of the _Vector_base class, 1077 deriving from the allocator which was not conformant. Changed all 1078 references to the _M_start, _M_finish, and _M_end_of_storage to 1079 _M_impl.*. 1080 * include/bits/vector.tcc: Same as above (changed all references 1081 to the concerned variables). 1082 10832004-03-25 Dhruv Matani <dhruvbird@gmx.net> 1084 1085 * testsuite/23_containers/deque/cons/clear_allocator.cc: New. 1086 * testsuite/23_containers/list/cons/clear_allocator.cc: New. 1087 * testsuite/23_containers/vector/cons/clear_allocator.cc: New. 1088 10892004-03-23 Benjamin Kosnik <bkoz@redhat.com> 1090 1091 * include/bits/locale_facets.h: Tweaks for 80 column. 1092 (__numpunct_cache::_M_cache): Move to locale_facets.tcc. 1093 (__moneypunct_cache::_M_cache): Same. 1094 (num_get): Don't inherit from __num_base. 1095 (num_put): Same. 1096 (money_get): Don't inherit from money_base. 1097 (money_put): Same. 1098 (__timepunct::_M_am_pm_format): New. 1099 (time_get::_M_extract_num): Return iterator, use ios_base as argument. 1100 (time_get::_M_extract_name): Same. 1101 (time_get::_M_extract_via_format): Same. 1102 * include/bits/locale_facets.tcc: Tweaks for 80 column. 1103 Use _M_getloc instead of getloc. 1104 * testsuite/22_locale/money_put/put/char/9780-3.cc: New. 1105 * testsuite/22_locale/num_put/put/char/9780-2.cc: New. 1106 * testsuite/22_locale/time_put/put/char/9780-1.cc: New. 1107 11082004-03-22 Hans-Peter Nilsson <hp@axis.com> 1109 1110 PR target/14676 1111 * config/cpu/cris/atomicity.h (__atomic_add): Remove "static 1112 inline" and attribute-unused. Qualify parameter __mem with 1113 "volatile". 1114 (__exchange_and_add): Ditto. Add back memory clobber to asm. 1115 11162004-03-19 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de> 1117 1118 PR libstdc++/14647 1119 * include/backward/bvector.h (bit_vector): Allocator is in std 1120 namespace. 1121 11222004-03-20 Paolo Carlini <pcarlini@suse.de> 1123 1124 * include/std/std_valarray.h: Document DR389 [Ready]. 1125 * docs/html/ext/howto.html: Add an entry for DR389. 1126 11272004-03-19 Paolo Carlini <pcarlini@suse.de> 1128 1129 PR libstdc++/14648 1130 * include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix 1131 memory allocation/deallocation calls. 1132 * testsuite/ext/14648.cc: New. 1133 11342004-03-17 Benjamin Kosnik <bkoz@redhat.com> 1135 1136 Revert. 1137 * configure.ac (AC_PREREQ): Use 2.57. 1138 (AM_INIT_AUTOMAKE): Remove -Wno-override. 1139 11402004-03-17 David Billinghurst <David.Billinghurst@riotinto.com> 1141 1142 PR bootstrap/14207 1143 Revert patch of 2004-02-17, as it breaks mips-sgi-irix6.5 -o32 1144 (Almost certainly a target issue) 1145 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, 1146 num_get<>::_M_extract_int, money_get<>::do_get): Simplify 1147 grouping fidelity conditional. 1148 11492004-03-17 Benjamin Kosnik <bkoz@redhat.com> 1150 1151 Revert dg-require-iconv changes. 1152 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Revert. 1153 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same. 1154 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Same. 1155 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Same. 1156 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Same. 1157 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same. 1158 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Same. 1159 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Same. 1160 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc: 1161 11622004-03-16 Benjamin Kosnik <bkoz@redhat.com> 1163 1164 * Merge from mainline. 1165 11662004-03-16 Benjamin Kosnik <bkoz@redhat.com> 1167 1168 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Default setting is 1169 new_allocator for all hosts. 1170 * configure: Regenerate. 1171 11722004-03-16 Paolo Carlini <pcarlini@suse.de> 1173 1174 * testsuite/22_locale/num_put/put/char/4.cc: Fix for 64-bit pointers. 1175 * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise. 1176 11772004-03-15 Paolo Carlini <pcarlini@suse.de> 1178 1179 * include/bits/locale_facets.tcc (money_get<>::_M_extract): 1180 Adjust the logic underlying the parsing of symbol to deal 1181 correctly with an optional sign component (i.e., when either 1182 negative_sign or positive_sign is empty) 1183 * testsuite/22_locale/money_get/get/char/19.cc: New. 1184 * testsuite/22_locale/money_get/get/wchar_t/19.cc: New. 1185 11862004-03-15 Paolo Carlini <pcarlini@suse.de> 1187 1188 * include/bits/locale_facets.tcc (money_get<>::_M_extract): 1189 Do not accept an incomplete currency symbol. 1190 * testsuite/22_locale/money_get/get/char/18.cc: New. 1191 * testsuite/22_locale/money_get/get/wchar_t/18.cc: New. 1192 11932004-03-13 Benjamin Kosnik <bkoz@redhat.com> 1194 1195 * config/allocator: New. 1196 * config/allocator/bitmap_allocator_base.h: New. 1197 * config/allocator/malloc_allocator_base.h: New. 1198 * config/allocator/mt_allocator_base.h: New. 1199 * config/allocator/new_allocator_base.h: New. 1200 * include/bits/allocator.h: Include c++allocator.h. 1201 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New. 1202 * aclocal.m4: Regenerate. 1203 * configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR. 1204 * configure: Regenerate. 1205 * include/Makefile.am (host_headers_extra): Add c++allocator.h. 1206 * include/Makefile.in: Regenerate. 1207 * docs/html/configopts.html: Add enable-libstdcxx-allocator. 1208 12092004-03-12 Benjamin Kosnik <bkoz@redhat.com> 1210 1211 * include/bits/allocator.h: Revert. 1212 12132004-03-12 Paolo Carlini <pcarlini@suse.de> 1214 1215 * docs/html/ext/howto.html: Add entry for DR 253 [Ready]. 1216 * include/bits/gslice_array.h: Add comment about DR 253. 1217 * include/bits/indirect_array.h: Likewise. 1218 * include/bits/mask_array.h: Likewise. 1219 * include/bits/slice_array.h: Likewise. 1220 12212004-03-12 Benjamin Kosnik <bkoz@redhat.com> 1222 1223 * testsuite/20_util/allocator/14176.cc: New. 1224 * include/ext/mt_allocator.h: Formatting fixes. 1225 12262004-03-11 Dhruv Matani <dhruvbird@HotPOP.com> 1227 1228 * include/Makefile.am (ext_headers): Add 1229 ${ext_srcdir}/bitmap_allocator.h . 1230 * include/Makefile.in: Regenerate. 1231 * docs/html/ext/ballocator_doc.txt: New file. 1232 * include/ext/bitmap_allocator.h: New file. 1233 * testsuite/performance/20_util/allocator/list_sort_search.cc: Add 1234 test. 1235 * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise. 1236 * testsuite/performance/20_util/allocator/producer_consumer.cc: Add 1237 test for the bitmap_allocator<>. 1238 * testsuite/performance/20_util/allocator/insert.cc: Likewise. 1239 * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise. 1240 * testsuite/performance/20_util/allocator/map_thread.cc: Likewise. 1241 12422004-03-11 Paolo Carlini <pcarlini@suse.de> 1243 1244 * include/std/std_complex.h (pow(const complex&, const _Tp&), 1245 pow(const _Tp&, const complex&), pow(const complex&, 1246 const complex&)): Fully qualify with std:: a few calls. 1247 * testsuite/26_numerics/complex/13450.cc: Minor tweak. 1248 12492004-03-11 Steven Bosscher <stevenb@suse.de> 1250 1251 PR libstdc++/11706 1252 * include/c_std/cmath.tcc (__cmath_power): Define inline. 1253 12542004-03-10 Kelley Cook <kcook@gcc.gnu.org> 1255 1256 * configure.ac: Bump AC_PREREQ to 2.59. 1257 12582004-03-10 Paolo Carlini <pcarlini@suse.de> 1259 1260 * testsuite/26_numerics/valarray_subset_assignment.cc: Fix typos. 1261 12622004-03-10 Paul Kienzle <pkienzle@nist.gov> 1263 Paolo Carlini <pcarlini@suse.de> 1264 1265 PR libstdc++/13450 1266 * include/std/std_complex.h (pow(const complex&, const _Tp&), 1267 pow(const _Tp&, const complex&)): Use cmath pow only when safe. 1268 * testsuite/26_numerics/complex/13450.cc: New. 1269 1270 * testsuite/26_numerics/cmath/overloads.C: Rename to overloads.cc. 1271 * testsuite/26_numerics/complex/pow.C: Rename to pow.cc and fix. 1272 12732004-03-10 Jerry Quinn <jlquinn@optonline.net> 1274 1275 PR libstdc++/3247 1276 * include/bits/gslice_array.h (gslice_array()): Make public. 1277 (operator=(gslice_array)): Make public. Implement. 1278 * include/bits/indirect_array.h (indirect_array()): Make public. 1279 * include/bits/mask_array.h (mask_array()): Make public. 1280 (operator=(mask_array)): Make public. Implement. 1281 * include/bits/valarray_array.tcc (__valarray_copy): 1282 Comment. Add versions for gslice_array and mask_array. 1283 * testsuite/26_numerics/valarray_subset_assignment.cc: New test. 1284 12852004-03-09 Benjamin Kosnik <bkoz@redhat.com> 1286 1287 * testsuite/23_containers/deque/modifiers/swap.cc: Add in bits for 1288 non-weak systems. 1289 * testsuite/23_containers/vector/modifiers/swap.cc: Same. 1290 * testsuite/23_containers/set/modifiers/swap.cc: Same. 1291 * testsuite/23_containers/multiset/modifiers/swap.cc: Same. 1292 * testsuite/23_containers/multimap/modifiers/swap.cc: Same. 1293 * testsuite/23_containers/map/modifiers/swap.cc: Same. 1294 * testsuite/23_containers/list/modifiers/swap.cc: Same. 1295 1296 * testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions. 1297 12982004-03-08 Benjamin Kosnik <bkoz@redhat.com> 1299 1300 PR c++/13658 1301 * testsuite/23_containers/deque/modifiers/swap.cc: New. 1302 * testsuite/23_containers/list/modifiers/swap.cc: New. 1303 * testsuite/23_containers/map/modifiers/swap.cc: New. 1304 * testsuite/23_containers/multimap/modifiers/swap.cc: New. 1305 * testsuite/23_containers/multiset/modifiers/swap.cc: New. 1306 * testsuite/23_containers/set/modifiers/swap.cc: New. 1307 * testsuite/23_containers/vector/modifiers/swap.cc: New. 1308 13092004-03-08 Petur Runolfsson <peturr02@ru.is> 1310 1311 PR libstdc++/12658 1312 * testsuite/22_locale/locale/cons/12658_thread.cc: New. 1313 13142004-03-08 Paolo Carlini <pcarlini@suse.de> 1315 1316 * docs/html/ext/howto.html: Add entry for DR 103 [WP]. 1317 * include/bits/stl_multiset.h: Add comment about DR 103. 1318 * include/bits/stl_set.h: Likewise. 1319 13202004-03-08 Paolo Carlini <pcarlini@suse.de> 1321 1322 * include/bits/locale_facets.tcc (money_get<>::_M_extract): 1323 The value _space_ indicates that at least one space is required 1324 at that position. 1325 * testsuite/22_locale/money_get/get/char/17.cc: New. 1326 * testsuite/22_locale/money_get/get/wchar_t/17.cc: New. 1327 1328 * testsuite/22_locale/money_get/get/char/7.cc: Minor tweaks. 1329 * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise. 1330 1331 * include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)): 1332 Remove redundant conditional on __str.size(). 1333 13342004-03-08 Benjamin Kosnik <bkoz@redhat.com> 1335 1336 * include/bits/allocator.h: Switch defaults to mt_alloc. 1337 13382004-03-06 Benjamin Kosnik <bkoz@redhat.com> 1339 1340 * include/ext/mt_allocator.h (_S_initialize): If 1341 !__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex. 1342 13432004-03-06 Benjamin Kosnik <bkoz@redhat.com> 1344 1345 PR libstdc++/12658 1346 * src/locale_init.cc (locale::locale): Lock critical regions with 1347 external mutexes. 1348 (locale::global): Same. 1349 * include/bits/concurrence.h (__glibcxx_mutex_define_initialized): 1350 Add in once bits for cases without __GTHREAD_MUTEX_INIT. 1351 (__glibcxx_mutex_lock): Same. 1352 1353 * config/cpu/generic/atomicity.h: Remove 1354 _GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h. 1355 * src/misc-inst.cc: Move all locking bits out of this file. 1356 1357 * config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK. 1358 * src/misc-inst.cc: Same. 1359 * config/cpu/hppa/atomicity.h: Same. 1360 1361 * config/linker-map.gnu: Remove types in the signature of atomic 1362 exports, as they may vary. 1363 13642004-03-06 Paolo Carlini <pcarlini@suse.de> 1365 1366 * include/bits/locale_facets.tcc: Tweak the comment preceding 1367 has_facet: doesn't throw. 1368 13692004-03-06 Paolo Carlini <pcarlini@suse.de> 1370 1371 * testsuite/22_locale/money_get/get/char/1.cc: Clean up. 1372 * testsuite/22_locale/money_get/get/char/2.cc: Likewise. 1373 * testsuite/22_locale/money_get/get/char/3.cc: Likewise. 1374 * testsuite/22_locale/money_get/get/char/4.cc: Likewise. 1375 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise. 1376 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise. 1377 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise. 1378 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise. 1379 13802004-03-06 Paolo Carlini <pcarlini@suse.de> 1381 1382 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, 1383 num_get<>::_M_extract_int, num_get<>::do_get(bool&), 1384 __pad<>::_S_pad): Prefer plain operator== to traits::eq(). 1385 * testsuite/testsuite_character.h (struct __gnu_test::character): 1386 Provide operator==. 1387 * testsuite/testsuite_hooks.h (struct __gnu_test::pod_char): 1388 Likewise. 1389 13902004-03-05 Paolo Carlini <pcarlini@suse.de> 1391 1392 * testsuite/27_io/fpos/14320-2.cc: Remove xfail. 1393 13942004-03-04 Benjamin Kosnik <bkoz@redhat.com> 1395 1396 * testsuite/23_containers/multiset/insert/1.cc: Test result string. 1397 1398 * testsuite/23_containers/bitset/invalidation/1.cc: Main always 1399 returns 0. 1400 * testsuite/23_containers/deque/invalidation/4.cc: Same. 1401 * testsuite/23_containers/list/invalidation/1.cc: Same. 1402 * testsuite/23_containers/list/invalidation/2.cc: Same. 1403 * testsuite/23_containers/list/invalidation/3.cc: Same. 1404 * testsuite/23_containers/list/invalidation/4.cc: Same. 1405 * testsuite/23_containers/map/invalidation/2.cc: Same. 1406 * testsuite/23_containers/multimap/invalidation/1.cc: Same. 1407 * testsuite/23_containers/multimap/invalidation/2.cc: Same. 1408 * testsuite/23_containers/multiset/invalidation/1.cc: Same. 1409 * testsuite/23_containers/multiset/invalidation/2.cc: Same. 1410 * testsuite/23_containers/set/invalidation/1.cc: Same. 1411 * testsuite/23_containers/set/invalidation/2.cc: Same. 1412 * testsuite/23_containers/vector/invalidation/1.cc: Same. 1413 * testsuite/23_containers/vector/invalidation/2.cc: Same. 1414 * testsuite/23_containers/vector/invalidation/3.cc: Same. 1415 * testsuite/23_containers/vector/invalidation/4.cc: Same. 1416 14172004-03-04 Paolo Carlini <pcarlini@suse.de> 1418 1419 * scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to 1420 CXXFLAGS_save. 1421 * testsuite/lib/libstdc++.exp: Don't add it conditionally to 1422 DEFAULT_CXXFLAGS. 1423 * testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT" 1424 from the dg-options. 1425 * testsuite/23_containers/vector/invalidation/1.cc: Likewise. 1426 * testsuite/23_containers/vector/invalidation/2.cc: Likewise. 1427 * testsuite/23_containers/vector/invalidation/3.cc: Likewise. 1428 * testsuite/23_containers/vector/invalidation/4.cc: Likewise. 1429 * testsuite/23_containers/vector/resize/1.cc: Likewise. 1430 * testsuite/26_numerics/complex_value.cc: Likewise. 1431 * testsuite/27_io/ios_base/storage/1.cc: Likewise. 1432 * testsuite/27_io/ios_base/storage/2.cc: Likewise. 1433 * testsuite/27_io/ios_base/storage/3.cc: Likewise. 1434 * testsuite/27_io/manipulators/standard/char/2.cc: Likewise. 1435 * testsuite/27_io/objects/char/5.cc: Likewise. 1436 * testsuite/27_io/objects/wchar_t/5.cc: Likewise. 1437 * testsuite/backward/11460.cc: Likewise. 1438 * testsuite/thread/pthread7-rope.cc: Likewise. 1439 1440 * testsuite/21_strings/basic_string/compare/char/1.cc: Add 1441 missing test variable. 1442 * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Add 1443 missing test variable. 1444 14452004-03-04 Benjamin Kosnik <bkoz@redhat.com> 1446 1447 * testsuite/20_util/allocator/1.cc: Provide explicit 1448 instantiations for non-weak systems. 1449 * testsuite/20_util/binders.cc: Same. 1450 * testsuite/20_util/allocator/8230.cc: Same. 1451 * testsuite/20_util/allocator/10378.cc: Same. 1452 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same. 1453 * testsuite/22_locale/ctype/is/char/2.cc: Same. 1454 * testsuite/thread/pthread7-rope.cc: Same. 1455 * testsuite/thread/pthread6.cc: Same. 1456 * testsuite/thread/pthread5.cc: Same. 1457 * testsuite/thread/pthread4.cc: Same. 1458 * testsuite/thread/pthread1.cc: Same. 1459 * testsuite/ext/rope.cc: Same. 1460 * testsuite/ext/hash_set.cc: Same. 1461 * testsuite/ext/hash_map.cc: Same. 1462 * testsuite/ext/concept_checks.cc: Same. 1463 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same. 1464 * testsuite/25_algorithms/unique/2.cc: Same. 1465 * testsuite/25_algorithms/unique/1.cc: Same. 1466 * testsuite/25_algorithms/rotate.cc: Same. 1467 * testsuite/25_algorithms/min_max.cc: Same. 1468 * testsuite/25_algorithms/equal.cc: Same. 1469 * testsuite/24_iterators/rel_ops.cc: Same. 1470 * testsuite/24_iterators/iterator.cc: Same. 1471 * testsuite/24_iterators/insert_iterator.cc: Same. 1472 * testsuite/24_iterators/front_insert_iterator.cc: Same. 1473 * testsuite/24_iterators/back_insert_iterator.cc: Same. 1474 * testsuite/23_containers/vector/resize/1.cc: Same. 1475 * testsuite/23_containers/vector/modifiers/2.cc: Same. 1476 * testsuite/23_containers/vector/modifiers/1.cc: Same. 1477 * testsuite/23_containers/vector/invalidation/4.cc: Same. 1478 * testsuite/23_containers/vector/invalidation/3.cc: Same. 1479 * testsuite/23_containers/vector/invalidation/2.cc: Same. 1480 * testsuite/23_containers/vector/invalidation/1.cc: Same. 1481 * testsuite/23_containers/vector/element_access/1.cc: Same. 1482 * testsuite/23_containers/vector/cons/6513.cc: Same. 1483 * testsuite/23_containers/vector/cons/3.cc: Same. 1484 * testsuite/23_containers/vector/cons/2.cc: Same. 1485 * testsuite/23_containers/vector/cons/1.cc: Same. 1486 * testsuite/23_containers/vector/capacity/8230.cc: Same. 1487 * testsuite/23_containers/vector/capacity/1.cc: Same. 1488 * testsuite/23_containers/vector/bool/6886.cc: Same. 1489 * testsuite/23_containers/stack/members/7158.cc: Same. 1490 * testsuite/23_containers/set/invalidation/2.cc: Same. 1491 * testsuite/23_containers/set/invalidation/1.cc: Same. 1492 * testsuite/23_containers/queue/members/7157.cc: Same. 1493 * testsuite/23_containers/priority_queue/members/7161.cc: Same. 1494 * testsuite/23_containers/multiset/invalidation/2.cc: Same. 1495 * testsuite/23_containers/multiset/invalidation/2.cc: Same. 1496 * testsuite/23_containers/multiset/insert/1.cc: Same. 1497 * testsuite/23_containers/multimap/invalidation/2.cc: Same. 1498 * testsuite/23_containers/multimap/invalidation/2.cc: Same. 1499 * testsuite/23_containers/map/operators/1.cc: Same. 1500 * testsuite/23_containers/map/invalidation/2.cc: Same. 1501 * testsuite/23_containers/map/invalidation/1.cc: Same. 1502 * testsuite/23_containers/map/insert/1.cc: Same. 1503 * testsuite/23_containers/list/operators/4.cc: Same. 1504 * testsuite/23_containers/list/operators/3.cc: Same. 1505 * testsuite/23_containers/list/operators/2.cc: Same. 1506 * testsuite/23_containers/list/operators/1.cc: Same. 1507 * testsuite/23_containers/list/modifiers/3.cc: Same. 1508 * testsuite/23_containers/list/modifiers/2.cc: Same. 1509 * testsuite/23_containers/list/modifiers/1.cc: Same. 1510 * testsuite/23_containers/list/invalidation/4.cc: Same. 1511 * testsuite/23_containers/list/invalidation/3.cc: Same. 1512 * testsuite/23_containers/list/invalidation/2.cc: Same. 1513 * testsuite/23_containers/list/invalidation/1.cc: Same. 1514 * testsuite/23_containers/list/cons/9.cc: Same. 1515 * testsuite/23_containers/list/cons/8.cc: Same. 1516 * testsuite/23_containers/list/cons/7.cc: Same. 1517 * testsuite/23_containers/list/cons/6.cc: Same. 1518 * testsuite/23_containers/list/cons/5.cc: Same. 1519 * testsuite/23_containers/list/cons/4.cc: Same. 1520 * testsuite/23_containers/list/cons/3.cc: Same. 1521 * testsuite/23_containers/list/cons/2.cc: Same. 1522 * testsuite/23_containers/list/cons/1.cc: Same. 1523 * testsuite/23_containers/list/capacity/1.cc: Same. 1524 * testsuite/23_containers/deque/operators/1.cc: Same. 1525 * testsuite/23_containers/deque/invalidation/4.cc: Same. 1526 * testsuite/23_containers/deque/invalidation/3.cc: Same. 1527 * testsuite/23_containers/deque/invalidation/2.cc: Same. 1528 * testsuite/23_containers/deque/invalidation/1.cc: Same. 1529 * testsuite/23_containers/deque/cons/2.cc: Same. 1530 * testsuite/23_containers/deque/cons/1.cc: Same. 1531 1532 * src/allocator.cc: Add char, wchar_t instantiations 1533 to match extern template declarations in memory.h. 1534 15352004-03-03 Paolo Carlini <pcarlini@suse.de> 1536 1537 * include/bits/locale_facets.tcc (money_put<>::_M_insert): 1538 Fix warning regression. 1539 15402004-03-03 Paolo Carlini <pcarlini@suse.de> 1541 1542 * include/bits/locale_facets.tcc (money_put<>::_M_insert): 1543 Deal properly with empty __digits and negative frac_digits, 1544 clean-up a bit. 1545 15462004-03-03 Jonathan Wakely <redi@gcc.gnu.org> 1547 1548 * docs/html/documentation.html: Regenerate. 1549 15502004-03-02 Paolo Carlini <pcarlini@suse.de> 1551 1552 PR libstdc++/14320 1553 * include/bits/postypes.h (class streamoff): Remove, now 1554 streamoff is just typedef a 64 bit signed integer type. 1555 (class fpos): Tweak consistently. 1556 * testsuite/27_io/fpos/14320-1.cc: New. 1557 * testsuite/27_io/fpos/14320-2.cc: New. 1558 * testsuite/27_io/fpos/14320-3.cc: New. 1559 * testsuite/27_io/fpos/14320-4.cc: New. 1560 * testsuite/27_io/fpos/14320-5.cc: New. 1561 * testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now. 1562 15632004-03-02 Paolo Carlini <pcarlini@suse.de> 1564 1565 * include/bits/locale_facets.tcc (money_get<>::_M_extract): 1566 Reorganize a bit the main parsing loop, thus early detecting 1567 an empty value component. 1568 * testsuite/22_locale/money_get/get/char/16.cc: New. 1569 * testsuite/22_locale/money_get/get/wchar_t/16.cc: New. 1570 15712004-03-02 Benjamin Kosnik <bkoz@redhat.com> 1572 1573 Support automake 1.8.2 1574 * configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override. 1575 * po/Makefile.am (EXTRA_DIST): New. 1576 * po/Makefile.in: Regenerate. 1577 * Makefile.in: Same. 1578 * include/Makefile.in: Same. 1579 * libmath/Makefile.in: Same. 1580 * libsupc++/Makefile.in: Same. 1581 * src/Makefile.in: Same. 1582 * testsuite/Makefile.in: Same. 1583 1584 * include/Makefile.am (${host_builddir}/gthr-posix.h): Use 1585 __GXX_WEAK__ instead of SUPPORTS_WEAK. 1586 (${host_builddir}/gthr-default.h): Same. 1587 (${host_builddir}/gthr.h): Same. 1588 * acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove 1589 _GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via 1590 -fno-weak. 1591 * aclocal.m4: Regenerate. 1592 * acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK. 1593 * config.h.in: Regenerate. 1594 * configure: Same. 1595 15962004-03-01 Benjamin Kosnik <bkoz@redhat.com> 1597 1598 Support autoconf 2.59 1599 * acinclude.m4: Quote correctly. 1600 * aclocal.m4: Regenerate. 1601 * linkage.m4: Same. 1602 16032004-03-01 Benjamin Kosnik <bkoz@redhat.com> 1604 1605 * docs/html/test.html: Add multilib RUNTESTFLAGS example. 1606 1607 * docs/html/18_support/howto.html: Add bit about writing to 1608 stderr, mostly by Zack. 1609 16102004-03-01 Paolo Carlini <pcarlini@suse.de> 1611 1612 * include/bits/locale_facets.tcc (money_get<>::_M_extract, 1613 money_get<>::do_get(string_type&)): ... and two more. 1614 16152004-03-01 Paolo Carlini <pcarlini@suse.de> 1616 1617 * include/bits/locale_facets.tcc (money_get<>::_M_extract): 1618 Fix thinkos in the switch from string_type& to string& as last 1619 argument. 1620 16212004-03-01 Paolo Carlini <pcarlini@suse.de> 1622 1623 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float): 1624 Also when parsing exponent sign, first look for thousands_sep 1625 and decimal_point; tweak a bit. 1626 * testsuite/22_locale/num_get/get/char/15.cc: New. 1627 * testsuite/22_locale/num_get/get/wchar_t/15.cc: New. 1628 1629 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, 1630 num_get<>::_M_extract_int): Reorder some conditionals. 1631 16322004-03-01 Paolo Carlini <pcarlini@suse.de> 1633 1634 * include/bits/locale_facets.tcc (money_get<>::_M_extract): 1635 Consistently with numpunct, enforce the requirements in 1636 22.2.6.3, p3 for the thousands separators; tweak a bit. 1637 * testsuite/22_locale/money_get/get/char/15.cc: New. 1638 * testsuite/22_locale/money_get/get/wchar_t/15.cc: New. 1639 16402004-03-01 David Billinghurst <David.Billinghurst@riotinto.com> 1641 1642 * testsuite/lib/libstdc++.exp (v3-list-tests): Use 1643 testsuite_files from correct multilib blddir when running 1644 testsuite. 1645 16462004-02-29 Phil Edwards <phil@codesourcery.com> 1647 1648 * testsuite/Makefile.am (check-abi, check-abi-verbose): Copy 1649 the summary file to the logfile. 1650 * testsuite/Makefile.in: Regenerate. 1651 16522004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1653 1654 * config/cpu/hppa/atomicity.h (__atomic_add): Make first argument 1655 volatile. 1656 * config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use 1657 __GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK. 1658 16592004-02-28 Paolo Carlini <pcarlini@suse.de> 1660 1661 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float): 1662 According to 22.2.3.1, p2, 'units' may be followed by 'e' with 1663 no 'decimal-point' in the middle: in this case too we must fix 1664 up __found_grouping; slightly tweak. 1665 * testsuite/22_locale/num_get/get/char/14.cc: New. 1666 * testsuite/22_locale/num_get/get/wchar_t/14.cc: New. 1667 16682004-02-27 Eric Christopher <echristo@redhat.com> 1669 Phil Edwards <phil@codesourcery.com> 1670 1671 * testsuite/22_locale/collate/compare/wchar_t/2.cc, 1672 testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc, 1673 testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc, 1674 testsuite/22_locale/collate/hash/wchar_t/2.cc, 1675 testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc, 1676 testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc, 1677 testsuite/22_locale/collate/transform/wchar_t/2.cc, 1678 testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc, 1679 testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc: 1680 Use dg-require-iconv. 1681 * testsuite/lib/libstdc++.exp: Load target-supports.exp. 1682 16832004-02-27 Phil Edwards <phil@codesourcery.com> 1684 Eric Christopher <echristo@redhat.com> 1685 1686 * testsuite/config/default.exp: Update with comments. 1687 (${tool}_target_compile): New wrapper routine. 1688 * testsuite/lib/dg-options.exp: New file, with dg-require-iconv. 1689 * testsuite/lib/libstdc++.exp: Update with comments and cosmetic 1690 fixes. 1691 (load_gcc_lib, v3track): New routines. 1692 (v3-init): Rename to libstdc++_init. 1693 * testsuite/libstdc++-dg/normal.exp: No longer call v3-init. 1694 Move DEFAULT_CXXFLAGS handling into libstdc++_init. 1695 16962004-02-27 Benjamin Kosnik <bkoz@redhat.com> 1697 1698 * config/cpu/hppa/atomicity.h: Include c++config.h to get defines. 1699 1700 * src/misc-inst.cc (_S_atomicity_lock): Move to __gnu_cxx. 1701 1702 * config/os/irix/irix5.2/atomicity.h: Merge.. 1703 * config/os/irix/irix6.5/atomicity.h: Merge.. 1704 * config/os/irix/atomicity.h: ...into this. 1705 * config/os/irix/atomic_word.h: New. 1706 * configure.host: Set atomic_word_dir for irix. 1707 1708 * hppa/atomicity.h: Change __Atomicity_lock to _Atomicity_lock. 1709 * i386/atomicity.h: Same. 1710 * m68k/atomicity.h: Same. 1711 * sparc/atomicity.h: Same. 1712 17132004-02-27 David Edelsohn <edelsohn@gnu.org> 1714 1715 * config/os/aix/atomicity.h: Use __gnu_cxx namespace. Remove 1716 static, and inline keywords. 1717 17182004-02-27 Paolo Carlini <pcarlini@suse.de> 1719 1720 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, 1721 num_get<>::_M_extract_int, money_get<>::_M_extract): If appropriate, 1722 call reserve on the __tmp_gruping string. 1723 (num_get<>::_M_extract_float): Don't append unnecessarily a 1724 char() to the returned string. 1725 * include/bits/locale_facets.tcc: Trivial reformattings. 1726 17272004-02-27 Paolo Carlini <pcarlini@suse.de> 1728 1729 * include/bits/locale_facets.h (money_get<>::_M_extract): 1730 Change signature: now takes a plain string&. 1731 * include/bits/locale_facets.tcc (money_get<>::_M_extract): 1732 Update consistently the definition; use the moneypunct cache 1733 to parse the value; use swap to change __units. 1734 (money_get<>::do_get(long double&)): Update call of _M_extract, 1735 avoid ctype::narrow, not correct wrt the standard. 1736 (money_get<>::do_get(string_type&)): Likewise, update call 1737 of _M_extract, use ctype::widen. 1738 * src/locale-inst.cc: Tweak instantiations of _M_extract. 1739 17402004-02-26 Ian Lance Taylor <ian@wasabisystems.com> 1741 1742 * testsuite/demangle/abi_examples/01.cc: Expect error -2. 1743 * testsuite/demangle/abi_examples/02.cc: Likewise. 1744 * testsuite/demangle/regression/cw-11.cc: Likewise. 1745 * testsuite/demangle/regression/cw-16.cc: Change two expected 1746 results to match libiberty demangler output. 1747 17482004-02-26 Benjamin Kosnik <bkoz@redhat.com> 1749 1750 PR libstdc++/10246 1751 * libsupc++/Makefile.am: Use libiberty demangler. 1752 (c_sources): Add cp-demangle.c. 1753 * libsupc++/Makefile.in: Regenerate. 1754 * src/Makefile.am (sources): Remove demangle.cc. 1755 * src/Makefile.in: Regenerate. 1756 * include/Makefile.am (bits_headers): Move demangle.h. 1757 (ext_headers): ...here. 1758 * include/Makefile.in: Regenerate. 1759 * include/bits/demangle.h: Move... 1760 * include/ext/demangle.h: ...here. 1761 * src/demangle.cc: Remove. 1762 17632004-02-26 Benjamin Kosnik <bkoz@redhat.com> 1764 1765 * include/bits/demangle.h: Add type template parameter to all 1766 templates with just an Allocator template parameter. 1767 17682004-02-25 Benjamin Kosnik <bkoz@redhat.com> 1769 1770 * include/bits/atomicity.h: New, forward declarations for __atomic_add 1771 and __exchange_and_add. 1772 * config/cpu/generic/atomic_word.h: New, typdef for atomic word. 1773 * config/cpu/cris/atomic_word.h: Same. 1774 * config/cpu/sparc/atomic_word.h: Same. 1775 * include/bits/ios_base.h (_Callback_list::_M_remove_reference): 1776 Qualifiy with __gnu_cxx. 1777 (_Callback_list::_M_add_reference): Same. 1778 * include/bits/locale_classes.h (locale::facet::_M_add_reference): Add. 1779 (locale::facet::_M_remove_reference): Same. 1780 (locale::_Impl::_M_add_reference): Add. 1781 (locale::_Impl::_M_remove_reference): Same. 1782 * include/bits/basic_string.h (basic_string::_Rep::_M_refcopy): Same. 1783 (basic_string::_Rep::_M_dispose): Same. 1784 * src/ios.cc (ios_base::xalloc): Same. 1785 * src/ios_init.cc (ios_base::Init::Init): Same. 1786 (ios_base::Init::~Init): Same. 1787 * src/locale.cc (locale::id::_M_id): Same. 1788 * config/cpu/i486/atomicity.h: Use __gnu_cxx namespace. Remove 1789 static, and inline keywords. 1790 * config/cpu/alpha/atomicity.h: Same. 1791 * config/cpu/cris/atomicity.h: Same. 1792 * config/cpu/generic/atomicity.h: Same. 1793 * config/cpu/hppa/atomicity.h: Same. 1794 * config/cpu/i386/atomicity.h: Same. 1795 * config/cpu/ia64/atomicity.h: Same. 1796 * config/cpu/m68k/atomicity.h: Same. 1797 * config/cpu/mips/atomicity.h: Same. 1798 * config/cpu/powerpc/atomicity.h: Same. 1799 * config/cpu/s390/atomicity.h: Same. 1800 * config/cpu/sparc/atomicity.h: Same. 1801 1802 * src/Makefile.am (host_sources): Add atomicity.cc. 1803 (atomicity.cc): New rule. 1804 * src/Makefile.in: Regenerate. 1805 * include/Makefile.am (host_headers): Remove host atomicity.h. 1806 (host_headers): Add atomic_word.h. 1807 (bits_headers): Add bits atomicity.h. 1808 Change ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR. 1809 * include/Makefile.in: Regenerate. 1810 * configure.host (atomic_word_dir): Add. 1811 * configure.ac: Substitute ATOMIC_WORD_SRCDIR. Change 1812 ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR. 1813 * configure: Regenerate. 1814 * config/linker-map.gnu: Export __exchange_and_add, and __atomic_add. 1815 1816 * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers. 1817 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same. 1818 18192004-02-25 Jonathan Wakely <redi@gcc.gnu.org> 1820 1821 * docs/html/20_util/howto.html, docs/html/20_util/allocator.html, 1822 docs/html/ext/howto.html, docs/html/ext/mt_allocator.html: 1823 Fix markup, more <link> tags. 1824 18252004-02-25 Carlo Wood <carlo@alinoe.com> 1826 1827 * bits/demangle.h 1828 namespace __gnu_cxx::demangler 1829 (session<Allocator>::qualifier_list_Allocator): Add 1830 (session<Allocator>::M_qualifier_list_alloc): Add 1831 (session<Allocator>::decode_type_with_postfix): 1832 Use M_qualifier_list_alloc instead of calling operator new/delete. 1833 18342004-02-24 Paolo Carlini <pcarlini@suse.de> 1835 1836 PR libstdc++/14252 1837 * include/bits/postypes.h (class streamoff): Add operator++(), 1838 operator++(int), operator--() and operator--(int). 1839 * testsuite/27_io/fpos/14252.cc: New. 1840 18412004-02-24 Richard Sandiford <rsandifo@redhat.com> 1842 1843 * include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds 1844 error in handling of hex constants. 1845 18462004-02-24 Paolo Carlini <pcarlini@suse.de> 1847 1848 * include/bits/locale_facets.tcc (money_put<>::_M_insert): 1849 Prefer basic_string::append to operator+= and a temporary. 1850 18512004-02-23 Benjamin Kosnik <bkoz@redhat.com> 1852 1853 * libsupc++/vterminate.cc (__gnu_cxx::__verbose_terminate_handler): 1854 Only use fputs, not write. 1855 18562004-02-23 Benjamin Kosnik <bkoz@redhat.com> 1857 1858 * include/ext/malloc_allocator.h: Add operators ==, !=. 1859 * include/ext/new_allocator.h: Add operators ==, !=. 1860 * include/ext/mt_allocator.h (__mt_alloc::tune): New. 1861 (__mt_alloc::_S_get_options): New. 1862 (__mt_alloc::_S_set_options): New. 1863 (__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key. 1864 (__mt_alloc::_S_no_of_bins): To _S_bin_size. 1865 Move functions out of line, simplify, format. 1866 * src/allocator.cc: Simplify explicit instantiations. 1867 * include/bits/allocator.h: Tweak. 1868 18692004-02-22 Paolo Carlini <pcarlini@suse.de> 1870 1871 * include/bits/locale_facets.tcc (money_put<>::_M_insert): 1872 Restructure formatting of value component, first dealing with 1873 the non-decimal digits; use reserve. 1874 18752004-02-22 Paolo Carlini <pcarlini@suse.de> 1876 1877 * include/bits/locale_facets.h (class money_get): Inherit 1878 from money_base too; tweak declaration of _M_extract, now 1879 parameterized on _Intl too. 1880 * include/bits/locale_facets.tcc (money_get<>::_M_extract): 1881 Update definition to use the cache; call reserve on __res to 1882 avoid multiple reallocations; fix parsing of sign component 1883 according to 22.2.6.1.2, p3. 1884 (money_get<>::do_get(long double&), 1885 money_get<>::do_get(string_type&)): Update calls of _M_extract. 1886 * src/locale-inst.cc: Add instantiations of 1887 money_get::_M_extract<false> and money_get::_M_extract<true>. 1888 * testsuite/22_locale/money_get/get/char/14.cc: New. 1889 * testsuite/22_locale/money_get/get/wchar_t/14.cc: Ditto. 1890 18912004-02-21 Mark Mitchell <mark@codesourcery.com> 1892 1893 * libsupc++/vterminate.cc 1894 (__gnu_cxx::__verbose_terminate_handler): Guard against recursive 1895 calls to terminate. 1896 * src/demangle.cc (__cxa_demangle): Wrap in try-catch block. 1897 1898 * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do 1899 not set RLIMIT_AS on HP-UX. 1900 19012004-02-21 Mark Mitchell <mark@codesourcery.com> 1902 1903 * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do 1904 not set RLIMIT_AS on HP-UX. 1905 19062004-02-21 Paolo Carlini <pcarlini@suse.de> 1907 1908 * include/bits/locale_facets.h (class money_base): Add { _S_minus, 1909 _S_zero, _S_end } enum, _S_atoms. 1910 (struct __moneypunct_cache<>): Parameterize on _Intl too; add 1911 _M_grouping_size, _M_curr_symbol_size, _M_positive_sign_size, 1912 _M_negative_sign_size, _M_atoms; tweak constructor consistently. 1913 (__moneypunct_cache<>::~__moneypunct_cache): Update. 1914 (__moneypunct_cache<>::_M_cache): Fill the cache. 1915 (class moneypunct): Tweak __cache_type typedef. 1916 (class money_put): Inherit from money_base too; tweak declaration 1917 of _M_insert, now parameterized on _Intl. 1918 * include/bits/locale_facets.tcc 1919 (struct __use_cache<__moneypunct_cache<_CharT, _Intl> >): New. 1920 (money_put<>::_M_insert): Update definition to use the cache; 1921 call reserve on __res to avoid multiple reallocations. 1922 (money_put<>::do_put(long double), 1923 money_put<>::do_put(const string_type&): Update calls of _M_insert. 1924 * config/locale/generic/monetary_members.cc 1925 (moneypunct<char, true>::_M_initialize_moneypunct, 1926 moneypunct<char, false>::_M_initialize_moneypunct, 1927 moneypunct<wchar_t, true>::_M_initialize_moneypunct, 1928 moneypunct<wchar_t, false>::_M_initialize_moneypunct): Update. 1929 * config/locale/gnu/monetary_members.cc: Likewise. 1930 * config/locale/gnu/monetary_members.cc 1931 (moneypunct<wchar_t, true>::~moneypunct(), 1932 moneypunct<wchar_t, false>::~moneypunct()): Likewise. 1933 * src/globals_locale.cc: Tweak fake_money_cache_c. 1934 * src/locale-inst.cc: Add instantiations for 1935 money_put::_M_insert<false> and money_put::_M_insert<true> and 1936 __moneypunct_cache<C, false>, __moneypunct_cache<C, true>. 1937 * src/locale_facets.cc: Define money_base::_S_atoms. 1938 * src/locale_init.cc: Update placement new of 1939 __moneypunct_cache<char, false>, __moneypunct_cache<char, true>, 1940 __moneypunct_cache<wchar_t, false>, __moneypunct_cache<wchar_T, true>. 1941 1942 * config/locale/generic/numeric_members.cc: Clean up. 1943 * config/locale/gnu/numeric_members.cc: Likewise. 1944 * testsuite/22_locale/money_put/put/char/1.cc: Likewise. 1945 * testsuite/22_locale/money_put/put/char/2.cc: Likewise. 1946 * testsuite/22_locale/money_put/put/char/3.cc: Likewise. 1947 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise. 1948 * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise. 1949 * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise. 1950 19512004-02-20 Mark Mitchell <mark@codesourcery.com> 1952 1953 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Open 1954 FIFO for writing with ios_base::in|ios_base::out. 1955 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise. 1956 * testsuite/27_io/objects/char/7.cc: Likewise. 1957 * testsuite/27_io/objects/char/9661-1.cc: Open FIFO for writing 1958 with "r+". 1959 19602004-02-19 David Edelsohn <edelsohn@gnu.org> 1961 1962 * 22_locale/collate/compare/wchar_t/2.cc: Change input-charset 1963 from iso-8859-1 to ISO8859-1. 1964 * 22_locale/collate/compare/wchar_t/wrapped_env.cc: Same. 1965 * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same. 1966 * 22_locale/collate/hash/wchar_t/2.cc: Same. 1967 * 22_locale/collate/hash/wchar_t/wrapped_env.cc: Same. 1968 * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same. 1969 * 22_locale/collate/transform/wchar_t/2.cc: Same. 1970 * 22_locale/collate/transform/wchar_t/wrapped_env.cc: Same. 1971 * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: Same. 1972 19732004-02-18 Paolo Carlini <pcarlini@suse.de> 1974 1975 * include/bits/locale_facets.h (money_get<>::_M_extract): 1976 New, helper for do_get. 1977 (money_put<>::_M_insert): Likewise, for do_put. 1978 * include/bits/locale_facets.tcc (money_get<>::_M_extract, 1979 money_put<>::_M_insert): Define. 1980 (money_get<>::do_get(long double&), money_get<>::do_get( 1981 string_type&), money_put::do_put(long double), 1982 money_put::do_put(const string_type&)): Use the helpers. 1983 19842004-02-18 Paolo Carlini <pcarlini@suse.de> 1985 1986 * config/io/basic_file_stdio.cc (__gnu_internal::xwritev): 1987 Rewrite, avoiding recursion. 1988 (__gnu_internal::xwrite): Minor tweaks. 1989 19902004-02-17 Stefan Olsson <stefan@xapa.se> 1991 1992 * include/ext/mt_allocator.h: Removed the last 1993 pointer. Deallocated blocks are now added to the front of 1994 freelists as proposed by Felix Yen. This gives roughly 10% 1995 performance boost and saves some memory. 1996 * docs/html/ext/mt_allocator.html: Change due to that deallocated 1997 blocks now are added to the front of freelists. The reason to this 1998 approach is also explained. 1999 20002004-02-17 Paolo Carlini <pcarlini@suse.de> 2001 2002 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float, 2003 num_get<>::_M_extract_int, money_get<>::do_get): Simplify 2004 grouping fidelity conditional. 2005 20062004-02-16 Paolo Carlini <pcarlini@suse.de> 2007 2008 * testsuite/27_io/basic_filebuf/overflow/char/13858.cc: 2009 Qualify exception with std::. 2010 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Ditto. 2011 * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto. 2012 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto. 2013 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto. 2014 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto. 2015 20162004-02-16 Paolo Carlini <pcarlini@suse.de> 2017 2018 * testsuite/ext/enc_filebuf/char/13189.cc: Don't check 2019 for now that the catch block is not reached. 2020 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise. 2021 20222004-02-16 Paolo Carlini <pcarlini@suse.de> 2023 2024 * include/bits/locale_facets.tcc (money_get::do_get(string_type&)): 2025 Fix parsing of the remaining sign characters. 2026 * 22_locale/money_get/get/char/2.cc: Tweak: now, correctly, 2027 the input is scanned 'til eof. 2028 * 22_locale/money_get/get/char/4.cc: Likewise. 2029 * 22_locale/money_get/get/wchar_t/2.cc: Likewise. 2030 * 22_locale/money_get/get/wchar_t/4.cc: Likewise. 2031 * 22_locale/money_get/get/char/8.cc: Tweak: override do_neg_format, 2032 not do_pos_format: the former is the only one that matters during 2033 input. 2034 * 22_locale/money_get/get/wchar_t/8.cc: Likewise. 2035 2036 * 22_locale/money_get/get/char/6.cc: Minor tweak. 2037 * 22_locale/money_get/get/wchar_t/6.cc: Likewise. 2038 20392004-02-15 David Asher <david.asher@cavium.com> 2040 2041 PR libstdc++/11352 2042 * include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't 2043 access __olds beyond __oldlen. 2044 20452004-02-14 Paolo Carlini <pcarlini@suse.de> 2046 2047 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Make 2048 sure the exception is actually thrown. 2049 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto. 2050 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto. 2051 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto. 2052 20532004-02-14 Paolo Carlini <pcarlini@suse.de> 2054 2055 PR libstdc++/13858 2056 * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external): 2057 In case of conversion errors, throw ios_failure; simplify. 2058 * testsuite/27_io/basic_filebuf/overflow/char/13858.cc: New. 2059 * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto. 2060 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Tweak, 2061 previously we didn't throw in case of conversion errors, instead 2062 just returned eof(). 2063 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto. 2064 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto. 2065 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto. 2066 2067 * include/bits/fstream.tcc (basic_filebuf<>::overflow): 2068 Trivial simplification of a conditional. 2069 20702004-02-12 Paolo Carlini <pcarlini@suse.de> 2071 2072 PR libstdc++/13731 (final part: writev) 2073 * config/io/basic_file_stdio.cc (__gnu_internal::xwritev): 2074 New, a wrapper around writev() handling partial writes. 2075 (__basic_file<char>::xwrite): Move to __gnu_internal and make 2076 static. 2077 (__basic_file<char>::xsputn): Update call. 2078 (__basic_file<char>::xsputn_2): Likewise. 2079 * config/io/basic_file_stdio.h (__basic_file<char>::xwrite): 2080 Don't declare, now static. 2081 20822004-02-11 Stefan Olsson <stefan@xapa.se> 2083 2084 * docs/html/ext/mt_allocator.html: New. 2085 20862004-02-11 Benjamin Kosnik <bkoz@redhat.com> 2087 2088 * docs/html/20_util/allocator.html: New file, consolidate 2089 allocator information here. Revamp. 2090 * docs/html/documentation.html: Change links. 2091 * docs/html/20_util/howto.html: Same. 2092 * docs/html/ext/howto.html: Same. 2093 20942004-02-11 Paolo Carlini <pcarlini@suse.de> 2095 2096 PR libstdc++/13731 (first part: write) 2097 * config/io/basic_file_stdio.h (__basic_file<char>::xwrite): 2098 New, declare. 2099 * config/io/basic_file_stdio.cc (__basic_file<char>::xwrite): 2100 Define it: a wrapper around write() handling partial write. 2101 (__basic_file<char>::xsputn): Use it. 2102 (__basic_file<char>::xsputn_2): Likewise. 2103 21042004-02-11 Paolo Carlini <pcarlini@suse.de> 2105 Petur Runolfsson <peturr02@ru.is> 2106 2107 PR libstdc++/14078 2108 * include/std/std_istream.h (operator>>(__istream_type& (*) 2109 (__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)), 2110 operator>>(ios_base& (*)(ios_base&))): Declare inline. 2111 * include/std/std_ostream.h (operator<<(__ostream_type& (*) 2112 (__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)), 2113 operator<<(ios_base& (*) (ios_base&))): Likewise. 2114 * testsuite/performance/27_io/fmtflags_manipulators.cc: New. 2115 21162004-02-10 Loren J. Rittle <ljrittle@acm.org> 2117 2118 PR libstdc++/14098 2119 * config/linker-map.gnu: Add typeinfo and typeinfo name for 2120 __gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >. 2121 2122 PR libstdc++/14097 2123 * config/linker-map.gnu: Add typeinfo and typeinfo name for 2124 __gnu_cxx::stdio_filebuf<char, std::char_traits<char> >. 2125 21262004-02-09 Loren J. Rittle <ljrittle@acm.org> 2127 2128 * include/ext/pool_allocator.h: Include c++config.h. 2129 21302004-02-09 Stefan Olsson <stefan@xapa.se> 2131 2132 * include/ext/mt_allocator.h: thread_id is unused in non threaded 2133 applications and now has a ifdef to remove it completely on 2134 compilers without thread support. Include stdlib.h due to a 2135 compiler warning on getenv(). 2136 21372004-02-09 Paul Brook <paul@codesourcery.com> 2138 2139 * libstdc++-v3/configure.host: Explicitly check for atomicity.h file. 2140 21412004-02-09 Paolo Carlini <pcarlini@suse.de> 2142 2143 PR libstdc++/14071 2144 * src/locale_init.cc (locale::global(const locale&)): Use 2145 locale::name() in order to decide whether calling setlocale. 2146 * testsuite/22_locale/locale/global_locale_objects/14071.cc: New. 2147 2148 * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name()): 2149 Avoid computing &= unnecessarily. 2150 21512004-02-09 James E Wilson <wilson@specifixinc.com> 2152 2153 PR libstdc++/5625 2154 * libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use 2155 __builtin_extend_pointer. 2156 21572004-02-09 Paolo Carlini <pcarlini@suse.de> 2158 2159 PR libstdc++/14072 2160 * include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale): 2161 Don't leave dangling pointers. 2162 * testsuite/27_io/basic_ios/imbue/14072.cc: New. 2163 * testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put 2164 facet is needed in the final test. 2165 21662004-02-09 Bernardo Innocenti <bernie@develer.com> 2167 2168 * crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*. 2169 * configure: Regenerate. 2170 21712004-02-08 Richard Henderson <rth@redhat.com> 2172 2173 PR libstdc++/14026 2174 * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust 2175 uncaughtExceptions during nested catch rethrow. 2176 * testsuite/18_support/14026.cc: New. 2177 21782004-02-08 Paolo Carlini <pcarlini@suse.de> 2179 2180 * include/bits/basic_string.tcc (assign(const _CharT*, size_type)): 2181 When working in place remember to set the state to sharable 2182 (otherwise, _M_mutate does it). 2183 21842004-02-08 Bernardo Innocenti <bernie@develer.com> 2185 2186 * include/bits/allocator.h, include/bits/basic_ios.h, 2187 include/bits/basic_ios.tcc, include/bits/basic_string.h, 2188 include/bits/basic_string.tcc, include/bits/boost_concept_check.h, 2189 include/bits/char_traits.h, include/bits/codecvt.h, 2190 include/bits/concurrence.h, include/bits/cpp_type_traits.h, 2191 include/bits/demangle.h, include/bits/deque.tcc, 2192 include/bits/fstream.tcc, include/bits/functexcept.h, 2193 include/bits/gslice.h, include/bits/gslice_array.h, 2194 include/bits/indirect_array.h, include/bits/ios_base.h, 2195 include/bits/istream.tcc, include/bits/list.tcc, 2196 include/bits/locale_classes.h, include/bits/locale_facets.h, 2197 include/bits/locale_facets.tcc, include/bits/localefwd.h, 2198 include/bits/mask_array.h, include/bits/ostream.tcc, 2199 include/bits/postypes.h, include/bits/slice_array.h, 2200 include/bits/sstream.tcc, include/bits/stl_algo.h, 2201 include/bits/stl_algobase.h, include/bits/stl_bvector.h, 2202 include/bits/stl_construct.h, include/bits/stl_deque.h, 2203 include/bits/stl_function.h, include/bits/stl_heap.h, 2204 include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h, 2205 include/bits/stl_list.h, include/bits/stl_map.h, 2206 include/bits/stl_multimap.h, include/bits/stl_multiset.h, 2207 include/bits/stl_numeric.h, include/bits/stl_pair.h, 2208 include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h, 2209 include/bits/stl_relops.h, include/bits/stl_set.h, 2210 include/bits/stl_stack.h, include/bits/stl_tempbuf.h, 2211 include/bits/stl_threads.h, include/bits/stl_tree.h, 2212 include/bits/stl_uninitialized.h, include/bits/stl_vector.h, 2213 include/bits/stream_iterator.h, include/bits/streambuf.tcc, 2214 include/bits/streambuf_iterator.h,include/bits/stringfwd.h, 2215 include/bits/type_traits.h, include/bits/valarray_after.h, 2216 include/bits/valarray_array.h, include/bits/valarray_array.tcc, 2217 include/bits/valarray_before.h, include/bits/vector.tcc: Remove 2218 trailing whitespace. 2219 22202004-02-06 Paolo Carlini <pcarlini@suse.de> 2221 2222 * include/bits/basic_string.h: Fix comment. 2223 22242004-02-06 Paolo Carlini <pcarlini@suse.de> 2225 2226 * include/bits/stl_construct.h: Wrap overlong lines, reformat 2227 according to the coding standards. 2228 * include/bits/stl_pair.h: Likewise. 2229 * include/bits/stl_raw_storage_iter.h: Likewise. 2230 * include/bits/stl_stack.h: Likewise. 2231 * include/bits/stl_uninitialized.h: Likewise. 2232 * include/bits/stream_iterator.h: Likewise. 2233 * include/bits/streambuf_iterator.h: Likewise. 2234 * include/bits/type_traits.h: Likewise. 2235 22362004-02-06 Paolo Carlini <pcarlini@suse.de> 2237 2238 * testsuite/27_io/basic_filebuf/open/char/9507.cc: 2239 Adjust timings. 2240 22412004-02-05 Loren J. Rittle <ljrittle@acm.org> 2242 2243 * scripts/check_performance: Support PCH. 2244 2245 * scripts/check_performance (CXX): Add -DNOTHREAD. 2246 * testsuite/performance/20_util/allocator/insert.cc: Integrate 2247 threaded tests from insert_insert.cc. Tweak iterations, 2248 remove special cases. 2249 * testsuite/performance/20_util/allocator/insert_insert.cc: 2250 Make all tests single-threaded. Tweak iterations. 2251 * testsuite/performance/20_util/allocator/map_thread.cc: 2252 Tweak iterations. 2253 * testsuite/performance/20_util/allocator/producer_consumer.cc: 2254 Likewise. 2255 22562004-02-05 Geoffrey Keating <geoffk@apple.com> 2257 2258 PR 12179 2259 * .cvsignore: New. 2260 * acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): Use 'gcc', not 2261 'gcc-lib'. Add comment about poorly-named variables. 2262 * aclocal.m4: Regenerate. 2263 * configure: Regenerate. 2264 22652004-02-05 Paolo Carlini <pcarlini@suse.de> 2266 2267 * include/bits/locale_facets.tcc (money_get::do_get(string_type&)): 2268 Thousands-sep are always optional; thousands-sep are not allowed 2269 after the decimal_point. 2270 * testsuite/22_locale/money_get/get/char/12.cc: New. 2271 * testsuite/22_locale/money_get/get/char/13.cc: New. 2272 * testsuite/22_locale/money_get/get/wchar_t/12.cc: New. 2273 * testsuite/22_locale/money_get/get/wchar_t/13.cc: New. 2274 2275 * testsuite/22_locale/money_get/get/char/1.cc: Clean-up. 2276 * testsuite/22_locale/money_get/get/char/2.cc: Likewise. 2277 * testsuite/22_locale/money_get/get/char/3.cc: Likewise. 2278 * testsuite/22_locale/money_get/get/char/4.cc: Likewise. 2279 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise. 2280 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise. 2281 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise. 2282 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise. 2283 2284 * testsuite/22_locale/money_get/get/char/9.cc: Fix citation from 2285 the standard. 2286 * testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise. 2287 22882004-02-05 Richard Sandiford <rsandifo@redhat.com> 2289 2290 * config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T): 2291 Define. 2292 * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use 2293 it to decide whether FIONREAD should take an off_t or int argument. 2294 22952004-02-05 Paolo Carlini <pcarlini@suse.de> 2296 2297 * include/bits/stl_function.h: Minor formatting changes. 2298 22992004-02-04 Zack Weinberg <zack@codesourcery.com> 2300 2301 Revert previous change to config/abi/*/baseline_symbols.txt. 2302 23032004-02-04 Benjamin Kosnik <bkoz@redhat.com> 2304 Zack Weinberg <zack@codesourcery.com> 2305 2306 * config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode): 2307 New function. 2308 (__basic_file<char>::sys_open, __basic_file<char>::open): Use it. 2309 (__basic_file<char>::_M_open_mode): Delete. 2310 * config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode. 2311 2312 * testsuite/27_io/basic_filebuf/close/char/9964.cc 2313 * testsuite/27_io/basic_filebuf/open/char/9507.cc: 2314 Correct flags to filebuf::open calls. 2315 2316 * config/abi/alpha-freebsd5/baseline_symbols.txt 2317 * config/abi/alpha-linux-gnu/baseline_symbols.txt 2318 * config/abi/hppa-linux-gnu/baseline_symbols.txt 2319 * config/abi/i386-freebsd4/baseline_symbols.txt 2320 * config/abi/i386-freebsd5/baseline_symbols.txt 2321 * config/abi/i486-linux-gnu/baseline_symbols.txt 2322 * config/abi/ia64-linux-gnu/baseline_symbols.txt 2323 * config/abi/mips-linux-gnu/baseline_symbols.txt 2324 * config/abi/sparc-freebsd5/baseline_symbols.txt 2325 * config/abi/sparc-linux-gnu/baseline_symbols.txt 2326 * config/abi/x86_64-linux-gnu/baseline_symbols.txt: 2327 Remove entry for __basic_file<char>::_M_open_mode. 2328 23292004-02-04 Loren J. Rittle <ljrittle@acm.org> 2330 2331 * testsuite/performance/20_util/allocator/insert.cc (main): Tweak. 2332 23332004-02-04 Felix Yen <fwy@alumni.brown.edu> 2334 2335 * testsuite/performance/20_util/producer_consumer.cc: New. 2336 * testsuite/performance/20_util/allocator/insert_insert.cc: Two loops. 2337 23382004-02-04 Benjamin Kosnik <bkoz@redhat.com> 2339 2340 * testsuite/performance/20_util/allocator.cc: Move to.. 2341 * testsuite/performance/20_util/allocator/insert.cc: ...here. 2342 * testsuite/performance/20_util/allocator_thread.cc: Move to... 2343 * testsuite/performance/20_util/allocator/insert_insert.cc: ...here. 2344 * testsuite/performance/20_util/allocator_map_thread.cc: Move to... 2345 * testsuite/performance/20_util/allocator/map_thread.cc: ...here. 2346 23472004-02-04 Jonathan Wakely <redi@gcc.gnu.org> 2348 2349 * docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH. 2350 * docs/html/faq/index.txt: Regenerate. 2351 23522004-02-04 Dhruv Matani <dhruvbird@gmx.net> 2353 2354 * include/ext/debug_allocator.h: _M_extra now stands for the 2355 number of extra objects instead of the number of extra bytes. 2356 (debug_allocator::allocate): Adjust. 2357 (debug_allocator::deallocate): Adjust. 2358 2359 * include/ext/pool_allocator.h: Fix typo. 2360 23612004-02-03 Felix Yen <fwy@alumni.brown.edu> 2362 Benjamin Kosnik <bkoz@redhat.com> 2363 2364 * testsuite/performance/20_util/allocator.cc: Add map, 2365 deque, set tests. 2366 * testsuite/performance/20_util/allocator_thread.cc: Same. 2367 23682004-02-03 Paolo Carlini <pcarlini@suse.de> 2369 2370 * include/bits/basic_string.h (insert(iterator)): Remove, 2371 non-standard and already scheduled for removal. 2372 23732004-02-03 Paolo Carlini <pcarlini@suse.de> 2374 2375 * include/bits/stl_iterator_base_funcs.h: Minor formatting 2376 and indentation tweaks. 2377 * include/bits/stl_iterator_base_types.h: Likewise. 2378 * include/bits/stl_list.h: Likewise. 2379 * include/bits/stl_map.h: Likewise. 2380 * include/bits/stl_tempbuf.h: Likewise. 2381 23822004-02-02 Jerry Quinn <jlquinn@optonline.net> 2383 2384 * include/bits/gslice.h, include/bits/gslice_array.h, 2385 include/bits/indirect_array.h, include/bits/mask_array.h, 2386 include/bits/slice_array.h, include/bits/stl_numeric.h, 2387 include/std/std_valarray.h: Update copyright years. 2388 23892004-02-02 Jerry Quinn <jlquinn@optonline.net> 2390 2391 * include/bits/gslice.h (gslice): Document. 2392 * include/bits/gslice_array.h (gslice_array): Document. 2393 * include/bits/indirect_array (indirect_array): Document. 2394 * include/bits/mask_array (mask_array): Document. 2395 * include/bits/slice_array.h (slice,slice_array): Document. 2396 * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum, 2397 adjacent_difference): Document 2398 * include/std/std_valarray.h (valarray): Document. 2399 24002004-02-02 Benjamin Kosnik <bkoz@redhat.com> 2401 2402 * docs/html/19_diagnostics/howto.html: Move verbose terminate 2403 documentation... 2404 * docs/html/18_support/howto.html: Here. 2405 * docs/html/documentation.html: Add reference here. 2406 24072004-02-02 Paolo Carlini <pcarlini@suse.de> 2408 2409 * config/locale/gnu/c++locale_internal.h: Remove prototypes 2410 of no longer used GLIBC thread locale functions. 2411 24122004-02-02 Eric Christopher <echristo@redhat.com> 2413 Zack Weinberg <zack@codesourcery.com> 2414 2415 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use 2416 -finput-charset. 2417 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto. 2418 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto 2419 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto. 2420 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto. 2421 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto. 2422 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto. 2423 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto. 2424 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc: 2425 Ditto. 2426 24272004-02-02 Paolo Carlini <pcarlini@suse.de> 2428 2429 * include/bits/stl_function.h: Additional minor tweaks. 2430 * include/bits/stl_multiset.h: Likewise. 2431 2432 * include/bits/stl_queue.h: Minor tweaks. 2433 24342004-02-02 Paolo Carlini <pcarlini@suse.de> 2435 2436 PR libstdc++/13976 (continued) 2437 * include/ext/malloc_allocator.h (malloc_allocator::deallocate): 2438 Make the second parameter unnamed, to void unused parameter 2439 warnings. 2440 * include/ext/new_allocator.h (new_allocator::deallocate): Ditto. 2441 24422004-02-02 Paolo Carlini <pcarlini@suse.de> 2443 2444 PR libstdc++/13976 2445 * include/ext/malloc_allocator.h (malloc_allocator::allocate): 2446 Make the second parameter unnamed, to void unused parameter 2447 warnings. 2448 * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto. 2449 * include/ext/new_allocator.h (new_allocator::allocate): Ditto. 2450 24512004-02-01 Paolo Carlini <pcarlini@suse.de> 2452 2453 * include/bits/stl_algo.h: Additional minor tweaks. 2454 * include/bits/stl_map.h: Likewise. 2455 * include/bits/stl_multimap.h: Likewise. 2456 * include/bits/stl_multiset.h: Likewise. 2457 * include/bits/stl_set.h: Likewise. 2458 * include/bits/stl_tree.h: Likewise. 2459 24602004-02-01 Paolo Carlini <pcarlini@suse.de> 2461 2462 * include/bits/vector.tcc (vector::_M_insert_aux(iterator)): 2463 Remove, unused. 2464 24652004-02-01 Paolo Carlini <pcarlini@suse.de> 2466 2467 * include/bits/stl_function.h: Additional minor tweaks. 2468 24692004-02-01 Paolo Carlini <pcarlini@suse.de> 2470 2471 * include/bits/deque.tcc: Wrap overlong lines, constify 2472 a few variables, reformat according to the coding standards. 2473 * include/bits/list.tcc: Likewise. 2474 * include/bits/stl_deque.h: Likewise. 2475 * include/bits/stl_function.h: Likewise. 2476 * include/bits/stl_iterator.h: Likewise. 2477 * include/bits/stl_iterator_base_funcs.h: Likewise. 2478 * include/bits/stl_iterator_base_types.h: Likewise. 2479 * include/bits/stl_list.h: Likewise. 2480 * include/bits/stl_map.h: Likewise. 2481 * include/bits/stl_multimap.h: Likewise. 2482 * include/bits/stl_multiset.h: Likewise. 2483 * include/bits/stl_relops.h: Likewise. 2484 * include/bits/stl_set.h: Likewise. 2485 24862004-02-01 Paolo Carlini <pcarlini@suse.de> 2487 2488 * include/bits/stl_bvector.h: Wrap overlong lines, constify 2489 a few variables, reformat according to the coding standards. 2490 * include/bits/stl_tree.h: Likewise. 2491 24922004-01-31 Paolo Carlini <pcarlini@suse.de> 2493 2494 * include/bits/stl_algo.h: Minor additional reformat, add 2495 copyright year. 2496 * include/bits/stl_algobase.h: Add copyright year. 2497 24982004-01-31 Paolo Carlini <pcarlini@suse.de> 2499 2500 * include/bits/stl_algo.h: Wrap overlong lines, constify 2501 a few variables, reformat according to the coding standards. 2502 * include/bits/stl_algobase.h: Likewise. 2503 * include/bits/stl_heap.h: Likewise. 2504 25052004-01-31 Paolo Carlini <pcarlini@suse.de> 2506 2507 * include/bits/basic_string.h (_Rep::operator[]): Remove, unused. 2508 2509 * include/bits/basic_string.h: Fix two comments. 2510 25112004-01-31 Per Bothner <per@bothner.com> 2512 2513 * include/ext/mt_allocator.h 2514 (__mt_alloc::_S_thread_freelist_mutex): Guard with 2515 __GTHREAD_MUTEX_INIT. 2516 25172004-01-31 Paolo Carlini <pcarlini@suse.de> 2518 2519 * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak. 2520 25212004-01-30 Paolo Carlini <pcarlini@suse.de> 2522 2523 * testsuite/21_strings/basic_string/cons/char/6.cc: New. 2524 * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New. 2525 * testsuite/performance/21_strings/string_cons_input_iterator.cc: New. 2526 25272004-01-30 Felix Yen <fwy@alumni.brown.edu> 2528 2529 * testsuite/performance/20_util/allocator_thread.cc (do_loop): 2530 Don't use clear, but instead assign. Use insert. 2531 25322004-01-30 Benjamin Kosnik <bkoz@redhat.com> 2533 2534 * src/demangle.cc: Add instantiations. 2535 * src/Makefile.am: Remove special rules for demangle.lo, demangle.o. 2536 * src/Makefile.in: Regenerate. 2537 25382004-01-30 David Edelsohn <edelsohn@gnu.org> 2539 2540 * src/allocator.cc: Protect _S_get_thread_id() and 2541 _S_thread_key_destr() with #ifdef __GTHREADS. 2542 25432004-01-30 Paolo Carlini <pcarlini@suse.de> 2544 2545 Reshuffle performance testsuite. 2546 * testsuite/performance/allocator.cc, allocator_map_thread.cc, 2547 allocator_thread.cc, complex_norm.cc, container_benchmark.cc, 2548 cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc, 2549 fstream_seek_write.cc, ifstream_extract_float.cc, 2550 ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc, 2551 list_create_fill_sort.cc, map_create_fill.cc, 2552 narrow_widen_char.cc, narrow_widen_wchar_t.cc, 2553 ofstream_insert_float.cc, ofstream_insert_int.cc, 2554 string_append.cc, wchar_t_in.cc, wchar_t_length.cc, 2555 wchar_t_out.cc: Split into... 2556 * testsuite/performance/20_util/allocator.cc: New. 2557 * testsuite/performance/20_util/allocator_map_thread.cc: New. 2558 * testsuite/performance/20_util/allocator_thread.cc: New. 2559 * testsuite/performance/21_strings/string_append: New. 2560 * testsuite/performance/22_locale/is_wchar_t.cc: New. 2561 * testsuite/performance/22_locale/narrow_widen_char.cc: New. 2562 * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New. 2563 * testsuite/performance/22_locale/wchar_t_in.cc: New. 2564 * testsuite/performance/22_locale/wchar_t_length.cc: New. 2565 * testsuite/performance/22_locale/wchar_t_out.cc: New. 2566 * testsuite/performance/23_containers/container_benchmark.cc: New. 2567 * testsuite/performance/23_containers/list_create_fill_sort.cc: New. 2568 * testsuite/performance/23_containers/map_create_fill.cc: New. 2569 * testsuite/performance/26_numerics/complex_norm.cc: New. 2570 * testsuite/performance/27_io/cout_insert_int.cc: New. 2571 * testsuite/performance/27_io/filebuf_copy.cc: New. 2572 * testsuite/performance/27_io/filebuf_sputc.cc: New. 2573 * testsuite/performance/27_io/fstream_seek_write.cc: New. 2574 * testsuite/performance/27_io/ifstream_extract_float.cc: New. 2575 * testsuite/performance/27_io/ifstream_extract_int.cc: New. 2576 * testsuite/performance/27_io/ifstream_getline.cc: New. 2577 * testsuite/performance/27_io/ofstream_insert_float.cc: New. 2578 * testsuite/performance/27_io/ofstream_insert_int.cc: New. 2579 25802004-01-30 Paolo Carlini <pcarlini@suse.de> 2581 2582 * include/bits/basic_string.tcc (_Rep::_S_create): 2583 Never allocate a string bigger than max_size(); always keep 2584 __capacity and __size in sync to avoid memory leaks at 2585 deallocation time. 2586 25872004-01-30 Paolo Carlini <pcarlini@suse.de> 2588 2589 * include/bits/basic_string.tcc (_S_construct(_InIterator, 2590 _InIterator, const _Alloc&, input_iterator_tag)): Simplify 2591 the double loop, streamline. 2592 2593 * include/bits/basic_string.tcc: Very minor tweaks. 2594 25952004-01-30 Loren J. Rittle <ljrittle@acm.org> 2596 2597 * scripts/check_performance: Only compile with $THREAD_FLAG 2598 when test is marked to require it. Allow multiple 2599 compilations/executions of marked tests. 2600 * testsuite/testsuite_performance.h (report_performance): 2601 Report dynamic thread support status. 2602 (report_header): Likewise. 2603 * testsuite/performance/allocator.cc: Stabilize iteration 2604 count. Support more allocators. Mark each allocator test to 2605 run and report independently. 2606 * testsuite/performance/allocator_map_thread.cc: Likewise. 2607 * testsuite/performance/allocator_thread.cc: Likewise. 2608 26092004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com> 2610 2611 * config/local/generic/c_locale.h: Change ::malloc() to new char[]. 2612 * config/local/gnu/c_locale.h: Change ::malloc() to new char[]. 2613 * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use 2614 std::get_temporary_buffer() instead of duplicating its code. 2615 Update to C++STYLE conventions. 2616 * include/std/std_memory.h (get_temporary_buffer): Use ::operator 2617 new() instead of std::malloc(). 2618 (return_temporary_buffer): Use ::operator delete() instead of 2619 std::free(). 2620 26212004-01-29 Benjamin Kosnik <bkoz@redhat.com> 2622 2623 * include/bits/allocator.h: Temporary switch to new_allocator as 2624 the default to unjam bootstraps. 2625 26262004-01-28 Benjamin Kosnik <bkoz@redhat.com> 2627 2628 * include/Makefile.am (bits_headers): Remove allocator_traits.h. 2629 * include/Makefile.in: Regenerate. 2630 * include/bits/allocator_traits.h: Remove. 2631 * include/bits/allocator.h: Remove allocator_traits.h include, and 2632 relevant comments. 2633 (allocator): Empty base class, inherit from the underlying allocator. 2634 * src/allocator-inst.cc: Move __pool_alloc instantiation to... 2635 * src/allocator.cc: ...here. New. For the underlying allocators. 2636 Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits. 2637 * config/linker-map.gnu: Remove __pool_alloc bits. 2638 * src/Makefile.am (sources): Add allocator.cc. 2639 * src/Makefile.in: Regenerate. 2640 * testsuite/20_util/allocator/1.cc: Split second test into... 2641 * testsuite/20_util/allocator/8230.cc: ...this. 2642 * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector 2643 typedef to use std::allocatore. Format. 2644 * include/ext/pool_allocator.h: Remove allocator_traits.h include, 2645 _Alloc_traits. 2646 * include/ext/mt_allocator.h (__gnu_cxx): Qualify 2647 __throw_bad_alloc calls. Don't include <memory>. 2648 * include/ext/malloc_allocator.h: Remove <memory> include. 2649 * include/ext/new_allocator.h (new_allocator): Same. 2650 * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using 2651 declaration. Switch __alloc to _Alloc. 2652 * include/ext/hashtable.h: Remove __alloc. 2653 * include/backward/alloc.h: Only inject allocator, not 2654 implementation details. 2655 2656 * include/ext/mt_allocator.h: Replace free with delete. 2657 26582004-01-28 Benjamin Kosnik <bkoz@redhat.com> 2659 2660 * src/globals_io.cc: Change to __gnu_internal namespace. 2661 * src/globals_locale.cc: Same. 2662 * src/locale_init.cc: Same. 2663 * src/ios_init.cc: Same. 2664 26652004-01-28 Stefan Olsson <stefan@snon.net> 2666 2667 * include/ext/mt_allocator.h: Replaced all malloc() calls with 2668 operator new(). Added support for the env variable 2669 GLIBCXX_FORCE_NEW (this required the _S_init call to be the first 2670 one in allocate() as well). Fix typos. 2671 26722004-01-28 Paolo Carlini <pcarlini@suse.de> 2673 2674 * include/bits/basic_string.h (_S_create(size_t, 2675 const _Alloc&): Change signature to take two size_type 2676 arguments. 2677 * include/bits/basic_string.tcc (_S_construct(_InIterator, 2678 _InIterator, const _Alloc&, input_iterator_tag)): Update 2679 call, tweak a bit. 2680 (_S_construct(_InIterator, _InIterator, const _Alloc&, 2681 forward_iterator_tag)): Likewise. 2682 (_S_construct(size_type, _CharT, const _Alloc&)): Likewise. 2683 (_M_mutate(size_type, size_type, size_type)): Don't 2684 implement the exponential growth policy, demand it to 2685 _S_create, update call and simplify. 2686 (_M_clone(const _Alloc&, size_type)): Likewise. 2687 (_S_create(size_type, size_type, const _Alloc&)): Implement 2688 the growth policy, simplify otherwise. 2689 2690 * include/bits/basic_string.h (_Rep::operator[]): Tweak 2691 signature to take a size_type, consistently with the other 2692 members. 2693 26942004-01-27 Benjamin Kosnik <bkoz@redhat.com> 2695 2696 * testsuite/27_io/ios_base/storage/11584.cc: Correct new and 2697 delete declarations, add include and test variable. 2698 26992003-01-27 Jerry Quinn <jlquinn@optonline.net> 2700 2701 * include/bits/codecvt.h, include/bits/locale_facets.h, 2702 include/bits/postypes.h, include/bits/stl_bvector.h, 2703 include/bits/stl_multiset.h, include/bits/stl_set.h, 2704 include/bits/stream_iterator.h, include/bits/streambuf_iterator.h, 2705 include/std/std_complex.h: Document. 2706 27072004-01-27 Jerry Quinn <jlquinn@optonline.net> 2708 2709 PR libstdc++/11584 2710 * include/bits/ios_base.h (ios_base::_M_grow_words): Add 2711 iword/pword selector. 2712 (ios_base::iword, ios_base::pword): Use it. 2713 * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero 2714 iword or pword member on alloc failure. 2715 * testsuite/27_io/ios_base/storage/11584.cc: New test. 2716 27172004-01-27 Ulrich Weigand <uweigand@de.ibm.com> 2718 PJ Darcy <darcypj@us.ibm.com> 2719 2720 * configure.host: Add support for *-tpf. 2721 * crossconfig.m4: Likewise. 2722 * configure: Regenerate. 2723 * config/os/tpf: New directory. 2724 * config/os/tpf/os_defines.h: New file. 2725 * config/os/tpf/ctype_base.h: Likewise. 2726 * config/os/tpf/ctype_inline.h: Likewise. 2727 * config/os/tpf/ctype_noninline.h: Likewise. 2728 27292004-01-27 Paolo Carlini <pcarlini@suse.de> 2730 2731 PR libstdc++/13884 2732 * include/bits/sstream.tcc: Guard use of extern template. 2733 27342004-01-27 Paolo Carlini <pcarlini@suse.de> 2735 2736 * include/bits/basic_string.tcc 2737 (basic_string(const basic_string&, size_type, size_type), 2738 basic_string(const basic_string&, size_type, size_type, 2739 const _Alloc&)): Avoid unnecessarily constructing iterators. 2740 27412004-01-26 Paolo Carlini <pcarlini@suse.de> 2742 2743 * config/locale/generic/c_locale.cc: Fix throw messages 2744 to use the __N marker. 2745 * config/locale/gnu/c_locale.cc: Likewise. 2746 * config/locale/ieee_1003.1-2001/codecvt_specializations.h: 2747 Likewise. 2748 * docs/html/17_intro/C++STYLE: Likewise. 2749 * include/bits/basic_ios.tcc: Likewise. 2750 * include/bits/fstream.tcc: Likewise. 2751 * include/bits/vector.tcc: Likewise. 2752 * include/ext/ropeimpl.h: Likewise. 2753 * include/std/std_bitset.h: Likewise. 2754 * src/ios.cc: Likewise. 2755 * src/locale.cc: Likewise. 2756 * src/localename.cc: Likewise. 2757 27582004-01-26 Paolo Carlini <pcarlini@suse.de> 2759 2760 * include/bits/basic_string.h (_M_replace_aux): Use the 2761 __N marker in throw message. 2762 * include/bits/basic_string.tcc (assign(const _CharT*, 2763 size_type), insert(size_type, const _CharT*, size_type), 2764 replace(size_type, size_type, const _CharT*, size_type), 2765 reserve, _Rep::_S_create, resize, _M_replace_dispatch): 2766 Likewise. 2767 2768 * include/bits/basic_string.h, include/bits/basic_string.tcc: 2769 Fold overlong lines, minor formatting changes. 2770 27712004-01-26 Paolo Carlini <pcarlini@suse.de> 2772 2773 * include/bits/basic_string.h (replace(iterator, iterator, 2774 const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT. 2775 (replace(iterator, iterator, const _CharT*)): Ditto. 2776 (replace(iterator, iterator, const _CharT*, size_type)): 2777 Add missing _GLIBCXX_DEBUG_PEDASSERT. 2778 27792004-01-26 Paolo Carlini <pcarlini@suse.de> 2780 2781 * include/bits/basic_string.tcc (replace(size_type, 2782 size_type, const _CharT*, size_type)): Implement optimized 2783 in-place algorithm for non-overlapping ranges. 2784 * testsuite/21_strings/basic_string/replace/char/6.cc: New. 2785 * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New. 2786 2787 * include/bits/basic_string.tcc (insert(size_type, 2788 const _CharT*, size_type)): Tweak slightly. 2789 27902004-01-26 Andreas Schwab <schwab@suse.de> 2791 2792 * config/locale/gnu/monetary_members.cc: Restore locale before 2793 rethrowing exception. 2794 27952004-01-25 Paolo Carlini <pcarlini@suse.de> 2796 2797 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe): 2798 Define inline here. 2799 * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe): 2800 Move inline. 2801 2802 * include/bits/basic_string.tcc: Very minor tweaks. 2803 28042004-01-25 Paolo Carlini <pcarlini@suse.de> 2805 2806 * testsuite/performance/string_append.cc: Increase number 2807 of iterations. 2808 28092004-01-25 Paolo Carlini <pcarlini@suse.de> 2810 2811 * include/bits/basic_string.h (erase(size_type, size_type), 2812 erase(iterator), erase(iterator, iterator)): Call _M_replace_safe 2813 instead, thus avoiding redundant check for length_error. 2814 2815 * include/bits/basic_string.h: Tweak some comments. 2816 28172004-01-24 Paolo Carlini <pcarlini@suse.de> 2818 2819 * include/bits/basic_string.tcc (operator+(const _CharT*, 2820 const basic_string&)): No need to go through the append 2821 taking two iterators. 2822 28232004-01-24 Paolo Carlini <pcarlini@suse.de> 2824 2825 * include/bits/basic_string.tcc (rfind(_CharT, size_type)): 2826 Revert last change to use std::min: machine language is worse. 2827 (find_last_of(const _CharT*, size_type, size_type)): Ditto. 2828 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto. 2829 (find_last_not_of(_CharT, size_type)): Ditto. 2830 2831 * include/bits/basic_string.tcc (insert(size_type, const _CharT*, 2832 size_type)): Discard the value returned by _M_check. 2833 (replace(size_type, size_type, const _CharT*, size_type)): Ditto. 2834 (append(const basic_string&, size_type, size_type)): Ditto. 2835 (copy(_CharT*, size_type, size_type)): Ditto. 2836 (compare(size_type, size_type, const basic_string&)): Ditto. 2837 (compare(size_type, size_type, const basic_string&, 2838 size_type, size_type)): Ditto. 2839 (compare(size_type, size_type, const _CharT*)): Ditto. 2840 (compare(size_type, size_type, const _CharT*, size_type)): Ditto. 2841 28422004-01-24 Paolo Carlini <pcarlini@suse.de> 2843 2844 * include/bits/basic_string.h (insert(size_type, 2845 const basic_string&, size_type, size_type)): Define inline here. 2846 * include/bits/basic_string.tcc (insert(size_type, 2847 const basic_string&, size_type, size_type)): Move inline. 2848 28492004-01-24 Paolo Carlini <pcarlini@suse.de> 2850 2851 * include/bits/basic_string.h (assign(const basic_string&, 2852 size_type, size_type)): Define inline here. 2853 (replace(size_type, size_type, const basic_string&, 2854 size_type, size_type)): Ditto. 2855 (_M_replace_dispatch(iterator, iterator, _InputIterator, 2856 _InputIterator, __false_type)): Only declare. 2857 (_M_replace(iterator, iterator, _InputIterator, 2858 _InputIterator)): Remove. 2859 * include/bits/basic_string.tcc (assign(const basic_string&, 2860 size_type, size_type)): Move inline. 2861 (replace(size_type, size_type, const basic_string&, 2862 size_type, size_type)): Ditto. 2863 (_M_replace_dispatch(iterator, iterator, _InputIterator, 2864 _InputIterator, __false_type)): Define, now does also what 2865 _M_replace did before. 2866 * src/string-inst.cc (_M_replace): Don't instantiate. 2867 2868 * include/bits/basic_string.tcc (find(const _CharT*, 2869 size_type, size_type)): Tidy. 2870 (rfind(_CharT, size_type)): Ditto. 2871 (find_first_not_of(const _CharT*, size_type, size_type)): Ditto. 2872 (find_first_not_of(_CharT, size_type)): Ditto. 2873 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto. 2874 (find_last_not_of(_CharT, size_type)): Ditto. 2875 28762004-01-23 Paolo Carlini <pcarlini@suse.de> 2877 2878 PR libstdc++/13838 2879 * include/debug/bitset (operator|=): Fix typo. 2880 * testsuite/23_containers/bitset/operations/13838.cc: New. 2881 28822004-01-23 Paolo Carlini <pcarlini@suse.de> 2883 2884 * include/bits/basic_string.tcc (insert(size_type, 2885 const _CharT*, size_type __n)): Fix length_error check. 2886 (replace(size_type, size_type, const _CharT*, size_type): 2887 Ditto; call _M_replace_safe. 2888 (_M_replace_aux(size_type, size_type, size_type, _CharT): 2889 Fix length_error check. 2890 (_M_replace(iterator, iterator, _InputIterator, 2891 _InputIterator)): Ditto, tweak. 2892 (_M_replace_safe(size_type, size_type, const _CharT*, 2893 size_type)): Remove length_error check. 2894 2895 * include/bits/basic_string.tcc (append(const basic_string&), 2896 append(const basic_string&, size_type, size_type)): Tweak 2897 comment. 2898 2899 * include/bits/basic_string.tcc (copy(_CharT*, size_type, 2900 size_type)): If __n == 0 don't call traits::copy. 2901 29022004-01-23 Stefan Olsson <stefan@snon.net> 2903 2904 * include/ext/mt_allocator.h: Reduce lock contention. 2905 29062004-01-23 Paolo Carlini <pcarlini@suse.de> 2907 2908 PR libstdc++/13831 2909 * include/bits/fstream.tcc (underflow): Remove unused 2910 variable. 2911 * include/bits/streambuf_iterator.h (equal): Ditto. 2912 * include/bits/locale_facets.h (_M_convert_from_char): 2913 Ditto. 2914 29152004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 2916 2917 PR c/13814 2918 * config/linker-map.gnu (nan): Delete. 2919 * libmath/mathconf.h (NAN, nan): Delete. 2920 * linkage.m4 (nan): Don't check for it. 2921 * libmath/nan.c: Delete file. 2922 2923 * config.h.in, configure: Regenerate. 2924 29252004-01-23 Paolo Carlini <pcarlini@suse.de> 2926 2927 * include/bits/basic_string.h (push_back(_CharT)): 2928 Call _M_replace_aux. 2929 (insert(size_type, const basic_string&)): Trivial tweak. 2930 (insert(size_type, size_type, _CharT)): Call _M_replace_aux. 2931 (insert(iterator, _CharT)): Ditto. 2932 (erase(size_type, size_type)): Ditto. 2933 (erase(iterator)): Ditto. 2934 (erase(iterator, iterator)): Ditto. 2935 (replace(size_type, size_type, size_type, _CharT)): Ditto. 2936 29372004-01-23 Loren J. Rittle <ljrittle@acm.org> 2938 2939 libstdc++/13823 2940 * testsuite/performance/allocator_map_thread.cc: New test. 2941 29422004-01-22 Paolo Carlini <pcarlini@suse.de> 2943 2944 * include/bits/locale_facets.tcc 2945 (money_put::do_put(..., long double)): Use the basic_string 2946 constructor for char arrays, not that for C-strings, to pass 2947 __digits to do_put(..., const string_type&): __ws isn't 2948 null-terminated. 2949 29502004-01-22 Paolo Carlini <pcarlini@suse.de> 2951 2952 * include/bits/basic_string.h (_M_replace_safe): Change 2953 signatures to take size_types and const _CharT*. 2954 (_M_replace_aux): Likewise, takes size_types instead of 2955 iterators. 2956 (append(size_type, _CharT)): Update call. 2957 (assign(size_type, _CharT)): Ditto. 2958 (replace(iterator, iterator, size_type, _CharT)): Ditto. 2959 (_M_replace_dispatch(iterator, iterator, _Integer, 2960 _Integer, __true_type)): Ditto. 2961 * include/bits/basic_string.tcc (assign(const _CharT*, 2962 size_type)): Ditto. 2963 (insert(size_type, const _CharT*, size_type)): Ditto. 2964 (replace(size_type, size_type, const _CharT*, 2965 size_type)): Ditto. 2966 (_M_replace(iterator, iterator, _InputIterator, 2967 _InputIterator)): Ditto. 2968 (append(const basic_string&)): Ditto. 2969 (append(const basic_string&, size_type, size_type): Ditto. 2970 (append(const _CharT*, size_type): Ditto. 2971 (_M_replace_safe, _M_replace_safe): Change definitions 2972 accordingly, simplify. 2973 * string-inst.cc (_M_replace_safe): Don't instantiate. 2974 29752004-01-21 Paolo Carlini <pcarlini@suse.de> 2976 2977 * include/bits/basic_string.tcc (append(const basic_string&)): 2978 Revert previous change. 2979 (append(const basic_string&, size_type, size_type)): Revert 2980 previous change, use _M_check and _M_limit. 2981 29822004-01-21 Paolo Carlini <pcarlini@suse.de> 2983 2984 * include/bits/basic_string.h (_M_check): Change to return 2985 a checked __pos and take an additional const char* argument. 2986 (_M_fold): Rename to _M_limit, change to return a size_type, 2987 corresponding to the __off limited to the actual length. 2988 (insert(size_type, size_type, _CharT)): Update call, call 2989 replace. 2990 (insert(iterator, _CharT)): Call replace(iterator, iterator, 2991 size_type, _CharT) instead. 2992 (erase(size_type, size_type)): Update calls. 2993 (replace(size_type, size_type, size_type, _CharT)): Ditto. 2994 (substr(size_type, size_type)): Use _M_check. 2995 * include/bits/basic_string.tcc (basic_string(const basic_string&, 2996 size_type, size_type)): Update calls. 2997 (basic_string(const basic_string&, size_type, size_type, 2998 const _Alloc&)): Ditto. 2999 (assign(const basic_string&, size_type, size_type)): Use the 3000 new _M_check and _M_limit. 3001 (insert(size_type, const basic_string&, size_type, size_type): 3002 Ditto. 3003 (insert(size_type, const _CharT*, size_type)): Ditto. 3004 (replace(size_type, size_type, const _CharT*, size_type): Ditto. 3005 (replace(size_type, size_type, const basic_string&, 3006 size_type, size_type)): Ditto. 3007 (append(const basic_string&)): Ditto. 3008 (append(const basic_string&, size_type, size_type)): Ditto. 3009 (copy(_CharT*, size_type, size_type)): Ditto. 3010 (compare(size_type, size_type, const basic_string&)): Ditto. 3011 (compare(size_type, size_type, const basic_string&,size_type, 3012 size_type)): Ditto. 3013 (compare(size_type, size_type, const _CharT*)): Ditto. 3014 (compare(size_type, size_type, const _CharT*, size_type)): Ditto. 3015 30162004-01-19 Stefan Olsson <stefan@snon.net> 3017 3018 * include/ext/mt_allocator.h: If a thread, when it dies, still has 3019 memory on it's freelist this memory is not returned to global 3020 list. Simplification of deallocate so that memory is always 3021 returned to the calling thread id's freelist instead of to 3022 global. Fix typos. Add volatile where appropriate. 3023 30242004-01-19 Loren J. Rittle <ljrittle@acm.org> 3025 3026 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered. 3027 * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but 3028 use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream. 3029 30302004-01-19 Paolo Carlini <pcarlini@suse.de> 3031 3032 * src/debug.cc: Make sure all the names are prefixed with 3033 double (or single) underscore. 3034 30352004-01-19 Paolo Carlini <pcarlini@suse.de> 3036 3037 * src/debug.cc: Trivial formatting change. 3038 30392004-01-19 Paolo Carlini <pcarlini@suse.de> 3040 3041 * include/bits/basic_string.tcc (_S_construct(size_type, 3042 _CharT, const _Alloc&)): Remove redundant try/catch. 3043 (_M_mutate(size_type, size_type, size_type)): Ditto. 3044 (_M_clone(const _Alloc&, size_type)): Ditto. 3045 30462004-01-18 Paolo Carlini <pcarlini@suse.de> 3047 3048 * include/bits/basic_string.h (c_str()): Simplify, due to 3049 21.3.4 the internal representation is always kept null-terminated. 3050 * include/bits/basic_string.tcc (_M_clone): Null-terminate. 3051 * testsuite/21_strings/basic_string/element_access/char/4.cc: New. 3052 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc: 3053 Ditto. 3054 30552004-01-18 Paolo Carlini <pcarlini@suse.de> 3056 3057 * include/bits/basic_string.h (append(size_type, _CharT)): 3058 Moved inline, just call _M_replace_aux, no source iterators at 3059 risk of being clobbered. 3060 (assign(size_type, _CharT)): Call directly _M_replace_aux. 3061 (_M_replace(iterator, iterator, _InputIterator, _InputIterator, 3062 input_iterator_tag)): Remove fifth unused argument. 3063 (_M_replace_dispatch(iterator, iterator, _InputIterator, 3064 _InputIterator, __false_type)): Update call. 3065 * include/bits/basic_string.tcc (replace(size_type, size_type, 3066 const _CharT*, size_type)): Update call. 3067 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak 3068 throw string literal. 3069 (_M_replace_safe(iterator, iterator, _ForwardIterator, 3070 _ForwardIterator)): Likewise. 3071 (_M_replace(iterator, iterator, _InputIterator, _InputIterator, 3072 input_iterator_tag)): Remove fifth unused argument. 3073 (append(size_type __n, _CharT __c)): Move inline. 3074 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator, 3075 const C*, const C*, input_iterator_tag)): Remove fifth unused 3076 argument. 3077 30782004-01-16 Benjamin Kosnik <bkoz@redhat.com> 3079 3080 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards. 3081 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same. 3082 30832004-01-16 Danny Smith <dannysmith@users.sourceforge.net> 3084 3085 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling 3086 mkfifo for mingw32. 3087 30882004-01-15 Stefan Olsson <stefan@snon.net> 3089 3090 * include/ext/mt_allocator.h: Reuse thread id's as soon as 3091 possible by changing the behaviour of thread_freelist to do 3092 push_front when threads die instead of push_back. 3093 30942004-01-14 Paolo Carlini <pcarlini@suse.de> 3095 3096 * include/bits/locale_facets.h (struct __numpunct_cache): 3097 Add member _M_grouping_size, caching the length of _M_grouping. 3098 (__numpunct_cache<>::_M_cache): Assign the latter. 3099 (__verify_grouping): Move declaration... 3100 * include/bits/locale_facets.tcc (__verify_grouping): 3101 ... here, change signature to take a const char* and a size_t 3102 for the grouping; not a template anymore. 3103 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float): 3104 Likewise change signature and tweak consistently. 3105 (num_get::_M_extract_float, num_get::_M_extract_int, 3106 num_put::_M_insert_int, num_put::_M_insert_float, 3107 money_get::do_get(string_type&), money_get::do_put(string_type)): 3108 Update callers. 3109 * config/locale/generic/numeric_members.cc 3110 (numpunct<>::_M_initialize_numpunct): Assign the new member. 3111 * config/locale/gnu/numeric_members.cc 3112 (numpunct<>::_M_initialize_numpunct): Likewise. 3113 * src/locale-inst.cc (__add_grouping): Tweak signature. 3114 (__verify_grouping): Don't instantiate, not a template anymore. 3115 3116 * include/bits/locale_facets.h: Rename _M_truename_len -> 3117 _M_truename_size, _M_falsename_len -> _M_falsename_size. 3118 * include/bits/locale_facets.tcc: Likewise. 3119 * config/locale/generic/numeric_members.cc: Likewise. 3120 * config/locale/gnu/numeric_members.cc: Likewise. 3121 31222004-01-14 Stefan Olsson <stefan@snon.net> 3123 3124 * include/ext/mt_allocator.h: Fixups. 3125 * testsuite/performance/allocator.cc: Enable __mt_alloc tests. 3126 * testsuite/performance/allocator_thread.cc: Same. 3127 31282004-01-13 Benjamin Kosnik <bkoz@redhat.com> 3129 3130 * testsuite/performance/ifstream_extract_float.cc: Add higher 3131 precision tests. 3132 * testsuite/performance/ofstream_insert_float.cc: Same. 3133 31342004-01-13 Paolo Carlini <pcarlini@suse.de> 3135 3136 * src/locale-misc-inst.cc (__convert_from_v(long), 3137 __convert_from_v(unsigned long), __convert_from_v(long long), 3138 __convert_from_v(unsigned long long)): Remove, unused. 3139 31402004-01-13 Benjamin Kosnik <bkoz@redhat.com> 3141 3142 * testsuite/performance/ifstream_extract_float.cc: New. 3143 * testsuite/performance/ofstream_insert_float.cc: Float generation 3144 matches above. 3145 3146 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into... 3147 * 20_util/auto_ptr/1.cc: ...this. 3148 * 20_util/auto_ptr/2.cc: Same. 3149 * 20_util/auto_ptr/3.cc: Same. 3150 * 20_util/auto_ptr/3946.cc: Same. 3151 * 20_util/auto_ptr/4.cc: Same. 3152 * 20_util/auto_ptr/5.cc: Same. 3153 * 20_util/auto_ptr/6.cc: Same. 3154 * 20_util/auto_ptr/7.cc: Same. 3155 * 20_util/auto_ptr/assign_neg.cc 3156 * 20_util/pairs.cc: Break into... 3157 * 20_util/pair/1.cc: ...this. 3158 * 20_util/pair/2.cc: Same. 3159 * 20_util/pair/3.cc: Same. 3160 * 20_util/pair/4.cc: Same. 3161 31622004-01-13 Paolo Carlini <pcarlini@suse.de> 3163 3164 * include/bits/locale_facets.tcc (num_get::do_get(void*&)): 3165 Set correctly just basefield, the only group that matters. 3166 31672004-01-13 Paolo Carlini <pcarlini@suse.de> 3168 3169 * include/ext/rope (_Rope_rep_alloc_base): Eliminate. 3170 (_Rope_rep_base): Inherit directly from the rope allocator; 3171 use rebinding instead of _Alloc_traits; pick up data member 3172 from _Rope_rep_alloc_base. 3173 (_Rope_alloc_base): Eliminate. 3174 (_Rope_base): Inherit directly from the rope allocator; use 3175 rebinding instead of _Alloc_traits; pick up data member from 3176 _Rope_alloc_base. 3177 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation, 3178 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak. 3179 31802004-01-13 Paolo Carlini <pcarlini@suse.de> 3181 3182 PR libstdc++/13650 3183 * include/bits/basic_string.tcc (compare(size_type, size_type, 3184 const _CharT*, size_type)): Implement correctly the resolution 3185 of DR 5: basically, s is a char array, -not- a C string. 3186 * include/bits/basic_string.h: Tweak some comments. 3187 * testsuite/21_strings/basic_string/compare/char/13650.cc: New. 3188 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New. 3189 31902004-01-12 Andreas Tobler <a.tobler@schweiz.ch> 3191 3192 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for 3193 Solaris. 3194 31952004-01-12 Paolo Carlini <pcarlini@suse.de> 3196 3197 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: 3198 Use try_mkfifo. 3199 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: 3200 Likewise. 3201 32022004-01-12 Paolo Carlini <pcarlini@suse.de> 3203 3204 * include/bits/locale_facets.h (struct __numpunct_cache): 3205 Add members _M_truename_len and _M_falsename_len, caching 3206 the lengths of _M_truename and _M_falsename. 3207 (__numpunct_cache<>::_M_cache): Assign the latter. 3208 * include/bits/locale_facets.tcc (num_get::do_get(bool&), 3209 num_put::do_put(bool)): Use the new members, thus avoiding 3210 computing string lengths again and again. 3211 * config/locale/generic/numeric_members.cc 3212 (numpunct<>::_M_initialize_numpunct): Assign the new members. 3213 * config/locale/gnu/numeric_members.cc 3214 (numpunct<>::_M_initialize_numpunct): Likewise. 3215 32162004-01-12 Mark Mitchell <mark@codesourcery.com> 3217 3218 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it. 3219 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define 3220 it. 3221 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo 3222 and remove Cygwin XFAIL. 3223 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise. 3224 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise. 3225 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise. 3226 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: 3227 Likewise. 3228 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise. 3229 * testsuite/27_io/objects/char/7.cc: Likewise. 3230 * testsuite/27_io/objects/char/9661-1.cc: Likewise. 3231 * testsuite/27_io/objects/wchar_t/7.cc: Likewise. 3232 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise. 3233 32342004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net> 3235 3236 * include/std/std_complex.h (std::complex<>::real): Return a 3237 reference. Add non-const overload. 3238 (std::complex<>::real): Likewise. 3239 (std::real): Likewise. 3240 (std::imag): Likewise. 3241 (std::operator+): Tidy. 3242 (std::operator-): Likewise. 3243 (std::operator*): Likewise. 3244 (std::operator/): Likewise. 3245 (std::operator>>): Likewise. 3246 32472004-01-11 Paolo Carlini <pcarlini@suse.de> 3248 3249 PR libstdc++/13582 3250 * include/bits/fstream.tcc (imbue): Exploit the external 3251 buffer to imbue 'on the fly' a new locale and convert its 3252 remainder with the new codecvt facet. 3253 (underflow): Tweak slightly to deal with this special case. 3254 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New. 3255 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto. 3256 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto. 3257 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto. 3258 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto. 3259 32602004-01-10 Paolo Carlini <pcarlini@suse.de> 3261 3262 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html: 3263 Import Revision 28. 3264 32652004-01-10 Paolo Carlini <pcarlini@suse.de> 3266 3267 PR libstdc++/13630 3268 * include/bits/locale_classes.h (class locale): Fix category 3269 typedef. 3270 * testsuite/22_locale/locale/13630.cc: Add. 3271 32722004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org> 3273 3274 * include/bits/locale_facets.h: Make a name really dependent. This 3275 will be needed when Core Issue 224 is implemented. 3276 32772004-01-09 Paolo Carlini <pcarlini@suse.de> 3278 3279 * testsuite/performance/allocator.cc: Demangle typeid(obj).name(). 3280 * testsuite/performance/allocator_thread.cc: Likewise. 3281 32822004-01-07 Benjamin Kosnik <bkoz@redhat.com> 3283 3284 * crossconfig.m4: Add LFS, io bits to linux cross config. 3285 * acconfig.h: Remove obsolete bits, reorder. 3286 * config.h.in: Regenerate. 3287 * aclocal.m4: Same. 3288 * configure: Same. 3289 32902004-01-07 Gawain Bolton <gp.bolton@computer.org> 3291 3292 * include/bits/stl_list.h: 3293 * include/bits/list.tc: 3294 * src/list.cc: 3295 Performance enhancements for destructor, push_front(), 3296 push_back(), pop_front(), pop_back(), sort() 3297 Eliminated static_casts where possible. 3298 Moved code out of header files into new src/list.cc 3299 implementation file for library where possible. 3300 Remove inheritance from iterator class and create separate 3301 classes for non-constant and constant iterators. 3302 * include/bits/stl_tree.h (_Rb_tree class): 3303 * src/tree.cc: 3304 Only erase contents in destructor. 3305 Eliminate unnecessary initialization in assignment operator. 3306 Optimize for the nominal case by not checking whether 3307 container is empty in clear(). 3308 Re-order test in _M_insert() to improve performance. 3309 Move initialization of new node's left & right pointers to 3310 src/tree.cc to where new node's colour is initialized 3311 and to reduce the amount of inline code. 3312 Use _M_leftmost() and _M_end() to improve readability where 3313 appropriate. 3314 Create separate classes for non-constant and constant 3315 iterators to clarify code, avoid extra template parameters and 3316 casting away constness. 3317 33182004-01-07 Benjamin Kosnik <bkoz@redhat.com> 3319 3320 * src/Makefile.am (sources): Add list.cc, tree.cc. 3321 * src/stl_tree.cc: Move to... 3322 * src/tree.cc: ...here. 3323 * src/list.cc: Add. 3324 * config/linker-map.gnu: Tweaks. 3325 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors. 3326 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors. 3327 3328 * bits/stl_vector.h: Column wrap comments. 3329 33302004-01-07 Loren J. Rittle <ljrittle@acm.org> 3331 3332 (re-open) PR libstdc++/12658 3333 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex. 3334 (locale::global): Likewise. 3335 33362004-01-07 Paolo Carlini <pcarlini@suse.de> 3337 3338 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc: 3339 Remove redundant #include. 3340 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise. 3341 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise, 3342 re-enable normal testing. 3343 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant 3344 #include. 3345 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise. 3346 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc: 3347 Likewise. 3348 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc: 3349 Likewise. 3350 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc: 3351 Likewise. 3352 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc: 3353 Likewise. 3354 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc: 3355 Likewise. 3356 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc: 3357 Likewise. 3358 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc: 3359 Likewise. 3360 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc: 3361 More properly, #include <locale>. 3362 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc: 3363 Remove redundant #include. 3364 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise. 3365 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove 3366 redundant DejaGnu directive. 3367 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove 3368 redundant #include. 3369 33702004-01-06 Benjamin Kosnik <bkoz@redhat.com> 3371 Stefan Olsson <stefan@snon.net> 3372 3373 * scripts/check_performance: Use -pthread. 3374 * testsuite/performance/allocator.cc: Tweaks, add list. 3375 * testsuite/performance/allocator_thread.cc: New. 3376 33772004-01-06 Jerry Quinn <jlquinn@optonline.net> 3378 3379 * include/bits/locale_facets.h: Document public classes and 3380 functions. 3381 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format): 3382 Add comment. 3383 33842004-01-06 Paolo Carlini <pcarlini@suse.de> 3385 3386 * testsuite/27_io/basic_istream/extractors_other/char/1.cc: 3387 Remove redundant #includes. 3388 * testsuite/27_io/basic_istream/extractors_other/char/2.cc: 3389 Likewise. 3390 * testsuite/27_io/basic_istream/extractors_other/char/3.cc: 3391 Likewise. 3392 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise. 3393 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise. 3394 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise. 3395 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise. 3396 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise. 3397 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise. 3398 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise. 3399 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise. 3400 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise. 3401 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise. 3402 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise. 3403 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise. 3404 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise. 3405 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise. 3406 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc: 3407 Likewise. 3408 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: 3409 Likewise. 3410 * testsuite/27_io/basic_istream/readsome/char/8258.cc: 3411 Likewise. 3412 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: 3413 Likewise. 3414 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: 3415 Likewise. 3416 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise. 3417 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise. 3418 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise. 3419 34202004-01-04 Paolo Carlini <pcarlini@suse.de> 3421 3422 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc: 3423 Remove redundant #includes. 3424 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc: 3425 Likewise. 3426 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc: 3427 Likewise. 3428 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc: 3429 Likewise. 3430 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc: 3431 Likewise. 3432 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc: 3433 Likewise. 3434 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc: 3435 Likewise. 3436 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: 3437 Likewise. 3438 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc: 3439 Likewise. 3440 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc: 3441 Likewise. 3442 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc: 3443 Likewise. 3444 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc: 3445 Likewise. 3446 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc: 3447 Likewise. 3448 34492004-01-04 Mark Mitchell <mark@codesourcery.com> 3450 3451 PR c++/12226 3452 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy 3453 constructor. 3454 * testsuite/27_io/basic_fstream/4.cc: Likewise. 3455 * testsuite/27_io/basic_ifstream/4.cc: Likewise. 3456 * testsuite/27_io/basic_ios/4.cc: Likewise. 3457 * testsuite/27_io/basic_iostream/4.cc: Likewise. 3458 * testsuite/27_io/basic_istream/4.cc: Likewise. 3459 * testsuite/27_io/basic_istingstream/4.cc: Likewise. 3460 * testsuite/27_io/basic_ofstream/4.cc: Likewise. 3461 * testsuite/27_io/basic_ostream/4.cc: Likewise. 3462 * testsuite/27_io/basic_ostringstream/4.cc: Likewise. 3463 * testsuite/27_io/basic_stringbuf/5.cc: Likewise. 3464 * testsuite/27_io/basic_stringstream/4.cc: Likewise. 3465 34662004-01-04 Paolo Carlini <pcarlini@suse.de> 3467 3468 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct): 3469 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in; 3470 always use double underscored names. 3471 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct): 3472 Likewise. 3473 * include/bits/locale_facets.h (struct __numpunct_cache): 3474 Dimension _M_atoms_out and _M_atoms_in one position smaller. 3475 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out 3476 and _M_atoms_in. 3477