1 2004-05-16 Paolo Carlini <pcarlini@suse.de>
3 * include/std/std_bitset.h: Minor formatting fixes.
5 2004-05-16 Paolo Carlini <pcarlini@suse.de>
7 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
8 Consistently update __bin._M_free[0].
9 (__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use
10 __bin._M_free[0] to simplify the while loop (i.e., the number
11 of iterations becomes known at the outset).
13 2004-05-15 Paolo Carlini <pcarlini@suse.de>
15 * include/std/std_bitset.h: Trivial formatting fixes.
17 2004-05-14 Paolo Carlini <pcarlini@suse.de>
18 Ivan Godard <igodard@pacbell.net>
21 * include/std/std_bitset.h (_Base_bitset<_Nw>::_M_do_find_next): Fix.
22 * testsuite/23_containers/bitset/ext/15361.cc: New.
24 2004-05-13 Benjamin Kosnik <bkoz@redhat.com>
27 * crossconfig.m4: Add C99 math bits for linux crosses.
28 * configure: Regenerate.
30 2004-05-13 Simon Marshall <simon.marshall@misys.com>
31 Benjamin Kosnik <bkoz@redhat.com>
34 * include/bits/locale_facets.h: Fix for -fno-for-scope.
35 * include/debug/safe_sequence.h: Same.
36 * include/debug/safe_iterator.tcc: Same.
38 * src/locale.cc: Same.
39 * src/locale_init.cc: Same.
40 * src/localename.cc: Same.
41 * config/locale/gnu/ctype_members.cc: Same.
42 * config/locale/gnu/numeric_members.cc: Same.
43 * testsuite/testsuite_abi.cc: Same.
44 * testsuite/testsuite_hooks.cc: Same.
46 2004-05-13 Jonathan Wakely <redi@gcc.gnu.org>
48 * docs/html/abi.html: Document effect of -fabi-version on value
49 of __GXX_ABI_VERSION, and that it's defined in c-cppbuiltin.c.
52 2004-05-13 Benjamin Kosnik <bkoz@redhat.com>
55 * docs/html/faq/index.html: Update docs for libsupc++ usage.
57 2004-05-13 Benjamin Kosnik <bkoz@redhat.com>
60 * include/bits/stl_threads.h (_GLIBCXX_mutex): Move to namespace
62 (_GLIBCXX_mutex_address): Same.
63 (_GLIBCXX_once): Same.
64 (_GLIBCXX_mutex_init): Same.
65 (_GLIBCXX_mutex_address_init): Same.
67 2004-05-13 Benjamin Kosnik <bkoz@redhat.com>
69 * docs/html/abi.html: New.
70 * docs/html/abi.txt: Remove.
71 * docs/html/documentation.html: Add link.
72 * testsuite/Makefile.am: Add files.
73 * testsuite/Makefile.in: Regenerated.
74 * testsuite/abi_check.cc: Move and modify code into...
75 * testsuite/testsuite_abi.cc: Add.
76 * testsuite/testsuite_abi.h: Add.
78 * docs/html/17_intro/TODO: Update.
79 * include/bits/stl_pair.h: Format.
81 2004-05-06 Matthias Klose <doko@debian.org>
83 * include/backward/iterator.h: Add GPL copyright info,
84 with exception clause.
85 * include/bits/boost_concept_check.h: Likewise.
87 * libsupc++/tinfo.h: Likewise.
88 * po/string_literals.cc: Likewise.
90 2004-05-03 Andreas Tobler <a.tobler@schweiz.ch>
92 * acinclude.m4: Replace -W with more speaking -Wextra.
95 2004-05-03 Paolo Carlini <pcarlini@suse.de>
97 Optimize locale::_M_impl->_M_names for the most common cases:
98 !_M_names[0] means unnamed; !_M_names[1] means all the categories
99 the same name (_M_names[0] && _M_names[1] means that the full set
100 of _M_names must be processed, the general case).
101 * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name):
102 Tweak, saving work when !_M_names[1].
103 (locale::locale(const locale&, _Facet*): Simplify: now just setting
104 _M_names[0] = 0 means unnamed.
105 * src/locale.cc (locale::operator==): Deal first with the common,
106 easy cases, otherwise fall back to locale::name().
107 (locale::name()): Tweak, if !_M_names[0] just return "*".
108 (locale::_Impl::_Impl(const _Impl&, size_t): Tweak, early stop
109 copying __imp._M_names if !__imp._M_names[0] or !__imp._M_names[1].
110 * src/locale_init.cc (locale::_Impl::_Impl(size_t)): Tweak.
111 * src/localename.cc (locale::_Impl::_Impl(const char*, size_t):
112 Simplify when !std::strchr, just updating _M_names[0]; clean up.
113 (locale::_Impl::_M_replace_categories): When !_M_names[1] prepare
114 for the general case (full set of names), then do the usual work;
117 * src/locale.cc (locale::name()): Reserve space in __ret.
118 * src/locale_init.cc (locale::global(const locale&)): Save
119 the name in a temporary.
120 * src/localename.cc (locale::locale(const char*)): Reserve space
123 2004-04-29 Paolo Carlini <pcarlini@suse.de>
125 * src/locale.cc (locale::operator==): Always avoid constructing
126 locale::name(), directly compare pairs of _M_names.
128 2004-04-26 Paolo Carlini <pcarlini@suse.de>
130 * include/bits/istream.tcc: Fix comment.
132 2004-04-26 Paolo Carlini <pcarlini@suse.de>
134 * include/bits/stl_vector.h: Trivial formatting fixes.
135 * include/bits/vector.tcc: Likewise.
137 2004-04-25 Paolo Carlini <pcarlini@suse.de>
139 PR libstdc++/15002 (continued again)
140 * include/bits/istream.tcc (getline(basic_istream<>&,
141 basic_string<>&, _CharT)): Use a temporary buffer, thus
142 avoiding reallocation for common case.
144 * include/bits/basic_string.tcc (_S_construct(_InIterator,
145 _InIterator, const _Alloc&, input_iterator_tag)): Tweak size
146 of temporary buffer to a power of two.
148 * testsuite/27_io/basic_istream/getline/char/4.cc: Add comment.
150 2004-04-25 Paolo Carlini <pcarlini@suse.de>
152 * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
154 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
156 * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
158 2004-04-24 Paolo Carlini <pcarlini@suse.de>
159 Petur Runolfsson <peturr02@ru.is>
161 PR libstdc++/15002 (continued)
162 * include/bits/istream.tcc (basic_istream<>::getline(char_type*,
163 streamsize, char_type)): Use traits::find/copy in a loop to speed
164 up greatly the function in the common case (I/O buffer size >> 1).
166 2004-04-24 Paolo Carlini <pcarlini@suse.de>
168 * testsuite/27_io/basic_istream/getline/char/4.cc: New.
170 * include/bits/istream.tcc (getline(basic_istream<>&,
171 basic_string<>&, _CharT)): Change to use sgetc()/snextc() instead
172 of sbumpc(), consistently with the other functions, thus also
173 dealing correctly with the case of exceeded string::max_size().
175 2004-04-24 Matthias Klose <doko@debian.org>
177 Jonathan Wakely <cow@compsoc.man.ac.uk>
178 * docs/html/configopts.html: Fix reference to allocator config option.
180 2004-04-23 Andrew Pinski <pinskia@physics.uc.edu>
182 * linkage.m4 (GLIBCXX_CHECK_MATH_SUPPORT): Check for libmx also.
183 * configure: Regenerate.
185 2004-04-23 Daniel Jacobowitz <drow@mvista.com>
187 PR libstdc++/15047, libstdc++/11610
188 * testsuite/lib/libstdc++.exp (v3-copy-files): Use remote_download.
189 (libstdc++_init): Don't pass outdir to v3-copy-files.
191 2004-04-21 Paolo Carlini <pcarlini@suse.de>
193 * include/bits/deque.tcc: Trivial formatting fixes.
194 * include/bits/stl_deque.h: Likewise.
195 * include/bits/stl_list.h: Likewise.
196 * include/bits/stl_tree.h: Likewise.
198 2004-04-21 Paolo Carlini <pcarlini@suse.de>
199 Andrew Pinski <pinskia@physics.uc.edu>
201 * include/bits/basic_string.tcc (_M_mutate): Don't compute
204 2004-04-19 Benjamin Kosnik <bkoz@redhat.com>
206 * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
207 Clarify assertion, set test variable to false before assert.
208 * testsuite/27_io/basic_istringstream/str/char/1.cc: Same.
209 * testsuite/27_io/basic_stringstream/str/char/1.cc: Same.
210 * testsuite/27_io/ios_base/storage/2.cc: Same.
212 * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Fix
214 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Same.
215 * testsuite/27_io/fpos/14320-3.cc: Same.
217 * testsuite/27_io/basic_filebuf/2.cc: Instantiate in namespace std.
218 * testsuite/27_io/fpos/1.cc: Same.
219 * testsuite/27_io/basic_stringstream/2.cc: Same.
220 * testsuite/27_io/basic_stringbuf/4.cc: Same.
221 * testsuite/27_io/basic_stringbuf/1.cc: Same.
222 * testsuite/27_io/basic_stringbuf/2.cc: Same.
223 * testsuite/27_io/basic_streambuf/2.cc: Same.
224 * testsuite/27_io/basic_ostringstream/2.cc: Same.
225 * testsuite/27_io/basic_ostream/2.cc: Same.
226 * testsuite/27_io/basic_ofstream/2.cc: Same.
227 * testsuite/27_io/basic_istringstream/2.cc: Same.
228 * testsuite/27_io/basic_istream/2.cc: Same.
229 * testsuite/27_io/basic_iostream/2.cc: Same.
230 * testsuite/27_io/basic_ios/2.cc: Same.
231 * testsuite/27_io/basic_ifstream/2.cc: Same.
232 * testsuite/27_io/basic_fstream/2.cc: Same.
233 * testsuite/ext/stdio_filebuf/char/1.cc: Same, in namespace __gnu_cxx.
235 * testsuite/21_strings/basic_string/capacity/1.cc: Don't compare
236 unsigned against zero.
237 * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Same.
238 * testsuite/21_strings/basic_string/capacity/char/1.cc: Same.
240 * testsuite/18_support/new_delete_placement.cc: Initialize
241 variables before first use.
242 * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Same.
243 * testsuite/21_strings/char_traits/requirements/char/1.cc: Same.
244 * testsuite/21_strings/char_traits/requirements/short/1.cc: Same.
245 * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
247 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_badbit_throw.cc: Same.
248 * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
250 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_failbit_throw.cc: Same.
251 * testsuite/27_io/types/2.cc: Same.
253 * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Fix temporary
255 * testsuite/27_io/fpos/14775.cc: Same.
257 2004-04-19 Paolo Carlini <pcarlini@suse.de>
259 PR libstdc++/15002 (partial)
260 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
261 Special case __n2 == 1, not calling traits_type::assign/copy.
263 2004-04-17 Benjamin Kosnik <bkoz@redhat.com>
265 * include/bits/stl_bvector.h: Use _M_impl._M_start.
267 2004-04-16 Benjamin Kosnik <bkoz@redhat.com>
269 * include/bits/c++config (_GLIBCXX_STD): New.
270 * src/list.cc: Use it.
271 * include/std/std_bitset.h: Same.
272 * include/bits/vector.tcc: Same.
273 * include/bits/stl_set.h: Same.
274 * include/bits/stl_multiset.h: Same.
275 * include/bits/stl_multimap.h: Same.
276 * include/bits/stl_map.h: Same.
277 * include/bits/stl_list.h: Same.
278 * include/bits/stl_vector.h: Same.
279 * include/bits/stl_bvector.h: Same.
280 * include/bits/stl_deque.h: Same.
281 * include/bits/deque.tcc: Same.
282 * include/bits/list.tcc: Same.
283 * include/debug/vector: Same.
284 * include/debug/set.h: Same.
285 * include/debug/multiset.h: Same.
286 * include/debug/multimap.h: Same.
287 * include/debug/map.h: Same.
288 * include/debug/list: Same.
289 * include/debug/deque: Same.
290 * include/debug/bitset: Same.
291 * include/debug/formatter.h (__gnu_debug): Remove using directive.
292 Add using declaration for std::type_info.
293 * include/debug/safe_iterator.h: Add using declaration for
294 std::iterator_traits and std::pair.
295 * src/debug_list.cc: New.
296 * src/Makefile.am: Add debug_list.cc.
297 * src/Makefile.in: Regenerate.
298 * config/linker-map.gnu: Add _List_node_base exports for std and
301 * include/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl
302 idiom that other containers use.
303 * testsuite/23_containers/vector/bool/clear_allocator.cc: New.
305 2004-04-16 Paolo Carlini <pcarlini@suse.de>
308 * include/bits/fstream.tcc (basic_filebuf::imbue): Zero _M_codecvt
310 * testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: New.
311 * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: New.
313 2004-04-16 Paolo Carlini <pcarlini@suse.de>
315 * acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not
317 * config.h.in: Regenerate.
319 2004-04-16 Paolo Carlini <pcarlini@suse.de>
321 * config/locale/generic/monetary_members.cc
322 (moneypunct<wchar_t>::_M_initialize_moneypunct): Avoid calling
323 btowc unnecessarily, just cast to wchar_t (the concerned chars
324 all belong to the basic character set).
325 * config/locale/generic/numeric_members.cc
326 (numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
327 * config/locale/gnu/monetary_members.cc
328 (moneypunct<wchar_t>::_M_initialize_moneypunct): Likewise.
329 * config/locale/gnu/numeric_members.cc
330 (numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
332 2004-04-15 Paolo Carlini <pcarlini@suse.de>
334 * src/locale.cc (locale::operator==): When _M_impl == __rhs._M_impl
335 avoid constructing unnecessarily this->name().
337 2004-04-14 Zack Weinberg <zack@codesourcery.com>
339 * testsuite/Makefile.am: Add definition of AM_CXXFLAGS.
340 Change definition of CXX to use $(shell) instead of backticks.
341 * testsuite/Makefile.in: Regenerate.
343 2004-04-12 Dhruv Matani <dhruvbird@gmx.net>
345 * testsuite/performance/20_util/allocator/list_sort_search.cc:
346 Minor formatting fixes.
347 * testsuite/performance/20_util/allocator/map_mt_find.cc:
350 2004-04-12 Paolo Carlini <pcarlini@suse.de>
352 * config/locale/gnu/numeric_members.cc
353 (numpunct<wchar_t>::_M_initialize_numpunct): No need to wrap
354 in __uselocale, since btowc is called for chars belonging to
355 the basic character set.
357 2004-04-09 Paolo Carlini <pcarlini@suse.de>
359 * testsuite/22_locale/messages/members/char/1.cc: Remove junk.
360 * testsuite/22_locale/messages/members/char/2.cc: Ditto.
361 * testsuite/22_locale/messages/members/char/3.cc: Ditto.
362 * testsuite/22_locale/num_get/get/char/1.cc: Ditto.
363 * testsuite/22_locale/num_get/get/char/2.cc: Ditto.
364 * testsuite/22_locale/num_get/get/char/3.cc: Ditto.
365 * testsuite/22_locale/num_get/get/wchar_t/1.cc: Ditto.
366 * testsuite/22_locale/num_get/get/wchar_t/2.cc: Ditto.
367 * testsuite/22_locale/num_get/get/wchar_t/3.cc: Ditto.
368 * testsuite/22_locale/num_put/put/char/1.cc: Ditto.
369 * testsuite/22_locale/num_put/put/char/2.cc: Ditto.
370 * testsuite/22_locale/num_put/put/char/3.cc: Ditto.
371 * testsuite/22_locale/num_put/put/wchar_t/1.cc: Ditto.
372 * testsuite/22_locale/num_put/put/wchar_t/2.cc: Ditto.
373 * testsuite/22_locale/num_put/put/wchar_t/3.cc: Ditto.
374 * testsuite/22_locale/numpunct/members/char/1.cc: Ditto.
375 * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Ditto.
377 2004-04-07 Paolo Carlini <pcarlini@suse.de>
379 * config/locale/generic/time_members.cc
380 (__timepunct<char>::_M_initialize_timepunct,
381 __timepunct<wchar_t>::_M_initialize_timepunct): the correct
382 _M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively.
383 * config/locale/gnu/time_members.cc
384 (__timepunct<char>::_M_initialize_timepunct,
385 __timepunct<wchar_t>::_M_initialize_timepunct): Ditto.
386 * testsuite/22_locale/time_get/get_monthname/char/4.cc: New.
387 * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New.
389 * testsuite/22_locale/time_get/date_order/char/1.cc: Remove junk.
390 * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Ditto.
391 * testsuite/22_locale/time_get/get_date/char/1.cc: Ditto.
392 * testsuite/22_locale/time_get/get_date/char/2.cc: Ditto.
393 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Ditto.
394 * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Ditto.
395 * testsuite/22_locale/time_get/get_monthname/char/1.cc: Ditto.
396 * testsuite/22_locale/time_get/get_monthname/char/2.cc: Ditto.
397 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
398 * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Ditto.
399 * testsuite/22_locale/time_get/get_time/char/1.cc: Ditto.
400 * testsuite/22_locale/time_get/get_time/char/2.cc: Ditto.
401 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
402 * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Ditto.
403 * testsuite/22_locale/time_get/get_weekday/char/1.cc: Ditto.
404 * testsuite/22_locale/time_get/get_weekday/char/2.cc: Ditto.
405 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
406 * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Ditto.
407 * testsuite/22_locale/time_get/get_year/char/1.cc: Ditto.
408 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
409 * testsuite/22_locale/time_put/put/char/1.cc: Ditto.
410 * testsuite/22_locale/time_put/put/char/2.cc: Ditto.
411 * testsuite/22_locale/time_put/put/char/3.cc: Ditto.
412 * testsuite/22_locale/time_put/put/char/4.cc: Ditto.
413 * testsuite/22_locale/time_put/put/char/5.cc: Ditto.
414 * testsuite/22_locale/time_put/put/char/6.cc: Ditto.
415 * testsuite/22_locale/time_put/put/char/7.cc: Ditto.
416 * testsuite/22_locale/time_put/put/char/8.cc: Ditto.
417 * testsuite/22_locale/time_put/put/wchar_t/1.cc: Ditto.
418 * testsuite/22_locale/time_put/put/wchar_t/2.cc: Ditto.
419 * testsuite/22_locale/time_put/put/wchar_t/3.cc: Ditto.
420 * testsuite/22_locale/time_put/put/wchar_t/4.cc: Ditto.
421 * testsuite/22_locale/time_put/put/wchar_t/5.cc: Ditto.
422 * testsuite/22_locale/time_put/put/wchar_t/6.cc: Ditto.
423 * testsuite/22_locale/time_put/put/wchar_t/7.cc: Ditto.
424 * testsuite/22_locale/time_put/put/wchar_t/8.cc: Ditto.
426 * testsuite/22_locale/time_put/put/char/9780-1.cc: Fix typos.
428 2004-04-07 Paolo Carlini <pcarlini@suse.de>
430 * config/locale/gnu/monetary_members.cc
431 (moneypunct<wchar_t>::_M_initialize_moneypunct): Prefer
432 _NL_MONETARY_DECIMAL_POINT_WC, _NL_MONETARY_THOUSANDS_SEP_WC,
433 and __MON_GROUPING to _NL_NUMERIC_DECIMAL_POINT_WC,
434 _NL_NUMERIC_THOUSANDS_SEP_WC, and GROUPING.
435 * config/locale/gnu/numeric_members.cc
436 (numpunct<char>::_M_initialize_numpunct): Prefer DECIMAL_POINT
437 and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP.
439 2004-04-06 Benjamin Kosnik <bkoz@redhat.com>
441 Fixups for EDG front end.
442 * include/ext/rope: Instead of non-existent function
443 _Data_allocate, use allocator's allocate. Use this.
444 (namespace _Rope_constants): Move _S_max_rope_depth, and _Tag
445 enumerations from _Rope_RopeRep here.
446 * include/ext/ropeimpl.h: Same.
447 * src/ext-inst.cc (_S_min_len): Fix up definition.
449 * config/locale/gnu/ctype_members.cc: Qualify base class members
451 * config/locale/generic/ctype_members.cc: Same.
452 * config/locale/gnu/messages_members.h: Same.
453 * config/locale/generic/messages_members.h: Same.
454 * src/ctype.cc: Same.
455 * include/bits/codecvt.h: Same.
457 * include/bits/boost_concept_check.h: Declare.
458 (__error_type_must_be_an_unsigned_integer_type): Remove this.
459 (__error_type_must_be_an_integer_type): Remove this.
460 (__error_type_must_be_a_signed_integer_type): Remove this.
462 * config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast.
464 * libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception
465 specification to definition.
466 (__cxa_allocate_exception): Same.
467 * libsupc++/eh_catch.cc (__cxa_begin_catch): Same.
468 * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same.
469 (__cxa_get_globals): Same.
471 * libsupc++/del_op.cc: Add comment about freestanding.
473 2004-04-05 Paolo Carlini <pcarlini@suse.de>
475 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
476 The critical section is actually very small, only two assignments.
478 2004-04-04 Paolo Carlini <pcarlini@suse.de>
479 Petur Runolfsson <peturr02@ru.is>
481 * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New,
482 adapted from libstdc++/11378.
484 2004-04-03 Paolo Carlini <pcarlini@suse.de>
486 * include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out
487 some duplicated code.
488 (__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used
489 in the single threaded case.
490 * testsuite/performance/20_util/allocator/list_sort_search.cc:
491 Reorder and renumber the tests consistently with the other testfiles.
492 * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
493 * testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
494 * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
496 2004-04-02 Paolo Carlini <pcarlini@suse.de>
498 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
499 Rearrange arithmetic to avoid computing two divisions at
502 2004-04-01 Paolo Carlini <pcarlini@suse.de>
504 * include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize):
505 Streamline the second half, wrapping it in a single
506 '#ifdef __GTHREADS if (__gthread_active_p())' and avoiding
507 conditionals inside loops.
509 2004-04-01 Paolo Carlini <pcarlini@suse.de>
512 * acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS.
513 * acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call
514 GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define
515 to _GLIBCXX_RES_LIMITS.
516 (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to
518 * testsuite/testsuite_hooks.h: Declare set_file_limit.
519 * testsuite/testsuite_hooks.cc: Define it, using getrlimit
520 and setrlimit(RLIMIT_FSIZE).
521 * testsuite/27_io/fpos/14775.cc: New.
522 * config.h.in: Regenerate.
523 * configure: Likewise.
525 2004-03-31 Paolo Carlini <pcarlini@suse.de>
527 * config/locale/generic/c_locale.cc (__convert_to_v(long double&)):
528 In v3 uses of sscanf, the special floating-point numbers INF,
529 INFINITY, etc., cannot occur in input, therefore, if the latter
530 is too large, ERANGE is always stored in errno, no need of finitel.
532 2004-03-30 Benjamin Kosnik <bkoz@redhat.com>
535 * include/bits/stl_tree.h: Adjust initialization list order.
537 2004-03-29 Loren J. Rittle <ljrittle@acm.org>
539 * testsuite/thread/pthread7-rope.cc: Update comment to reflect test.
541 2004-03-29 Paolo Carlini <pcarlini@suse.de>
543 * testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending
544 on allocator behavior, the memory pointed by data2 may well be not
547 2004-03-28 Chavdar Botev <cbotev@yahoo.com>
550 * include/bits/basic_string.tcc
551 (basic_string::basic_string(const basic_string&)): Pass to
552 _Rep::_M_grab the actual allocator of the string being constructed
553 not the default constructed one.
555 2004-03-27 Benjamin Kosnik <bkoz@redhat.com>
558 * config/locale/ieee_1003.1-2001/codecvt_specializations.h
559 (__enc_traits::_M_destroy): New.
560 (__enc_traits::~__enc_traits): Use it.
561 (__enc_traits::operator=): Use _M_destroy, _M_init.
562 (__enc_traits::__enc_traits): Same.
564 2004-03-27 Petur Runolfsson <peturr02@ru.is>
566 * testsuite/ext/enc_filebuf/char/13598.cc: New.
568 2004-03-27 Paolo Carlini <pcarlini@suse.de>
570 * include/ext/mt_allocator.h: Uglify consistently names of
571 variables, members and classes; tidy.
573 2004-03-27 Dhruv Matani <dhruvbird@gmx.net>
575 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
576 Deallocation loop rewrote.
578 2004-03-26 Paolo Carlini <pcarlini@suse.de>
580 * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
581 __mt_alloc<>::deallocate): Protect two instances of
582 block->thread_id with __GTHREADS.
584 2004-03-25 Gawain Bolton <gp.bolton@computer.org>
586 * include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator
587 default argument in constructors.
588 (_Rb_tree::_M_empty_initialize): Remove.
590 2004-03-25 Benjamin Kosnik <bkoz@redhat.com>
592 * testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
593 * testsuite/23_containers/set/operators/1_neg.cc: Same.
595 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
597 * include/bits/cpp_type_traits.h: Changed __is_pod
598 completely. Now, it does not use any of the previous type_traits
599 to detect the pod types, and it also detects function pointers as
602 * include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl,
603 which encapsulates the internal implementation of an rb_tree. Made
604 the allocator a base class of this class instead of the rb_tree,
605 which was not conforming. This _Rb_tree_impl class is also
606 specialized on whether the _Compare parameter is a POD type or
607 not. If so, then it maintains the comparison function as a data
608 member, otherwise it makes the _Compare parameter a base class of
609 itself. Also, _M_key_compare is now a function instead of a data
610 member, so that the above trick can work properly. Delegated the
611 initialization of the other data members to this newly created
612 class. Also, now other member functions of rb_tree must refer to
613 _M_key_compare as _M_impl._M_key_compare(). The other data members
614 (*) can be referenced to as _M_impl.(*), where
615 (*) includes _M_header, and _M_node_count.
617 2004-03-25 Paolo Carlini <pcarlini@suse.de>
619 * include/ext/mt_allocator.h (__mt_alloc<>::tune):
620 Add _M_min_bin, the size in bytes of the smallest bin.
621 (__mt_alloc<>::tune()): Tweak accordingly.
622 (__mt_alloc<>::tune(size_t, ...)): Likewise.
623 (__mt_alloc<>::block_record): Change to a union: members next
624 and thread_id are never used at the same time.
625 (__mt_alloc<>::allocate): Update consistently.
626 (__mt_alloc<>::deallocate): Likewise.
627 (__mt_alloc<>::_S_initialize): Update setups of _S_binmap and
628 _S_bin_size for the configurable _M_min_size.
630 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
632 * include/bits/stl_list.h: Created a _List_impl class and made it
633 derive from the allocator, instead of the list deriving from the
634 allocator class, which was not conformant. Changed all references
635 from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same
636 as above (changed all references to the concerned variables).
638 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
640 * include/bits/stl_deque.h: Created a _Deque_impl class and made
641 it derive from the allocator, instead of the deque deriving from
642 the allocator class, which was not conformant. Changed all
643 references to the _M_start, _M_finish, _M_map, and _M_map_size to
645 (_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this->
646 qualification in 2 places where it was missing.
647 (_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as
649 * include/bits/deque.tcc: Same as above (changed all references to
650 the concerned variables).
652 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
654 * include/bits/stl_vector.h: Created a _Vector_impl class and made
655 it derive from the allocator, instead of the _Vector_base class,
656 deriving from the allocator which was not conformant. Changed all
657 references to the _M_start, _M_finish, and _M_end_of_storage to
659 * include/bits/vector.tcc: Same as above (changed all references
660 to the concerned variables).
662 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
664 * testsuite/23_containers/deque/cons/clear_allocator.cc: New.
665 * testsuite/23_containers/list/cons/clear_allocator.cc: New.
666 * testsuite/23_containers/vector/cons/clear_allocator.cc: New.
668 2004-03-24 Dhruv Matani <dhruvbird@gmx.net>
670 * include/ext/malloc_allocator.h: Fixed the construct function to
671 call global placement new instead of assignment. Added a check
672 after the return from malloc to check whether returned pointer is
673 NULL, and if so, throw std::bad_alloc().
674 * include/ext/debug_allocator.h: Added a check in the deallocate
675 function to check whether the user has passed a NULL pointer or
678 2004-03-24 Benjamin Kosnik <bkoz@redhat.com>
680 * docs/html/20_util/allocator.html: Add bitmap_allocator links.
682 2004-03-24 Andreas Schwab <schwab@suse.de>
684 * testsuite/lib/prune.exp (prune_g++_output): Ignore errata
685 warning from IA64 assembler.
687 2004-03-24 Dhruv Matani <dhruvbird@gmx.net>
689 * include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this
690 function call __builtin_ctz instead of the while loop.
691 (allocate) -> If condition has __builtin_expect.
692 (deallocate) -> Ditto.
693 Renamed a few left-over variables and typedefs according to the
694 C++STYLE mentioned in the documentation.
695 Protected calls to __gthread* by __gthread_active_p(), whose value
696 is cached in the local variable __threads_active.
698 2004-03-24 Felix Yen <fwy@alumni.brown.edu>
700 * testsuite/performance/20_util/allocator/producer_consumer.cc:
701 Use linear algorithm for producer.
703 2004-03-24 Paolo Carlini <pcarlini@suse.de>
705 * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
706 __mt_alloc<>::deallocate): Avoid redundant conditionals.
708 2004-03-23 Benjamin Kosnik <bkoz@redhat.com>
710 * include/bits/locale_facets.h: Tweaks for 80 column.
711 (__numpunct_cache::_M_cache): Move to locale_facets.tcc.
712 (__moneypunct_cache::_M_cache): Same.
713 (num_get): Don't inherit from __num_base.
715 (money_get): Don't inherit from money_base.
717 (__timepunct::_M_am_pm_format): New.
718 (time_get::_M_extract_num): Return iterator, use ios_base as argument.
719 (time_get::_M_extract_name): Same.
720 (time_get::_M_extract_via_format): Same.
721 * include/bits/locale_facets.tcc: Tweaks for 80 column.
722 Use _M_getloc instead of getloc.
723 * testsuite/22_locale/money_put/put/char/9780-3.cc: New.
724 * testsuite/22_locale/num_put/put/char/9780-2.cc: New.
725 * testsuite/22_locale/time_put/put/char/9780-1.cc: New.
727 2004-03-22 Paolo Carlini <pcarlini@suse.de>
729 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
730 * configure: Regenerate.
731 * config/allocator/pool_allocator_base.h: New.
732 * include/ext/pool_allocator.h: Convert to a standard-conforming
734 * src/allocator.cc: Tweak instantiations.
735 * testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc.
736 * testsuite/performance/20_util/allocator/insert_insert.cc: Ditto.
737 * testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto.
738 * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
739 * testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
740 * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
742 2004-03-22 Hans-Peter Nilsson <hp@axis.com>
744 * config/cpu/cris/atomicity.h (__atomic_add): Remove "static
745 inline" and attribute-unused. Qualify parameter __mem with
747 (__exchange_and_add): Ditto. Add back memory clobber to asm.
749 2004-03-20 Paolo Carlini <pcarlini@suse.de>
751 * testsuite/27_io/basic_istream/extractors_arithmetic/char/2.cc:
753 * testsuite/27_io/basic_istream/extractors_arithmetic/char/3.cc:
755 * testsuite/27_io/basic_istream/extractors_arithmetic/char/6.cc:
757 * testsuite/27_io/basic_istream/extractors_arithmetic/char/7.cc:
759 * testsuite/27_io/basic_istream/extractors_arithmetic/char/8.cc:
761 * testsuite/27_io/basic_istream/extractors_arithmetic/char/9.cc:
763 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
765 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
767 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
769 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
772 2004-03-20 Paolo Carlini <pcarlini@suse.de>
774 * include/std/std_valarray.h: Document DR389 [Ready].
775 * docs/html/ext/howto.html: Add an entry for DR389.
777 2004-03-19 Michael Eager <eager@mvista.com>
779 * config/cpu/mips/atomicity.h: Prevent reg loads between LL and
782 2004-03-19 Paolo Carlini <pcarlini@suse.de>
784 * testsuite/22_locale/num_get/get/char/11.cc: Remove redundant
786 * testsuite/22_locale/num_get/get/char/12.cc: Likewise.
787 * testsuite/22_locale/num_get/get/char/13.cc: Likewise.
788 * testsuite/22_locale/num_get/get/char/14.cc: Likewise.
789 * testsuite/22_locale/num_get/get/char/15.cc: Likewise.
790 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
791 * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
792 * testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
793 * testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
794 * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
796 2004-03-19 Paolo Carlini <pcarlini@suse.de>
797 Petur Runolfsson <peturr02@ru.is>
800 * include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's
801 no way to find out the conversion used by the underlying FILE*.
802 * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New.
803 * testsuite/27_io/objects/char/9.cc: Tweak.
805 2004-03-19 Paolo Carlini <pcarlini@suse.de>
808 * include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix
809 memory allocation/deallocation calls.
810 * testsuite/ext/14648.cc: New.
812 2004-03-19 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
815 * include/backward/bvector.h (bit_vector): Allocator is in std
818 2004-03-19 Phil Edwards <phil@codesourcery.com>
820 * acinclude.m4 (GLIBCXX_CHECK_WCHAR_T_SUPPORT): Set LIBICONV,
821 not libiconv. SUBST this variable as well.
822 * testsuite/Makefile.am (site.exp): New target, based on that
823 created by automake. Also set libiconv.
825 * configure, Makefile.in, include/Makefile.in, libmath/Makefile.in,
826 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
827 testsuite/Makefile.in: Regenerate.
829 2004-03-16 Benjamin Kosnik <bkoz@redhat.com>
831 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Default setting is
832 new_allocator for all hosts.
833 * configure: Regenerate.
835 2004-03-16 Paolo Carlini <pcarlini@suse.de>
837 * testsuite/22_locale/num_put/put/char/4.cc: Fix for 64-bit pointers.
838 * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
840 2004-03-15 Paolo Carlini <pcarlini@suse.de>
842 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
843 Adjust the logic underlying the parsing of symbol to deal
844 correctly with an optional sign component (i.e., when either
845 negative_sign or positive_sign is empty)
846 * testsuite/22_locale/money_get/get/char/19.cc: New.
847 * testsuite/22_locale/money_get/get/wchar_t/19.cc: New.
849 2004-03-15 Paolo Carlini <pcarlini@suse.de>
851 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
852 Do not accept an incomplete currency symbol.
853 * testsuite/22_locale/money_get/get/char/18.cc: New.
854 * testsuite/22_locale/money_get/get/wchar_t/18.cc: New.
856 2004-03-13 Benjamin Kosnik <bkoz@redhat.com>
858 * config/allocator: New.
859 * config/allocator/bitmap_allocator_base.h: New.
860 * config/allocator/malloc_allocator_base.h: New.
861 * config/allocator/mt_allocator_base.h: New.
862 * config/allocator/new_allocator_base.h: New.
863 * include/bits/allocator.h: Include c++allocator.h.
864 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
865 * aclocal.m4: Regenerate.
866 * configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
867 * configure: Regenerate.
868 * include/Makefile.am (host_headers_extra): Add c++allocator.h.
869 * include/Makefile.in: Regenerate.
870 * docs/html/configopts.html: Add enable-libstdcxx-allocator.
872 2004-03-12 Benjamin Kosnik <bkoz@redhat.com>
874 * include/bits/allocator.h: Revert.
876 2004-03-12 Paolo Carlini <pcarlini@suse.de>
878 * docs/html/ext/howto.html: Add entry for DR 253 [Ready].
879 * include/bits/gslice_array.h: Add comment about DR 253.
880 * include/bits/indirect_array.h: Likewise.
881 * include/bits/mask_array.h: Likewise.
882 * include/bits/slice_array.h: Likewise.
884 2004-03-12 Benjamin Kosnik <bkoz@redhat.com>
886 * testsuite/20_util/allocator/14176.cc: New.
887 * include/ext/mt_allocator.h: Formatting fixes.
889 2004-03-11 Dhruv Matani <dhruvbird@HotPOP.com>
891 * include/Makefile.am (ext_headers): Add
892 ${ext_srcdir}/bitmap_allocator.h .
893 * include/Makefile.in: Regenerate.
894 * docs/html/ext/ballocator_doc.txt: New file.
895 * include/ext/bitmap_allocator.h: New file.
896 * testsuite/performance/20_util/allocator/list_sort_search.cc: Add
898 * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
899 * testsuite/performance/20_util/allocator/producer_consumer.cc: Add
900 test for the bitmap_allocator<>.
901 * testsuite/performance/20_util/allocator/insert.cc: Likewise.
902 * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
903 * testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
905 2004-03-11 Paolo Carlini <pcarlini@suse.de>
907 * include/std/std_complex.h (pow(const complex&, const _Tp&),
908 pow(const _Tp&, const complex&), pow(const complex&,
909 const complex&)): Fully qualify with std:: a few calls.
910 * testsuite/26_numerics/complex/13450.cc: Minor tweak.
912 2004-03-11 Steven Bosscher <stevenb@suse.de>
915 * include/c_std/cmath.tcc (__cmath_power): Define inline.
917 2004-03-10 Kelley Cook <kcook@gcc.gnu.org>
919 * configure.ac: Bump AC_PREREQ to 2.59.
921 2004-03-10 Paolo Carlini <pcarlini@suse.de>
923 * testsuite/26_numerics/valarray_subset_assignment.cc: Fix typos.
925 2004-03-10 Paul Kienzle <pkienzle@nist.gov>
926 Paolo Carlini <pcarlini@suse.de>
929 * include/std/std_complex.h (pow(const complex&, const _Tp&),
930 pow(const _Tp&, const complex&)): Use cmath pow only when safe.
931 * testsuite/26_numerics/complex/13450.cc: New.
933 * testsuite/26_numerics/cmath/overloads.C: Rename to overloads.cc.
934 * testsuite/26_numerics/complex/pow.C: Rename to pow.cc and fix.
936 2004-03-10 Jerry Quinn <jlquinn@optonline.net>
939 * include/bits/gslice_array.h (gslice_array()): Make public.
940 (operator=(gslice_array)): Make public. Implement.
941 * include/bits/indirect_array.h (indirect_array()): Make public.
942 * include/bits/mask_array.h (mask_array()): Make public.
943 (operator=(mask_array)): Make public. Implement.
944 * include/bits/valarray_array.tcc (__valarray_copy):
945 Comment. Add versions for gslice_array and mask_array.
946 * testsuite/26_numerics/valarray_subset_assignment.cc: New test.
948 2004-03-09 Benjamin Kosnik <bkoz@redhat.com>
950 * testsuite/23_containers/deque/modifiers/swap.cc: Add in bits for
952 * testsuite/23_containers/vector/modifiers/swap.cc: Same.
953 * testsuite/23_containers/set/modifiers/swap.cc: Same.
954 * testsuite/23_containers/multiset/modifiers/swap.cc: Same.
955 * testsuite/23_containers/multimap/modifiers/swap.cc: Same.
956 * testsuite/23_containers/map/modifiers/swap.cc: Same.
957 * testsuite/23_containers/list/modifiers/swap.cc: Same.
959 * testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions.
961 2004-03-08 Benjamin Kosnik <bkoz@redhat.com>
964 * testsuite/23_containers/deque/modifiers/swap.cc: New.
965 * testsuite/23_containers/list/modifiers/swap.cc: New.
966 * testsuite/23_containers/map/modifiers/swap.cc: New.
967 * testsuite/23_containers/multimap/modifiers/swap.cc: New.
968 * testsuite/23_containers/multiset/modifiers/swap.cc: New.
969 * testsuite/23_containers/set/modifiers/swap.cc: New.
970 * testsuite/23_containers/vector/modifiers/swap.cc: New.
972 2004-03-08 Petur Runolfsson <peturr02@ru.is>
975 * testsuite/22_locale/locale/cons/12658_thread.cc: New.
977 2004-03-08 Paolo Carlini <pcarlini@suse.de>
979 * docs/html/ext/howto.html: Add entry for DR 103 [WP].
980 * include/bits/stl_multiset.h: Add comment about DR 103.
981 * include/bits/stl_set.h: Likewise.
983 2004-03-08 Paolo Carlini <pcarlini@suse.de>
985 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
986 The value _space_ indicates that at least one space is required
988 * testsuite/22_locale/money_get/get/char/17.cc: New.
989 * testsuite/22_locale/money_get/get/wchar_t/17.cc: New.
991 * testsuite/22_locale/money_get/get/char/7.cc: Minor tweaks.
992 * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
994 * include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)):
995 Remove redundant conditional on __str.size().
997 2004-03-08 Benjamin Kosnik <bkoz@redhat.com>
999 * include/bits/allocator.h: Switch defaults to mt_alloc.
1001 2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
1003 * include/ext/mt_allocator.h (_S_initialize): If
1004 !__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex.
1006 2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
1009 * src/locale_init.cc (locale::locale): Lock critical regions with
1011 (locale::global): Same.
1012 * include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
1013 Add in once bits for cases without __GTHREAD_MUTEX_INIT.
1014 (__glibcxx_mutex_lock): Same.
1016 * config/cpu/generic/atomicity.h: Remove
1017 _GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h.
1018 * src/misc-inst.cc: Move all locking bits out of this file.
1020 * config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK.
1021 * src/misc-inst.cc: Same.
1022 * config/cpu/hppa/atomicity.h: Same.
1024 * config/linker-map.gnu: Remove types in the signature of atomic
1025 exports, as they may vary.
1027 2004-03-06 Paolo Carlini <pcarlini@suse.de>
1029 * include/bits/locale_facets.tcc: Tweak the comment preceding
1030 has_facet: doesn't throw.
1032 2004-03-06 Paolo Carlini <pcarlini@suse.de>
1034 * testsuite/22_locale/money_get/get/char/1.cc: Clean up.
1035 * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
1036 * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
1037 * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
1038 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
1039 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
1040 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
1041 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
1043 2004-03-06 Paolo Carlini <pcarlini@suse.de>
1045 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
1046 num_get<>::_M_extract_int, num_get<>::do_get(bool&),
1047 __pad<>::_S_pad): Prefer plain operator== to traits::eq().
1048 * testsuite/testsuite_character.h (struct __gnu_test::character):
1050 * testsuite/testsuite_hooks.h (struct __gnu_test::pod_char):
1053 2004-03-05 Paolo Carlini <pcarlini@suse.de>
1055 * testsuite/27_io/fpos/14320-2.cc: Remove xfail.
1057 2004-03-04 Benjamin Kosnik <bkoz@redhat.com>
1059 * testsuite/23_containers/multiset/insert/1.cc: Test result string.
1061 * testsuite/23_containers/bitset/invalidation/1.cc: Main always
1063 * testsuite/23_containers/deque/invalidation/4.cc: Same.
1064 * testsuite/23_containers/list/invalidation/1.cc: Same.
1065 * testsuite/23_containers/list/invalidation/2.cc: Same.
1066 * testsuite/23_containers/list/invalidation/3.cc: Same.
1067 * testsuite/23_containers/list/invalidation/4.cc: Same.
1068 * testsuite/23_containers/map/invalidation/2.cc: Same.
1069 * testsuite/23_containers/multimap/invalidation/1.cc: Same.
1070 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
1071 * testsuite/23_containers/multiset/invalidation/1.cc: Same.
1072 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
1073 * testsuite/23_containers/set/invalidation/1.cc: Same.
1074 * testsuite/23_containers/set/invalidation/2.cc: Same.
1075 * testsuite/23_containers/vector/invalidation/1.cc: Same.
1076 * testsuite/23_containers/vector/invalidation/2.cc: Same.
1077 * testsuite/23_containers/vector/invalidation/3.cc: Same.
1078 * testsuite/23_containers/vector/invalidation/4.cc: Same.
1080 2004-03-04 Paolo Carlini <pcarlini@suse.de>
1082 * scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to
1084 * testsuite/lib/libstdc++.exp: Don't add it conditionally to
1086 * testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT"
1087 from the dg-options.
1088 * testsuite/23_containers/vector/invalidation/1.cc: Likewise.
1089 * testsuite/23_containers/vector/invalidation/2.cc: Likewise.
1090 * testsuite/23_containers/vector/invalidation/3.cc: Likewise.
1091 * testsuite/23_containers/vector/invalidation/4.cc: Likewise.
1092 * testsuite/23_containers/vector/resize/1.cc: Likewise.
1093 * testsuite/26_numerics/complex_value.cc: Likewise.
1094 * testsuite/27_io/ios_base/storage/1.cc: Likewise.
1095 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
1096 * testsuite/27_io/ios_base/storage/3.cc: Likewise.
1097 * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
1098 * testsuite/27_io/objects/char/5.cc: Likewise.
1099 * testsuite/27_io/objects/wchar_t/5.cc: Likewise.
1100 * testsuite/backward/11460.cc: Likewise.
1101 * testsuite/thread/pthread7-rope.cc: Likewise.
1103 * testsuite/21_strings/basic_string/compare/char/1.cc: Add
1104 missing test variable.
1105 * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Add
1106 missing test variable.
1108 2004-03-04 Benjamin Kosnik <bkoz@redhat.com>
1110 * testsuite/20_util/allocator/1.cc: Provide explicit
1111 instantiations for non-weak systems.
1112 * testsuite/20_util/binders.cc: Same.
1113 * testsuite/20_util/allocator/8230.cc: Same.
1114 * testsuite/20_util/allocator/10378.cc: Same.
1115 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
1116 * testsuite/22_locale/ctype/is/char/2.cc: Same.
1117 * testsuite/thread/pthread7-rope.cc: Same.
1118 * testsuite/thread/pthread6.cc: Same.
1119 * testsuite/thread/pthread5.cc: Same.
1120 * testsuite/thread/pthread4.cc: Same.
1121 * testsuite/thread/pthread1.cc: Same.
1122 * testsuite/ext/rope.cc: Same.
1123 * testsuite/ext/hash_set.cc: Same.
1124 * testsuite/ext/hash_map.cc: Same.
1125 * testsuite/ext/concept_checks.cc: Same.
1126 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same.
1127 * testsuite/25_algorithms/unique/2.cc: Same.
1128 * testsuite/25_algorithms/unique/1.cc: Same.
1129 * testsuite/25_algorithms/rotate.cc: Same.
1130 * testsuite/25_algorithms/min_max.cc: Same.
1131 * testsuite/25_algorithms/equal.cc: Same.
1132 * testsuite/24_iterators/rel_ops.cc: Same.
1133 * testsuite/24_iterators/iterator.cc: Same.
1134 * testsuite/24_iterators/insert_iterator.cc: Same.
1135 * testsuite/24_iterators/front_insert_iterator.cc: Same.
1136 * testsuite/24_iterators/back_insert_iterator.cc: Same.
1137 * testsuite/23_containers/vector/resize/1.cc: Same.
1138 * testsuite/23_containers/vector/modifiers/2.cc: Same.
1139 * testsuite/23_containers/vector/modifiers/1.cc: Same.
1140 * testsuite/23_containers/vector/invalidation/4.cc: Same.
1141 * testsuite/23_containers/vector/invalidation/3.cc: Same.
1142 * testsuite/23_containers/vector/invalidation/2.cc: Same.
1143 * testsuite/23_containers/vector/invalidation/1.cc: Same.
1144 * testsuite/23_containers/vector/element_access/1.cc: Same.
1145 * testsuite/23_containers/vector/cons/6513.cc: Same.
1146 * testsuite/23_containers/vector/cons/3.cc: Same.
1147 * testsuite/23_containers/vector/cons/2.cc: Same.
1148 * testsuite/23_containers/vector/cons/1.cc: Same.
1149 * testsuite/23_containers/vector/capacity/8230.cc: Same.
1150 * testsuite/23_containers/vector/capacity/1.cc: Same.
1151 * testsuite/23_containers/vector/bool/6886.cc: Same.
1152 * testsuite/23_containers/stack/members/7158.cc: Same.
1153 * testsuite/23_containers/set/invalidation/2.cc: Same.
1154 * testsuite/23_containers/set/invalidation/1.cc: Same.
1155 * testsuite/23_containers/queue/members/7157.cc: Same.
1156 * testsuite/23_containers/priority_queue/members/7161.cc: Same.
1157 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
1158 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
1159 * testsuite/23_containers/multiset/insert/1.cc: Same.
1160 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
1161 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
1162 * testsuite/23_containers/map/operators/1.cc: Same.
1163 * testsuite/23_containers/map/invalidation/2.cc: Same.
1164 * testsuite/23_containers/map/invalidation/1.cc: Same.
1165 * testsuite/23_containers/map/insert/1.cc: Same.
1166 * testsuite/23_containers/list/operators/4.cc: Same.
1167 * testsuite/23_containers/list/operators/3.cc: Same.
1168 * testsuite/23_containers/list/operators/2.cc: Same.
1169 * testsuite/23_containers/list/operators/1.cc: Same.
1170 * testsuite/23_containers/list/modifiers/3.cc: Same.
1171 * testsuite/23_containers/list/modifiers/2.cc: Same.
1172 * testsuite/23_containers/list/modifiers/1.cc: Same.
1173 * testsuite/23_containers/list/invalidation/4.cc: Same.
1174 * testsuite/23_containers/list/invalidation/3.cc: Same.
1175 * testsuite/23_containers/list/invalidation/2.cc: Same.
1176 * testsuite/23_containers/list/invalidation/1.cc: Same.
1177 * testsuite/23_containers/list/cons/9.cc: Same.
1178 * testsuite/23_containers/list/cons/8.cc: Same.
1179 * testsuite/23_containers/list/cons/7.cc: Same.
1180 * testsuite/23_containers/list/cons/6.cc: Same.
1181 * testsuite/23_containers/list/cons/5.cc: Same.
1182 * testsuite/23_containers/list/cons/4.cc: Same.
1183 * testsuite/23_containers/list/cons/3.cc: Same.
1184 * testsuite/23_containers/list/cons/2.cc: Same.
1185 * testsuite/23_containers/list/cons/1.cc: Same.
1186 * testsuite/23_containers/list/capacity/1.cc: Same.
1187 * testsuite/23_containers/deque/operators/1.cc: Same.
1188 * testsuite/23_containers/deque/invalidation/4.cc: Same.
1189 * testsuite/23_containers/deque/invalidation/3.cc: Same.
1190 * testsuite/23_containers/deque/invalidation/2.cc: Same.
1191 * testsuite/23_containers/deque/invalidation/1.cc: Same.
1192 * testsuite/23_containers/deque/cons/2.cc: Same.
1193 * testsuite/23_containers/deque/cons/1.cc: Same.
1195 * src/allocator.cc: Add char, wchar_t instantiations
1196 to match extern template declarations in memory.h.
1198 2004-03-03 Paolo Carlini <pcarlini@suse.de>
1200 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
1201 Fix warning regression.
1203 2004-03-03 Paolo Carlini <pcarlini@suse.de>
1205 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
1206 Deal properly with empty __digits and negative frac_digits,
1209 2004-03-03 Jonathan Wakely <redi@gcc.gnu.org>
1211 * docs/html/documentation.html: Regenerate.
1213 2004-03-02 Paolo Carlini <pcarlini@suse.de>
1216 * include/bits/postypes.h (class streamoff): Remove, now
1217 streamoff is just typedef a 64 bit signed integer type.
1218 (class fpos): Tweak consistently.
1219 * testsuite/27_io/fpos/14320-1.cc: New.
1220 * testsuite/27_io/fpos/14320-2.cc: New.
1221 * testsuite/27_io/fpos/14320-3.cc: New.
1222 * testsuite/27_io/fpos/14320-4.cc: New.
1223 * testsuite/27_io/fpos/14320-5.cc: New.
1224 * testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now.
1226 2004-03-02 Paolo Carlini <pcarlini@suse.de>
1228 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1229 Reorganize a bit the main parsing loop, thus early detecting
1230 an empty value component.
1231 * testsuite/22_locale/money_get/get/char/16.cc: New.
1232 * testsuite/22_locale/money_get/get/wchar_t/16.cc: New.
1234 2004-03-02 Benjamin Kosnik <bkoz@redhat.com>
1236 Support automake 1.8.2
1237 * configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override.
1238 * po/Makefile.am (EXTRA_DIST): New.
1239 * po/Makefile.in: Regenerate.
1240 * Makefile.in: Same.
1241 * include/Makefile.in: Same.
1242 * libmath/Makefile.in: Same.
1243 * libsupc++/Makefile.in: Same.
1244 * src/Makefile.in: Same.
1245 * testsuite/Makefile.in: Same.
1247 * include/Makefile.am (${host_builddir}/gthr-posix.h): Use
1248 __GXX_WEAK__ instead of SUPPORTS_WEAK.
1249 (${host_builddir}/gthr-default.h): Same.
1250 (${host_builddir}/gthr.h): Same.
1251 * acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove
1252 _GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via
1254 * aclocal.m4: Regenerate.
1255 * acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK.
1256 * config.h.in: Regenerate.
1259 2004-03-01 Benjamin Kosnik <bkoz@redhat.com>
1261 Support autoconf 2.59
1262 * acinclude.m4: Quote correctly.
1263 * aclocal.m4: Regenerate.
1266 2004-03-01 Benjamin Kosnik <bkoz@redhat.com>
1268 * docs/html/test.html: Add multilib RUNTESTFLAGS example.
1270 * docs/html/18_support/howto.html: Add bit about writing to
1271 stderr, mostly by Zack.
1273 2004-03-01 Paolo Carlini <pcarlini@suse.de>
1275 * include/bits/locale_facets.tcc (money_get<>::_M_extract,
1276 money_get<>::do_get(string_type&)): ... and two more.
1278 2004-03-01 Paolo Carlini <pcarlini@suse.de>
1280 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1281 Fix thinkos in the switch from string_type& to string& as last
1284 2004-03-01 Paolo Carlini <pcarlini@suse.de>
1286 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
1287 Also when parsing exponent sign, first look for thousands_sep
1288 and decimal_point; tweak a bit.
1289 * testsuite/22_locale/num_get/get/char/15.cc: New.
1290 * testsuite/22_locale/num_get/get/wchar_t/15.cc: New.
1292 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
1293 num_get<>::_M_extract_int): Reorder some conditionals.
1295 2004-03-01 Paolo Carlini <pcarlini@suse.de>
1297 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1298 Consistently with numpunct, enforce the requirements in
1299 22.2.6.3, p3 for the thousands separators; tweak a bit.
1300 * testsuite/22_locale/money_get/get/char/15.cc: New.
1301 * testsuite/22_locale/money_get/get/wchar_t/15.cc: New.
1303 2004-03-01 David Billinghurst <David.Billinghurst@riotinto.com>
1305 * testsuite/lib/libstdc++.exp (v3-list-tests): Use
1306 testsuite_files from correct multilib blddir when running
1309 2004-02-29 Phil Edwards <phil@codesourcery.com>
1311 * testsuite/Makefile.am (check-abi, check-abi-verbose): Copy
1312 the summary file to the logfile.
1313 * testsuite/Makefile.in: Regenerate.
1315 2004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1317 * config/cpu/hppa/atomicity.h (__atomic_add): Make first argument
1319 * config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use
1320 __GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK.
1322 2004-02-28 Paolo Carlini <pcarlini@suse.de>
1324 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
1325 According to 22.2.3.1, p2, 'units' may be followed by 'e' with
1326 no 'decimal-point' in the middle: in this case too we must fix
1327 up __found_grouping; slightly tweak.
1328 * testsuite/22_locale/num_get/get/char/14.cc: New.
1329 * testsuite/22_locale/num_get/get/wchar_t/14.cc: New.
1331 2004-02-27 Eric Christopher <echristo@redhat.com>
1332 Phil Edwards <phil@codesourcery.com>
1334 * testsuite/22_locale/collate/compare/wchar_t/2.cc,
1335 testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc,
1336 testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc,
1337 testsuite/22_locale/collate/hash/wchar_t/2.cc,
1338 testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc,
1339 testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc,
1340 testsuite/22_locale/collate/transform/wchar_t/2.cc,
1341 testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc,
1342 testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
1343 Use dg-require-iconv.
1344 * testsuite/lib/libstdc++.exp: Load target-supports.exp.
1346 2004-02-27 Phil Edwards <phil@codesourcery.com>
1347 Eric Christopher <echristo@redhat.com>
1349 * testsuite/config/default.exp: Update with comments.
1350 (${tool}_target_compile): New wrapper routine.
1351 * testsuite/lib/dg-options.exp: New file, with dg-require-iconv.
1352 * testsuite/lib/libstdc++.exp: Update with comments and cosmetic
1354 (load_gcc_lib, v3track): New routines.
1355 (v3-init): Rename to libstdc++_init.
1356 * testsuite/libstdc++-dg/normal.exp: No longer call v3-init.
1357 Move DEFAULT_CXXFLAGS handling into libstdc++_init.
1359 2004-02-27 Benjamin Kosnik <bkoz@redhat.com>
1361 * config/cpu/hppa/atomicity.h: Include c++config.h to get defines.
1363 * src/misc-inst.cc (_S_atomicity_lock): Move to __gnu_cxx.
1365 * config/os/irix/irix5.2/atomicity.h: Merge..
1366 * config/os/irix/irix6.5/atomicity.h: Merge..
1367 * config/os/irix/atomicity.h: ...into this.
1368 * config/os/irix/atomic_word.h: New.
1369 * configure.host: Set atomic_word_dir for irix.
1371 * hppa/atomicity.h: Change __Atomicity_lock to _Atomicity_lock.
1372 * i386/atomicity.h: Same.
1373 * m68k/atomicity.h: Same.
1374 * sparc/atomicity.h: Same.
1376 2004-02-27 David Edelsohn <edelsohn@gnu.org>
1378 * config/os/aix/atomicity.h: Use __gnu_cxx namespace. Remove
1379 static, and inline keywords.
1381 2004-02-27 Paolo Carlini <pcarlini@suse.de>
1383 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
1384 num_get<>::_M_extract_int, money_get<>::_M_extract): If appropriate,
1385 call reserve on the __tmp_gruping string.
1386 (num_get<>::_M_extract_float): Don't append unnecessarily a
1387 char() to the returned string.
1388 * include/bits/locale_facets.tcc: Trivial reformattings.
1390 2004-02-27 Paolo Carlini <pcarlini@suse.de>
1392 * include/bits/locale_facets.h (money_get<>::_M_extract):
1393 Change signature: now takes a plain string&.
1394 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1395 Update consistently the definition; use the moneypunct cache
1396 to parse the value; use swap to change __units.
1397 (money_get<>::do_get(long double&)): Update call of _M_extract,
1398 avoid ctype::narrow, not correct wrt the standard.
1399 (money_get<>::do_get(string_type&)): Likewise, update call
1400 of _M_extract, use ctype::widen.
1401 * src/locale-inst.cc: Tweak instantiations of _M_extract.
1403 2004-02-26 Ian Lance Taylor <ian@wasabisystems.com>
1405 * testsuite/demangle/abi_examples/01.cc: Expect error -2.
1406 * testsuite/demangle/abi_examples/02.cc: Likewise.
1407 * testsuite/demangle/regression/cw-11.cc: Likewise.
1408 * testsuite/demangle/regression/cw-16.cc: Change two expected
1409 results to match libiberty demangler output.
1411 2004-02-26 Benjamin Kosnik <bkoz@redhat.com>
1414 * libsupc++/Makefile.am: Use libiberty demangler.
1415 (c_sources): Add cp-demangle.c.
1416 * libsupc++/Makefile.in: Regenerate.
1417 * src/Makefile.am (sources): Remove demangle.cc.
1418 * src/Makefile.in: Regenerate.
1419 * include/Makefile.am (bits_headers): Move demangle.h.
1420 (ext_headers): ...here.
1421 * include/Makefile.in: Regenerate.
1422 * include/bits/demangle.h: Move...
1423 * include/ext/demangle.h: ...here.
1424 * src/demangle.cc: Remove.
1426 2004-02-26 Benjamin Kosnik <bkoz@redhat.com>
1428 * include/bits/demangle.h: Add type template parameter to all
1429 templates with just an Allocator template parameter.
1431 2004-02-25 Benjamin Kosnik <bkoz@redhat.com>
1433 * include/bits/atomicity.h: New, forward declarations for __atomic_add
1434 and __exchange_and_add.
1435 * config/cpu/generic/atomic_word.h: New, typdef for atomic word.
1436 * config/cpu/cris/atomic_word.h: Same.
1437 * config/cpu/sparc/atomic_word.h: Same.
1438 * include/bits/ios_base.h (_Callback_list::_M_remove_reference):
1439 Qualifiy with __gnu_cxx.
1440 (_Callback_list::_M_add_reference): Same.
1441 * include/bits/locale_classes.h (locale::facet::_M_add_reference): Add.
1442 (locale::facet::_M_remove_reference): Same.
1443 (locale::_Impl::_M_add_reference): Add.
1444 (locale::_Impl::_M_remove_reference): Same.
1445 * include/bits/basic_string.h (basic_string::_Rep::_M_refcopy): Same.
1446 (basic_string::_Rep::_M_dispose): Same.
1447 * src/ios.cc (ios_base::xalloc): Same.
1448 * src/ios_init.cc (ios_base::Init::Init): Same.
1449 (ios_base::Init::~Init): Same.
1450 * src/locale.cc (locale::id::_M_id): Same.
1451 * config/cpu/i486/atomicity.h: Use __gnu_cxx namespace. Remove
1452 static, and inline keywords.
1453 * config/cpu/alpha/atomicity.h: Same.
1454 * config/cpu/cris/atomicity.h: Same.
1455 * config/cpu/generic/atomicity.h: Same.
1456 * config/cpu/hppa/atomicity.h: Same.
1457 * config/cpu/i386/atomicity.h: Same.
1458 * config/cpu/ia64/atomicity.h: Same.
1459 * config/cpu/m68k/atomicity.h: Same.
1460 * config/cpu/mips/atomicity.h: Same.
1461 * config/cpu/powerpc/atomicity.h: Same.
1462 * config/cpu/s390/atomicity.h: Same.
1463 * config/cpu/sparc/atomicity.h: Same.
1465 * src/Makefile.am (host_sources): Add atomicity.cc.
1466 (atomicity.cc): New rule.
1467 * src/Makefile.in: Regenerate.
1468 * include/Makefile.am (host_headers): Remove host atomicity.h.
1469 (host_headers): Add atomic_word.h.
1470 (bits_headers): Add bits atomicity.h.
1471 Change ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
1472 * include/Makefile.in: Regenerate.
1473 * configure.host (atomic_word_dir): Add.
1474 * configure.ac: Substitute ATOMIC_WORD_SRCDIR. Change
1475 ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
1476 * configure: Regenerate.
1477 * config/linker-map.gnu: Export __exchange_and_add, and __atomic_add.
1479 * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
1480 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
1482 2004-02-25 Jonathan Wakely <redi@gcc.gnu.org>
1484 * docs/html/20_util/howto.html, docs/html/20_util/allocator.html,
1485 docs/html/ext/howto.html, docs/html/ext/mt_allocator.html:
1486 Fix markup, more <link> tags.
1488 2004-02-25 Carlo Wood <carlo@alinoe.com>
1491 namespace __gnu_cxx::demangler
1492 (session<Allocator>::qualifier_list_Allocator): Add
1493 (session<Allocator>::M_qualifier_list_alloc): Add
1494 (session<Allocator>::decode_type_with_postfix):
1495 Use M_qualifier_list_alloc instead of calling operator new/delete.
1497 2004-02-24 Paolo Carlini <pcarlini@suse.de>
1500 * include/bits/postypes.h (class streamoff): Add operator++(),
1501 operator++(int), operator--() and operator--(int).
1502 * testsuite/27_io/fpos/14252.cc: New.
1504 2004-02-24 Richard Sandiford <rsandifo@redhat.com>
1506 * include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds
1507 error in handling of hex constants.
1509 2004-02-24 Paolo Carlini <pcarlini@suse.de>
1511 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
1512 Prefer basic_string::append to operator+= and a temporary.
1514 2004-02-23 Benjamin Kosnik <bkoz@redhat.com>
1516 * libsupc++/vterminate.cc (__gnu_cxx::__verbose_terminate_handler):
1517 Only use fputs, not write.
1519 2004-02-23 Benjamin Kosnik <bkoz@redhat.com>
1521 * include/ext/malloc_allocator.h: Add operators ==, !=.
1522 * include/ext/new_allocator.h: Add operators ==, !=.
1523 * include/ext/mt_allocator.h (__mt_alloc::tune): New.
1524 (__mt_alloc::_S_get_options): New.
1525 (__mt_alloc::_S_set_options): New.
1526 (__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key.
1527 (__mt_alloc::_S_no_of_bins): To _S_bin_size.
1528 Move functions out of line, simplify, format.
1529 * src/allocator.cc: Simplify explicit instantiations.
1530 * include/bits/allocator.h: Tweak.
1532 2004-02-22 Paolo Carlini <pcarlini@suse.de>
1534 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
1535 Restructure formatting of value component, first dealing with
1536 the non-decimal digits; use reserve.
1538 2004-02-22 Paolo Carlini <pcarlini@suse.de>
1540 * include/bits/locale_facets.h (class money_get): Inherit
1541 from money_base too; tweak declaration of _M_extract, now
1542 parameterized on _Intl too.
1543 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1544 Update definition to use the cache; call reserve on __res to
1545 avoid multiple reallocations; fix parsing of sign component
1546 according to 22.2.6.1.2, p3.
1547 (money_get<>::do_get(long double&),
1548 money_get<>::do_get(string_type&)): Update calls of _M_extract.
1549 * src/locale-inst.cc: Add instantiations of
1550 money_get::_M_extract<false> and money_get::_M_extract<true>.
1551 * testsuite/22_locale/money_get/get/char/14.cc: New.
1552 * testsuite/22_locale/money_get/get/wchar_t/14.cc: Ditto.
1554 2004-02-21 Mark Mitchell <mark@codesourcery.com>
1556 * libsupc++/vterminate.cc
1557 (__gnu_cxx::__verbose_terminate_handler): Guard against recursive
1559 * src/demangle.cc (__cxa_demangle): Wrap in try-catch block.
1561 * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
1562 not set RLIMIT_AS on HP-UX.
1564 2004-02-21 Mark Mitchell <mark@codesourcery.com>
1566 * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
1567 not set RLIMIT_AS on HP-UX.
1569 2004-02-21 Paolo Carlini <pcarlini@suse.de>
1571 * include/bits/locale_facets.h (class money_base): Add { _S_minus,
1572 _S_zero, _S_end } enum, _S_atoms.
1573 (struct __moneypunct_cache<>): Parameterize on _Intl too; add
1574 _M_grouping_size, _M_curr_symbol_size, _M_positive_sign_size,
1575 _M_negative_sign_size, _M_atoms; tweak constructor consistently.
1576 (__moneypunct_cache<>::~__moneypunct_cache): Update.
1577 (__moneypunct_cache<>::_M_cache): Fill the cache.
1578 (class moneypunct): Tweak __cache_type typedef.
1579 (class money_put): Inherit from money_base too; tweak declaration
1580 of _M_insert, now parameterized on _Intl.
1581 * include/bits/locale_facets.tcc
1582 (struct __use_cache<__moneypunct_cache<_CharT, _Intl> >): New.
1583 (money_put<>::_M_insert): Update definition to use the cache;
1584 call reserve on __res to avoid multiple reallocations.
1585 (money_put<>::do_put(long double),
1586 money_put<>::do_put(const string_type&): Update calls of _M_insert.
1587 * config/locale/generic/monetary_members.cc
1588 (moneypunct<char, true>::_M_initialize_moneypunct,
1589 moneypunct<char, false>::_M_initialize_moneypunct,
1590 moneypunct<wchar_t, true>::_M_initialize_moneypunct,
1591 moneypunct<wchar_t, false>::_M_initialize_moneypunct): Update.
1592 * config/locale/gnu/monetary_members.cc: Likewise.
1593 * config/locale/gnu/monetary_members.cc
1594 (moneypunct<wchar_t, true>::~moneypunct(),
1595 moneypunct<wchar_t, false>::~moneypunct()): Likewise.
1596 * src/globals_locale.cc: Tweak fake_money_cache_c.
1597 * src/locale-inst.cc: Add instantiations for
1598 money_put::_M_insert<false> and money_put::_M_insert<true> and
1599 __moneypunct_cache<C, false>, __moneypunct_cache<C, true>.
1600 * src/locale_facets.cc: Define money_base::_S_atoms.
1601 * src/locale_init.cc: Update placement new of
1602 __moneypunct_cache<char, false>, __moneypunct_cache<char, true>,
1603 __moneypunct_cache<wchar_t, false>, __moneypunct_cache<wchar_T, true>.
1605 * config/locale/generic/numeric_members.cc: Clean up.
1606 * config/locale/gnu/numeric_members.cc: Likewise.
1607 * testsuite/22_locale/money_put/put/char/1.cc: Likewise.
1608 * testsuite/22_locale/money_put/put/char/2.cc: Likewise.
1609 * testsuite/22_locale/money_put/put/char/3.cc: Likewise.
1610 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
1611 * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
1612 * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
1614 2004-02-20 Mark Mitchell <mark@codesourcery.com>
1616 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Open
1617 FIFO for writing with ios_base::in|ios_base::out.
1618 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
1619 * testsuite/27_io/objects/char/7.cc: Likewise.
1620 * testsuite/27_io/objects/char/9661-1.cc: Open FIFO for writing
1623 2004-02-19 David Edelsohn <edelsohn@gnu.org>
1625 * 22_locale/collate/compare/wchar_t/2.cc: Change input-charset
1626 from iso-8859-1 to ISO8859-1.
1627 * 22_locale/collate/compare/wchar_t/wrapped_env.cc: Same.
1628 * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same.
1629 * 22_locale/collate/hash/wchar_t/2.cc: Same.
1630 * 22_locale/collate/hash/wchar_t/wrapped_env.cc: Same.
1631 * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same.
1632 * 22_locale/collate/transform/wchar_t/2.cc: Same.
1633 * 22_locale/collate/transform/wchar_t/wrapped_env.cc: Same.
1634 * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: Same.
1636 2004-02-18 Paolo Carlini <pcarlini@suse.de>
1638 * include/bits/locale_facets.h (money_get<>::_M_extract):
1639 New, helper for do_get.
1640 (money_put<>::_M_insert): Likewise, for do_put.
1641 * include/bits/locale_facets.tcc (money_get<>::_M_extract,
1642 money_put<>::_M_insert): Define.
1643 (money_get<>::do_get(long double&), money_get<>::do_get(
1644 string_type&), money_put::do_put(long double),
1645 money_put::do_put(const string_type&)): Use the helpers.
1647 2004-02-18 Paolo Carlini <pcarlini@suse.de>
1649 * config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
1650 Rewrite, avoiding recursion.
1651 (__gnu_internal::xwrite): Minor tweaks.
1653 2004-02-17 Stefan Olsson <stefan@xapa.se>
1655 * include/ext/mt_allocator.h: Removed the last
1656 pointer. Deallocated blocks are now added to the front of
1657 freelists as proposed by Felix Yen. This gives roughly 10%
1658 performance boost and saves some memory.
1659 * docs/html/ext/mt_allocator.html: Change due to that deallocated
1660 blocks now are added to the front of freelists. The reason to this
1661 approach is also explained.
1663 2004-02-17 Paolo Carlini <pcarlini@suse.de>
1665 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
1666 num_get<>::_M_extract_int, money_get<>::do_get): Simplify
1667 grouping fidelity conditional.
1669 2004-02-16 Paolo Carlini <pcarlini@suse.de>
1671 * testsuite/27_io/basic_filebuf/overflow/char/13858.cc:
1672 Qualify exception with std::.
1673 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Ditto.
1674 * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
1675 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
1676 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
1677 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
1679 2004-02-16 Paolo Carlini <pcarlini@suse.de>
1681 * testsuite/ext/enc_filebuf/char/13189.cc: Don't check
1682 for now that the catch block is not reached.
1683 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
1685 2004-02-16 Paolo Carlini <pcarlini@suse.de>
1687 * include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
1688 Fix parsing of the remaining sign characters.
1689 * 22_locale/money_get/get/char/2.cc: Tweak: now, correctly,
1690 the input is scanned 'til eof.
1691 * 22_locale/money_get/get/char/4.cc: Likewise.
1692 * 22_locale/money_get/get/wchar_t/2.cc: Likewise.
1693 * 22_locale/money_get/get/wchar_t/4.cc: Likewise.
1694 * 22_locale/money_get/get/char/8.cc: Tweak: override do_neg_format,
1695 not do_pos_format: the former is the only one that matters during
1697 * 22_locale/money_get/get/wchar_t/8.cc: Likewise.
1699 * 22_locale/money_get/get/char/6.cc: Minor tweak.
1700 * 22_locale/money_get/get/wchar_t/6.cc: Likewise.
1702 2004-02-15 David Asher <david.asher@cavium.com>
1705 * include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't
1706 access __olds beyond __oldlen.
1708 2004-02-14 Paolo Carlini <pcarlini@suse.de>
1710 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Make
1711 sure the exception is actually thrown.
1712 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
1713 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
1714 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
1716 2004-02-14 Paolo Carlini <pcarlini@suse.de>
1719 * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external):
1720 In case of conversion errors, throw ios_failure; simplify.
1721 * testsuite/27_io/basic_filebuf/overflow/char/13858.cc: New.
1722 * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
1723 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Tweak,
1724 previously we didn't throw in case of conversion errors, instead
1725 just returned eof().
1726 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
1727 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
1728 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
1730 * include/bits/fstream.tcc (basic_filebuf<>::overflow):
1731 Trivial simplification of a conditional.
1733 2004-02-12 Paolo Carlini <pcarlini@suse.de>
1735 PR libstdc++/13731 (final part: writev)
1736 * config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
1737 New, a wrapper around writev() handling partial writes.
1738 (__basic_file<char>::xwrite): Move to __gnu_internal and make
1740 (__basic_file<char>::xsputn): Update call.
1741 (__basic_file<char>::xsputn_2): Likewise.
1742 * config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
1743 Don't declare, now static.
1745 2004-02-11 Stefan Olsson <stefan@xapa.se>
1747 * docs/html/ext/mt_allocator.html: New.
1749 2004-02-11 Benjamin Kosnik <bkoz@redhat.com>
1751 * docs/html/20_util/allocator.html: New file, consolidate
1752 allocator information here. Revamp.
1753 * docs/html/documentation.html: Change links.
1754 * docs/html/20_util/howto.html: Same.
1755 * docs/html/ext/howto.html: Same.
1757 2004-02-11 Paolo Carlini <pcarlini@suse.de>
1759 PR libstdc++/13731 (first part: write)
1760 * config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
1762 * config/io/basic_file_stdio.cc (__basic_file<char>::xwrite):
1763 Define it: a wrapper around write() handling partial write.
1764 (__basic_file<char>::xsputn): Use it.
1765 (__basic_file<char>::xsputn_2): Likewise.
1767 2004-02-11 Paolo Carlini <pcarlini@suse.de>
1768 Petur Runolfsson <peturr02@ru.is>
1771 * include/std/std_istream.h (operator>>(__istream_type& (*)
1772 (__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)),
1773 operator>>(ios_base& (*)(ios_base&))): Declare inline.
1774 * include/std/std_ostream.h (operator<<(__ostream_type& (*)
1775 (__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)),
1776 operator<<(ios_base& (*) (ios_base&))): Likewise.
1777 * testsuite/performance/27_io/fmtflags_manipulators.cc: New.
1779 2004-02-10 Loren J. Rittle <ljrittle@acm.org>
1782 * config/linker-map.gnu: Add typeinfo and typeinfo name for
1783 __gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >.
1786 * config/linker-map.gnu: Add typeinfo and typeinfo name for
1787 __gnu_cxx::stdio_filebuf<char, std::char_traits<char> >.
1789 2004-02-09 Loren J. Rittle <ljrittle@acm.org>
1791 * include/ext/pool_allocator.h: Include c++config.h.
1793 2004-02-09 Stefan Olsson <stefan@xapa.se>
1795 * include/ext/mt_allocator.h: thread_id is unused in non threaded
1796 applications and now has a ifdef to remove it completely on
1797 compilers without thread support. Include stdlib.h due to a
1798 compiler warning on getenv().
1800 2004-02-09 Paul Brook <paul@codesourcery.com>
1802 * libstdc++-v3/configure.host: Explicitly check for atomicity.h file.
1804 2004-02-09 Paolo Carlini <pcarlini@suse.de>
1807 * src/locale_init.cc (locale::global(const locale&)): Use
1808 locale::name() in order to decide whether calling setlocale.
1809 * testsuite/22_locale/locale/global_locale_objects/14071.cc: New.
1811 * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name()):
1812 Avoid computing &= unnecessarily.
1814 2004-02-09 James E Wilson <wilson@specifixinc.com>
1817 * libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
1818 __builtin_extend_pointer.
1820 2004-02-09 Paolo Carlini <pcarlini@suse.de>
1823 * include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale):
1824 Don't leave dangling pointers.
1825 * testsuite/27_io/basic_ios/imbue/14072.cc: New.
1826 * testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put
1827 facet is needed in the final test.
1829 2004-02-09 Bernardo Innocenti <bernie@develer.com>
1831 * crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*.
1832 * configure: Regenerate.
1834 2004-02-08 Richard Henderson <rth@redhat.com>
1837 * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust
1838 uncaughtExceptions during nested catch rethrow.
1839 * testsuite/18_support/14026.cc: New.
1841 2004-02-08 Paolo Carlini <pcarlini@suse.de>
1843 * include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
1844 When working in place remember to set the state to sharable
1845 (otherwise, _M_mutate does it).
1847 2004-02-08 Bernardo Innocenti <bernie@develer.com>
1849 * include/bits/allocator.h, include/bits/basic_ios.h,
1850 include/bits/basic_ios.tcc, include/bits/basic_string.h,
1851 include/bits/basic_string.tcc, include/bits/boost_concept_check.h,
1852 include/bits/char_traits.h, include/bits/codecvt.h,
1853 include/bits/concurrence.h, include/bits/cpp_type_traits.h,
1854 include/bits/demangle.h, include/bits/deque.tcc,
1855 include/bits/fstream.tcc, include/bits/functexcept.h,
1856 include/bits/gslice.h, include/bits/gslice_array.h,
1857 include/bits/indirect_array.h, include/bits/ios_base.h,
1858 include/bits/istream.tcc, include/bits/list.tcc,
1859 include/bits/locale_classes.h, include/bits/locale_facets.h,
1860 include/bits/locale_facets.tcc, include/bits/localefwd.h,
1861 include/bits/mask_array.h, include/bits/ostream.tcc,
1862 include/bits/postypes.h, include/bits/slice_array.h,
1863 include/bits/sstream.tcc, include/bits/stl_algo.h,
1864 include/bits/stl_algobase.h, include/bits/stl_bvector.h,
1865 include/bits/stl_construct.h, include/bits/stl_deque.h,
1866 include/bits/stl_function.h, include/bits/stl_heap.h,
1867 include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h,
1868 include/bits/stl_list.h, include/bits/stl_map.h,
1869 include/bits/stl_multimap.h, include/bits/stl_multiset.h,
1870 include/bits/stl_numeric.h, include/bits/stl_pair.h,
1871 include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h,
1872 include/bits/stl_relops.h, include/bits/stl_set.h,
1873 include/bits/stl_stack.h, include/bits/stl_tempbuf.h,
1874 include/bits/stl_threads.h, include/bits/stl_tree.h,
1875 include/bits/stl_uninitialized.h, include/bits/stl_vector.h,
1876 include/bits/stream_iterator.h, include/bits/streambuf.tcc,
1877 include/bits/streambuf_iterator.h,include/bits/stringfwd.h,
1878 include/bits/type_traits.h, include/bits/valarray_after.h,
1879 include/bits/valarray_array.h, include/bits/valarray_array.tcc,
1880 include/bits/valarray_before.h, include/bits/vector.tcc: Remove
1881 trailing whitespace.
1883 2004-02-06 Paolo Carlini <pcarlini@suse.de>
1885 * include/bits/basic_string.h: Fix comment.
1887 2004-02-06 Paolo Carlini <pcarlini@suse.de>
1889 * include/bits/stl_construct.h: Wrap overlong lines, reformat
1890 according to the coding standards.
1891 * include/bits/stl_pair.h: Likewise.
1892 * include/bits/stl_raw_storage_iter.h: Likewise.
1893 * include/bits/stl_stack.h: Likewise.
1894 * include/bits/stl_uninitialized.h: Likewise.
1895 * include/bits/stream_iterator.h: Likewise.
1896 * include/bits/streambuf_iterator.h: Likewise.
1897 * include/bits/type_traits.h: Likewise.
1899 2004-02-06 Paolo Carlini <pcarlini@suse.de>
1901 * testsuite/27_io/basic_filebuf/open/char/9507.cc:
1904 2004-02-05 Loren J. Rittle <ljrittle@acm.org>
1906 * scripts/check_performance: Support PCH.
1908 * scripts/check_performance (CXX): Add -DNOTHREAD.
1909 * testsuite/performance/20_util/allocator/insert.cc: Integrate
1910 threaded tests from insert_insert.cc. Tweak iterations,
1911 remove special cases.
1912 * testsuite/performance/20_util/allocator/insert_insert.cc:
1913 Make all tests single-threaded. Tweak iterations.
1914 * testsuite/performance/20_util/allocator/map_thread.cc:
1916 * testsuite/performance/20_util/allocator/producer_consumer.cc:
1919 2004-02-05 Geoffrey Keating <geoffk@apple.com>
1923 * acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): Use 'gcc', not
1924 'gcc-lib'. Add comment about poorly-named variables.
1925 * aclocal.m4: Regenerate.
1926 * configure: Regenerate.
1928 2004-02-05 Paolo Carlini <pcarlini@suse.de>
1930 * include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
1931 Thousands-sep are always optional; thousands-sep are not allowed
1932 after the decimal_point.
1933 * testsuite/22_locale/money_get/get/char/12.cc: New.
1934 * testsuite/22_locale/money_get/get/char/13.cc: New.
1935 * testsuite/22_locale/money_get/get/wchar_t/12.cc: New.
1936 * testsuite/22_locale/money_get/get/wchar_t/13.cc: New.
1938 * testsuite/22_locale/money_get/get/char/1.cc: Clean-up.
1939 * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
1940 * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
1941 * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
1942 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
1943 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
1944 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
1945 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
1947 * testsuite/22_locale/money_get/get/char/9.cc: Fix citation from
1949 * testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise.
1951 2004-02-05 Richard Sandiford <rsandifo@redhat.com>
1953 * config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T):
1955 * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use
1956 it to decide whether FIONREAD should take an off_t or int argument.
1958 2004-02-05 Paolo Carlini <pcarlini@suse.de>
1960 * include/bits/stl_function.h: Minor formatting changes.
1962 2004-02-04 Zack Weinberg <zack@codesourcery.com>
1964 Revert previous change to config/abi/*/baseline_symbols.txt.
1966 2004-02-04 Benjamin Kosnik <bkoz@redhat.com>
1967 Zack Weinberg <zack@codesourcery.com>
1969 * config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode):
1971 (__basic_file<char>::sys_open, __basic_file<char>::open): Use it.
1972 (__basic_file<char>::_M_open_mode): Delete.
1973 * config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode.
1975 * testsuite/27_io/basic_filebuf/close/char/9964.cc
1976 * testsuite/27_io/basic_filebuf/open/char/9507.cc:
1977 Correct flags to filebuf::open calls.
1979 * config/abi/alpha-freebsd5/baseline_symbols.txt
1980 * config/abi/alpha-linux-gnu/baseline_symbols.txt
1981 * config/abi/hppa-linux-gnu/baseline_symbols.txt
1982 * config/abi/i386-freebsd4/baseline_symbols.txt
1983 * config/abi/i386-freebsd5/baseline_symbols.txt
1984 * config/abi/i486-linux-gnu/baseline_symbols.txt
1985 * config/abi/ia64-linux-gnu/baseline_symbols.txt
1986 * config/abi/mips-linux-gnu/baseline_symbols.txt
1987 * config/abi/sparc-freebsd5/baseline_symbols.txt
1988 * config/abi/sparc-linux-gnu/baseline_symbols.txt
1989 * config/abi/x86_64-linux-gnu/baseline_symbols.txt:
1990 Remove entry for __basic_file<char>::_M_open_mode.
1992 2004-02-04 Loren J. Rittle <ljrittle@acm.org>
1994 * testsuite/performance/20_util/allocator/insert.cc (main): Tweak.
1996 2004-02-04 Felix Yen <fwy@alumni.brown.edu>
1998 * testsuite/performance/20_util/producer_consumer.cc: New.
1999 * testsuite/performance/20_util/allocator/insert_insert.cc: Two loops.
2001 2004-02-04 Benjamin Kosnik <bkoz@redhat.com>
2003 * testsuite/performance/20_util/allocator.cc: Move to..
2004 * testsuite/performance/20_util/allocator/insert.cc: ...here.
2005 * testsuite/performance/20_util/allocator_thread.cc: Move to...
2006 * testsuite/performance/20_util/allocator/insert_insert.cc: ...here.
2007 * testsuite/performance/20_util/allocator_map_thread.cc: Move to...
2008 * testsuite/performance/20_util/allocator/map_thread.cc: ...here.
2010 2004-02-04 Jonathan Wakely <redi@gcc.gnu.org>
2012 * docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH.
2013 * docs/html/faq/index.txt: Regenerate.
2015 2004-02-04 Dhruv Matani <dhruvbird@gmx.net>
2017 * include/ext/debug_allocator.h: _M_extra now stands for the
2018 number of extra objects instead of the number of extra bytes.
2019 (debug_allocator::allocate): Adjust.
2020 (debug_allocator::deallocate): Adjust.
2022 * include/ext/pool_allocator.h: Fix typo.
2024 2004-02-03 Felix Yen <fwy@alumni.brown.edu>
2025 Benjamin Kosnik <bkoz@redhat.com>
2027 * testsuite/performance/20_util/allocator.cc: Add map,
2029 * testsuite/performance/20_util/allocator_thread.cc: Same.
2031 2004-02-03 Paolo Carlini <pcarlini@suse.de>
2033 * include/bits/basic_string.h (insert(iterator)): Remove,
2034 non-standard and already scheduled for removal.
2036 2004-02-03 Paolo Carlini <pcarlini@suse.de>
2038 * include/bits/stl_iterator_base_funcs.h: Minor formatting
2039 and indentation tweaks.
2040 * include/bits/stl_iterator_base_types.h: Likewise.
2041 * include/bits/stl_list.h: Likewise.
2042 * include/bits/stl_map.h: Likewise.
2043 * include/bits/stl_tempbuf.h: Likewise.
2045 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
2047 * include/bits/gslice.h, include/bits/gslice_array.h,
2048 include/bits/indirect_array.h, include/bits/mask_array.h,
2049 include/bits/slice_array.h, include/bits/stl_numeric.h,
2050 include/std/std_valarray.h: Update copyright years.
2052 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
2054 * include/bits/gslice.h (gslice): Document.
2055 * include/bits/gslice_array.h (gslice_array): Document.
2056 * include/bits/indirect_array (indirect_array): Document.
2057 * include/bits/mask_array (mask_array): Document.
2058 * include/bits/slice_array.h (slice,slice_array): Document.
2059 * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
2060 adjacent_difference): Document
2061 * include/std/std_valarray.h (valarray): Document.
2063 2004-02-02 Benjamin Kosnik <bkoz@redhat.com>
2065 * docs/html/19_diagnostics/howto.html: Move verbose terminate
2067 * docs/html/18_support/howto.html: Here.
2068 * docs/html/documentation.html: Add reference here.
2070 2004-02-02 Paolo Carlini <pcarlini@suse.de>
2072 * config/locale/gnu/c++locale_internal.h: Remove prototypes
2073 of no longer used GLIBC thread locale functions.
2075 2004-02-02 Eric Christopher <echristo@redhat.com>
2076 Zack Weinberg <zack@codesourcery.com>
2078 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
2080 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
2081 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
2082 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
2083 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
2084 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
2085 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
2086 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
2087 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
2090 2004-02-02 Paolo Carlini <pcarlini@suse.de>
2092 * include/bits/stl_function.h: Additional minor tweaks.
2093 * include/bits/stl_multiset.h: Likewise.
2095 * include/bits/stl_queue.h: Minor tweaks.
2097 2004-02-02 Paolo Carlini <pcarlini@suse.de>
2099 PR libstdc++/13976 (continued)
2100 * include/ext/malloc_allocator.h (malloc_allocator::deallocate):
2101 Make the second parameter unnamed, to void unused parameter
2103 * include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
2105 2004-02-02 Paolo Carlini <pcarlini@suse.de>
2108 * include/ext/malloc_allocator.h (malloc_allocator::allocate):
2109 Make the second parameter unnamed, to void unused parameter
2111 * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
2112 * include/ext/new_allocator.h (new_allocator::allocate): Ditto.
2114 2004-02-01 Paolo Carlini <pcarlini@suse.de>
2116 * include/bits/stl_algo.h: Additional minor tweaks.
2117 * include/bits/stl_map.h: Likewise.
2118 * include/bits/stl_multimap.h: Likewise.
2119 * include/bits/stl_multiset.h: Likewise.
2120 * include/bits/stl_set.h: Likewise.
2121 * include/bits/stl_tree.h: Likewise.
2123 2004-02-01 Paolo Carlini <pcarlini@suse.de>
2125 * include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
2128 2004-02-01 Paolo Carlini <pcarlini@suse.de>
2130 * include/bits/stl_function.h: Additional minor tweaks.
2132 2004-02-01 Paolo Carlini <pcarlini@suse.de>
2134 * include/bits/deque.tcc: Wrap overlong lines, constify
2135 a few variables, reformat according to the coding standards.
2136 * include/bits/list.tcc: Likewise.
2137 * include/bits/stl_deque.h: Likewise.
2138 * include/bits/stl_function.h: Likewise.
2139 * include/bits/stl_iterator.h: Likewise.
2140 * include/bits/stl_iterator_base_funcs.h: Likewise.
2141 * include/bits/stl_iterator_base_types.h: Likewise.
2142 * include/bits/stl_list.h: Likewise.
2143 * include/bits/stl_map.h: Likewise.
2144 * include/bits/stl_multimap.h: Likewise.
2145 * include/bits/stl_multiset.h: Likewise.
2146 * include/bits/stl_relops.h: Likewise.
2147 * include/bits/stl_set.h: Likewise.
2149 2004-02-01 Paolo Carlini <pcarlini@suse.de>
2151 * include/bits/stl_bvector.h: Wrap overlong lines, constify
2152 a few variables, reformat according to the coding standards.
2153 * include/bits/stl_tree.h: Likewise.
2155 2004-01-31 Paolo Carlini <pcarlini@suse.de>
2157 * include/bits/stl_algo.h: Minor additional reformat, add
2159 * include/bits/stl_algobase.h: Add copyright year.
2161 2004-01-31 Paolo Carlini <pcarlini@suse.de>
2163 * include/bits/stl_algo.h: Wrap overlong lines, constify
2164 a few variables, reformat according to the coding standards.
2165 * include/bits/stl_algobase.h: Likewise.
2166 * include/bits/stl_heap.h: Likewise.
2168 2004-01-31 Paolo Carlini <pcarlini@suse.de>
2170 * include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
2172 * include/bits/basic_string.h: Fix two comments.
2174 2004-01-31 Per Bothner <per@bothner.com>
2176 * include/ext/mt_allocator.h
2177 (__mt_alloc::_S_thread_freelist_mutex): Guard with
2178 __GTHREAD_MUTEX_INIT.
2180 2004-01-31 Paolo Carlini <pcarlini@suse.de>
2182 * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
2184 2004-01-30 Paolo Carlini <pcarlini@suse.de>
2186 * testsuite/21_strings/basic_string/cons/char/6.cc: New.
2187 * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
2188 * testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
2190 2004-01-30 Felix Yen <fwy@alumni.brown.edu>
2192 * testsuite/performance/20_util/allocator_thread.cc (do_loop):
2193 Don't use clear, but instead assign. Use insert.
2195 2004-01-30 Benjamin Kosnik <bkoz@redhat.com>
2197 * src/demangle.cc: Add instantiations.
2198 * src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
2199 * src/Makefile.in: Regenerate.
2201 2004-01-30 David Edelsohn <edelsohn@gnu.org>
2203 * src/allocator.cc: Protect _S_get_thread_id() and
2204 _S_thread_key_destr() with #ifdef __GTHREADS.
2206 2004-01-30 Paolo Carlini <pcarlini@suse.de>
2208 Reshuffle performance testsuite.
2209 * testsuite/performance/allocator.cc, allocator_map_thread.cc,
2210 allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
2211 cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
2212 fstream_seek_write.cc, ifstream_extract_float.cc,
2213 ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
2214 list_create_fill_sort.cc, map_create_fill.cc,
2215 narrow_widen_char.cc, narrow_widen_wchar_t.cc,
2216 ofstream_insert_float.cc, ofstream_insert_int.cc,
2217 string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
2218 wchar_t_out.cc: Split into...
2219 * testsuite/performance/20_util/allocator.cc: New.
2220 * testsuite/performance/20_util/allocator_map_thread.cc: New.
2221 * testsuite/performance/20_util/allocator_thread.cc: New.
2222 * testsuite/performance/21_strings/string_append: New.
2223 * testsuite/performance/22_locale/is_wchar_t.cc: New.
2224 * testsuite/performance/22_locale/narrow_widen_char.cc: New.
2225 * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
2226 * testsuite/performance/22_locale/wchar_t_in.cc: New.
2227 * testsuite/performance/22_locale/wchar_t_length.cc: New.
2228 * testsuite/performance/22_locale/wchar_t_out.cc: New.
2229 * testsuite/performance/23_containers/container_benchmark.cc: New.
2230 * testsuite/performance/23_containers/list_create_fill_sort.cc: New.
2231 * testsuite/performance/23_containers/map_create_fill.cc: New.
2232 * testsuite/performance/26_numerics/complex_norm.cc: New.
2233 * testsuite/performance/27_io/cout_insert_int.cc: New.
2234 * testsuite/performance/27_io/filebuf_copy.cc: New.
2235 * testsuite/performance/27_io/filebuf_sputc.cc: New.
2236 * testsuite/performance/27_io/fstream_seek_write.cc: New.
2237 * testsuite/performance/27_io/ifstream_extract_float.cc: New.
2238 * testsuite/performance/27_io/ifstream_extract_int.cc: New.
2239 * testsuite/performance/27_io/ifstream_getline.cc: New.
2240 * testsuite/performance/27_io/ofstream_insert_float.cc: New.
2241 * testsuite/performance/27_io/ofstream_insert_int.cc: New.
2243 2004-01-30 Paolo Carlini <pcarlini@suse.de>
2245 * include/bits/basic_string.tcc (_Rep::_S_create):
2246 Never allocate a string bigger than max_size(); always keep
2247 __capacity and __size in sync to avoid memory leaks at
2250 2004-01-30 Paolo Carlini <pcarlini@suse.de>
2252 * include/bits/basic_string.tcc (_S_construct(_InIterator,
2253 _InIterator, const _Alloc&, input_iterator_tag)): Simplify
2254 the double loop, streamline.
2256 * include/bits/basic_string.tcc: Very minor tweaks.
2258 2004-01-30 Loren J. Rittle <ljrittle@acm.org>
2260 * scripts/check_performance: Only compile with $THREAD_FLAG
2261 when test is marked to require it. Allow multiple
2262 compilations/executions of marked tests.
2263 * testsuite/testsuite_performance.h (report_performance):
2264 Report dynamic thread support status.
2265 (report_header): Likewise.
2266 * testsuite/performance/allocator.cc: Stabilize iteration
2267 count. Support more allocators. Mark each allocator test to
2268 run and report independently.
2269 * testsuite/performance/allocator_map_thread.cc: Likewise.
2270 * testsuite/performance/allocator_thread.cc: Likewise.
2272 2004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
2274 * config/local/generic/c_locale.h: Change ::malloc() to new char[].
2275 * config/local/gnu/c_locale.h: Change ::malloc() to new char[].
2276 * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
2277 std::get_temporary_buffer() instead of duplicating its code.
2278 Update to C++STYLE conventions.
2279 * include/std/std_memory.h (get_temporary_buffer): Use ::operator
2280 new() instead of std::malloc().
2281 (return_temporary_buffer): Use ::operator delete() instead of
2284 2004-01-29 Benjamin Kosnik <bkoz@redhat.com>
2286 * include/bits/allocator.h: Temporary switch to new_allocator as
2287 the default to unjam bootstraps.
2289 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
2291 * include/Makefile.am (bits_headers): Remove allocator_traits.h.
2292 * include/Makefile.in: Regenerate.
2293 * include/bits/allocator_traits.h: Remove.
2294 * include/bits/allocator.h: Remove allocator_traits.h include, and
2296 (allocator): Empty base class, inherit from the underlying allocator.
2297 * src/allocator-inst.cc: Move __pool_alloc instantiation to...
2298 * src/allocator.cc: ...here. New. For the underlying allocators.
2299 Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
2300 * config/linker-map.gnu: Remove __pool_alloc bits.
2301 * src/Makefile.am (sources): Add allocator.cc.
2302 * src/Makefile.in: Regenerate.
2303 * testsuite/20_util/allocator/1.cc: Split second test into...
2304 * testsuite/20_util/allocator/8230.cc: ...this.
2305 * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
2306 typedef to use std::allocatore. Format.
2307 * include/ext/pool_allocator.h: Remove allocator_traits.h include,
2309 * include/ext/mt_allocator.h (__gnu_cxx): Qualify
2310 __throw_bad_alloc calls. Don't include <memory>.
2311 * include/ext/malloc_allocator.h: Remove <memory> include.
2312 * include/ext/new_allocator.h (new_allocator): Same.
2313 * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
2314 declaration. Switch __alloc to _Alloc.
2315 * include/ext/hashtable.h: Remove __alloc.
2316 * include/backward/alloc.h: Only inject allocator, not
2317 implementation details.
2319 * include/ext/mt_allocator.h: Replace free with delete.
2321 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
2323 * src/globals_io.cc: Change to __gnu_internal namespace.
2324 * src/globals_locale.cc: Same.
2325 * src/locale_init.cc: Same.
2326 * src/ios_init.cc: Same.
2328 2004-01-28 Stefan Olsson <stefan@snon.net>
2330 * include/ext/mt_allocator.h: Replaced all malloc() calls with
2331 operator new(). Added support for the env variable
2332 GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
2333 one in allocate() as well). Fix typos.
2335 2004-01-28 Paolo Carlini <pcarlini@suse.de>
2337 * include/bits/basic_string.h (_S_create(size_t,
2338 const _Alloc&): Change signature to take two size_type
2340 * include/bits/basic_string.tcc (_S_construct(_InIterator,
2341 _InIterator, const _Alloc&, input_iterator_tag)): Update
2343 (_S_construct(_InIterator, _InIterator, const _Alloc&,
2344 forward_iterator_tag)): Likewise.
2345 (_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
2346 (_M_mutate(size_type, size_type, size_type)): Don't
2347 implement the exponential growth policy, demand it to
2348 _S_create, update call and simplify.
2349 (_M_clone(const _Alloc&, size_type)): Likewise.
2350 (_S_create(size_type, size_type, const _Alloc&)): Implement
2351 the growth policy, simplify otherwise.
2353 * include/bits/basic_string.h (_Rep::operator[]): Tweak
2354 signature to take a size_type, consistently with the other
2357 2004-01-27 Benjamin Kosnik <bkoz@redhat.com>
2359 * testsuite/27_io/ios_base/storage/11584.cc: Correct new and
2360 delete declarations, add include and test variable.
2362 2003-01-27 Jerry Quinn <jlquinn@optonline.net>
2364 * include/bits/codecvt.h, include/bits/locale_facets.h,
2365 include/bits/postypes.h, include/bits/stl_bvector.h,
2366 include/bits/stl_multiset.h, include/bits/stl_set.h,
2367 include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
2368 include/std/std_complex.h: Document.
2370 2004-01-27 Jerry Quinn <jlquinn@optonline.net>
2373 * include/bits/ios_base.h (ios_base::_M_grow_words): Add
2374 iword/pword selector.
2375 (ios_base::iword, ios_base::pword): Use it.
2376 * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero
2377 iword or pword member on alloc failure.
2378 * testsuite/27_io/ios_base/storage/11584.cc: New test.
2380 2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
2381 PJ Darcy <darcypj@us.ibm.com>
2383 * configure.host: Add support for *-tpf.
2384 * crossconfig.m4: Likewise.
2385 * configure: Regenerate.
2386 * config/os/tpf: New directory.
2387 * config/os/tpf/os_defines.h: New file.
2388 * config/os/tpf/ctype_base.h: Likewise.
2389 * config/os/tpf/ctype_inline.h: Likewise.
2390 * config/os/tpf/ctype_noninline.h: Likewise.
2392 2004-01-27 Paolo Carlini <pcarlini@suse.de>
2395 * include/bits/sstream.tcc: Guard use of extern template.
2397 2004-01-27 Paolo Carlini <pcarlini@suse.de>
2399 * include/bits/basic_string.tcc
2400 (basic_string(const basic_string&, size_type, size_type),
2401 basic_string(const basic_string&, size_type, size_type,
2402 const _Alloc&)): Avoid unnecessarily constructing iterators.
2404 2004-01-26 Paolo Carlini <pcarlini@suse.de>
2406 * config/locale/generic/c_locale.cc: Fix throw messages
2407 to use the __N marker.
2408 * config/locale/gnu/c_locale.cc: Likewise.
2409 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
2411 * docs/html/17_intro/C++STYLE: Likewise.
2412 * include/bits/basic_ios.tcc: Likewise.
2413 * include/bits/fstream.tcc: Likewise.
2414 * include/bits/vector.tcc: Likewise.
2415 * include/ext/ropeimpl.h: Likewise.
2416 * include/std/std_bitset.h: Likewise.
2417 * src/ios.cc: Likewise.
2418 * src/locale.cc: Likewise.
2419 * src/localename.cc: Likewise.
2421 2004-01-26 Paolo Carlini <pcarlini@suse.de>
2423 * include/bits/basic_string.h (_M_replace_aux): Use the
2424 __N marker in throw message.
2425 * include/bits/basic_string.tcc (assign(const _CharT*,
2426 size_type), insert(size_type, const _CharT*, size_type),
2427 replace(size_type, size_type, const _CharT*, size_type),
2428 reserve, _Rep::_S_create, resize, _M_replace_dispatch):
2431 * include/bits/basic_string.h, include/bits/basic_string.tcc:
2432 Fold overlong lines, minor formatting changes.
2434 2004-01-26 Paolo Carlini <pcarlini@suse.de>
2436 * include/bits/basic_string.h (replace(iterator, iterator,
2437 const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
2438 (replace(iterator, iterator, const _CharT*)): Ditto.
2439 (replace(iterator, iterator, const _CharT*, size_type)):
2440 Add missing _GLIBCXX_DEBUG_PEDASSERT.
2442 2004-01-26 Paolo Carlini <pcarlini@suse.de>
2444 * include/bits/basic_string.tcc (replace(size_type,
2445 size_type, const _CharT*, size_type)): Implement optimized
2446 in-place algorithm for non-overlapping ranges.
2447 * testsuite/21_strings/basic_string/replace/char/6.cc: New.
2448 * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
2450 * include/bits/basic_string.tcc (insert(size_type,
2451 const _CharT*, size_type)): Tweak slightly.
2453 2004-01-26 Andreas Schwab <schwab@suse.de>
2455 * config/locale/gnu/monetary_members.cc: Restore locale before
2456 rethrowing exception.
2458 2004-01-25 Paolo Carlini <pcarlini@suse.de>
2460 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
2462 * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
2465 * include/bits/basic_string.tcc: Very minor tweaks.
2467 2004-01-25 Paolo Carlini <pcarlini@suse.de>
2469 * testsuite/performance/string_append.cc: Increase number
2472 2004-01-25 Paolo Carlini <pcarlini@suse.de>
2474 * include/bits/basic_string.h (erase(size_type, size_type),
2475 erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
2476 instead, thus avoiding redundant check for length_error.
2478 * include/bits/basic_string.h: Tweak some comments.
2480 2004-01-24 Paolo Carlini <pcarlini@suse.de>
2482 * include/bits/basic_string.tcc (operator+(const _CharT*,
2483 const basic_string&)): No need to go through the append
2484 taking two iterators.
2486 2004-01-24 Paolo Carlini <pcarlini@suse.de>
2488 * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
2489 Revert last change to use std::min: machine language is worse.
2490 (find_last_of(const _CharT*, size_type, size_type)): Ditto.
2491 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
2492 (find_last_not_of(_CharT, size_type)): Ditto.
2494 * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
2495 size_type)): Discard the value returned by _M_check.
2496 (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
2497 (append(const basic_string&, size_type, size_type)): Ditto.
2498 (copy(_CharT*, size_type, size_type)): Ditto.
2499 (compare(size_type, size_type, const basic_string&)): Ditto.
2500 (compare(size_type, size_type, const basic_string&,
2501 size_type, size_type)): Ditto.
2502 (compare(size_type, size_type, const _CharT*)): Ditto.
2503 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
2505 2004-01-24 Paolo Carlini <pcarlini@suse.de>
2507 * include/bits/basic_string.h (insert(size_type,
2508 const basic_string&, size_type, size_type)): Define inline here.
2509 * include/bits/basic_string.tcc (insert(size_type,
2510 const basic_string&, size_type, size_type)): Move inline.
2512 2004-01-24 Paolo Carlini <pcarlini@suse.de>
2514 * include/bits/basic_string.h (assign(const basic_string&,
2515 size_type, size_type)): Define inline here.
2516 (replace(size_type, size_type, const basic_string&,
2517 size_type, size_type)): Ditto.
2518 (_M_replace_dispatch(iterator, iterator, _InputIterator,
2519 _InputIterator, __false_type)): Only declare.
2520 (_M_replace(iterator, iterator, _InputIterator,
2521 _InputIterator)): Remove.
2522 * include/bits/basic_string.tcc (assign(const basic_string&,
2523 size_type, size_type)): Move inline.
2524 (replace(size_type, size_type, const basic_string&,
2525 size_type, size_type)): Ditto.
2526 (_M_replace_dispatch(iterator, iterator, _InputIterator,
2527 _InputIterator, __false_type)): Define, now does also what
2528 _M_replace did before.
2529 * src/string-inst.cc (_M_replace): Don't instantiate.
2531 * include/bits/basic_string.tcc (find(const _CharT*,
2532 size_type, size_type)): Tidy.
2533 (rfind(_CharT, size_type)): Ditto.
2534 (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
2535 (find_first_not_of(_CharT, size_type)): Ditto.
2536 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
2537 (find_last_not_of(_CharT, size_type)): Ditto.
2539 2004-01-23 Paolo Carlini <pcarlini@suse.de>
2542 * include/debug/bitset (operator|=): Fix typo.
2543 * testsuite/23_containers/bitset/operations/13838.cc: New.
2545 2004-01-23 Paolo Carlini <pcarlini@suse.de>
2547 * include/bits/basic_string.tcc (insert(size_type,
2548 const _CharT*, size_type __n)): Fix length_error check.
2549 (replace(size_type, size_type, const _CharT*, size_type):
2550 Ditto; call _M_replace_safe.
2551 (_M_replace_aux(size_type, size_type, size_type, _CharT):
2552 Fix length_error check.
2553 (_M_replace(iterator, iterator, _InputIterator,
2554 _InputIterator)): Ditto, tweak.
2555 (_M_replace_safe(size_type, size_type, const _CharT*,
2556 size_type)): Remove length_error check.
2558 * include/bits/basic_string.tcc (append(const basic_string&),
2559 append(const basic_string&, size_type, size_type)): Tweak
2562 * include/bits/basic_string.tcc (copy(_CharT*, size_type,
2563 size_type)): If __n == 0 don't call traits::copy.
2565 2004-01-23 Stefan Olsson <stefan@snon.net>
2567 * include/ext/mt_allocator.h: Reduce lock contention.
2569 2004-01-23 Paolo Carlini <pcarlini@suse.de>
2572 * include/bits/fstream.tcc (underflow): Remove unused
2574 * include/bits/streambuf_iterator.h (equal): Ditto.
2575 * include/bits/locale_facets.h (_M_convert_from_char):
2578 2004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2581 * config/linker-map.gnu (nan): Delete.
2582 * libmath/mathconf.h (NAN, nan): Delete.
2583 * linkage.m4 (nan): Don't check for it.
2584 * libmath/nan.c: Delete file.
2586 * config.h.in, configure: Regenerate.
2588 2004-01-23 Paolo Carlini <pcarlini@suse.de>
2590 * include/bits/basic_string.h (push_back(_CharT)):
2591 Call _M_replace_aux.
2592 (insert(size_type, const basic_string&)): Trivial tweak.
2593 (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
2594 (insert(iterator, _CharT)): Ditto.
2595 (erase(size_type, size_type)): Ditto.
2596 (erase(iterator)): Ditto.
2597 (erase(iterator, iterator)): Ditto.
2598 (replace(size_type, size_type, size_type, _CharT)): Ditto.
2600 2004-01-23 Loren J. Rittle <ljrittle@acm.org>
2603 * testsuite/performance/allocator_map_thread.cc: New test.
2605 2004-01-22 Paolo Carlini <pcarlini@suse.de>
2607 * include/bits/locale_facets.tcc
2608 (money_put::do_put(..., long double)): Use the basic_string
2609 constructor for char arrays, not that for C-strings, to pass
2610 __digits to do_put(..., const string_type&): __ws isn't
2613 2004-01-22 Paolo Carlini <pcarlini@suse.de>
2615 * include/bits/basic_string.h (_M_replace_safe): Change
2616 signatures to take size_types and const _CharT*.
2617 (_M_replace_aux): Likewise, takes size_types instead of
2619 (append(size_type, _CharT)): Update call.
2620 (assign(size_type, _CharT)): Ditto.
2621 (replace(iterator, iterator, size_type, _CharT)): Ditto.
2622 (_M_replace_dispatch(iterator, iterator, _Integer,
2623 _Integer, __true_type)): Ditto.
2624 * include/bits/basic_string.tcc (assign(const _CharT*,
2626 (insert(size_type, const _CharT*, size_type)): Ditto.
2627 (replace(size_type, size_type, const _CharT*,
2629 (_M_replace(iterator, iterator, _InputIterator,
2630 _InputIterator)): Ditto.
2631 (append(const basic_string&)): Ditto.
2632 (append(const basic_string&, size_type, size_type): Ditto.
2633 (append(const _CharT*, size_type): Ditto.
2634 (_M_replace_safe, _M_replace_safe): Change definitions
2635 accordingly, simplify.
2636 * string-inst.cc (_M_replace_safe): Don't instantiate.
2638 2004-01-21 Paolo Carlini <pcarlini@suse.de>
2640 * include/bits/basic_string.tcc (append(const basic_string&)):
2641 Revert previous change.
2642 (append(const basic_string&, size_type, size_type)): Revert
2643 previous change, use _M_check and _M_limit.
2645 2004-01-21 Paolo Carlini <pcarlini@suse.de>
2647 * include/bits/basic_string.h (_M_check): Change to return
2648 a checked __pos and take an additional const char* argument.
2649 (_M_fold): Rename to _M_limit, change to return a size_type,
2650 corresponding to the __off limited to the actual length.
2651 (insert(size_type, size_type, _CharT)): Update call, call
2653 (insert(iterator, _CharT)): Call replace(iterator, iterator,
2654 size_type, _CharT) instead.
2655 (erase(size_type, size_type)): Update calls.
2656 (replace(size_type, size_type, size_type, _CharT)): Ditto.
2657 (substr(size_type, size_type)): Use _M_check.
2658 * include/bits/basic_string.tcc (basic_string(const basic_string&,
2659 size_type, size_type)): Update calls.
2660 (basic_string(const basic_string&, size_type, size_type,
2661 const _Alloc&)): Ditto.
2662 (assign(const basic_string&, size_type, size_type)): Use the
2663 new _M_check and _M_limit.
2664 (insert(size_type, const basic_string&, size_type, size_type):
2666 (insert(size_type, const _CharT*, size_type)): Ditto.
2667 (replace(size_type, size_type, const _CharT*, size_type): Ditto.
2668 (replace(size_type, size_type, const basic_string&,
2669 size_type, size_type)): Ditto.
2670 (append(const basic_string&)): Ditto.
2671 (append(const basic_string&, size_type, size_type)): Ditto.
2672 (copy(_CharT*, size_type, size_type)): Ditto.
2673 (compare(size_type, size_type, const basic_string&)): Ditto.
2674 (compare(size_type, size_type, const basic_string&,size_type,
2676 (compare(size_type, size_type, const _CharT*)): Ditto.
2677 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
2679 2004-01-19 Stefan Olsson <stefan@snon.net>
2681 * include/ext/mt_allocator.h: If a thread, when it dies, still has
2682 memory on it's freelist this memory is not returned to global
2683 list. Simplification of deallocate so that memory is always
2684 returned to the calling thread id's freelist instead of to
2685 global. Fix typos. Add volatile where appropriate.
2687 2004-01-19 Loren J. Rittle <ljrittle@acm.org>
2689 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
2690 * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
2691 use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
2693 2004-01-19 Paolo Carlini <pcarlini@suse.de>
2695 * src/debug.cc: Make sure all the names are prefixed with
2696 double (or single) underscore.
2698 2004-01-19 Paolo Carlini <pcarlini@suse.de>
2700 * src/debug.cc: Trivial formatting change.
2702 2004-01-19 Paolo Carlini <pcarlini@suse.de>
2704 * include/bits/basic_string.tcc (_S_construct(size_type,
2705 _CharT, const _Alloc&)): Remove redundant try/catch.
2706 (_M_mutate(size_type, size_type, size_type)): Ditto.
2707 (_M_clone(const _Alloc&, size_type)): Ditto.
2709 2004-01-18 Paolo Carlini <pcarlini@suse.de>
2711 * include/bits/basic_string.h (c_str()): Simplify, due to
2712 21.3.4 the internal representation is always kept null-terminated.
2713 * include/bits/basic_string.tcc (_M_clone): Null-terminate.
2714 * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
2715 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
2718 2004-01-18 Paolo Carlini <pcarlini@suse.de>
2720 * include/bits/basic_string.h (append(size_type, _CharT)):
2721 Moved inline, just call _M_replace_aux, no source iterators at
2722 risk of being clobbered.
2723 (assign(size_type, _CharT)): Call directly _M_replace_aux.
2724 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
2725 input_iterator_tag)): Remove fifth unused argument.
2726 (_M_replace_dispatch(iterator, iterator, _InputIterator,
2727 _InputIterator, __false_type)): Update call.
2728 * include/bits/basic_string.tcc (replace(size_type, size_type,
2729 const _CharT*, size_type)): Update call.
2730 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
2731 throw string literal.
2732 (_M_replace_safe(iterator, iterator, _ForwardIterator,
2733 _ForwardIterator)): Likewise.
2734 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
2735 input_iterator_tag)): Remove fifth unused argument.
2736 (append(size_type __n, _CharT __c)): Move inline.
2737 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
2738 const C*, const C*, input_iterator_tag)): Remove fifth unused
2741 2004-01-16 Benjamin Kosnik <bkoz@redhat.com>
2743 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
2744 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
2746 2004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
2748 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
2751 2004-01-15 Stefan Olsson <stefan@snon.net>
2753 * include/ext/mt_allocator.h: Reuse thread id's as soon as
2754 possible by changing the behaviour of thread_freelist to do
2755 push_front when threads die instead of push_back.
2757 2004-01-14 Paolo Carlini <pcarlini@suse.de>
2759 * include/bits/locale_facets.h (struct __numpunct_cache):
2760 Add member _M_grouping_size, caching the length of _M_grouping.
2761 (__numpunct_cache<>::_M_cache): Assign the latter.
2762 (__verify_grouping): Move declaration...
2763 * include/bits/locale_facets.tcc (__verify_grouping):
2764 ... here, change signature to take a const char* and a size_t
2765 for the grouping; not a template anymore.
2766 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
2767 Likewise change signature and tweak consistently.
2768 (num_get::_M_extract_float, num_get::_M_extract_int,
2769 num_put::_M_insert_int, num_put::_M_insert_float,
2770 money_get::do_get(string_type&), money_get::do_put(string_type)):
2772 * config/locale/generic/numeric_members.cc
2773 (numpunct<>::_M_initialize_numpunct): Assign the new member.
2774 * config/locale/gnu/numeric_members.cc
2775 (numpunct<>::_M_initialize_numpunct): Likewise.
2776 * src/locale-inst.cc (__add_grouping): Tweak signature.
2777 (__verify_grouping): Don't instantiate, not a template anymore.
2779 * include/bits/locale_facets.h: Rename _M_truename_len ->
2780 _M_truename_size, _M_falsename_len -> _M_falsename_size.
2781 * include/bits/locale_facets.tcc: Likewise.
2782 * config/locale/generic/numeric_members.cc: Likewise.
2783 * config/locale/gnu/numeric_members.cc: Likewise.
2785 2004-01-14 Stefan Olsson <stefan@snon.net>
2787 * include/ext/mt_allocator.h: Fixups.
2788 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
2789 * testsuite/performance/allocator_thread.cc: Same.
2791 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
2793 * testsuite/performance/ifstream_extract_float.cc: Add higher
2795 * testsuite/performance/ofstream_insert_float.cc: Same.
2797 2004-01-13 Paolo Carlini <pcarlini@suse.de>
2799 * src/locale-misc-inst.cc (__convert_from_v(long),
2800 __convert_from_v(unsigned long), __convert_from_v(long long),
2801 __convert_from_v(unsigned long long)): Remove, unused.
2803 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
2805 * testsuite/performance/ifstream_extract_float.cc: New.
2806 * testsuite/performance/ofstream_insert_float.cc: Float generation
2809 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
2810 * 20_util/auto_ptr/1.cc: ...this.
2811 * 20_util/auto_ptr/2.cc: Same.
2812 * 20_util/auto_ptr/3.cc: Same.
2813 * 20_util/auto_ptr/3946.cc: Same.
2814 * 20_util/auto_ptr/4.cc: Same.
2815 * 20_util/auto_ptr/5.cc: Same.
2816 * 20_util/auto_ptr/6.cc: Same.
2817 * 20_util/auto_ptr/7.cc: Same.
2818 * 20_util/auto_ptr/assign_neg.cc
2819 * 20_util/pairs.cc: Break into...
2820 * 20_util/pair/1.cc: ...this.
2821 * 20_util/pair/2.cc: Same.
2822 * 20_util/pair/3.cc: Same.
2823 * 20_util/pair/4.cc: Same.
2825 2004-01-13 Paolo Carlini <pcarlini@suse.de>
2827 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
2828 Set correctly just basefield, the only group that matters.
2830 2004-01-13 Paolo Carlini <pcarlini@suse.de>
2832 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
2833 (_Rope_rep_base): Inherit directly from the rope allocator;
2834 use rebinding instead of _Alloc_traits; pick up data member
2835 from _Rope_rep_alloc_base.
2836 (_Rope_alloc_base): Eliminate.
2837 (_Rope_base): Inherit directly from the rope allocator; use
2838 rebinding instead of _Alloc_traits; pick up data member from
2840 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
2841 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
2843 2004-01-13 Paolo Carlini <pcarlini@suse.de>
2846 * include/bits/basic_string.tcc (compare(size_type, size_type,
2847 const _CharT*, size_type)): Implement correctly the resolution
2848 of DR 5: basically, s is a char array, -not- a C string.
2849 * include/bits/basic_string.h: Tweak some comments.
2850 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
2851 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
2853 2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
2855 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
2858 2004-01-12 Paolo Carlini <pcarlini@suse.de>
2860 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
2862 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
2865 2004-01-12 Paolo Carlini <pcarlini@suse.de>
2867 * include/bits/locale_facets.h (struct __numpunct_cache):
2868 Add members _M_truename_len and _M_falsename_len, caching
2869 the lengths of _M_truename and _M_falsename.
2870 (__numpunct_cache<>::_M_cache): Assign the latter.
2871 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
2872 num_put::do_put(bool)): Use the new members, thus avoiding
2873 computing string lengths again and again.
2874 * config/locale/generic/numeric_members.cc
2875 (numpunct<>::_M_initialize_numpunct): Assign the new members.
2876 * config/locale/gnu/numeric_members.cc
2877 (numpunct<>::_M_initialize_numpunct): Likewise.
2879 2004-01-12 Mark Mitchell <mark@codesourcery.com>
2881 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
2882 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
2884 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
2885 and remove Cygwin XFAIL.
2886 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
2887 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
2888 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
2889 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
2891 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
2892 * testsuite/27_io/objects/char/7.cc: Likewise.
2893 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
2894 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
2895 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
2897 2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
2899 * include/std/std_complex.h (std::complex<>::real): Return a
2900 reference. Add non-const overload.
2901 (std::complex<>::real): Likewise.
2902 (std::real): Likewise.
2903 (std::imag): Likewise.
2904 (std::operator+): Tidy.
2905 (std::operator-): Likewise.
2906 (std::operator*): Likewise.
2907 (std::operator/): Likewise.
2908 (std::operator>>): Likewise.
2910 2004-01-11 Paolo Carlini <pcarlini@suse.de>
2913 * include/bits/fstream.tcc (imbue): Exploit the external
2914 buffer to imbue 'on the fly' a new locale and convert its
2915 remainder with the new codecvt facet.
2916 (underflow): Tweak slightly to deal with this special case.
2917 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
2918 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
2919 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
2920 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
2921 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
2923 2004-01-10 Paolo Carlini <pcarlini@suse.de>
2925 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
2928 2004-01-10 Paolo Carlini <pcarlini@suse.de>
2931 * include/bits/locale_classes.h (class locale): Fix category
2933 * testsuite/22_locale/locale/13630.cc: Add.
2935 2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
2937 * include/bits/locale_facets.h: Make a name really dependent. This
2938 will be needed when Core Issue 224 is implemented.
2940 2004-01-09 Paolo Carlini <pcarlini@suse.de>
2942 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
2943 * testsuite/performance/allocator_thread.cc: Likewise.
2945 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
2947 * crossconfig.m4: Add LFS, io bits to linux cross config.
2948 * acconfig.h: Remove obsolete bits, reorder.
2949 * config.h.in: Regenerate.
2953 2004-01-07 Gawain Bolton <gp.bolton@computer.org>
2955 * include/bits/stl_list.h:
2956 * include/bits/list.tc:
2958 Performance enhancements for destructor, push_front(),
2959 push_back(), pop_front(), pop_back(), sort()
2960 Eliminated static_casts where possible.
2961 Moved code out of header files into new src/list.cc
2962 implementation file for library where possible.
2963 Remove inheritance from iterator class and create separate
2964 classes for non-constant and constant iterators.
2965 * include/bits/stl_tree.h (_Rb_tree class):
2967 Only erase contents in destructor.
2968 Eliminate unnecessary initialization in assignment operator.
2969 Optimize for the nominal case by not checking whether
2970 container is empty in clear().
2971 Re-order test in _M_insert() to improve performance.
2972 Move initialization of new node's left & right pointers to
2973 src/tree.cc to where new node's colour is initialized
2974 and to reduce the amount of inline code.
2975 Use _M_leftmost() and _M_end() to improve readability where
2977 Create separate classes for non-constant and constant
2978 iterators to clarify code, avoid extra template parameters and
2979 casting away constness.
2981 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
2983 * src/Makefile.am (sources): Add list.cc, tree.cc.
2984 * src/stl_tree.cc: Move to...
2985 * src/tree.cc: ...here.
2987 * config/linker-map.gnu: Tweaks.
2988 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
2989 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
2991 * bits/stl_vector.h: Column wrap comments.
2993 2004-01-07 Loren J. Rittle <ljrittle@acm.org>
2995 (re-open) PR libstdc++/12658
2996 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
2997 (locale::global): Likewise.
2999 2004-01-07 Paolo Carlini <pcarlini@suse.de>
3001 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
3002 Remove redundant #include.
3003 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
3004 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
3005 re-enable normal testing.
3006 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
3008 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
3009 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
3011 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
3013 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
3015 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
3017 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
3019 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
3021 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
3023 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
3024 More properly, #include <locale>.
3025 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
3026 Remove redundant #include.
3027 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
3028 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
3029 redundant DejaGnu directive.
3030 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
3033 2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
3034 Stefan Olsson <stefan@snon.net>
3036 * scripts/check_performance: Use -pthread.
3037 * testsuite/performance/allocator.cc: Tweaks, add list.
3038 * testsuite/performance/allocator_thread.cc: New.
3040 2004-01-06 Jerry Quinn <jlquinn@optonline.net>
3042 * include/bits/locale_facets.h: Document public classes and
3044 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
3047 2004-01-06 Paolo Carlini <pcarlini@suse.de>
3049 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
3050 Remove redundant #includes.
3051 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
3053 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
3055 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
3056 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
3057 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
3058 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
3059 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
3060 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
3061 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
3062 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
3063 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
3064 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
3065 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
3066 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
3067 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
3068 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
3069 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
3071 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
3073 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
3075 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
3077 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
3079 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
3080 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
3081 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
3083 2004-01-04 Paolo Carlini <pcarlini@suse.de>
3085 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
3086 Remove redundant #includes.
3087 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
3089 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
3091 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
3093 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
3095 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
3097 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
3099 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
3101 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
3103 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
3105 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
3107 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
3109 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
3112 2004-01-04 Mark Mitchell <mark@codesourcery.com>
3115 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
3117 * testsuite/27_io/basic_fstream/4.cc: Likewise.
3118 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
3119 * testsuite/27_io/basic_ios/4.cc: Likewise.
3120 * testsuite/27_io/basic_iostream/4.cc: Likewise.
3121 * testsuite/27_io/basic_istream/4.cc: Likewise.
3122 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
3123 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
3124 * testsuite/27_io/basic_ostream/4.cc: Likewise.
3125 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
3126 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
3127 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
3129 2004-01-04 Paolo Carlini <pcarlini@suse.de>
3131 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
3132 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
3133 always use double underscored names.
3134 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
3136 * include/bits/locale_facets.h (struct __numpunct_cache):
3137 Dimension _M_atoms_out and _M_atoms_in one position smaller.
3138 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out