]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/ChangeLog
reorg.c (delete_from_delay_slot): If we have a barrier after the sequence containing...
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
CommitLineData
c6618c03
JW
12004-05-18 Jonathan Wakely <redi@gcc.gnu.org>
2
3 * include/ext/stdio_filebuf.h: Update comments to reflect PR 11691.
4
b79634e3
JB
52004-05-18 Jan Beulich <jbeulich@novell.com>
6
7 PR libstdc++/15489
8 * scripts/create_testsuite_files: Also find source files through
9 symbolic links.
10
112004-05-18 Jan Beulich <jbeulich@novell.com>
12
13 PR libstdc++/15488
14 * testsuite/lib/libstdc++.exp: Make test files writable.
15
2ab20654
PC
162004-05-18 Paolo Carlini <pcarlini@suse.de>
17
18 * include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor
19 tweaks.
20
212004-05-18 Dhruv Matani <dhruvbird@gmx.net>
22
23 * include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write
24 allocation loop which removes blocks from the global free list
25 from O(N) to O(1) when the required blocks are <= the number
26 available.
27
319da9da
JW
282004-05-18 Jonathan Wakely <redi@gcc.gnu.org>
29
30 * include/ext/enc_filebuf.h: Move concept-check macro to class scope.
31
261e5b9e
BK
322004-05-17 Benjamin Kosnik <bkoz@redhat.com>
33
34 * testsuite/testsuite_hooks.h (__gnu_test::conversion): New class.
35 * testsuite/23_containers/deque/14340.cc: New.
36 * testsuite/23_containers/list/14340.cc: New.
37 * testsuite/23_containers/map/14340.cc: New.
38 * testsuite/23_containers/multimap/14340.cc: New.
39 * testsuite/23_containers/multiset/14340.cc: New.
40 * testsuite/23_containers/set/14340.cc: New.
41 * testsuite/23_containers/vector/14340.cc: New.
42
432004-05-17 Douglas Gregor <gregod@cs.rpi.edu>
44
45 PR libstdc++/14340
46 * include/debug/safe_iterator.h (_Safe_iterator converting
47 constructor): Only allow declaration to instantiate when the
48 incoming _Safe_iterator has exactly the right iterator type.
49
b2342b54
JW
502004-05-17 Jonathan Wakely <redi@gcc.gnu.org>
51
52 * include/bits/boost_concept_check.h: Fix old attribute syntax.
53 * testsuite/23_containers/map/modifiers/swap.cc: Define operator<
54 to pass concept-checks.
55 * testsuite/23_containers/multimap/modifiers/swap.cc: Same.
56 * testsuite/23_containers/set/modifiers/swap.cc: Same.
57 * testsuite/23_containers/multiset/modifiers/swap.cc: Same.
58
5a4db26d
PC
592004-05-16 Paolo Carlini <pcarlini@suse.de>
60
61 * include/std/std_bitset.h: Minor formatting fixes.
62
08f7c2eb
PC
632004-05-16 Paolo Carlini <pcarlini@suse.de>
64
65 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
66 Consistently update __bin._M_free[0].
67 (__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use
68 __bin._M_free[0] to simplify the while loop (i.e., the number
69 of iterations becomes known at the outset).
70
5c33bb62
PC
712004-05-15 Paolo Carlini <pcarlini@suse.de>
72
73 * include/std/std_bitset.h: Trivial formatting fixes.
74
394ef95e
PC
752004-05-14 Paolo Carlini <pcarlini@suse.de>
76 Ivan Godard <igodard@pacbell.net>
77
78 PR libstdc++/15361
79 * include/std/std_bitset.h (_Base_bitset<_Nw>::_M_do_find_next): Fix.
80 * testsuite/23_containers/bitset/ext/15361.cc: New.
81
7549d7f2
BK
822004-05-13 Benjamin Kosnik <bkoz@redhat.com>
83
84 PR libstdc++/15046
85 * crossconfig.m4: Add C99 math bits for linux crosses.
86 * configure: Regenerate.
87
95b147fe
SM
882004-05-13 Simon Marshall <simon.marshall@misys.com>
89 Benjamin Kosnik <bkoz@redhat.com>
90
91 PR libstdc++/15090
92 * include/bits/locale_facets.h: Fix for -fno-for-scope.
93 * include/debug/safe_sequence.h: Same.
94 * include/debug/safe_iterator.tcc: Same.
95 * src/debug.cc: Same.
96 * src/locale.cc: Same.
97 * src/locale_init.cc: Same.
98 * src/localename.cc: Same.
99 * config/locale/gnu/ctype_members.cc: Same.
100 * config/locale/gnu/numeric_members.cc: Same.
101 * testsuite/testsuite_abi.cc: Same.
102 * testsuite/testsuite_hooks.cc: Same.
103
d7f30833
JW
1042004-05-13 Jonathan Wakely <redi@gcc.gnu.org>
105
106 * docs/html/abi.html: Document effect of -fabi-version on value
107 of __GXX_ABI_VERSION, and that it's defined in c-cppbuiltin.c.
108 Fix markup.
109
4b351c6e
BK
1102004-05-13 Benjamin Kosnik <bkoz@redhat.com>
111
112 PR libstdc++/15074
113 * docs/html/faq/index.html: Update docs for libsupc++ usage.
114
5c61a863
BK
1152004-05-13 Benjamin Kosnik <bkoz@redhat.com>
116
117 PR libstdc++/15412
118 * include/bits/stl_threads.h (_GLIBCXX_mutex): Move to namespace
119 __gnu_internal.
120 (_GLIBCXX_mutex_address): Same.
121 (_GLIBCXX_once): Same.
122 (_GLIBCXX_mutex_init): Same.
123 (_GLIBCXX_mutex_address_init): Same.
124
4b260c20
BK
1252004-05-13 Benjamin Kosnik <bkoz@redhat.com>
126
127 * docs/html/abi.html: New.
128 * docs/html/abi.txt: Remove.
129 * docs/html/documentation.html: Add link.
130 * testsuite/Makefile.am: Add files.
131 * testsuite/Makefile.in: Regenerated.
132 * testsuite/abi_check.cc: Move and modify code into...
133 * testsuite/testsuite_abi.cc: Add.
134 * testsuite/testsuite_abi.h: Add.
135
136 * docs/html/17_intro/TODO: Update.
137 * include/bits/stl_pair.h: Format.
138
ce120bb2
MK
1392004-05-06 Matthias Klose <doko@debian.org>
140
141 * include/backward/iterator.h: Add GPL copyright info,
142 with exception clause.
143 * include/bits/boost_concept_check.h: Likewise.
144 * include
145 * libsupc++/tinfo.h: Likewise.
146 * po/string_literals.cc: Likewise.
147
dc7c62ae
AT
1482004-05-03 Andreas Tobler <a.tobler@schweiz.ch>
149
150 * acinclude.m4: Replace -W with more speaking -Wextra.
151 * configure: Rebuilt.
152
4df9c41d
PC
1532004-05-03 Paolo Carlini <pcarlini@suse.de>
154
155 Optimize locale::_M_impl->_M_names for the most common cases:
156 !_M_names[0] means unnamed; !_M_names[1] means all the categories
157 the same name (_M_names[0] && _M_names[1] means that the full set
158 of _M_names must be processed, the general case).
159 * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name):
160 Tweak, saving work when !_M_names[1].
161 (locale::locale(const locale&, _Facet*): Simplify: now just setting
162 _M_names[0] = 0 means unnamed.
163 * src/locale.cc (locale::operator==): Deal first with the common,
164 easy cases, otherwise fall back to locale::name().
165 (locale::name()): Tweak, if !_M_names[0] just return "*".
166 (locale::_Impl::_Impl(const _Impl&, size_t): Tweak, early stop
167 copying __imp._M_names if !__imp._M_names[0] or !__imp._M_names[1].
168 * src/locale_init.cc (locale::_Impl::_Impl(size_t)): Tweak.
169 * src/localename.cc (locale::_Impl::_Impl(const char*, size_t):
170 Simplify when !std::strchr, just updating _M_names[0]; clean up.
171 (locale::_Impl::_M_replace_categories): When !_M_names[1] prepare
172 for the general case (full set of names), then do the usual work;
173 clean up.
174
175 * src/locale.cc (locale::name()): Reserve space in __ret.
176 * src/locale_init.cc (locale::global(const locale&)): Save
177 the name in a temporary.
178 * src/localename.cc (locale::locale(const char*)): Reserve space
179 in __str.
180
59639106
PC
1812004-04-29 Paolo Carlini <pcarlini@suse.de>
182
183 * src/locale.cc (locale::operator==): Always avoid constructing
184 locale::name(), directly compare pairs of _M_names.
185
479864fe
PC
1862004-04-26 Paolo Carlini <pcarlini@suse.de>
187
188 * include/bits/istream.tcc: Fix comment.
189
874e7baa
PC
1902004-04-26 Paolo Carlini <pcarlini@suse.de>
191
192 * include/bits/stl_vector.h: Trivial formatting fixes.
193 * include/bits/vector.tcc: Likewise.
194
247791f5
PC
1952004-04-25 Paolo Carlini <pcarlini@suse.de>
196
197 PR libstdc++/15002 (continued again)
198 * include/bits/istream.tcc (getline(basic_istream<>&,
199 basic_string<>&, _CharT)): Use a temporary buffer, thus
200 avoiding reallocation for common case.
201
202 * include/bits/basic_string.tcc (_S_construct(_InIterator,
203 _InIterator, const _Alloc&, input_iterator_tag)): Tweak size
204 of temporary buffer to a power of two.
205
206 * testsuite/27_io/basic_istream/getline/char/4.cc: Add comment.
207
c26fa757
PC
2082004-04-25 Paolo Carlini <pcarlini@suse.de>
209
210 * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
211 New.
212 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
213 Likewise.
214 * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
215
062bf895
PC
2162004-04-24 Paolo Carlini <pcarlini@suse.de>
217 Petur Runolfsson <peturr02@ru.is>
218
219 PR libstdc++/15002 (continued)
220 * include/bits/istream.tcc (basic_istream<>::getline(char_type*,
221 streamsize, char_type)): Use traits::find/copy in a loop to speed
222 up greatly the function in the common case (I/O buffer size >> 1).
223
2242004-04-24 Paolo Carlini <pcarlini@suse.de>
225
226 * testsuite/27_io/basic_istream/getline/char/4.cc: New.
227
228 * include/bits/istream.tcc (getline(basic_istream<>&,
229 basic_string<>&, _CharT)): Change to use sgetc()/snextc() instead
230 of sbumpc(), consistently with the other functions, thus also
231 dealing correctly with the case of exceeded string::max_size().
232
adabbcf4
MK
2332004-04-24 Matthias Klose <doko@debian.org>
234
235 Jonathan Wakely <cow@compsoc.man.ac.uk>
236 * docs/html/configopts.html: Fix reference to allocator config option.
237
fc2ae431
AP
2382004-04-23 Andrew Pinski <pinskia@physics.uc.edu>
239
240 * linkage.m4 (GLIBCXX_CHECK_MATH_SUPPORT): Check for libmx also.
241 * configure: Regenerate.
242
d8fe7b29
DJ
2432004-04-23 Daniel Jacobowitz <drow@mvista.com>
244
245 PR libstdc++/15047, libstdc++/11610
246 * testsuite/lib/libstdc++.exp (v3-copy-files): Use remote_download.
247 (libstdc++_init): Don't pass outdir to v3-copy-files.
248
0d8c9baf
PC
2492004-04-21 Paolo Carlini <pcarlini@suse.de>
250
251 * include/bits/deque.tcc: Trivial formatting fixes.
252 * include/bits/stl_deque.h: Likewise.
253 * include/bits/stl_list.h: Likewise.
254 * include/bits/stl_tree.h: Likewise.
255
0a746019
PC
2562004-04-21 Paolo Carlini <pcarlini@suse.de>
257 Andrew Pinski <pinskia@physics.uc.edu>
258
259 * include/bits/basic_string.tcc (_M_mutate): Don't compute
260 __src unnecessarily.
261
3dd50c74
BK
2622004-04-19 Benjamin Kosnik <bkoz@redhat.com>
263
264 * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
265 Clarify assertion, set test variable to false before assert.
266 * testsuite/27_io/basic_istringstream/str/char/1.cc: Same.
267 * testsuite/27_io/basic_stringstream/str/char/1.cc: Same.
268 * testsuite/27_io/ios_base/storage/2.cc: Same.
269
270 * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Fix
271 function returns.
272 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Same.
273 * testsuite/27_io/fpos/14320-3.cc: Same.
274
275 * testsuite/27_io/basic_filebuf/2.cc: Instantiate in namespace std.
276 * testsuite/27_io/fpos/1.cc: Same.
277 * testsuite/27_io/basic_stringstream/2.cc: Same.
278 * testsuite/27_io/basic_stringbuf/4.cc: Same.
279 * testsuite/27_io/basic_stringbuf/1.cc: Same.
280 * testsuite/27_io/basic_stringbuf/2.cc: Same.
281 * testsuite/27_io/basic_streambuf/2.cc: Same.
282 * testsuite/27_io/basic_ostringstream/2.cc: Same.
283 * testsuite/27_io/basic_ostream/2.cc: Same.
284 * testsuite/27_io/basic_ofstream/2.cc: Same.
285 * testsuite/27_io/basic_istringstream/2.cc: Same.
286 * testsuite/27_io/basic_istream/2.cc: Same.
287 * testsuite/27_io/basic_iostream/2.cc: Same.
288 * testsuite/27_io/basic_ios/2.cc: Same.
289 * testsuite/27_io/basic_ifstream/2.cc: Same.
290 * testsuite/27_io/basic_fstream/2.cc: Same.
291 * testsuite/ext/stdio_filebuf/char/1.cc: Same, in namespace __gnu_cxx.
292
293 * testsuite/21_strings/basic_string/capacity/1.cc: Don't compare
294 unsigned against zero.
295 * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Same.
296 * testsuite/21_strings/basic_string/capacity/char/1.cc: Same.
297
298 * testsuite/18_support/new_delete_placement.cc: Initialize
299 variables before first use.
300 * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Same.
301 * testsuite/21_strings/char_traits/requirements/char/1.cc: Same.
302 * testsuite/21_strings/char_traits/requirements/short/1.cc: Same.
303 * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
304 Same.
305 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_badbit_throw.cc: Same.
306 * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
307 Same.
308 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_failbit_throw.cc: Same.
309 * testsuite/27_io/types/2.cc: Same.
310
311 * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Fix temporary
312 file name.
313 * testsuite/27_io/fpos/14775.cc: Same.
314
41b8e86c
PC
3152004-04-19 Paolo Carlini <pcarlini@suse.de>
316
317 PR libstdc++/15002 (partial)
318 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
319 Special case __n2 == 1, not calling traits_type::assign/copy.
320
f178c2d6
BK
3212004-04-17 Benjamin Kosnik <bkoz@redhat.com>
322
323 * include/bits/stl_bvector.h: Use _M_impl._M_start.
324
390e4c0d
BK
3252004-04-16 Benjamin Kosnik <bkoz@redhat.com>
326
327 * include/bits/c++config (_GLIBCXX_STD): New.
328 * src/list.cc: Use it.
329 * include/std/std_bitset.h: Same.
330 * include/bits/vector.tcc: Same.
331 * include/bits/stl_set.h: Same.
332 * include/bits/stl_multiset.h: Same.
333 * include/bits/stl_multimap.h: Same.
334 * include/bits/stl_map.h: Same.
335 * include/bits/stl_list.h: Same.
336 * include/bits/stl_vector.h: Same.
337 * include/bits/stl_bvector.h: Same.
338 * include/bits/stl_deque.h: Same.
339 * include/bits/deque.tcc: Same.
340 * include/bits/list.tcc: Same.
341 * include/debug/vector: Same.
342 * include/debug/set.h: Same.
343 * include/debug/multiset.h: Same.
344 * include/debug/multimap.h: Same.
345 * include/debug/map.h: Same.
346 * include/debug/list: Same.
347 * include/debug/deque: Same.
348 * include/debug/bitset: Same.
349 * include/debug/formatter.h (__gnu_debug): Remove using directive.
350 Add using declaration for std::type_info.
351 * include/debug/safe_iterator.h: Add using declaration for
352 std::iterator_traits and std::pair.
353 * src/debug_list.cc: New.
354 * src/Makefile.am: Add debug_list.cc.
355 * src/Makefile.in: Regenerate.
356 * config/linker-map.gnu: Add _List_node_base exports for std and
357 __gnu_norm.
358
359 * include/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl
360 idiom that other containers use.
361 * testsuite/23_containers/vector/bool/clear_allocator.cc: New.
362
2f228199
PC
3632004-04-16 Paolo Carlini <pcarlini@suse.de>
364
365 PR libstdc++/14975
366 * include/bits/fstream.tcc (basic_filebuf::imbue): Zero _M_codecvt
367 in case of error.
368 * testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: New.
369 * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: New.
370
af55af57
PC
3712004-04-16 Paolo Carlini <pcarlini@suse.de>
372
373 * acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not
374 used anymore.
375 * config.h.in: Regenerate.
376
3772004-04-16 Paolo Carlini <pcarlini@suse.de>
378
379 * config/locale/generic/monetary_members.cc
380 (moneypunct<wchar_t>::_M_initialize_moneypunct): Avoid calling
381 btowc unnecessarily, just cast to wchar_t (the concerned chars
382 all belong to the basic character set).
383 * config/locale/generic/numeric_members.cc
384 (numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
385 * config/locale/gnu/monetary_members.cc
386 (moneypunct<wchar_t>::_M_initialize_moneypunct): Likewise.
387 * config/locale/gnu/numeric_members.cc
388 (numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
389
d7ed521b
PC
3902004-04-15 Paolo Carlini <pcarlini@suse.de>
391
392 * src/locale.cc (locale::operator==): When _M_impl == __rhs._M_impl
393 avoid constructing unnecessarily this->name().
394
76e9802c
ZW
3952004-04-14 Zack Weinberg <zack@codesourcery.com>
396
397 * testsuite/Makefile.am: Add definition of AM_CXXFLAGS.
398 Change definition of CXX to use $(shell) instead of backticks.
399 * testsuite/Makefile.in: Regenerate.
400
e0fb1c5c
DM
4012004-04-12 Dhruv Matani <dhruvbird@gmx.net>
402
403 * testsuite/performance/20_util/allocator/list_sort_search.cc:
404 Minor formatting fixes.
405 * testsuite/performance/20_util/allocator/map_mt_find.cc:
406 Likewise.
407
92861ad4
PC
4082004-04-12 Paolo Carlini <pcarlini@suse.de>
409
410 * config/locale/gnu/numeric_members.cc
411 (numpunct<wchar_t>::_M_initialize_numpunct): No need to wrap
412 in __uselocale, since btowc is called for chars belonging to
413 the basic character set.
414
895510be
PC
4152004-04-09 Paolo Carlini <pcarlini@suse.de>
416
417 * testsuite/22_locale/messages/members/char/1.cc: Remove junk.
418 * testsuite/22_locale/messages/members/char/2.cc: Ditto.
419 * testsuite/22_locale/messages/members/char/3.cc: Ditto.
420 * testsuite/22_locale/num_get/get/char/1.cc: Ditto.
421 * testsuite/22_locale/num_get/get/char/2.cc: Ditto.
422 * testsuite/22_locale/num_get/get/char/3.cc: Ditto.
423 * testsuite/22_locale/num_get/get/wchar_t/1.cc: Ditto.
424 * testsuite/22_locale/num_get/get/wchar_t/2.cc: Ditto.
425 * testsuite/22_locale/num_get/get/wchar_t/3.cc: Ditto.
426 * testsuite/22_locale/num_put/put/char/1.cc: Ditto.
427 * testsuite/22_locale/num_put/put/char/2.cc: Ditto.
428 * testsuite/22_locale/num_put/put/char/3.cc: Ditto.
429 * testsuite/22_locale/num_put/put/wchar_t/1.cc: Ditto.
430 * testsuite/22_locale/num_put/put/wchar_t/2.cc: Ditto.
431 * testsuite/22_locale/num_put/put/wchar_t/3.cc: Ditto.
432 * testsuite/22_locale/numpunct/members/char/1.cc: Ditto.
433 * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Ditto.
434
ba98a8d8
PC
4352004-04-07 Paolo Carlini <pcarlini@suse.de>
436
437 * config/locale/generic/time_members.cc
438 (__timepunct<char>::_M_initialize_timepunct,
439 __timepunct<wchar_t>::_M_initialize_timepunct): the correct
440 _M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively.
441 * config/locale/gnu/time_members.cc
442 (__timepunct<char>::_M_initialize_timepunct,
443 __timepunct<wchar_t>::_M_initialize_timepunct): Ditto.
444 * testsuite/22_locale/time_get/get_monthname/char/4.cc: New.
445 * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New.
446
447 * testsuite/22_locale/time_get/date_order/char/1.cc: Remove junk.
448 * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Ditto.
449 * testsuite/22_locale/time_get/get_date/char/1.cc: Ditto.
450 * testsuite/22_locale/time_get/get_date/char/2.cc: Ditto.
451 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Ditto.
452 * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Ditto.
453 * testsuite/22_locale/time_get/get_monthname/char/1.cc: Ditto.
454 * testsuite/22_locale/time_get/get_monthname/char/2.cc: Ditto.
455 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
456 * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Ditto.
457 * testsuite/22_locale/time_get/get_time/char/1.cc: Ditto.
458 * testsuite/22_locale/time_get/get_time/char/2.cc: Ditto.
459 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
460 * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Ditto.
461 * testsuite/22_locale/time_get/get_weekday/char/1.cc: Ditto.
462 * testsuite/22_locale/time_get/get_weekday/char/2.cc: Ditto.
463 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
464 * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Ditto.
465 * testsuite/22_locale/time_get/get_year/char/1.cc: Ditto.
466 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
467 * testsuite/22_locale/time_put/put/char/1.cc: Ditto.
468 * testsuite/22_locale/time_put/put/char/2.cc: Ditto.
469 * testsuite/22_locale/time_put/put/char/3.cc: Ditto.
470 * testsuite/22_locale/time_put/put/char/4.cc: Ditto.
471 * testsuite/22_locale/time_put/put/char/5.cc: Ditto.
472 * testsuite/22_locale/time_put/put/char/6.cc: Ditto.
473 * testsuite/22_locale/time_put/put/char/7.cc: Ditto.
474 * testsuite/22_locale/time_put/put/char/8.cc: Ditto.
475 * testsuite/22_locale/time_put/put/wchar_t/1.cc: Ditto.
476 * testsuite/22_locale/time_put/put/wchar_t/2.cc: Ditto.
477 * testsuite/22_locale/time_put/put/wchar_t/3.cc: Ditto.
478 * testsuite/22_locale/time_put/put/wchar_t/4.cc: Ditto.
479 * testsuite/22_locale/time_put/put/wchar_t/5.cc: Ditto.
480 * testsuite/22_locale/time_put/put/wchar_t/6.cc: Ditto.
481 * testsuite/22_locale/time_put/put/wchar_t/7.cc: Ditto.
482 * testsuite/22_locale/time_put/put/wchar_t/8.cc: Ditto.
483
484 * testsuite/22_locale/time_put/put/char/9780-1.cc: Fix typos.
485
f332a090
PC
4862004-04-07 Paolo Carlini <pcarlini@suse.de>
487
488 * config/locale/gnu/monetary_members.cc
489 (moneypunct<wchar_t>::_M_initialize_moneypunct): Prefer
490 _NL_MONETARY_DECIMAL_POINT_WC, _NL_MONETARY_THOUSANDS_SEP_WC,
491 and __MON_GROUPING to _NL_NUMERIC_DECIMAL_POINT_WC,
492 _NL_NUMERIC_THOUSANDS_SEP_WC, and GROUPING.
493 * config/locale/gnu/numeric_members.cc
494 (numpunct<char>::_M_initialize_numpunct): Prefer DECIMAL_POINT
495 and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP.
496
563ae04f
BK
4972004-04-06 Benjamin Kosnik <bkoz@redhat.com>
498
499 Fixups for EDG front end.
500 * include/ext/rope: Instead of non-existent function
501 _Data_allocate, use allocator's allocate. Use this.
502 (namespace _Rope_constants): Move _S_max_rope_depth, and _Tag
503 enumerations from _Rope_RopeRep here.
504 * include/ext/ropeimpl.h: Same.
505 * src/ext-inst.cc (_S_min_len): Fix up definition.
76e9802c 506
563ae04f
BK
507 * config/locale/gnu/ctype_members.cc: Qualify base class members
508 with this.
509 * config/locale/generic/ctype_members.cc: Same.
510 * config/locale/gnu/messages_members.h: Same.
511 * config/locale/generic/messages_members.h: Same.
512 * src/ctype.cc: Same.
513 * include/bits/codecvt.h: Same.
76e9802c 514
563ae04f
BK
515 * include/bits/boost_concept_check.h: Declare.
516 (__error_type_must_be_an_unsigned_integer_type): Remove this.
517 (__error_type_must_be_an_integer_type): Remove this.
76e9802c 518 (__error_type_must_be_a_signed_integer_type): Remove this.
563ae04f
BK
519
520 * config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast.
521
522 * libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception
523 specification to definition.
524 (__cxa_allocate_exception): Same.
525 * libsupc++/eh_catch.cc (__cxa_begin_catch): Same.
526 * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same.
76e9802c
ZW
527 (__cxa_get_globals): Same.
528
563ae04f
BK
529 * libsupc++/del_op.cc: Add comment about freestanding.
530
268d3b18
PC
5312004-04-05 Paolo Carlini <pcarlini@suse.de>
532
533 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
534 The critical section is actually very small, only two assignments.
535
9f35e4aa
PC
5362004-04-04 Paolo Carlini <pcarlini@suse.de>
537 Petur Runolfsson <peturr02@ru.is>
538
539 * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New,
540 adapted from libstdc++/11378.
541
c8333c0f
PC
5422004-04-03 Paolo Carlini <pcarlini@suse.de>
543
544 * include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out
545 some duplicated code.
546 (__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used
547 in the single threaded case.
548 * testsuite/performance/20_util/allocator/list_sort_search.cc:
549 Reorder and renumber the tests consistently with the other testfiles.
550 * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
551 * testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
552 * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
553
ab40b100
PC
5542004-04-02 Paolo Carlini <pcarlini@suse.de>
555
556 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
557 Rearrange arithmetic to avoid computing two divisions at
558 each deallocation.
559
354d4c68
PC
5602004-04-01 Paolo Carlini <pcarlini@suse.de>
561
562 * include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize):
563 Streamline the second half, wrapping it in a single
564 '#ifdef __GTHREADS if (__gthread_active_p())' and avoiding
565 conditionals inside loops.
566
2ae6e982
PC
5672004-04-01 Paolo Carlini <pcarlini@suse.de>
568
569 PR libstdc++/14775
570 * acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS.
571 * acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call
572 GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define
573 to _GLIBCXX_RES_LIMITS.
574 (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to
575 HAVE_LIMIT_*.
576 * testsuite/testsuite_hooks.h: Declare set_file_limit.
577 * testsuite/testsuite_hooks.cc: Define it, using getrlimit
578 and setrlimit(RLIMIT_FSIZE).
579 * testsuite/27_io/fpos/14775.cc: New.
580 * config.h.in: Regenerate.
581 * configure: Likewise.
582
e004c331
PC
5832004-03-31 Paolo Carlini <pcarlini@suse.de>
584
585 * config/locale/generic/c_locale.cc (__convert_to_v(long double&)):
586 In v3 uses of sscanf, the special floating-point numbers INF,
587 INFINITY, etc., cannot occur in input, therefore, if the latter
588 is too large, ERANGE is always stored in errno, no need of finitel.
589
06ce7726
BK
5902004-03-30 Benjamin Kosnik <bkoz@redhat.com>
591
592 PR libstdc++/14783
593 * include/bits/stl_tree.h: Adjust initialization list order.
594
7be1c3fb
LR
5952004-03-29 Loren J. Rittle <ljrittle@acm.org>
596
597 * testsuite/thread/pthread7-rope.cc: Update comment to reflect test.
598
63041e68
PC
5992004-03-29 Paolo Carlini <pcarlini@suse.de>
600
601 * testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending
602 on allocator behavior, the memory pointed by data2 may well be not
603 trashed.
604
f26e5597
CB
6052004-03-28 Chavdar Botev <cbotev@yahoo.com>
606
607 PR libstdc++/14245
608 * include/bits/basic_string.tcc
609 (basic_string::basic_string(const basic_string&)): Pass to
610 _Rep::_M_grab the actual allocator of the string being constructed
611 not the default constructed one.
612
a5f105b5
BK
6132004-03-27 Benjamin Kosnik <bkoz@redhat.com>
614
615 libstdc++ PR/13598
616 * config/locale/ieee_1003.1-2001/codecvt_specializations.h
617 (__enc_traits::_M_destroy): New.
618 (__enc_traits::~__enc_traits): Use it.
619 (__enc_traits::operator=): Use _M_destroy, _M_init.
620 (__enc_traits::__enc_traits): Same.
621
6222004-03-27 Petur Runolfsson <peturr02@ru.is>
623
624 * testsuite/ext/enc_filebuf/char/13598.cc: New.
625
6f52a889
PC
6262004-03-27 Paolo Carlini <pcarlini@suse.de>
627
628 * include/ext/mt_allocator.h: Uglify consistently names of
629 variables, members and classes; tidy.
630
6312004-03-27 Dhruv Matani <dhruvbird@gmx.net>
632
633 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
634 Deallocation loop rewrote.
635
dd95381f
PC
6362004-03-26 Paolo Carlini <pcarlini@suse.de>
637
638 * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
639 __mt_alloc<>::deallocate): Protect two instances of
640 block->thread_id with __GTHREADS.
641
8bd22a3c
BK
6422004-03-25 Gawain Bolton <gp.bolton@computer.org>
643
644 * include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator
645 default argument in constructors.
646 (_Rb_tree::_M_empty_initialize): Remove.
76e9802c 647
8bd22a3c 6482004-03-25 Benjamin Kosnik <bkoz@redhat.com>
76e9802c 649
8bd22a3c
BK
650 * testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
651 * testsuite/23_containers/set/operators/1_neg.cc: Same.
652
6532004-03-25 Dhruv Matani <dhruvbird@gmx.net>
654
655 * include/bits/cpp_type_traits.h: Changed __is_pod
656 completely. Now, it does not use any of the previous type_traits
657 to detect the pod types, and it also detects function pointers as
658 POD types.
659
660 * include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl,
661 which encapsulates the internal implementation of an rb_tree. Made
662 the allocator a base class of this class instead of the rb_tree,
663 which was not conforming. This _Rb_tree_impl class is also
664 specialized on whether the _Compare parameter is a POD type or
665 not. If so, then it maintains the comparison function as a data
666 member, otherwise it makes the _Compare parameter a base class of
667 itself. Also, _M_key_compare is now a function instead of a data
668 member, so that the above trick can work properly. Delegated the
669 initialization of the other data members to this newly created
670 class. Also, now other member functions of rb_tree must refer to
671 _M_key_compare as _M_impl._M_key_compare(). The other data members
672 (*) can be referenced to as _M_impl.(*), where
673 (*) includes _M_header, and _M_node_count.
674
90ceccd4
PC
6752004-03-25 Paolo Carlini <pcarlini@suse.de>
676
677 * include/ext/mt_allocator.h (__mt_alloc<>::tune):
678 Add _M_min_bin, the size in bytes of the smallest bin.
679 (__mt_alloc<>::tune()): Tweak accordingly.
680 (__mt_alloc<>::tune(size_t, ...)): Likewise.
681 (__mt_alloc<>::block_record): Change to a union: members next
682 and thread_id are never used at the same time.
683 (__mt_alloc<>::allocate): Update consistently.
684 (__mt_alloc<>::deallocate): Likewise.
685 (__mt_alloc<>::_S_initialize): Update setups of _S_binmap and
686 _S_bin_size for the configurable _M_min_size.
687
03f9ea44
DM
6882004-03-25 Dhruv Matani <dhruvbird@gmx.net>
689
690 * include/bits/stl_list.h: Created a _List_impl class and made it
691 derive from the allocator, instead of the list deriving from the
692 allocator class, which was not conformant. Changed all references
693 from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same
694 as above (changed all references to the concerned variables).
695
6962004-03-25 Dhruv Matani <dhruvbird@gmx.net>
697
698 * include/bits/stl_deque.h: Created a _Deque_impl class and made
699 it derive from the allocator, instead of the deque deriving from
700 the allocator class, which was not conformant. Changed all
701 references to the _M_start, _M_finish, _M_map, and _M_map_size to
702 _M_impl.*.
703 (_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this->
704 qualification in 2 places where it was missing.
705 (_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as
706 above.
707 * include/bits/deque.tcc: Same as above (changed all references to
708 the concerned variables).
709
7102004-03-25 Dhruv Matani <dhruvbird@gmx.net>
711
712 * include/bits/stl_vector.h: Created a _Vector_impl class and made
713 it derive from the allocator, instead of the _Vector_base class,
714 deriving from the allocator which was not conformant. Changed all
715 references to the _M_start, _M_finish, and _M_end_of_storage to
716 _M_impl.*.
717 * include/bits/vector.tcc: Same as above (changed all references
718 to the concerned variables).
719
7202004-03-25 Dhruv Matani <dhruvbird@gmx.net>
721
722 * testsuite/23_containers/deque/cons/clear_allocator.cc: New.
723 * testsuite/23_containers/list/cons/clear_allocator.cc: New.
724 * testsuite/23_containers/vector/cons/clear_allocator.cc: New.
76e9802c 725
58c95921
DM
7262004-03-24 Dhruv Matani <dhruvbird@gmx.net>
727
03f9ea44
DM
728 * include/ext/malloc_allocator.h: Fixed the construct function to
729 call global placement new instead of assignment. Added a check
730 after the return from malloc to check whether returned pointer is
731 NULL, and if so, throw std::bad_alloc().
732 * include/ext/debug_allocator.h: Added a check in the deallocate
733 function to check whether the user has passed a NULL pointer or
734 not.
76e9802c 735
8367b9c1
BK
7362004-03-24 Benjamin Kosnik <bkoz@redhat.com>
737
738 * docs/html/20_util/allocator.html: Add bitmap_allocator links.
739
d62c1a1f
AS
7402004-03-24 Andreas Schwab <schwab@suse.de>
741
742 * testsuite/lib/prune.exp (prune_g++_output): Ignore errata
743 warning from IA64 assembler.
744
71f9a9d1 7452004-03-24 Dhruv Matani <dhruvbird@gmx.net>
76e9802c 746
71f9a9d1
DM
747 * include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this
748 function call __builtin_ctz instead of the while loop.
749 (allocate) -> If condition has __builtin_expect.
750 (deallocate) -> Ditto.
751 Renamed a few left-over variables and typedefs according to the
752 C++STYLE mentioned in the documentation.
753 Protected calls to __gthread* by __gthread_active_p(), whose value
754 is cached in the local variable __threads_active.
755
b4a76c01
FY
7562004-03-24 Felix Yen <fwy@alumni.brown.edu>
757
758 * testsuite/performance/20_util/allocator/producer_consumer.cc:
759 Use linear algorithm for producer.
76e9802c 760
affb18b2
PC
7612004-03-24 Paolo Carlini <pcarlini@suse.de>
762
763 * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
764 __mt_alloc<>::deallocate): Avoid redundant conditionals.
765
586b5f20
BK
7662004-03-23 Benjamin Kosnik <bkoz@redhat.com>
767
768 * include/bits/locale_facets.h: Tweaks for 80 column.
769 (__numpunct_cache::_M_cache): Move to locale_facets.tcc.
770 (__moneypunct_cache::_M_cache): Same.
771 (num_get): Don't inherit from __num_base.
772 (num_put): Same.
773 (money_get): Don't inherit from money_base.
774 (money_put): Same.
775 (__timepunct::_M_am_pm_format): New.
776 (time_get::_M_extract_num): Return iterator, use ios_base as argument.
777 (time_get::_M_extract_name): Same.
778 (time_get::_M_extract_via_format): Same.
779 * include/bits/locale_facets.tcc: Tweaks for 80 column.
780 Use _M_getloc instead of getloc.
781 * testsuite/22_locale/money_put/put/char/9780-3.cc: New.
782 * testsuite/22_locale/num_put/put/char/9780-2.cc: New.
783 * testsuite/22_locale/time_put/put/char/9780-1.cc: New.
784
29d4adf4
PC
7852004-03-22 Paolo Carlini <pcarlini@suse.de>
786
787 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
788 * configure: Regenerate.
789 * config/allocator/pool_allocator_base.h: New.
790 * include/ext/pool_allocator.h: Convert to a standard-conforming
791 allocator.
792 * src/allocator.cc: Tweak instantiations.
793 * testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc.
794 * testsuite/performance/20_util/allocator/insert_insert.cc: Ditto.
795 * testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto.
796 * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
797 * testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
798 * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
799
fea41ef9
HPN
8002004-03-22 Hans-Peter Nilsson <hp@axis.com>
801
802 * config/cpu/cris/atomicity.h (__atomic_add): Remove "static
803 inline" and attribute-unused. Qualify parameter __mem with
804 "volatile".
805 (__exchange_and_add): Ditto. Add back memory clobber to asm.
806
9c024d9c
PC
8072004-03-20 Paolo Carlini <pcarlini@suse.de>
808
809 * testsuite/27_io/basic_istream/extractors_arithmetic/char/2.cc:
810 Remove junk.
811 * testsuite/27_io/basic_istream/extractors_arithmetic/char/3.cc:
812 Likewise.
813 * testsuite/27_io/basic_istream/extractors_arithmetic/char/6.cc:
814 Likewise.
815 * testsuite/27_io/basic_istream/extractors_arithmetic/char/7.cc:
816 Likewise.
817 * testsuite/27_io/basic_istream/extractors_arithmetic/char/8.cc:
818 Likewise.
819 * testsuite/27_io/basic_istream/extractors_arithmetic/char/9.cc:
820 Likewise.
821 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
822 Likewise.
823 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
824 Likewise.
825 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
826 Likewise.
827 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
76e9802c 828 Likewise.
9c024d9c 829
2787b59a
PC
8302004-03-20 Paolo Carlini <pcarlini@suse.de>
831
832 * include/std/std_valarray.h: Document DR389 [Ready].
833 * docs/html/ext/howto.html: Add an entry for DR389.
834
1b1a632b
ME
8352004-03-19 Michael Eager <eager@mvista.com>
836
837 * config/cpu/mips/atomicity.h: Prevent reg loads between LL and
838 SC instructions.
839
28f2a265
PC
8402004-03-19 Paolo Carlini <pcarlini@suse.de>
841
842 * testsuite/22_locale/num_get/get/char/11.cc: Remove redundant
843 static_cast-s.
844 * testsuite/22_locale/num_get/get/char/12.cc: Likewise.
845 * testsuite/22_locale/num_get/get/char/13.cc: Likewise.
846 * testsuite/22_locale/num_get/get/char/14.cc: Likewise.
847 * testsuite/22_locale/num_get/get/char/15.cc: Likewise.
848 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
849 * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
850 * testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
851 * testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
852 * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
853
8268bba6
PC
8542004-03-19 Paolo Carlini <pcarlini@suse.de>
855 Petur Runolfsson <peturr02@ru.is>
856
857 PR libstdc++/12077
858 * include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's
859 no way to find out the conversion used by the underlying FILE*.
860 * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New.
861 * testsuite/27_io/objects/char/9.cc: Tweak.
862
59d35672
PC
8632004-03-19 Paolo Carlini <pcarlini@suse.de>
864
865 PR libstdc++/14648
866 * include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix
867 memory allocation/deallocation calls.
868 * testsuite/ext/14648.cc: New.
869
ab7ac222
PS
8702004-03-19 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
871
872 PR libstdc++/14647
873 * include/backward/bvector.h (bit_vector): Allocator is in std
874 namespace.
875
d54bc1d8
PE
8762004-03-19 Phil Edwards <phil@codesourcery.com>
877
878 * acinclude.m4 (GLIBCXX_CHECK_WCHAR_T_SUPPORT): Set LIBICONV,
879 not libiconv. SUBST this variable as well.
880 * testsuite/Makefile.am (site.exp): New target, based on that
881 created by automake. Also set libiconv.
882
883 * configure, Makefile.in, include/Makefile.in, libmath/Makefile.in,
884 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
885 testsuite/Makefile.in: Regenerate.
886
87599abd
BK
8872004-03-16 Benjamin Kosnik <bkoz@redhat.com>
888
889 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Default setting is
890 new_allocator for all hosts.
891 * configure: Regenerate.
76e9802c 892
e20036e2
PC
8932004-03-16 Paolo Carlini <pcarlini@suse.de>
894
895 * testsuite/22_locale/num_put/put/char/4.cc: Fix for 64-bit pointers.
896 * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
76e9802c 897
33674f00
PC
8982004-03-15 Paolo Carlini <pcarlini@suse.de>
899
900 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
901 Adjust the logic underlying the parsing of symbol to deal
902 correctly with an optional sign component (i.e., when either
76e9802c 903 negative_sign or positive_sign is empty)
33674f00
PC
904 * testsuite/22_locale/money_get/get/char/19.cc: New.
905 * testsuite/22_locale/money_get/get/wchar_t/19.cc: New.
906
9072004-03-15 Paolo Carlini <pcarlini@suse.de>
908
909 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
910 Do not accept an incomplete currency symbol.
911 * testsuite/22_locale/money_get/get/char/18.cc: New.
912 * testsuite/22_locale/money_get/get/wchar_t/18.cc: New.
913
8b0d6051
BK
9142004-03-13 Benjamin Kosnik <bkoz@redhat.com>
915
916 * config/allocator: New.
917 * config/allocator/bitmap_allocator_base.h: New.
918 * config/allocator/malloc_allocator_base.h: New.
919 * config/allocator/mt_allocator_base.h: New.
920 * config/allocator/new_allocator_base.h: New.
921 * include/bits/allocator.h: Include c++allocator.h.
922 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
923 * aclocal.m4: Regenerate.
76e9802c 924 * configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
8b0d6051
BK
925 * configure: Regenerate.
926 * include/Makefile.am (host_headers_extra): Add c++allocator.h.
927 * include/Makefile.in: Regenerate.
928 * docs/html/configopts.html: Add enable-libstdcxx-allocator.
929
eef56029
BK
9302004-03-12 Benjamin Kosnik <bkoz@redhat.com>
931
932 * include/bits/allocator.h: Revert.
933
d4cd08dd
PC
9342004-03-12 Paolo Carlini <pcarlini@suse.de>
935
936 * docs/html/ext/howto.html: Add entry for DR 253 [Ready].
937 * include/bits/gslice_array.h: Add comment about DR 253.
938 * include/bits/indirect_array.h: Likewise.
939 * include/bits/mask_array.h: Likewise.
940 * include/bits/slice_array.h: Likewise.
941
ce7df2fd
BK
9422004-03-12 Benjamin Kosnik <bkoz@redhat.com>
943
944 * testsuite/20_util/allocator/14176.cc: New.
945 * include/ext/mt_allocator.h: Formatting fixes.
76e9802c 946
009368db
DM
9472004-03-11 Dhruv Matani <dhruvbird@HotPOP.com>
948
949 * include/Makefile.am (ext_headers): Add
950 ${ext_srcdir}/bitmap_allocator.h .
951 * include/Makefile.in: Regenerate.
952 * docs/html/ext/ballocator_doc.txt: New file.
953 * include/ext/bitmap_allocator.h: New file.
76e9802c 954 * testsuite/performance/20_util/allocator/list_sort_search.cc: Add
ce7df2fd 955 test.
009368db
DM
956 * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
957 * testsuite/performance/20_util/allocator/producer_consumer.cc: Add
958 test for the bitmap_allocator<>.
959 * testsuite/performance/20_util/allocator/insert.cc: Likewise.
960 * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
961 * testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
962
c6feb697
PC
9632004-03-11 Paolo Carlini <pcarlini@suse.de>
964
965 * include/std/std_complex.h (pow(const complex&, const _Tp&),
966 pow(const _Tp&, const complex&), pow(const complex&,
967 const complex&)): Fully qualify with std:: a few calls.
968 * testsuite/26_numerics/complex/13450.cc: Minor tweak.
969
e3628001 9702004-03-11 Steven Bosscher <stevenb@suse.de>
b7c34954
SB
971
972 PR libstdc++/11706
973 * include/c_std/cmath.tcc (__cmath_power): Define inline.
974
8ab705be
KC
9752004-03-10 Kelley Cook <kcook@gcc.gnu.org>
976
977 * configure.ac: Bump AC_PREREQ to 2.59.
978
f69535d2
PC
9792004-03-10 Paolo Carlini <pcarlini@suse.de>
980
981 * testsuite/26_numerics/valarray_subset_assignment.cc: Fix typos.
982
52ddaf41
PK
9832004-03-10 Paul Kienzle <pkienzle@nist.gov>
984 Paolo Carlini <pcarlini@suse.de>
985
986 PR libstdc++/13450
987 * include/std/std_complex.h (pow(const complex&, const _Tp&),
988 pow(const _Tp&, const complex&)): Use cmath pow only when safe.
989 * testsuite/26_numerics/complex/13450.cc: New.
990
991 * testsuite/26_numerics/cmath/overloads.C: Rename to overloads.cc.
992 * testsuite/26_numerics/complex/pow.C: Rename to pow.cc and fix.
993
ecc7568d
JQ
9942004-03-10 Jerry Quinn <jlquinn@optonline.net>
995
52ddaf41 996 PR libstdc++/3247
ecc7568d
JQ
997 * include/bits/gslice_array.h (gslice_array()): Make public.
998 (operator=(gslice_array)): Make public. Implement.
999 * include/bits/indirect_array.h (indirect_array()): Make public.
1000 * include/bits/mask_array.h (mask_array()): Make public.
1001 (operator=(mask_array)): Make public. Implement.
1002 * include/bits/valarray_array.tcc (__valarray_copy):
1003 Comment. Add versions for gslice_array and mask_array.
1004 * testsuite/26_numerics/valarray_subset_assignment.cc: New test.
1005
6dde938c
BK
10062004-03-09 Benjamin Kosnik <bkoz@redhat.com>
1007
1008 * testsuite/23_containers/deque/modifiers/swap.cc: Add in bits for
1009 non-weak systems.
1010 * testsuite/23_containers/vector/modifiers/swap.cc: Same.
1011 * testsuite/23_containers/set/modifiers/swap.cc: Same.
1012 * testsuite/23_containers/multiset/modifiers/swap.cc: Same.
1013 * testsuite/23_containers/multimap/modifiers/swap.cc: Same.
1014 * testsuite/23_containers/map/modifiers/swap.cc: Same.
1015 * testsuite/23_containers/list/modifiers/swap.cc: Same.
1016
1017 * testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions.
1018
f1c4ca32 10192004-03-08 Benjamin Kosnik <bkoz@redhat.com>
76e9802c 1020
f1c4ca32
BK
1021 PR c++/13658
1022 * testsuite/23_containers/deque/modifiers/swap.cc: New.
1023 * testsuite/23_containers/list/modifiers/swap.cc: New.
1024 * testsuite/23_containers/map/modifiers/swap.cc: New.
1025 * testsuite/23_containers/multimap/modifiers/swap.cc: New.
1026 * testsuite/23_containers/multiset/modifiers/swap.cc: New.
1027 * testsuite/23_containers/set/modifiers/swap.cc: New.
1028 * testsuite/23_containers/vector/modifiers/swap.cc: New.
76e9802c 1029
5a66cfb2
PR
10302004-03-08 Petur Runolfsson <peturr02@ru.is>
1031
1032 PR libstdc++/12658
1033 * testsuite/22_locale/locale/cons/12658_thread.cc: New.
1034
1d4eb925
PC
10352004-03-08 Paolo Carlini <pcarlini@suse.de>
1036
1037 * docs/html/ext/howto.html: Add entry for DR 103 [WP].
1038 * include/bits/stl_multiset.h: Add comment about DR 103.
1039 * include/bits/stl_set.h: Likewise.
1040
f1c89270
PC
10412004-03-08 Paolo Carlini <pcarlini@suse.de>
1042
1043 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1044 The value _space_ indicates that at least one space is required
1045 at that position.
1046 * testsuite/22_locale/money_get/get/char/17.cc: New.
1047 * testsuite/22_locale/money_get/get/wchar_t/17.cc: New.
1048
1049 * testsuite/22_locale/money_get/get/char/7.cc: Minor tweaks.
1050 * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
1051
1052 * include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)):
1053 Remove redundant conditional on __str.size().
76e9802c 1054
f5fb3886
BK
10552004-03-08 Benjamin Kosnik <bkoz@redhat.com>
1056
1057 * include/bits/allocator.h: Switch defaults to mt_alloc.
1058
c0bec71b
BK
10592004-03-06 Benjamin Kosnik <bkoz@redhat.com>
1060
1061 * include/ext/mt_allocator.h (_S_initialize): If
1062 !__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex.
1063
f83295ba
BK
10642004-03-06 Benjamin Kosnik <bkoz@redhat.com>
1065
1066 PR libstdc++/12658
1067 * src/locale_init.cc (locale::locale): Lock critical regions with
1068 external mutexes.
76e9802c
ZW
1069 (locale::global): Same.
1070 * include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
f83295ba
BK
1071 Add in once bits for cases without __GTHREAD_MUTEX_INIT.
1072 (__glibcxx_mutex_lock): Same.
1073
1074 * config/cpu/generic/atomicity.h: Remove
1075 _GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h.
1076 * src/misc-inst.cc: Move all locking bits out of this file.
1077
1078 * config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK.
1079 * src/misc-inst.cc: Same.
1080 * config/cpu/hppa/atomicity.h: Same.
1081
1082 * config/linker-map.gnu: Remove types in the signature of atomic
1083 exports, as they may vary.
76e9802c 1084
0c2cc7b3
PC
10852004-03-06 Paolo Carlini <pcarlini@suse.de>
1086
1087 * include/bits/locale_facets.tcc: Tweak the comment preceding
1088 has_facet: doesn't throw.
1089
73da19bb
PC
10902004-03-06 Paolo Carlini <pcarlini@suse.de>
1091
1092 * testsuite/22_locale/money_get/get/char/1.cc: Clean up.
1093 * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
1094 * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
1095 * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
1096 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
1097 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
1098 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
1099 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
1100
ce345590
PC
11012004-03-06 Paolo Carlini <pcarlini@suse.de>
1102
1103 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
1104 num_get<>::_M_extract_int, num_get<>::do_get(bool&),
1105 __pad<>::_S_pad): Prefer plain operator== to traits::eq().
1106 * testsuite/testsuite_character.h (struct __gnu_test::character):
1107 Provide operator==.
1108 * testsuite/testsuite_hooks.h (struct __gnu_test::pod_char):
1109 Likewise.
1110
35bd3c28
PC
11112004-03-05 Paolo Carlini <pcarlini@suse.de>
1112
1113 * testsuite/27_io/fpos/14320-2.cc: Remove xfail.
1114
80e39f4a
BK
11152004-03-04 Benjamin Kosnik <bkoz@redhat.com>
1116
1117 * testsuite/23_containers/multiset/insert/1.cc: Test result string.
1118
1119 * testsuite/23_containers/bitset/invalidation/1.cc: Main always
76e9802c 1120 returns 0.
80e39f4a
BK
1121 * testsuite/23_containers/deque/invalidation/4.cc: Same.
1122 * testsuite/23_containers/list/invalidation/1.cc: Same.
1123 * testsuite/23_containers/list/invalidation/2.cc: Same.
1124 * testsuite/23_containers/list/invalidation/3.cc: Same.
1125 * testsuite/23_containers/list/invalidation/4.cc: Same.
1126 * testsuite/23_containers/map/invalidation/2.cc: Same.
1127 * testsuite/23_containers/multimap/invalidation/1.cc: Same.
1128 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
1129 * testsuite/23_containers/multiset/invalidation/1.cc: Same.
1130 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
1131 * testsuite/23_containers/set/invalidation/1.cc: Same.
1132 * testsuite/23_containers/set/invalidation/2.cc: Same.
1133 * testsuite/23_containers/vector/invalidation/1.cc: Same.
1134 * testsuite/23_containers/vector/invalidation/2.cc: Same.
1135 * testsuite/23_containers/vector/invalidation/3.cc: Same.
1136 * testsuite/23_containers/vector/invalidation/4.cc: Same.
1137
2aa89cbb
PC
11382004-03-04 Paolo Carlini <pcarlini@suse.de>
1139
1140 * scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to
1141 CXXFLAGS_save.
1142 * testsuite/lib/libstdc++.exp: Don't add it conditionally to
76e9802c 1143 DEFAULT_CXXFLAGS.
2aa89cbb
PC
1144 * testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT"
1145 from the dg-options.
1146 * testsuite/23_containers/vector/invalidation/1.cc: Likewise.
1147 * testsuite/23_containers/vector/invalidation/2.cc: Likewise.
1148 * testsuite/23_containers/vector/invalidation/3.cc: Likewise.
1149 * testsuite/23_containers/vector/invalidation/4.cc: Likewise.
1150 * testsuite/23_containers/vector/resize/1.cc: Likewise.
1151 * testsuite/26_numerics/complex_value.cc: Likewise.
1152 * testsuite/27_io/ios_base/storage/1.cc: Likewise.
1153 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
1154 * testsuite/27_io/ios_base/storage/3.cc: Likewise.
1155 * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
1156 * testsuite/27_io/objects/char/5.cc: Likewise.
1157 * testsuite/27_io/objects/wchar_t/5.cc: Likewise.
1158 * testsuite/backward/11460.cc: Likewise.
1159 * testsuite/thread/pthread7-rope.cc: Likewise.
1160
1161 * testsuite/21_strings/basic_string/compare/char/1.cc: Add
1162 missing test variable.
1163 * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Add
1164 missing test variable.
1165
f90e600a
BK
11662004-03-04 Benjamin Kosnik <bkoz@redhat.com>
1167
1168 * testsuite/20_util/allocator/1.cc: Provide explicit
1169 instantiations for non-weak systems.
1170 * testsuite/20_util/binders.cc: Same.
1171 * testsuite/20_util/allocator/8230.cc: Same.
1172 * testsuite/20_util/allocator/10378.cc: Same.
1173 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
1174 * testsuite/22_locale/ctype/is/char/2.cc: Same.
1175 * testsuite/thread/pthread7-rope.cc: Same.
76e9802c
ZW
1176 * testsuite/thread/pthread6.cc: Same.
1177 * testsuite/thread/pthread5.cc: Same.
1178 * testsuite/thread/pthread4.cc: Same.
f90e600a
BK
1179 * testsuite/thread/pthread1.cc: Same.
1180 * testsuite/ext/rope.cc: Same.
1181 * testsuite/ext/hash_set.cc: Same.
76e9802c 1182 * testsuite/ext/hash_map.cc: Same.
f90e600a
BK
1183 * testsuite/ext/concept_checks.cc: Same.
1184 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same.
1185 * testsuite/25_algorithms/unique/2.cc: Same.
1186 * testsuite/25_algorithms/unique/1.cc: Same.
1187 * testsuite/25_algorithms/rotate.cc: Same.
1188 * testsuite/25_algorithms/min_max.cc: Same.
76e9802c 1189 * testsuite/25_algorithms/equal.cc: Same.
f90e600a
BK
1190 * testsuite/24_iterators/rel_ops.cc: Same.
1191 * testsuite/24_iterators/iterator.cc: Same.
1192 * testsuite/24_iterators/insert_iterator.cc: Same.
1193 * testsuite/24_iterators/front_insert_iterator.cc: Same.
1194 * testsuite/24_iterators/back_insert_iterator.cc: Same.
1195 * testsuite/23_containers/vector/resize/1.cc: Same.
1196 * testsuite/23_containers/vector/modifiers/2.cc: Same.
1197 * testsuite/23_containers/vector/modifiers/1.cc: Same.
1198 * testsuite/23_containers/vector/invalidation/4.cc: Same.
1199 * testsuite/23_containers/vector/invalidation/3.cc: Same.
76e9802c 1200 * testsuite/23_containers/vector/invalidation/2.cc: Same.
f90e600a
BK
1201 * testsuite/23_containers/vector/invalidation/1.cc: Same.
1202 * testsuite/23_containers/vector/element_access/1.cc: Same.
1203 * testsuite/23_containers/vector/cons/6513.cc: Same.
1204 * testsuite/23_containers/vector/cons/3.cc: Same.
1205 * testsuite/23_containers/vector/cons/2.cc: Same.
1206 * testsuite/23_containers/vector/cons/1.cc: Same.
1207 * testsuite/23_containers/vector/capacity/8230.cc: Same.
1208 * testsuite/23_containers/vector/capacity/1.cc: Same.
1209 * testsuite/23_containers/vector/bool/6886.cc: Same.
1210 * testsuite/23_containers/stack/members/7158.cc: Same.
1211 * testsuite/23_containers/set/invalidation/2.cc: Same.
1212 * testsuite/23_containers/set/invalidation/1.cc: Same.
1213 * testsuite/23_containers/queue/members/7157.cc: Same.
1214 * testsuite/23_containers/priority_queue/members/7161.cc: Same.
1215 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
76e9802c 1216 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
f90e600a
BK
1217 * testsuite/23_containers/multiset/insert/1.cc: Same.
1218 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
1219 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
1220 * testsuite/23_containers/map/operators/1.cc: Same.
1221 * testsuite/23_containers/map/invalidation/2.cc: Same.
1222 * testsuite/23_containers/map/invalidation/1.cc: Same.
1223 * testsuite/23_containers/map/insert/1.cc: Same.
1224 * testsuite/23_containers/list/operators/4.cc: Same.
1225 * testsuite/23_containers/list/operators/3.cc: Same.
1226 * testsuite/23_containers/list/operators/2.cc: Same.
1227 * testsuite/23_containers/list/operators/1.cc: Same.
1228 * testsuite/23_containers/list/modifiers/3.cc: Same.
1229 * testsuite/23_containers/list/modifiers/2.cc: Same.
1230 * testsuite/23_containers/list/modifiers/1.cc: Same.
1231 * testsuite/23_containers/list/invalidation/4.cc: Same.
1232 * testsuite/23_containers/list/invalidation/3.cc: Same.
1233 * testsuite/23_containers/list/invalidation/2.cc: Same.
76e9802c 1234 * testsuite/23_containers/list/invalidation/1.cc: Same.
f90e600a
BK
1235 * testsuite/23_containers/list/cons/9.cc: Same.
1236 * testsuite/23_containers/list/cons/8.cc: Same.
1237 * testsuite/23_containers/list/cons/7.cc: Same.
1238 * testsuite/23_containers/list/cons/6.cc: Same.
1239 * testsuite/23_containers/list/cons/5.cc: Same.
1240 * testsuite/23_containers/list/cons/4.cc: Same.
1241 * testsuite/23_containers/list/cons/3.cc: Same.
1242 * testsuite/23_containers/list/cons/2.cc: Same.
1243 * testsuite/23_containers/list/cons/1.cc: Same.
1244 * testsuite/23_containers/list/capacity/1.cc: Same.
1245 * testsuite/23_containers/deque/operators/1.cc: Same.
1246 * testsuite/23_containers/deque/invalidation/4.cc: Same.
1247 * testsuite/23_containers/deque/invalidation/3.cc: Same.
1248 * testsuite/23_containers/deque/invalidation/2.cc: Same.
1249 * testsuite/23_containers/deque/invalidation/1.cc: Same.
1250 * testsuite/23_containers/deque/cons/2.cc: Same.
1251 * testsuite/23_containers/deque/cons/1.cc: Same.
1252
1253 * src/allocator.cc: Add char, wchar_t instantiations
1254 to match extern template declarations in memory.h.
1255
ced3ad4d
PC
12562004-03-03 Paolo Carlini <pcarlini@suse.de>
1257
1258 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
1259 Fix warning regression.
1260
039e3c5c
PC
12612004-03-03 Paolo Carlini <pcarlini@suse.de>
1262
1263 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
1264 Deal properly with empty __digits and negative frac_digits,
1265 clean-up a bit.
1266
0d957d26
JW
12672004-03-03 Jonathan Wakely <redi@gcc.gnu.org>
1268
1269 * docs/html/documentation.html: Regenerate.
1270
0b1d67d2
PC
12712004-03-02 Paolo Carlini <pcarlini@suse.de>
1272
1273 PR libstdc++/14320
1274 * include/bits/postypes.h (class streamoff): Remove, now
1275 streamoff is just typedef a 64 bit signed integer type.
1276 (class fpos): Tweak consistently.
1277 * testsuite/27_io/fpos/14320-1.cc: New.
1278 * testsuite/27_io/fpos/14320-2.cc: New.
1279 * testsuite/27_io/fpos/14320-3.cc: New.
1280 * testsuite/27_io/fpos/14320-4.cc: New.
1281 * testsuite/27_io/fpos/14320-5.cc: New.
1282 * testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now.
1283
59564c5e
PC
12842004-03-02 Paolo Carlini <pcarlini@suse.de>
1285
1286 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1287 Reorganize a bit the main parsing loop, thus early detecting
1288 an empty value component.
1289 * testsuite/22_locale/money_get/get/char/16.cc: New.
1290 * testsuite/22_locale/money_get/get/wchar_t/16.cc: New.
1291
ec2075e9
BK
12922004-03-02 Benjamin Kosnik <bkoz@redhat.com>
1293
1294 Support automake 1.8.2
1295 * configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override.
1296 * po/Makefile.am (EXTRA_DIST): New.
1297 * po/Makefile.in: Regenerate.
1298 * Makefile.in: Same.
1299 * include/Makefile.in: Same.
1300 * libmath/Makefile.in: Same.
1301 * libsupc++/Makefile.in: Same.
1302 * src/Makefile.in: Same.
1303 * testsuite/Makefile.in: Same.
1304
1305 * include/Makefile.am (${host_builddir}/gthr-posix.h): Use
1306 __GXX_WEAK__ instead of SUPPORTS_WEAK.
1307 (${host_builddir}/gthr-default.h): Same.
1308 (${host_builddir}/gthr.h): Same.
1309 * acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove
1310 _GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via
1311 -fno-weak.
1312 * aclocal.m4: Regenerate.
1313 * acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK.
1314 * config.h.in: Regenerate.
1315 * configure: Same.
76e9802c 1316
f214923c
BK
13172004-03-01 Benjamin Kosnik <bkoz@redhat.com>
1318
ec2075e9 1319 Support autoconf 2.59
f214923c
BK
1320 * acinclude.m4: Quote correctly.
1321 * aclocal.m4: Regenerate.
1322 * linkage.m4: Same.
1323
67283362
BK
13242004-03-01 Benjamin Kosnik <bkoz@redhat.com>
1325
1326 * docs/html/test.html: Add multilib RUNTESTFLAGS example.
1327
1328 * docs/html/18_support/howto.html: Add bit about writing to
1329 stderr, mostly by Zack.
76e9802c 1330
98e953f5
PC
13312004-03-01 Paolo Carlini <pcarlini@suse.de>
1332
1333 * include/bits/locale_facets.tcc (money_get<>::_M_extract,
1334 money_get<>::do_get(string_type&)): ... and two more.
1335
b19fb27d
PC
13362004-03-01 Paolo Carlini <pcarlini@suse.de>
1337
1338 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1339 Fix thinkos in the switch from string_type& to string& as last
1340 argument.
1341
08ff96c3
PC
13422004-03-01 Paolo Carlini <pcarlini@suse.de>
1343
1344 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
1345 Also when parsing exponent sign, first look for thousands_sep
1346 and decimal_point; tweak a bit.
1347 * testsuite/22_locale/num_get/get/char/15.cc: New.
1348 * testsuite/22_locale/num_get/get/wchar_t/15.cc: New.
76e9802c 1349
08ff96c3
PC
1350 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
1351 num_get<>::_M_extract_int): Reorder some conditionals.
1352
13532004-03-01 Paolo Carlini <pcarlini@suse.de>
1354
1355 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1356 Consistently with numpunct, enforce the requirements in
1357 22.2.6.3, p3 for the thousands separators; tweak a bit.
1358 * testsuite/22_locale/money_get/get/char/15.cc: New.
1359 * testsuite/22_locale/money_get/get/wchar_t/15.cc: New.
76e9802c 1360
1152b861
DB
13612004-03-01 David Billinghurst <David.Billinghurst@riotinto.com>
1362
76e9802c 1363 * testsuite/lib/libstdc++.exp (v3-list-tests): Use
1152b861
DB
1364 testsuite_files from correct multilib blddir when running
1365 testsuite.
1366
8b425082
PE
13672004-02-29 Phil Edwards <phil@codesourcery.com>
1368
1369 * testsuite/Makefile.am (check-abi, check-abi-verbose): Copy
1370 the summary file to the logfile.
1371 * testsuite/Makefile.in: Regenerate.
1372
3a1a4ed2
JDA
13732004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1374
1375 * config/cpu/hppa/atomicity.h (__atomic_add): Make first argument
1376 volatile.
1377 * config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use
1378 __GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK.
1379
0e1b98cc
PC
13802004-02-28 Paolo Carlini <pcarlini@suse.de>
1381
1382 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
1383 According to 22.2.3.1, p2, 'units' may be followed by 'e' with
1384 no 'decimal-point' in the middle: in this case too we must fix
1385 up __found_grouping; slightly tweak.
1386 * testsuite/22_locale/num_get/get/char/14.cc: New.
1387 * testsuite/22_locale/num_get/get/wchar_t/14.cc: New.
1388
58adf39c 13892004-02-27 Eric Christopher <echristo@redhat.com>
76e9802c 1390 Phil Edwards <phil@codesourcery.com>
58adf39c
EC
1391
1392 * testsuite/22_locale/collate/compare/wchar_t/2.cc,
1393 testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc,
1394 testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc,
1395 testsuite/22_locale/collate/hash/wchar_t/2.cc,
1396 testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc,
1397 testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc,
1398 testsuite/22_locale/collate/transform/wchar_t/2.cc,
1399 testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc,
1400 testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
1401 Use dg-require-iconv.
1402 * testsuite/lib/libstdc++.exp: Load target-supports.exp.
1403
23834577 14042004-02-27 Phil Edwards <phil@codesourcery.com>
76e9802c 1405 Eric Christopher <echristo@redhat.com>
23834577
PE
1406
1407 * testsuite/config/default.exp: Update with comments.
1408 (${tool}_target_compile): New wrapper routine.
1409 * testsuite/lib/dg-options.exp: New file, with dg-require-iconv.
1410 * testsuite/lib/libstdc++.exp: Update with comments and cosmetic
1411 fixes.
1412 (load_gcc_lib, v3track): New routines.
1413 (v3-init): Rename to libstdc++_init.
1414 * testsuite/libstdc++-dg/normal.exp: No longer call v3-init.
1415 Move DEFAULT_CXXFLAGS handling into libstdc++_init.
1416
00d04db6
BK
14172004-02-27 Benjamin Kosnik <bkoz@redhat.com>
1418
1419 * config/cpu/hppa/atomicity.h: Include c++config.h to get defines.
1420
1421 * src/misc-inst.cc (_S_atomicity_lock): Move to __gnu_cxx.
1422
1423 * config/os/irix/irix5.2/atomicity.h: Merge..
1424 * config/os/irix/irix6.5/atomicity.h: Merge..
1425 * config/os/irix/atomicity.h: ...into this.
1426 * config/os/irix/atomic_word.h: New.
1427 * configure.host: Set atomic_word_dir for irix.
1428
1429 * hppa/atomicity.h: Change __Atomicity_lock to _Atomicity_lock.
1430 * i386/atomicity.h: Same.
1431 * m68k/atomicity.h: Same.
1432 * sparc/atomicity.h: Same.
1433
c284a126
DE
14342004-02-27 David Edelsohn <edelsohn@gnu.org>
1435
1436 * config/os/aix/atomicity.h: Use __gnu_cxx namespace. Remove
00d04db6 1437 static, and inline keywords.
c284a126 1438
a8ea7389
PC
14392004-02-27 Paolo Carlini <pcarlini@suse.de>
1440
1441 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
1442 num_get<>::_M_extract_int, money_get<>::_M_extract): If appropriate,
1443 call reserve on the __tmp_gruping string.
1444 (num_get<>::_M_extract_float): Don't append unnecessarily a
1445 char() to the returned string.
1446 * include/bits/locale_facets.tcc: Trivial reformattings.
1447
f4bdbead
PC
14482004-02-27 Paolo Carlini <pcarlini@suse.de>
1449
1450 * include/bits/locale_facets.h (money_get<>::_M_extract):
1451 Change signature: now takes a plain string&.
1452 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1453 Update consistently the definition; use the moneypunct cache
1454 to parse the value; use swap to change __units.
1455 (money_get<>::do_get(long double&)): Update call of _M_extract,
1456 avoid ctype::narrow, not correct wrt the standard.
1457 (money_get<>::do_get(string_type&)): Likewise, update call
1458 of _M_extract, use ctype::widen.
1459 * src/locale-inst.cc: Tweak instantiations of _M_extract.
1460
40fcf31b
BK
14612004-02-26 Ian Lance Taylor <ian@wasabisystems.com>
1462
1463 * testsuite/demangle/abi_examples/01.cc: Expect error -2.
1464 * testsuite/demangle/abi_examples/02.cc: Likewise.
1465 * testsuite/demangle/regression/cw-11.cc: Likewise.
1466 * testsuite/demangle/regression/cw-16.cc: Change two expected
1467 results to match libiberty demangler output.
1468
14692004-02-26 Benjamin Kosnik <bkoz@redhat.com>
1470
1471 PR libstdc++/10246
76e9802c
ZW
1472 * libsupc++/Makefile.am: Use libiberty demangler.
1473 (c_sources): Add cp-demangle.c.
1474 * libsupc++/Makefile.in: Regenerate.
1475 * src/Makefile.am (sources): Remove demangle.cc.
1476 * src/Makefile.in: Regenerate.
1477 * include/Makefile.am (bits_headers): Move demangle.h.
40fcf31b 1478 (ext_headers): ...here.
76e9802c
ZW
1479 * include/Makefile.in: Regenerate.
1480 * include/bits/demangle.h: Move...
40fcf31b 1481 * include/ext/demangle.h: ...here.
76e9802c 1482 * src/demangle.cc: Remove.
40fcf31b
BK
1483
14842004-02-26 Benjamin Kosnik <bkoz@redhat.com>
76e9802c
ZW
1485
1486 * include/bits/demangle.h: Add type template parameter to all
1487 templates with just an Allocator template parameter.
1488
2c5d0ae8
BK
14892004-02-25 Benjamin Kosnik <bkoz@redhat.com>
1490
1491 * include/bits/atomicity.h: New, forward declarations for __atomic_add
1492 and __exchange_and_add.
1493 * config/cpu/generic/atomic_word.h: New, typdef for atomic word.
1494 * config/cpu/cris/atomic_word.h: Same.
1495 * config/cpu/sparc/atomic_word.h: Same.
1496 * include/bits/ios_base.h (_Callback_list::_M_remove_reference):
1497 Qualifiy with __gnu_cxx.
1498 (_Callback_list::_M_add_reference): Same.
1499 * include/bits/locale_classes.h (locale::facet::_M_add_reference): Add.
1500 (locale::facet::_M_remove_reference): Same.
1501 (locale::_Impl::_M_add_reference): Add.
1502 (locale::_Impl::_M_remove_reference): Same.
1503 * include/bits/basic_string.h (basic_string::_Rep::_M_refcopy): Same.
1504 (basic_string::_Rep::_M_dispose): Same.
1505 * src/ios.cc (ios_base::xalloc): Same.
1506 * src/ios_init.cc (ios_base::Init::Init): Same.
1507 (ios_base::Init::~Init): Same.
1508 * src/locale.cc (locale::id::_M_id): Same.
1509 * config/cpu/i486/atomicity.h: Use __gnu_cxx namespace. Remove
00d04db6 1510 static, and inline keywords.
2c5d0ae8
BK
1511 * config/cpu/alpha/atomicity.h: Same.
1512 * config/cpu/cris/atomicity.h: Same.
1513 * config/cpu/generic/atomicity.h: Same.
1514 * config/cpu/hppa/atomicity.h: Same.
1515 * config/cpu/i386/atomicity.h: Same.
1516 * config/cpu/ia64/atomicity.h: Same.
1517 * config/cpu/m68k/atomicity.h: Same.
1518 * config/cpu/mips/atomicity.h: Same.
1519 * config/cpu/powerpc/atomicity.h: Same.
1520 * config/cpu/s390/atomicity.h: Same.
1521 * config/cpu/sparc/atomicity.h: Same.
76e9802c 1522
2c5d0ae8
BK
1523 * src/Makefile.am (host_sources): Add atomicity.cc.
1524 (atomicity.cc): New rule.
1525 * src/Makefile.in: Regenerate.
1526 * include/Makefile.am (host_headers): Remove host atomicity.h.
1527 (host_headers): Add atomic_word.h.
1528 (bits_headers): Add bits atomicity.h.
1529 Change ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
1530 * include/Makefile.in: Regenerate.
1531 * configure.host (atomic_word_dir): Add.
1532 * configure.ac: Substitute ATOMIC_WORD_SRCDIR. Change
1533 ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
1534 * configure: Regenerate.
1535 * config/linker-map.gnu: Export __exchange_and_add, and __atomic_add.
1536
1537 * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
76e9802c
ZW
1538 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
1539
cec0e70b
JW
15402004-02-25 Jonathan Wakely <redi@gcc.gnu.org>
1541
1542 * docs/html/20_util/howto.html, docs/html/20_util/allocator.html,
1543 docs/html/ext/howto.html, docs/html/ext/mt_allocator.html:
1544 Fix markup, more <link> tags.
1545
bb9f8a85
CW
15462004-02-25 Carlo Wood <carlo@alinoe.com>
1547
1548 * bits/demangle.h
1549 namespace __gnu_cxx::demangler
1550 (session<Allocator>::qualifier_list_Allocator): Add
1551 (session<Allocator>::M_qualifier_list_alloc): Add
1552 (session<Allocator>::decode_type_with_postfix):
1553 Use M_qualifier_list_alloc instead of calling operator new/delete.
1554
b79cef06
PC
15552004-02-24 Paolo Carlini <pcarlini@suse.de>
1556
1557 PR libstdc++/14252
1558 * include/bits/postypes.h (class streamoff): Add operator++(),
1559 operator++(int), operator--() and operator--(int).
1560 * testsuite/27_io/fpos/14252.cc: New.
1561
212063a8
RS
15622004-02-24 Richard Sandiford <rsandifo@redhat.com>
1563
1564 * include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds
1565 error in handling of hex constants.
1566
031e658e
PC
15672004-02-24 Paolo Carlini <pcarlini@suse.de>
1568
1569 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
1570 Prefer basic_string::append to operator+= and a temporary.
1571
6f94dea7
BK
15722004-02-23 Benjamin Kosnik <bkoz@redhat.com>
1573
1574 * libsupc++/vterminate.cc (__gnu_cxx::__verbose_terminate_handler):
1575 Only use fputs, not write.
76e9802c 1576
20d0a40e 15772004-02-23 Benjamin Kosnik <bkoz@redhat.com>
f263b26e
BK
1578
1579 * include/ext/malloc_allocator.h: Add operators ==, !=.
1580 * include/ext/new_allocator.h: Add operators ==, !=.
1581 * include/ext/mt_allocator.h (__mt_alloc::tune): New.
1582 (__mt_alloc::_S_get_options): New.
76e9802c 1583 (__mt_alloc::_S_set_options): New.
f263b26e
BK
1584 (__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key.
1585 (__mt_alloc::_S_no_of_bins): To _S_bin_size.
1586 Move functions out of line, simplify, format.
1587 * src/allocator.cc: Simplify explicit instantiations.
1588 * include/bits/allocator.h: Tweak.
76e9802c 1589
20da06ef
PC
15902004-02-22 Paolo Carlini <pcarlini@suse.de>
1591
1592 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
1593 Restructure formatting of value component, first dealing with
1594 the non-decimal digits; use reserve.
1595
15962004-02-22 Paolo Carlini <pcarlini@suse.de>
1597
1598 * include/bits/locale_facets.h (class money_get): Inherit
1599 from money_base too; tweak declaration of _M_extract, now
1600 parameterized on _Intl too.
1601 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1602 Update definition to use the cache; call reserve on __res to
1603 avoid multiple reallocations; fix parsing of sign component
1604 according to 22.2.6.1.2, p3.
1605 (money_get<>::do_get(long double&),
76e9802c 1606 money_get<>::do_get(string_type&)): Update calls of _M_extract.
20da06ef
PC
1607 * src/locale-inst.cc: Add instantiations of
1608 money_get::_M_extract<false> and money_get::_M_extract<true>.
1609 * testsuite/22_locale/money_get/get/char/14.cc: New.
1610 * testsuite/22_locale/money_get/get/wchar_t/14.cc: Ditto.
76e9802c 1611
afc3bb58
MM
16122004-02-21 Mark Mitchell <mark@codesourcery.com>
1613
1614 * libsupc++/vterminate.cc
1615 (__gnu_cxx::__verbose_terminate_handler): Guard against recursive
1616 calls to terminate.
1617 * src/demangle.cc (__cxa_demangle): Wrap in try-catch block.
1618
1619 * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
1620 not set RLIMIT_AS on HP-UX.
1621
e1efc7a0
MM
16222004-02-21 Mark Mitchell <mark@codesourcery.com>
1623
1624 * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
1625 not set RLIMIT_AS on HP-UX.
1626
fe932e50
PC
16272004-02-21 Paolo Carlini <pcarlini@suse.de>
1628
1629 * include/bits/locale_facets.h (class money_base): Add { _S_minus,
1630 _S_zero, _S_end } enum, _S_atoms.
1631 (struct __moneypunct_cache<>): Parameterize on _Intl too; add
1632 _M_grouping_size, _M_curr_symbol_size, _M_positive_sign_size,
1633 _M_negative_sign_size, _M_atoms; tweak constructor consistently.
1634 (__moneypunct_cache<>::~__moneypunct_cache): Update.
1635 (__moneypunct_cache<>::_M_cache): Fill the cache.
1636 (class moneypunct): Tweak __cache_type typedef.
1637 (class money_put): Inherit from money_base too; tweak declaration
1638 of _M_insert, now parameterized on _Intl.
1639 * include/bits/locale_facets.tcc
1640 (struct __use_cache<__moneypunct_cache<_CharT, _Intl> >): New.
1641 (money_put<>::_M_insert): Update definition to use the cache;
1642 call reserve on __res to avoid multiple reallocations.
1643 (money_put<>::do_put(long double),
1644 money_put<>::do_put(const string_type&): Update calls of _M_insert.
1645 * config/locale/generic/monetary_members.cc
1646 (moneypunct<char, true>::_M_initialize_moneypunct,
1647 moneypunct<char, false>::_M_initialize_moneypunct,
1648 moneypunct<wchar_t, true>::_M_initialize_moneypunct,
1649 moneypunct<wchar_t, false>::_M_initialize_moneypunct): Update.
1650 * config/locale/gnu/monetary_members.cc: Likewise.
1651 * config/locale/gnu/monetary_members.cc
1652 (moneypunct<wchar_t, true>::~moneypunct(),
1653 moneypunct<wchar_t, false>::~moneypunct()): Likewise.
1654 * src/globals_locale.cc: Tweak fake_money_cache_c.
1655 * src/locale-inst.cc: Add instantiations for
1656 money_put::_M_insert<false> and money_put::_M_insert<true> and
1657 __moneypunct_cache<C, false>, __moneypunct_cache<C, true>.
1658 * src/locale_facets.cc: Define money_base::_S_atoms.
1659 * src/locale_init.cc: Update placement new of
1660 __moneypunct_cache<char, false>, __moneypunct_cache<char, true>,
1661 __moneypunct_cache<wchar_t, false>, __moneypunct_cache<wchar_T, true>.
1662
1663 * config/locale/generic/numeric_members.cc: Clean up.
1664 * config/locale/gnu/numeric_members.cc: Likewise.
1665 * testsuite/22_locale/money_put/put/char/1.cc: Likewise.
1666 * testsuite/22_locale/money_put/put/char/2.cc: Likewise.
1667 * testsuite/22_locale/money_put/put/char/3.cc: Likewise.
1668 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
1669 * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
1670 * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
1671
f196bdc4
MM
16722004-02-20 Mark Mitchell <mark@codesourcery.com>
1673
1674 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Open
1675 FIFO for writing with ios_base::in|ios_base::out.
1676 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
1677 * testsuite/27_io/objects/char/7.cc: Likewise.
1678 * testsuite/27_io/objects/char/9661-1.cc: Open FIFO for writing
1679 with "r+".
1680
2df93cf3
DE
16812004-02-19 David Edelsohn <edelsohn@gnu.org>
1682
1683 * 22_locale/collate/compare/wchar_t/2.cc: Change input-charset
1684 from iso-8859-1 to ISO8859-1.
1685 * 22_locale/collate/compare/wchar_t/wrapped_env.cc: Same.
1686 * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same.
1687 * 22_locale/collate/hash/wchar_t/2.cc: Same.
1688 * 22_locale/collate/hash/wchar_t/wrapped_env.cc: Same.
1689 * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same.
1690 * 22_locale/collate/transform/wchar_t/2.cc: Same.
1691 * 22_locale/collate/transform/wchar_t/wrapped_env.cc: Same.
1692 * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: Same.
1693
2ddf25f2
PC
16942004-02-18 Paolo Carlini <pcarlini@suse.de>
1695
1696 * include/bits/locale_facets.h (money_get<>::_M_extract):
1697 New, helper for do_get.
1698 (money_put<>::_M_insert): Likewise, for do_put.
1699 * include/bits/locale_facets.tcc (money_get<>::_M_extract,
1700 money_put<>::_M_insert): Define.
1701 (money_get<>::do_get(long double&), money_get<>::do_get(
1702 string_type&), money_put::do_put(long double),
1703 money_put::do_put(const string_type&)): Use the helpers.
1704
94b8de97
PC
17052004-02-18 Paolo Carlini <pcarlini@suse.de>
1706
1707 * config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
1708 Rewrite, avoiding recursion.
1709 (__gnu_internal::xwrite): Minor tweaks.
1710
4d0bdcd6
SO
17112004-02-17 Stefan Olsson <stefan@xapa.se>
1712
1713 * include/ext/mt_allocator.h: Removed the last
1714 pointer. Deallocated blocks are now added to the front of
1715 freelists as proposed by Felix Yen. This gives roughly 10%
1716 performance boost and saves some memory.
1717 * docs/html/ext/mt_allocator.html: Change due to that deallocated
1718 blocks now are added to the front of freelists. The reason to this
1719 approach is also explained.
bb9f8a85 1720
6d4925e3
PC
17212004-02-17 Paolo Carlini <pcarlini@suse.de>
1722
1723 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
1724 num_get<>::_M_extract_int, money_get<>::do_get): Simplify
1725 grouping fidelity conditional.
1726
3e9b6cf4
PC
17272004-02-16 Paolo Carlini <pcarlini@suse.de>
1728
1729 * testsuite/27_io/basic_filebuf/overflow/char/13858.cc:
1730 Qualify exception with std::.
1731 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Ditto.
1732 * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
1733 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
1734 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
1735 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
1736
835abbf7
PC
17372004-02-16 Paolo Carlini <pcarlini@suse.de>
1738
1739 * testsuite/ext/enc_filebuf/char/13189.cc: Don't check
1740 for now that the catch block is not reached.
1741 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
1742
b7e64db2
PC
17432004-02-16 Paolo Carlini <pcarlini@suse.de>
1744
1745 * include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
1746 Fix parsing of the remaining sign characters.
1747 * 22_locale/money_get/get/char/2.cc: Tweak: now, correctly,
1748 the input is scanned 'til eof.
1749 * 22_locale/money_get/get/char/4.cc: Likewise.
1750 * 22_locale/money_get/get/wchar_t/2.cc: Likewise.
1751 * 22_locale/money_get/get/wchar_t/4.cc: Likewise.
1752 * 22_locale/money_get/get/char/8.cc: Tweak: override do_neg_format,
1753 not do_pos_format: the former is the only one that matters during
1754 input.
1755 * 22_locale/money_get/get/wchar_t/8.cc: Likewise.
1756
1757 * 22_locale/money_get/get/char/6.cc: Minor tweak.
1758 * 22_locale/money_get/get/wchar_t/6.cc: Likewise.
1759
230377dc
DA
17602004-02-15 David Asher <david.asher@cavium.com>
1761
1762 PR libstdc++/11352
1763 * include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't
1764 access __olds beyond __oldlen.
1765
45cbe93c
PC
17662004-02-14 Paolo Carlini <pcarlini@suse.de>
1767
1768 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Make
1769 sure the exception is actually thrown.
1770 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
1771 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
1772 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
1773
ac3cadf0
PC
17742004-02-14 Paolo Carlini <pcarlini@suse.de>
1775
1776 PR libstdc++/13858
1777 * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external):
1778 In case of conversion errors, throw ios_failure; simplify.
1779 * testsuite/27_io/basic_filebuf/overflow/char/13858.cc: New.
1780 * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
1781 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Tweak,
1782 previously we didn't throw in case of conversion errors, instead
1783 just returned eof().
1784 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
1785 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
1786 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
1787
1788 * include/bits/fstream.tcc (basic_filebuf<>::overflow):
1789 Trivial simplification of a conditional.
1790
2e9a1f6b
PC
17912004-02-12 Paolo Carlini <pcarlini@suse.de>
1792
1793 PR libstdc++/13731 (final part: writev)
20da06ef 1794 * config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
2e9a1f6b
PC
1795 New, a wrapper around writev() handling partial writes.
1796 (__basic_file<char>::xwrite): Move to __gnu_internal and make
1797 static.
1798 (__basic_file<char>::xsputn): Update call.
76e9802c 1799 (__basic_file<char>::xsputn_2): Likewise.
20da06ef 1800 * config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
2e9a1f6b
PC
1801 Don't declare, now static.
1802
1c86f39d
BK
18032004-02-11 Stefan Olsson <stefan@xapa.se>
1804
1805 * docs/html/ext/mt_allocator.html: New.
1806
18072004-02-11 Benjamin Kosnik <bkoz@redhat.com>
1808
1809 * docs/html/20_util/allocator.html: New file, consolidate
1810 allocator information here. Revamp.
1811 * docs/html/documentation.html: Change links.
1812 * docs/html/20_util/howto.html: Same.
1813 * docs/html/ext/howto.html: Same.
1814
98e96784
PC
18152004-02-11 Paolo Carlini <pcarlini@suse.de>
1816
1817 PR libstdc++/13731 (first part: write)
1818 * config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
1819 New, declare.
1820 * config/io/basic_file_stdio.cc (__basic_file<char>::xwrite):
1821 Define it: a wrapper around write() handling partial write.
1822 (__basic_file<char>::xsputn): Use it.
1823 (__basic_file<char>::xsputn_2): Likewise.
1824
a2af66c1
PC
18252004-02-11 Paolo Carlini <pcarlini@suse.de>
1826 Petur Runolfsson <peturr02@ru.is>
1827
1828 PR libstdc++/14078
1829 * include/std/std_istream.h (operator>>(__istream_type& (*)
1830 (__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)),
1831 operator>>(ios_base& (*)(ios_base&))): Declare inline.
1832 * include/std/std_ostream.h (operator<<(__ostream_type& (*)
1833 (__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)),
1834 operator<<(ios_base& (*) (ios_base&))): Likewise.
1835 * testsuite/performance/27_io/fmtflags_manipulators.cc: New.
1836
64bd39cc
LR
18372004-02-10 Loren J. Rittle <ljrittle@acm.org>
1838
1839 PR libstdc++/14098
1840 * config/linker-map.gnu: Add typeinfo and typeinfo name for
1841 __gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >.
1842
d318a8ba
LR
1843 PR libstdc++/14097
1844 * config/linker-map.gnu: Add typeinfo and typeinfo name for
1845 __gnu_cxx::stdio_filebuf<char, std::char_traits<char> >.
1846
a39c16dd
LR
18472004-02-09 Loren J. Rittle <ljrittle@acm.org>
1848
1849 * include/ext/pool_allocator.h: Include c++config.h.
1850
1ef00312
SO
18512004-02-09 Stefan Olsson <stefan@xapa.se>
1852
1853 * include/ext/mt_allocator.h: thread_id is unused in non threaded
1854 applications and now has a ifdef to remove it completely on
1855 compilers without thread support. Include stdlib.h due to a
1856 compiler warning on getenv().
1857
1b81e1b5
PB
18582004-02-09 Paul Brook <paul@codesourcery.com>
1859
1860 * libstdc++-v3/configure.host: Explicitly check for atomicity.h file.
1861
cf0d2c40
PC
18622004-02-09 Paolo Carlini <pcarlini@suse.de>
1863
1864 PR libstdc++/14071
1865 * src/locale_init.cc (locale::global(const locale&)): Use
1866 locale::name() in order to decide whether calling setlocale.
1867 * testsuite/22_locale/locale/global_locale_objects/14071.cc: New.
1868
1869 * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name()):
1870 Avoid computing &= unnecessarily.
1871
664fc5df
JW
18722004-02-09 James E Wilson <wilson@specifixinc.com>
1873
1874 PR libstdc++/5625
1875 * libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
1876 __builtin_extend_pointer.
1877
86fd2b51
PC
18782004-02-09 Paolo Carlini <pcarlini@suse.de>
1879
1880 PR libstdc++/14072
1881 * include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale):
1882 Don't leave dangling pointers.
1883 * testsuite/27_io/basic_ios/imbue/14072.cc: New.
1884 * testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put
1885 facet is needed in the final test.
1886
f19e9e4d
BI
18872004-02-09 Bernardo Innocenti <bernie@develer.com>
1888
1889 * crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*.
1890 * configure: Regenerate.
1891
c3862806
RH
18922004-02-08 Richard Henderson <rth@redhat.com>
1893
1894 PR libstdc++/14026
76e9802c 1895 * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust
c3862806
RH
1896 uncaughtExceptions during nested catch rethrow.
1897 * testsuite/18_support/14026.cc: New.
1898
fd95f498
PC
18992004-02-08 Paolo Carlini <pcarlini@suse.de>
1900
1901 * include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
1902 When working in place remember to set the state to sharable
1903 (otherwise, _M_mutate does it).
1904
ed6814f7
BI
19052004-02-08 Bernardo Innocenti <bernie@develer.com>
1906
1907 * include/bits/allocator.h, include/bits/basic_ios.h,
1908 include/bits/basic_ios.tcc, include/bits/basic_string.h,
1909 include/bits/basic_string.tcc, include/bits/boost_concept_check.h,
1910 include/bits/char_traits.h, include/bits/codecvt.h,
1911 include/bits/concurrence.h, include/bits/cpp_type_traits.h,
1912 include/bits/demangle.h, include/bits/deque.tcc,
1913 include/bits/fstream.tcc, include/bits/functexcept.h,
1914 include/bits/gslice.h, include/bits/gslice_array.h,
1915 include/bits/indirect_array.h, include/bits/ios_base.h,
1916 include/bits/istream.tcc, include/bits/list.tcc,
1917 include/bits/locale_classes.h, include/bits/locale_facets.h,
1918 include/bits/locale_facets.tcc, include/bits/localefwd.h,
1919 include/bits/mask_array.h, include/bits/ostream.tcc,
1920 include/bits/postypes.h, include/bits/slice_array.h,
1921 include/bits/sstream.tcc, include/bits/stl_algo.h,
1922 include/bits/stl_algobase.h, include/bits/stl_bvector.h,
1923 include/bits/stl_construct.h, include/bits/stl_deque.h,
1924 include/bits/stl_function.h, include/bits/stl_heap.h,
1925 include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h,
1926 include/bits/stl_list.h, include/bits/stl_map.h,
1927 include/bits/stl_multimap.h, include/bits/stl_multiset.h,
1928 include/bits/stl_numeric.h, include/bits/stl_pair.h,
1929 include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h,
1930 include/bits/stl_relops.h, include/bits/stl_set.h,
1931 include/bits/stl_stack.h, include/bits/stl_tempbuf.h,
1932 include/bits/stl_threads.h, include/bits/stl_tree.h,
1933 include/bits/stl_uninitialized.h, include/bits/stl_vector.h,
1934 include/bits/stream_iterator.h, include/bits/streambuf.tcc,
1935 include/bits/streambuf_iterator.h,include/bits/stringfwd.h,
1936 include/bits/type_traits.h, include/bits/valarray_after.h,
1937 include/bits/valarray_array.h, include/bits/valarray_array.tcc,
1938 include/bits/valarray_before.h, include/bits/vector.tcc: Remove
1939 trailing whitespace.
1940
eee54836
PC
19412004-02-06 Paolo Carlini <pcarlini@suse.de>
1942
1943 * include/bits/basic_string.h: Fix comment.
1944
15d72060
PC
19452004-02-06 Paolo Carlini <pcarlini@suse.de>
1946
1947 * include/bits/stl_construct.h: Wrap overlong lines, reformat
1948 according to the coding standards.
1949 * include/bits/stl_pair.h: Likewise.
1950 * include/bits/stl_raw_storage_iter.h: Likewise.
1951 * include/bits/stl_stack.h: Likewise.
1952 * include/bits/stl_uninitialized.h: Likewise.
1953 * include/bits/stream_iterator.h: Likewise.
1954 * include/bits/streambuf_iterator.h: Likewise.
1955 * include/bits/type_traits.h: Likewise.
1956
c5dd98f3
PC
19572004-02-06 Paolo Carlini <pcarlini@suse.de>
1958
1959 * testsuite/27_io/basic_filebuf/open/char/9507.cc:
1960 Adjust timings.
1961
462f4a81
LR
19622004-02-05 Loren J. Rittle <ljrittle@acm.org>
1963
1964 * scripts/check_performance: Support PCH.
1965
fbdf188d
LR
1966 * scripts/check_performance (CXX): Add -DNOTHREAD.
1967 * testsuite/performance/20_util/allocator/insert.cc: Integrate
1968 threaded tests from insert_insert.cc. Tweak iterations,
1969 remove special cases.
1970 * testsuite/performance/20_util/allocator/insert_insert.cc:
1971 Make all tests single-threaded. Tweak iterations.
1972 * testsuite/performance/20_util/allocator/map_thread.cc:
1973 Tweak iterations.
1974 * testsuite/performance/20_util/allocator/producer_consumer.cc:
1975 Likewise.
1976
0314451d
GK
19772004-02-05 Geoffrey Keating <geoffk@apple.com>
1978
1979 PR 12179
1980 * .cvsignore: New.
1981 * acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): Use 'gcc', not
1982 'gcc-lib'. Add comment about poorly-named variables.
1983 * aclocal.m4: Regenerate.
1984 * configure: Regenerate.
1985
d9010fca
PC
19862004-02-05 Paolo Carlini <pcarlini@suse.de>
1987
1988 * include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
1989 Thousands-sep are always optional; thousands-sep are not allowed
1990 after the decimal_point.
1991 * testsuite/22_locale/money_get/get/char/12.cc: New.
1992 * testsuite/22_locale/money_get/get/char/13.cc: New.
1993 * testsuite/22_locale/money_get/get/wchar_t/12.cc: New.
1994 * testsuite/22_locale/money_get/get/wchar_t/13.cc: New.
1995
1996 * testsuite/22_locale/money_get/get/char/1.cc: Clean-up.
1997 * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
1998 * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
1999 * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
2000 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
2001 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
2002 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
2003 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
2004
2005 * testsuite/22_locale/money_get/get/char/9.cc: Fix citation from
2006 the standard.
2007 * testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise.
2008
d232925f
RS
20092004-02-05 Richard Sandiford <rsandifo@redhat.com>
2010
2011 * config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T):
2012 Define.
2013 * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use
2014 it to decide whether FIONREAD should take an off_t or int argument.
2015
92ff3e43
PC
20162004-02-05 Paolo Carlini <pcarlini@suse.de>
2017
2018 * include/bits/stl_function.h: Minor formatting changes.
2019
9fe7e2b7
ZW
20202004-02-04 Zack Weinberg <zack@codesourcery.com>
2021
2022 Revert previous change to config/abi/*/baseline_symbols.txt.
2023
6a734d61
BK
20242004-02-04 Benjamin Kosnik <bkoz@redhat.com>
2025 Zack Weinberg <zack@codesourcery.com>
2026
2027 * config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode):
2028 New function.
2029 (__basic_file<char>::sys_open, __basic_file<char>::open): Use it.
2030 (__basic_file<char>::_M_open_mode): Delete.
2031 * config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode.
2032
2033 * testsuite/27_io/basic_filebuf/close/char/9964.cc
2034 * testsuite/27_io/basic_filebuf/open/char/9507.cc:
2035 Correct flags to filebuf::open calls.
2036
2037 * config/abi/alpha-freebsd5/baseline_symbols.txt
2038 * config/abi/alpha-linux-gnu/baseline_symbols.txt
2039 * config/abi/hppa-linux-gnu/baseline_symbols.txt
2040 * config/abi/i386-freebsd4/baseline_symbols.txt
2041 * config/abi/i386-freebsd5/baseline_symbols.txt
2042 * config/abi/i486-linux-gnu/baseline_symbols.txt
2043 * config/abi/ia64-linux-gnu/baseline_symbols.txt
2044 * config/abi/mips-linux-gnu/baseline_symbols.txt
2045 * config/abi/sparc-freebsd5/baseline_symbols.txt
2046 * config/abi/sparc-linux-gnu/baseline_symbols.txt
2047 * config/abi/x86_64-linux-gnu/baseline_symbols.txt:
2048 Remove entry for __basic_file<char>::_M_open_mode.
2049
f63fd68b
LR
20502004-02-04 Loren J. Rittle <ljrittle@acm.org>
2051
2052 * testsuite/performance/20_util/allocator/insert.cc (main): Tweak.
2053
de8a2f87
BK
20542004-02-04 Felix Yen <fwy@alumni.brown.edu>
2055
2056 * testsuite/performance/20_util/producer_consumer.cc: New.
2057 * testsuite/performance/20_util/allocator/insert_insert.cc: Two loops.
6a734d61 2058
de8a2f87 20592004-02-04 Benjamin Kosnik <bkoz@redhat.com>
6a734d61 2060
de8a2f87 2061 * testsuite/performance/20_util/allocator.cc: Move to..
6a734d61 2062 * testsuite/performance/20_util/allocator/insert.cc: ...here.
de8a2f87
BK
2063 * testsuite/performance/20_util/allocator_thread.cc: Move to...
2064 * testsuite/performance/20_util/allocator/insert_insert.cc: ...here.
2065 * testsuite/performance/20_util/allocator_map_thread.cc: Move to...
2066 * testsuite/performance/20_util/allocator/map_thread.cc: ...here.
6a734d61 2067
772fec9a
JW
20682004-02-04 Jonathan Wakely <redi@gcc.gnu.org>
2069
2070 * docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH.
2071 * docs/html/faq/index.txt: Regenerate.
2072
56766e0d
DM
20732004-02-04 Dhruv Matani <dhruvbird@gmx.net>
2074
2075 * include/ext/debug_allocator.h: _M_extra now stands for the
2076 number of extra objects instead of the number of extra bytes.
2077 (debug_allocator::allocate): Adjust.
2078 (debug_allocator::deallocate): Adjust.
2079
2080 * include/ext/pool_allocator.h: Fix typo.
2081
22269632
FY
20822004-02-03 Felix Yen <fwy@alumni.brown.edu>
2083 Benjamin Kosnik <bkoz@redhat.com>
6a734d61 2084
22269632
FY
2085 * testsuite/performance/20_util/allocator.cc: Add map,
2086 deque, set tests.
2087 * testsuite/performance/20_util/allocator_thread.cc: Same.
6a734d61 2088
129e9210
PC
20892004-02-03 Paolo Carlini <pcarlini@suse.de>
2090
2091 * include/bits/basic_string.h (insert(iterator)): Remove,
2092 non-standard and already scheduled for removal.
2093
83042fca
PC
20942004-02-03 Paolo Carlini <pcarlini@suse.de>
2095
2096 * include/bits/stl_iterator_base_funcs.h: Minor formatting
2097 and indentation tweaks.
2098 * include/bits/stl_iterator_base_types.h: Likewise.
2099 * include/bits/stl_list.h: Likewise.
2100 * include/bits/stl_map.h: Likewise.
2101 * include/bits/stl_tempbuf.h: Likewise.
2102
06a81b60
JQ
21032004-02-02 Jerry Quinn <jlquinn@optonline.net>
2104
2105 * include/bits/gslice.h, include/bits/gslice_array.h,
2106 include/bits/indirect_array.h, include/bits/mask_array.h,
2107 include/bits/slice_array.h, include/bits/stl_numeric.h,
2108 include/std/std_valarray.h: Update copyright years.
2109
7fb397a4
JQ
21102004-02-02 Jerry Quinn <jlquinn@optonline.net>
2111
2112 * include/bits/gslice.h (gslice): Document.
2113 * include/bits/gslice_array.h (gslice_array): Document.
2114 * include/bits/indirect_array (indirect_array): Document.
2115 * include/bits/mask_array (mask_array): Document.
2116 * include/bits/slice_array.h (slice,slice_array): Document.
2117 * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
2118 adjacent_difference): Document
2119 * include/std/std_valarray.h (valarray): Document.
2120
7f7fb4ef
BK
21212004-02-02 Benjamin Kosnik <bkoz@redhat.com>
2122
6a734d61
BK
2123 * docs/html/19_diagnostics/howto.html: Move verbose terminate
2124 documentation...
2125 * docs/html/18_support/howto.html: Here.
2126 * docs/html/documentation.html: Add reference here.
2127
9924f721
PC
21282004-02-02 Paolo Carlini <pcarlini@suse.de>
2129
2130 * config/locale/gnu/c++locale_internal.h: Remove prototypes
2131 of no longer used GLIBC thread locale functions.
2132
2ba43229 21332004-02-02 Eric Christopher <echristo@redhat.com>
6a734d61 2134 Zack Weinberg <zack@codesourcery.com>
16dd5cfe
EC
2135
2136 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
6a734d61
BK
2137 -finput-charset.
2138 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
2139 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
16dd5cfe 2140 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
6a734d61
BK
2141 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
2142 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
2143 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
2144 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
2145 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
16dd5cfe
EC
2146 Ditto.
2147
7c920151
PC
21482004-02-02 Paolo Carlini <pcarlini@suse.de>
2149
2150 * include/bits/stl_function.h: Additional minor tweaks.
2151 * include/bits/stl_multiset.h: Likewise.
2152
2153 * include/bits/stl_queue.h: Minor tweaks.
2154
dcec0389
PC
21552004-02-02 Paolo Carlini <pcarlini@suse.de>
2156
2157 PR libstdc++/13976 (continued)
2158 * include/ext/malloc_allocator.h (malloc_allocator::deallocate):
2159 Make the second parameter unnamed, to void unused parameter
2160 warnings.
2161 * include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
2162
90f8b692
PC
21632004-02-02 Paolo Carlini <pcarlini@suse.de>
2164
2165 PR libstdc++/13976
2166 * include/ext/malloc_allocator.h (malloc_allocator::allocate):
2167 Make the second parameter unnamed, to void unused parameter
2168 warnings.
2169 * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
2170 * include/ext/new_allocator.h (new_allocator::allocate): Ditto.
2171
737ab798
PC
21722004-02-01 Paolo Carlini <pcarlini@suse.de>
2173
2174 * include/bits/stl_algo.h: Additional minor tweaks.
2175 * include/bits/stl_map.h: Likewise.
2176 * include/bits/stl_multimap.h: Likewise.
2177 * include/bits/stl_multiset.h: Likewise.
2178 * include/bits/stl_set.h: Likewise.
2179 * include/bits/stl_tree.h: Likewise.
2180
64ebadac
PC
21812004-02-01 Paolo Carlini <pcarlini@suse.de>
2182
2183 * include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
2184 Remove, unused.
2185
afd4cbbb
PC
21862004-02-01 Paolo Carlini <pcarlini@suse.de>
2187
2188 * include/bits/stl_function.h: Additional minor tweaks.
2189
f6592a9e
PC
21902004-02-01 Paolo Carlini <pcarlini@suse.de>
2191
2192 * include/bits/deque.tcc: Wrap overlong lines, constify
2193 a few variables, reformat according to the coding standards.
2194 * include/bits/list.tcc: Likewise.
2195 * include/bits/stl_deque.h: Likewise.
2196 * include/bits/stl_function.h: Likewise.
2197 * include/bits/stl_iterator.h: Likewise.
2198 * include/bits/stl_iterator_base_funcs.h: Likewise.
2199 * include/bits/stl_iterator_base_types.h: Likewise.
2200 * include/bits/stl_list.h: Likewise.
2201 * include/bits/stl_map.h: Likewise.
2202 * include/bits/stl_multimap.h: Likewise.
2203 * include/bits/stl_multiset.h: Likewise.
2204 * include/bits/stl_relops.h: Likewise.
2205 * include/bits/stl_set.h: Likewise.
2206
62e67651
PC
22072004-02-01 Paolo Carlini <pcarlini@suse.de>
2208
2209 * include/bits/stl_bvector.h: Wrap overlong lines, constify
2210 a few variables, reformat according to the coding standards.
2211 * include/bits/stl_tree.h: Likewise.
2212
8f7ca398
PC
22132004-01-31 Paolo Carlini <pcarlini@suse.de>
2214
2215 * include/bits/stl_algo.h: Minor additional reformat, add
2216 copyright year.
2217 * include/bits/stl_algobase.h: Add copyright year.
2218
ffa67767
PC
22192004-01-31 Paolo Carlini <pcarlini@suse.de>
2220
2221 * include/bits/stl_algo.h: Wrap overlong lines, constify
2222 a few variables, reformat according to the coding standards.
2223 * include/bits/stl_algobase.h: Likewise.
2224 * include/bits/stl_heap.h: Likewise.
2225
8de63ee0
PC
22262004-01-31 Paolo Carlini <pcarlini@suse.de>
2227
2228 * include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
2229
2230 * include/bits/basic_string.h: Fix two comments.
2231
af3fb3d6
PB
22322004-01-31 Per Bothner <per@bothner.com>
2233
2234 * include/ext/mt_allocator.h
2235 (__mt_alloc::_S_thread_freelist_mutex): Guard with
2236 __GTHREAD_MUTEX_INIT.
2237
24f33069
PC
22382004-01-31 Paolo Carlini <pcarlini@suse.de>
2239
2240 * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
2241
7c960b3d
PC
22422004-01-30 Paolo Carlini <pcarlini@suse.de>
2243
2244 * testsuite/21_strings/basic_string/cons/char/6.cc: New.
2245 * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
2246 * testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
16dd5cfe 2247
7b1d1edf
FY
22482004-01-30 Felix Yen <fwy@alumni.brown.edu>
2249
2250 * testsuite/performance/20_util/allocator_thread.cc (do_loop):
2251 Don't use clear, but instead assign. Use insert.
2252
c9732ce7
BK
22532004-01-30 Benjamin Kosnik <bkoz@redhat.com>
2254
2255 * src/demangle.cc: Add instantiations.
2256 * src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
2257 * src/Makefile.in: Regenerate.
16dd5cfe 2258
25d24447
DE
22592004-01-30 David Edelsohn <edelsohn@gnu.org>
2260
2261 * src/allocator.cc: Protect _S_get_thread_id() and
2262 _S_thread_key_destr() with #ifdef __GTHREADS.
2263
33e95e9d
PC
22642004-01-30 Paolo Carlini <pcarlini@suse.de>
2265
2266 Reshuffle performance testsuite.
2267 * testsuite/performance/allocator.cc, allocator_map_thread.cc,
2268 allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
2269 cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
2270 fstream_seek_write.cc, ifstream_extract_float.cc,
2271 ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
2272 list_create_fill_sort.cc, map_create_fill.cc,
2273 narrow_widen_char.cc, narrow_widen_wchar_t.cc,
2274 ofstream_insert_float.cc, ofstream_insert_int.cc,
2275 string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
2276 wchar_t_out.cc: Split into...
2277 * testsuite/performance/20_util/allocator.cc: New.
2278 * testsuite/performance/20_util/allocator_map_thread.cc: New.
2279 * testsuite/performance/20_util/allocator_thread.cc: New.
2280 * testsuite/performance/21_strings/string_append: New.
2281 * testsuite/performance/22_locale/is_wchar_t.cc: New.
2282 * testsuite/performance/22_locale/narrow_widen_char.cc: New.
2283 * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
2284 * testsuite/performance/22_locale/wchar_t_in.cc: New.
2285 * testsuite/performance/22_locale/wchar_t_length.cc: New.
2286 * testsuite/performance/22_locale/wchar_t_out.cc: New.
2287 * testsuite/performance/23_containers/container_benchmark.cc: New.
2288 * testsuite/performance/23_containers/list_create_fill_sort.cc: New.
2289 * testsuite/performance/23_containers/map_create_fill.cc: New.
2290 * testsuite/performance/26_numerics/complex_norm.cc: New.
2291 * testsuite/performance/27_io/cout_insert_int.cc: New.
2292 * testsuite/performance/27_io/filebuf_copy.cc: New.
2293 * testsuite/performance/27_io/filebuf_sputc.cc: New.
2294 * testsuite/performance/27_io/fstream_seek_write.cc: New.
2295 * testsuite/performance/27_io/ifstream_extract_float.cc: New.
2296 * testsuite/performance/27_io/ifstream_extract_int.cc: New.
2297 * testsuite/performance/27_io/ifstream_getline.cc: New.
2298 * testsuite/performance/27_io/ofstream_insert_float.cc: New.
2299 * testsuite/performance/27_io/ofstream_insert_int.cc: New.
2300
d1615643
PC
23012004-01-30 Paolo Carlini <pcarlini@suse.de>
2302
2303 * include/bits/basic_string.tcc (_Rep::_S_create):
2304 Never allocate a string bigger than max_size(); always keep
2305 __capacity and __size in sync to avoid memory leaks at
2306 deallocation time.
2307
690495b0
PC
23082004-01-30 Paolo Carlini <pcarlini@suse.de>
2309
2310 * include/bits/basic_string.tcc (_S_construct(_InIterator,
2311 _InIterator, const _Alloc&, input_iterator_tag)): Simplify
2312 the double loop, streamline.
2313
2314 * include/bits/basic_string.tcc: Very minor tweaks.
2315
f64f4406
LR
23162004-01-30 Loren J. Rittle <ljrittle@acm.org>
2317
2318 * scripts/check_performance: Only compile with $THREAD_FLAG
2319 when test is marked to require it. Allow multiple
2320 compilations/executions of marked tests.
2321 * testsuite/testsuite_performance.h (report_performance):
2322 Report dynamic thread support status.
2323 (report_header): Likewise.
2324 * testsuite/performance/allocator.cc: Stabilize iteration
2325 count. Support more allocators. Mark each allocator test to
2326 run and report independently.
2327 * testsuite/performance/allocator_map_thread.cc: Likewise.
2328 * testsuite/performance/allocator_thread.cc: Likewise.
2329
917a9fd4
SW
23302004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
2331
2332 * config/local/generic/c_locale.h: Change ::malloc() to new char[].
bb9f8a85
CW
2333 * config/local/gnu/c_locale.h: Change ::malloc() to new char[].
2334 * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
917a9fd4
SW
2335 std::get_temporary_buffer() instead of duplicating its code.
2336 Update to C++STYLE conventions.
bb9f8a85 2337 * include/std/std_memory.h (get_temporary_buffer): Use ::operator
917a9fd4
SW
2338 new() instead of std::malloc().
2339 (return_temporary_buffer): Use ::operator delete() instead of
2340 std::free().
2341
6efc84f4
BK
23422004-01-29 Benjamin Kosnik <bkoz@redhat.com>
2343
2344 * include/bits/allocator.h: Temporary switch to new_allocator as
2345 the default to unjam bootstraps.
16dd5cfe 2346
ba9d552e
BK
23472004-01-28 Benjamin Kosnik <bkoz@redhat.com>
2348
2349 * include/Makefile.am (bits_headers): Remove allocator_traits.h.
2350 * include/Makefile.in: Regenerate.
2351 * include/bits/allocator_traits.h: Remove.
2352 * include/bits/allocator.h: Remove allocator_traits.h include, and
2353 relevant comments.
2354 (allocator): Empty base class, inherit from the underlying allocator.
2355 * src/allocator-inst.cc: Move __pool_alloc instantiation to...
2356 * src/allocator.cc: ...here. New. For the underlying allocators.
2357 Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
2358 * config/linker-map.gnu: Remove __pool_alloc bits.
2359 * src/Makefile.am (sources): Add allocator.cc.
2360 * src/Makefile.in: Regenerate.
2361 * testsuite/20_util/allocator/1.cc: Split second test into...
16dd5cfe 2362 * testsuite/20_util/allocator/8230.cc: ...this.
ba9d552e
BK
2363 * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
2364 typedef to use std::allocatore. Format.
2365 * include/ext/pool_allocator.h: Remove allocator_traits.h include,
2366 _Alloc_traits.
2367 * include/ext/mt_allocator.h (__gnu_cxx): Qualify
2368 __throw_bad_alloc calls. Don't include <memory>.
2369 * include/ext/malloc_allocator.h: Remove <memory> include.
2370 * include/ext/new_allocator.h (new_allocator): Same.
2371 * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
2372 declaration. Switch __alloc to _Alloc.
2373 * include/ext/hashtable.h: Remove __alloc.
2374 * include/backward/alloc.h: Only inject allocator, not
2375 implementation details.
2376
2377 * include/ext/mt_allocator.h: Replace free with delete.
16dd5cfe 2378
ff4cf05b
BK
23792004-01-28 Benjamin Kosnik <bkoz@redhat.com>
2380
2381 * src/globals_io.cc: Change to __gnu_internal namespace.
2382 * src/globals_locale.cc: Same.
2383 * src/locale_init.cc: Same.
2384 * src/ios_init.cc: Same.
16dd5cfe 2385
f15f99a1
SO
23862004-01-28 Stefan Olsson <stefan@snon.net>
2387
8de63ee0 2388 * include/ext/mt_allocator.h: Replaced all malloc() calls with
f15f99a1
SO
2389 operator new(). Added support for the env variable
2390 GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
2391 one in allocate() as well). Fix typos.
2392
234e0d31
PC
23932004-01-28 Paolo Carlini <pcarlini@suse.de>
2394
2395 * include/bits/basic_string.h (_S_create(size_t,
2396 const _Alloc&): Change signature to take two size_type
2397 arguments.
2398 * include/bits/basic_string.tcc (_S_construct(_InIterator,
2399 _InIterator, const _Alloc&, input_iterator_tag)): Update
2400 call, tweak a bit.
2401 (_S_construct(_InIterator, _InIterator, const _Alloc&,
2402 forward_iterator_tag)): Likewise.
2403 (_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
2404 (_M_mutate(size_type, size_type, size_type)): Don't
2405 implement the exponential growth policy, demand it to
2406 _S_create, update call and simplify.
2407 (_M_clone(const _Alloc&, size_type)): Likewise.
2408 (_S_create(size_type, size_type, const _Alloc&)): Implement
2409 the growth policy, simplify otherwise.
2410
2411 * include/bits/basic_string.h (_Rep::operator[]): Tweak
2412 signature to take a size_type, consistently with the other
2413 members.
16dd5cfe 2414
62b21ea0
BK
24152004-01-27 Benjamin Kosnik <bkoz@redhat.com>
2416
2417 * testsuite/27_io/ios_base/storage/11584.cc: Correct new and
2418 delete declarations, add include and test variable.
2419
0b563420
JQ
24202003-01-27 Jerry Quinn <jlquinn@optonline.net>
2421
2422 * include/bits/codecvt.h, include/bits/locale_facets.h,
2423 include/bits/postypes.h, include/bits/stl_bvector.h,
2424 include/bits/stl_multiset.h, include/bits/stl_set.h,
2425 include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
2426 include/std/std_complex.h: Document.
2427
2a837cf8
JQ
24282004-01-27 Jerry Quinn <jlquinn@optonline.net>
2429
2430 PR libstdc++/11584
2431 * include/bits/ios_base.h (ios_base::_M_grow_words): Add
6a734d61 2432 iword/pword selector.
2a837cf8
JQ
2433 (ios_base::iword, ios_base::pword): Use it.
2434 * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero
6a734d61 2435 iword or pword member on alloc failure.
2a837cf8
JQ
2436 * testsuite/27_io/ios_base/storage/11584.cc: New test.
2437
6e198ee0
UW
24382004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
2439 PJ Darcy <darcypj@us.ibm.com>
2440
2441 * configure.host: Add support for *-tpf.
2442 * crossconfig.m4: Likewise.
2443 * configure: Regenerate.
2444 * config/os/tpf: New directory.
2445 * config/os/tpf/os_defines.h: New file.
2446 * config/os/tpf/ctype_base.h: Likewise.
2447 * config/os/tpf/ctype_inline.h: Likewise.
2448 * config/os/tpf/ctype_noninline.h: Likewise.
2449
51b6facb
PC
24502004-01-27 Paolo Carlini <pcarlini@suse.de>
2451
2452 PR libstdc++/13884
2453 * include/bits/sstream.tcc: Guard use of extern template.
16dd5cfe 2454
a3af79ea
PC
24552004-01-27 Paolo Carlini <pcarlini@suse.de>
2456
2457 * include/bits/basic_string.tcc
2458 (basic_string(const basic_string&, size_type, size_type),
2459 basic_string(const basic_string&, size_type, size_type,
2460 const _Alloc&)): Avoid unnecessarily constructing iterators.
2461
ba9119ec
PC
24622004-01-26 Paolo Carlini <pcarlini@suse.de>
2463
2464 * config/locale/generic/c_locale.cc: Fix throw messages
2465 to use the __N marker.
2466 * config/locale/gnu/c_locale.cc: Likewise.
2467 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
2468 Likewise.
2469 * docs/html/17_intro/C++STYLE: Likewise.
2470 * include/bits/basic_ios.tcc: Likewise.
2471 * include/bits/fstream.tcc: Likewise.
2472 * include/bits/vector.tcc: Likewise.
2473 * include/ext/ropeimpl.h: Likewise.
2474 * include/std/std_bitset.h: Likewise.
2475 * src/ios.cc: Likewise.
2476 * src/locale.cc: Likewise.
2477 * src/localename.cc: Likewise.
2478
0e50667c
PC
24792004-01-26 Paolo Carlini <pcarlini@suse.de>
2480
2481 * include/bits/basic_string.h (_M_replace_aux): Use the
2482 __N marker in throw message.
2483 * include/bits/basic_string.tcc (assign(const _CharT*,
2484 size_type), insert(size_type, const _CharT*, size_type),
2485 replace(size_type, size_type, const _CharT*, size_type),
2486 reserve, _Rep::_S_create, resize, _M_replace_dispatch):
2487 Likewise.
2488
2489 * include/bits/basic_string.h, include/bits/basic_string.tcc:
2490 Fold overlong lines, minor formatting changes.
2491
4d39d873
PC
24922004-01-26 Paolo Carlini <pcarlini@suse.de>
2493
2494 * include/bits/basic_string.h (replace(iterator, iterator,
2495 const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
2496 (replace(iterator, iterator, const _CharT*)): Ditto.
2497 (replace(iterator, iterator, const _CharT*, size_type)):
2498 Add missing _GLIBCXX_DEBUG_PEDASSERT.
2499
2cb612d1
PC
25002004-01-26 Paolo Carlini <pcarlini@suse.de>
2501
2502 * include/bits/basic_string.tcc (replace(size_type,
2503 size_type, const _CharT*, size_type)): Implement optimized
2504 in-place algorithm for non-overlapping ranges.
2505 * testsuite/21_strings/basic_string/replace/char/6.cc: New.
2506 * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
2507
2508 * include/bits/basic_string.tcc (insert(size_type,
2509 const _CharT*, size_type)): Tweak slightly.
2510
f942e78d
AS
25112004-01-26 Andreas Schwab <schwab@suse.de>
2512
2513 * config/locale/gnu/monetary_members.cc: Restore locale before
2514 rethrowing exception.
2515
91eab378
PC
25162004-01-25 Paolo Carlini <pcarlini@suse.de>
2517
2518 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
2519 Define inline here.
2520 * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
2521 Move inline.
2522
2523 * include/bits/basic_string.tcc: Very minor tweaks.
2524
9c519c93
PC
25252004-01-25 Paolo Carlini <pcarlini@suse.de>
2526
2527 * testsuite/performance/string_append.cc: Increase number
2528 of iterations.
2529
30f315cd
PC
25302004-01-25 Paolo Carlini <pcarlini@suse.de>
2531
2532 * include/bits/basic_string.h (erase(size_type, size_type),
2533 erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
2534 instead, thus avoiding redundant check for length_error.
2535
2536 * include/bits/basic_string.h: Tweak some comments.
2537
bb9909b0
PC
25382004-01-24 Paolo Carlini <pcarlini@suse.de>
2539
2540 * include/bits/basic_string.tcc (operator+(const _CharT*,
2541 const basic_string&)): No need to go through the append
2542 taking two iterators.
2543
04cc8aef
PC
25442004-01-24 Paolo Carlini <pcarlini@suse.de>
2545
2546 * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
2547 Revert last change to use std::min: machine language is worse.
2548 (find_last_of(const _CharT*, size_type, size_type)): Ditto.
2549 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
2550 (find_last_not_of(_CharT, size_type)): Ditto.
2551
2552 * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
2553 size_type)): Discard the value returned by _M_check.
2554 (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
2555 (append(const basic_string&, size_type, size_type)): Ditto.
2556 (copy(_CharT*, size_type, size_type)): Ditto.
2557 (compare(size_type, size_type, const basic_string&)): Ditto.
2558 (compare(size_type, size_type, const basic_string&,
2559 size_type, size_type)): Ditto.
2560 (compare(size_type, size_type, const _CharT*)): Ditto.
2561 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
2562
8865bf80
PC
25632004-01-24 Paolo Carlini <pcarlini@suse.de>
2564
2565 * include/bits/basic_string.h (insert(size_type,
2566 const basic_string&, size_type, size_type)): Define inline here.
2567 * include/bits/basic_string.tcc (insert(size_type,
2568 const basic_string&, size_type, size_type)): Move inline.
2569
fefe561e
PC
25702004-01-24 Paolo Carlini <pcarlini@suse.de>
2571
2572 * include/bits/basic_string.h (assign(const basic_string&,
2573 size_type, size_type)): Define inline here.
2574 (replace(size_type, size_type, const basic_string&,
2575 size_type, size_type)): Ditto.
2576 (_M_replace_dispatch(iterator, iterator, _InputIterator,
2577 _InputIterator, __false_type)): Only declare.
2578 (_M_replace(iterator, iterator, _InputIterator,
2579 _InputIterator)): Remove.
2580 * include/bits/basic_string.tcc (assign(const basic_string&,
2581 size_type, size_type)): Move inline.
2582 (replace(size_type, size_type, const basic_string&,
2583 size_type, size_type)): Ditto.
2584 (_M_replace_dispatch(iterator, iterator, _InputIterator,
2585 _InputIterator, __false_type)): Define, now does also what
2586 _M_replace did before.
2587 * src/string-inst.cc (_M_replace): Don't instantiate.
2588
2589 * include/bits/basic_string.tcc (find(const _CharT*,
2590 size_type, size_type)): Tidy.
2591 (rfind(_CharT, size_type)): Ditto.
2592 (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
2593 (find_first_not_of(_CharT, size_type)): Ditto.
2594 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
2595 (find_last_not_of(_CharT, size_type)): Ditto.
2596
72afd981
PC
25972004-01-23 Paolo Carlini <pcarlini@suse.de>
2598
2599 PR libstdc++/13838
2600 * include/debug/bitset (operator|=): Fix typo.
2601 * testsuite/23_containers/bitset/operations/13838.cc: New.
2602
251804e6
PC
26032004-01-23 Paolo Carlini <pcarlini@suse.de>
2604
2605 * include/bits/basic_string.tcc (insert(size_type,
2606 const _CharT*, size_type __n)): Fix length_error check.
2607 (replace(size_type, size_type, const _CharT*, size_type):
2608 Ditto; call _M_replace_safe.
2609 (_M_replace_aux(size_type, size_type, size_type, _CharT):
2610 Fix length_error check.
2611 (_M_replace(iterator, iterator, _InputIterator,
2612 _InputIterator)): Ditto, tweak.
2613 (_M_replace_safe(size_type, size_type, const _CharT*,
2614 size_type)): Remove length_error check.
2615
2616 * include/bits/basic_string.tcc (append(const basic_string&),
2617 append(const basic_string&, size_type, size_type)): Tweak
2618 comment.
2619
2620 * include/bits/basic_string.tcc (copy(_CharT*, size_type,
2621 size_type)): If __n == 0 don't call traits::copy.
2622
3cfb44c2
SO
26232004-01-23 Stefan Olsson <stefan@snon.net>
2624
2625 * include/ext/mt_allocator.h: Reduce lock contention.
2626
22352844
PC
26272004-01-23 Paolo Carlini <pcarlini@suse.de>
2628
2629 PR libstdc++/13831
2630 * include/bits/fstream.tcc (underflow): Remove unused
2631 variable.
2632 * include/bits/streambuf_iterator.h (equal): Ditto.
2633 * include/bits/locale_facets.h (_M_convert_from_char):
2634 Ditto.
2635
129057c1
KG
26362004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2637
2638 PR c/13814
2639 * config/linker-map.gnu (nan): Delete.
2640 * libmath/mathconf.h (NAN, nan): Delete.
2641 * linkage.m4 (nan): Don't check for it.
2642 * libmath/nan.c: Delete file.
2643
2644 * config.h.in, configure: Regenerate.
2645
0e707673
PC
26462004-01-23 Paolo Carlini <pcarlini@suse.de>
2647
2648 * include/bits/basic_string.h (push_back(_CharT)):
2649 Call _M_replace_aux.
2650 (insert(size_type, const basic_string&)): Trivial tweak.
2651 (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
2652 (insert(iterator, _CharT)): Ditto.
2653 (erase(size_type, size_type)): Ditto.
2654 (erase(iterator)): Ditto.
2655 (erase(iterator, iterator)): Ditto.
2656 (replace(size_type, size_type, size_type, _CharT)): Ditto.
2657
402b0954
LR
26582004-01-23 Loren J. Rittle <ljrittle@acm.org>
2659
2660 libstdc++/13823
2661 * testsuite/performance/allocator_map_thread.cc: New test.
2662
ba46e66a
PC
26632004-01-22 Paolo Carlini <pcarlini@suse.de>
2664
2665 * include/bits/locale_facets.tcc
2666 (money_put::do_put(..., long double)): Use the basic_string
2667 constructor for char arrays, not that for C-strings, to pass
2668 __digits to do_put(..., const string_type&): __ws isn't
2669 null-terminated.
2670
7bb9b33b
PC
26712004-01-22 Paolo Carlini <pcarlini@suse.de>
2672
2673 * include/bits/basic_string.h (_M_replace_safe): Change
2674 signatures to take size_types and const _CharT*.
2675 (_M_replace_aux): Likewise, takes size_types instead of
2676 iterators.
2677 (append(size_type, _CharT)): Update call.
2678 (assign(size_type, _CharT)): Ditto.
2679 (replace(iterator, iterator, size_type, _CharT)): Ditto.
2680 (_M_replace_dispatch(iterator, iterator, _Integer,
2681 _Integer, __true_type)): Ditto.
2682 * include/bits/basic_string.tcc (assign(const _CharT*,
2683 size_type)): Ditto.
2684 (insert(size_type, const _CharT*, size_type)): Ditto.
2685 (replace(size_type, size_type, const _CharT*,
2686 size_type)): Ditto.
2687 (_M_replace(iterator, iterator, _InputIterator,
2688 _InputIterator)): Ditto.
2689 (append(const basic_string&)): Ditto.
2690 (append(const basic_string&, size_type, size_type): Ditto.
2691 (append(const _CharT*, size_type): Ditto.
2692 (_M_replace_safe, _M_replace_safe): Change definitions
2693 accordingly, simplify.
2694 * string-inst.cc (_M_replace_safe): Don't instantiate.
2695
3e7782b2
PC
26962004-01-21 Paolo Carlini <pcarlini@suse.de>
2697
2698 * include/bits/basic_string.tcc (append(const basic_string&)):
2699 Revert previous change.
2700 (append(const basic_string&, size_type, size_type)): Revert
2701 previous change, use _M_check and _M_limit.
2702
e03a6fb7
PC
27032004-01-21 Paolo Carlini <pcarlini@suse.de>
2704
2705 * include/bits/basic_string.h (_M_check): Change to return
2706 a checked __pos and take an additional const char* argument.
2707 (_M_fold): Rename to _M_limit, change to return a size_type,
2708 corresponding to the __off limited to the actual length.
2709 (insert(size_type, size_type, _CharT)): Update call, call
2710 replace.
2711 (insert(iterator, _CharT)): Call replace(iterator, iterator,
2712 size_type, _CharT) instead.
2713 (erase(size_type, size_type)): Update calls.
2714 (replace(size_type, size_type, size_type, _CharT)): Ditto.
2715 (substr(size_type, size_type)): Use _M_check.
2716 * include/bits/basic_string.tcc (basic_string(const basic_string&,
2717 size_type, size_type)): Update calls.
2718 (basic_string(const basic_string&, size_type, size_type,
2719 const _Alloc&)): Ditto.
2720 (assign(const basic_string&, size_type, size_type)): Use the
2721 new _M_check and _M_limit.
2722 (insert(size_type, const basic_string&, size_type, size_type):
2723 Ditto.
2724 (insert(size_type, const _CharT*, size_type)): Ditto.
2725 (replace(size_type, size_type, const _CharT*, size_type): Ditto.
2726 (replace(size_type, size_type, const basic_string&,
2727 size_type, size_type)): Ditto.
2728 (append(const basic_string&)): Ditto.
2729 (append(const basic_string&, size_type, size_type)): Ditto.
2730 (copy(_CharT*, size_type, size_type)): Ditto.
2731 (compare(size_type, size_type, const basic_string&)): Ditto.
2732 (compare(size_type, size_type, const basic_string&,size_type,
2733 size_type)): Ditto.
2734 (compare(size_type, size_type, const _CharT*)): Ditto.
2735 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
2736
cec73eb5
SO
27372004-01-19 Stefan Olsson <stefan@snon.net>
2738
2739 * include/ext/mt_allocator.h: If a thread, when it dies, still has
2740 memory on it's freelist this memory is not returned to global
2741 list. Simplification of deallocate so that memory is always
2742 returned to the calling thread id's freelist instead of to
2743 global. Fix typos. Add volatile where appropriate.
2744
87d11ccc
LR
27452004-01-19 Loren J. Rittle <ljrittle@acm.org>
2746
2747 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
2748 * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
2749 use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
2750
f18be892
PC
27512004-01-19 Paolo Carlini <pcarlini@suse.de>
2752
2753 * src/debug.cc: Make sure all the names are prefixed with
2754 double (or single) underscore.
2755
33d4e9b2
PC
27562004-01-19 Paolo Carlini <pcarlini@suse.de>
2757
2758 * src/debug.cc: Trivial formatting change.
2759
954b12d2
PC
27602004-01-19 Paolo Carlini <pcarlini@suse.de>
2761
2762 * include/bits/basic_string.tcc (_S_construct(size_type,
2763 _CharT, const _Alloc&)): Remove redundant try/catch.
2764 (_M_mutate(size_type, size_type, size_type)): Ditto.
2765 (_M_clone(const _Alloc&, size_type)): Ditto.
16dd5cfe 2766
acbab5bf
PC
27672004-01-18 Paolo Carlini <pcarlini@suse.de>
2768
2769 * include/bits/basic_string.h (c_str()): Simplify, due to
2770 21.3.4 the internal representation is always kept null-terminated.
2771 * include/bits/basic_string.tcc (_M_clone): Null-terminate.
2772 * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
2773 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
2774 Ditto.
2775
9c96a689
PC
27762004-01-18 Paolo Carlini <pcarlini@suse.de>
2777
2778 * include/bits/basic_string.h (append(size_type, _CharT)):
2779 Moved inline, just call _M_replace_aux, no source iterators at
2780 risk of being clobbered.
2781 (assign(size_type, _CharT)): Call directly _M_replace_aux.
2782 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
2783 input_iterator_tag)): Remove fifth unused argument.
2784 (_M_replace_dispatch(iterator, iterator, _InputIterator,
2785 _InputIterator, __false_type)): Update call.
2786 * include/bits/basic_string.tcc (replace(size_type, size_type,
2787 const _CharT*, size_type)): Update call.
2788 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
2789 throw string literal.
2790 (_M_replace_safe(iterator, iterator, _ForwardIterator,
2791 _ForwardIterator)): Likewise.
2792 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
2793 input_iterator_tag)): Remove fifth unused argument.
2794 (append(size_type __n, _CharT __c)): Move inline.
2795 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
2796 const C*, const C*, input_iterator_tag)): Remove fifth unused
2797 argument.
2798
d517f626
BK
27992004-01-16 Benjamin Kosnik <bkoz@redhat.com>
2800
2801 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
16dd5cfe 2802 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
d517f626 2803
701b701b
DS
28042004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
2805
2806 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
2807 mkfifo for mingw32.
2808
2913770f
SO
28092004-01-15 Stefan Olsson <stefan@snon.net>
2810
2811 * include/ext/mt_allocator.h: Reuse thread id's as soon as
2812 possible by changing the behaviour of thread_freelist to do
2813 push_front when threads die instead of push_back.
2814
47f62b27
PC
28152004-01-14 Paolo Carlini <pcarlini@suse.de>
2816
2817 * include/bits/locale_facets.h (struct __numpunct_cache):
2818 Add member _M_grouping_size, caching the length of _M_grouping.
2819 (__numpunct_cache<>::_M_cache): Assign the latter.
2820 (__verify_grouping): Move declaration...
2821 * include/bits/locale_facets.tcc (__verify_grouping):
2822 ... here, change signature to take a const char* and a size_t
2823 for the grouping; not a template anymore.
2824 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
16dd5cfe 2825 Likewise change signature and tweak consistently.
47f62b27
PC
2826 (num_get::_M_extract_float, num_get::_M_extract_int,
2827 num_put::_M_insert_int, num_put::_M_insert_float,
2828 money_get::do_get(string_type&), money_get::do_put(string_type)):
16dd5cfe 2829 Update callers.
47f62b27 2830 * config/locale/generic/numeric_members.cc
16dd5cfe 2831 (numpunct<>::_M_initialize_numpunct): Assign the new member.
47f62b27 2832 * config/locale/gnu/numeric_members.cc
16dd5cfe 2833 (numpunct<>::_M_initialize_numpunct): Likewise.
47f62b27
PC
2834 * src/locale-inst.cc (__add_grouping): Tweak signature.
2835 (__verify_grouping): Don't instantiate, not a template anymore.
2836
2837 * include/bits/locale_facets.h: Rename _M_truename_len ->
2838 _M_truename_size, _M_falsename_len -> _M_falsename_size.
2839 * include/bits/locale_facets.tcc: Likewise.
2840 * config/locale/generic/numeric_members.cc: Likewise.
2841 * config/locale/gnu/numeric_members.cc: Likewise.
2842
41f24725
SO
28432004-01-14 Stefan Olsson <stefan@snon.net>
2844
2845 * include/ext/mt_allocator.h: Fixups.
2846 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
2847 * testsuite/performance/allocator_thread.cc: Same.
16dd5cfe 2848
070ce57b
BK
28492004-01-13 Benjamin Kosnik <bkoz@redhat.com>
2850
2851 * testsuite/performance/ifstream_extract_float.cc: Add higher
2852 precision tests.
2853 * testsuite/performance/ofstream_insert_float.cc: Same.
16dd5cfe 2854
c9513590
PC
28552004-01-13 Paolo Carlini <pcarlini@suse.de>
2856
2857 * src/locale-misc-inst.cc (__convert_from_v(long),
2858 __convert_from_v(unsigned long), __convert_from_v(long long),
2859 __convert_from_v(unsigned long long)): Remove, unused.
2860
60af005f
BK
28612004-01-13 Benjamin Kosnik <bkoz@redhat.com>
2862
2863 * testsuite/performance/ifstream_extract_float.cc: New.
2864 * testsuite/performance/ofstream_insert_float.cc: Float generation
2865 matches above.
2866
2867 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
2868 * 20_util/auto_ptr/1.cc: ...this.
2869 * 20_util/auto_ptr/2.cc: Same.
2870 * 20_util/auto_ptr/3.cc: Same.
2871 * 20_util/auto_ptr/3946.cc: Same.
2872 * 20_util/auto_ptr/4.cc: Same.
2873 * 20_util/auto_ptr/5.cc: Same.
2874 * 20_util/auto_ptr/6.cc: Same.
2875 * 20_util/auto_ptr/7.cc: Same.
2876 * 20_util/auto_ptr/assign_neg.cc
2877 * 20_util/pairs.cc: Break into...
2878 * 20_util/pair/1.cc: ...this.
2879 * 20_util/pair/2.cc: Same.
2880 * 20_util/pair/3.cc: Same.
2881 * 20_util/pair/4.cc: Same.
2882
d8ef7dec
PC
28832004-01-13 Paolo Carlini <pcarlini@suse.de>
2884
2885 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
2886 Set correctly just basefield, the only group that matters.
2887
5640461d
PC
28882004-01-13 Paolo Carlini <pcarlini@suse.de>
2889
2890 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
2891 (_Rope_rep_base): Inherit directly from the rope allocator;
2892 use rebinding instead of _Alloc_traits; pick up data member
2893 from _Rope_rep_alloc_base.
2894 (_Rope_alloc_base): Eliminate.
2895 (_Rope_base): Inherit directly from the rope allocator; use
2896 rebinding instead of _Alloc_traits; pick up data member from
2897 _Rope_alloc_base.
2898 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
2899 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
2900
95c9624f
PC
29012004-01-13 Paolo Carlini <pcarlini@suse.de>
2902
2903 PR libstdc++/13650
2904 * include/bits/basic_string.tcc (compare(size_type, size_type,
2905 const _CharT*, size_type)): Implement correctly the resolution
2906 of DR 5: basically, s is a char array, -not- a C string.
2907 * include/bits/basic_string.h: Tweak some comments.
2908 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
2909 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
2910
c91de77a
AT
29112004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
2912
2913 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
2914 Solaris.
2915
300b3317
PC
29162004-01-12 Paolo Carlini <pcarlini@suse.de>
2917
2918 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
2919 Use try_mkfifo.
2920 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
2921 Likewise.
2922
dc6798f8
PC
29232004-01-12 Paolo Carlini <pcarlini@suse.de>
2924
2925 * include/bits/locale_facets.h (struct __numpunct_cache):
2926 Add members _M_truename_len and _M_falsename_len, caching
2927 the lengths of _M_truename and _M_falsename.
2928 (__numpunct_cache<>::_M_cache): Assign the latter.
2929 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
2930 num_put::do_put(bool)): Use the new members, thus avoiding
2931 computing string lengths again and again.
2932 * config/locale/generic/numeric_members.cc
2933 (numpunct<>::_M_initialize_numpunct): Assign the new members.
2934 * config/locale/gnu/numeric_members.cc
2935 (numpunct<>::_M_initialize_numpunct): Likewise.
2936
ea1ea21a
MM
29372004-01-12 Mark Mitchell <mark@codesourcery.com>
2938
2939 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
2940 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
2941 it.
2942 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
2943 and remove Cygwin XFAIL.
2944 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
2945 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
2946 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
2947 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
2948 Likewise.
2949 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
2950 * testsuite/27_io/objects/char/7.cc: Likewise.
2951 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
2952 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
2953 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
2954
3b3bfc0e
GDR
29552004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
2956
2957 * include/std/std_complex.h (std::complex<>::real): Return a
2958 reference. Add non-const overload.
2959 (std::complex<>::real): Likewise.
2960 (std::real): Likewise.
2961 (std::imag): Likewise.
2962 (std::operator+): Tidy.
2963 (std::operator-): Likewise.
2964 (std::operator*): Likewise.
2965 (std::operator/): Likewise.
2966 (std::operator>>): Likewise.
2967
09625c16
PC
29682004-01-11 Paolo Carlini <pcarlini@suse.de>
2969
2970 PR libstdc++/13582
2971 * include/bits/fstream.tcc (imbue): Exploit the external
2972 buffer to imbue 'on the fly' a new locale and convert its
2973 remainder with the new codecvt facet.
2974 (underflow): Tweak slightly to deal with this special case.
2975 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
2976 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
2977 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
2978 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
2979 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
16dd5cfe 2980
a8d65349
PC
29812004-01-10 Paolo Carlini <pcarlini@suse.de>
2982
2983 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
2984 Import Revision 28.
2985
b656faa8
PC
29862004-01-10 Paolo Carlini <pcarlini@suse.de>
2987
2988 PR libstdc++/13630
2989 * include/bits/locale_classes.h (class locale): Fix category
2990 typedef.
2991 * testsuite/22_locale/locale/13630.cc: Add.
2992
f88e4715
GB
29932004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
2994
2995 * include/bits/locale_facets.h: Make a name really dependent. This
2996 will be needed when Core Issue 224 is implemented.
2997
64cb2c4a
PC
29982004-01-09 Paolo Carlini <pcarlini@suse.de>
2999
3000 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
3001 * testsuite/performance/allocator_thread.cc: Likewise.
3002
158960ba
BK
30032004-01-07 Benjamin Kosnik <bkoz@redhat.com>
3004
3005 * crossconfig.m4: Add LFS, io bits to linux cross config.
3006 * acconfig.h: Remove obsolete bits, reorder.
3007 * config.h.in: Regenerate.
3008 * aclocal.m4: Same.
3009 * configure: Same.
16dd5cfe 3010
e135a038
BK
30112004-01-07 Gawain Bolton <gp.bolton@computer.org>
3012
3013 * include/bits/stl_list.h:
3014 * include/bits/list.tc:
3015 * src/list.cc:
6a734d61
BK
3016 Performance enhancements for destructor, push_front(),
3017 push_back(), pop_front(), pop_back(), sort()
3018 Eliminated static_casts where possible.
3019 Moved code out of header files into new src/list.cc
3020 implementation file for library where possible.
3021 Remove inheritance from iterator class and create separate
3022 classes for non-constant and constant iterators.
e135a038 3023 * include/bits/stl_tree.h (_Rb_tree class):
16dd5cfe 3024 * src/tree.cc:
6a734d61
BK
3025 Only erase contents in destructor.
3026 Eliminate unnecessary initialization in assignment operator.
3027 Optimize for the nominal case by not checking whether
3028 container is empty in clear().
3029 Re-order test in _M_insert() to improve performance.
3030 Move initialization of new node's left & right pointers to
3031 src/tree.cc to where new node's colour is initialized
3032 and to reduce the amount of inline code.
3033 Use _M_leftmost() and _M_end() to improve readability where
3034 appropriate.
3035 Create separate classes for non-constant and constant
3036 iterators to clarify code, avoid extra template parameters and
3037 casting away constness.
16dd5cfe 3038
e135a038
BK
30392004-01-07 Benjamin Kosnik <bkoz@redhat.com>
3040
3041 * src/Makefile.am (sources): Add list.cc, tree.cc.
3042 * src/stl_tree.cc: Move to...
3043 * src/tree.cc: ...here.
3044 * src/list.cc: Add.
3045 * config/linker-map.gnu: Tweaks.
3046 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
3047 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
3048
3049 * bits/stl_vector.h: Column wrap comments.
16dd5cfe 3050
677e7ddc
LR
30512004-01-07 Loren J. Rittle <ljrittle@acm.org>
3052
3053 (re-open) PR libstdc++/12658
3054 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
3055 (locale::global): Likewise.
3056
d8f5bd50
PC
30572004-01-07 Paolo Carlini <pcarlini@suse.de>
3058
3059 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
3060 Remove redundant #include.
3061 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
3062 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
3063 re-enable normal testing.
3064 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
3065 #include.
3066 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
3067 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
3068 Likewise.
3069 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
3070 Likewise.
3071 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
3072 Likewise.
3073 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
3074 Likewise.
3075 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
3076 Likewise.
3077 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
3078 Likewise.
3079 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
3080 Likewise.
3081 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
3082 More properly, #include <locale>.
3083 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
3084 Remove redundant #include.
3085 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
3086 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
3087 redundant DejaGnu directive.
3088 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
3089 redundant #include.
3090
b61f9bf0 30912004-01-06 Benjamin Kosnik <bkoz@redhat.com>
6a734d61 3092 Stefan Olsson <stefan@snon.net>
b61f9bf0
BK
3093
3094 * scripts/check_performance: Use -pthread.
3095 * testsuite/performance/allocator.cc: Tweaks, add list.
3096 * testsuite/performance/allocator_thread.cc: New.
3097
b74a6851 30982004-01-06 Jerry Quinn <jlquinn@optonline.net>
9a01c9b0
JQ
3099
3100 * include/bits/locale_facets.h: Document public classes and
3101 functions.
3102 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
3103 Add comment.
3104
b80115c4
PC
31052004-01-06 Paolo Carlini <pcarlini@suse.de>
3106
3107 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
3108 Remove redundant #includes.
3109 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
3110 Likewise.
3111 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
3112 Likewise.
3113 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
3114 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
3115 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
3116 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
3117 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
3118 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
3119 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
3120 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
3121 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
3122 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
3123 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
3124 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
3125 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
3126 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
3127 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
3128 Likewise.
3129 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
3130 Likewise.
3131 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
3132 Likewise.
3133 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
3134 Likewise.
3135 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
3136 Likewise.
3137 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
3138 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
3139 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
3140
22ed0590 31412004-01-04 Paolo Carlini <pcarlini@suse.de>
223b5084
PC
3142
3143 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
3144 Remove redundant #includes.
3145 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
3146 Likewise.
3147 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
3148 Likewise.
3149 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
3150 Likewise.
3151 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
3152 Likewise.
3153 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
3154 Likewise.
3155 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
3156 Likewise.
3157 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
3158 Likewise.
3159 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
3160 Likewise.
3161 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
3162 Likewise.
3163 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
3164 Likewise.
3165 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
3166 Likewise.
3167 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
3168 Likewise.
3169
4f8163b1
MM
31702004-01-04 Mark Mitchell <mark@codesourcery.com>
3171
3172 PR c++/12226
3173 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
3174 constructor.
3175 * testsuite/27_io/basic_fstream/4.cc: Likewise.
3176 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
3177 * testsuite/27_io/basic_ios/4.cc: Likewise.
3178 * testsuite/27_io/basic_iostream/4.cc: Likewise.
3179 * testsuite/27_io/basic_istream/4.cc: Likewise.
3180 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
3181 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
3182 * testsuite/27_io/basic_ostream/4.cc: Likewise.
3183 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
3184 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
3185 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
3186
17fa5560
PC
31872004-01-04 Paolo Carlini <pcarlini@suse.de>
3188
3189 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
3190 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
3191 always use double underscored names.
3192 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
3193 Likewise.
3194 * include/bits/locale_facets.h (struct __numpunct_cache):
3195 Dimension _M_atoms_out and _M_atoms_in one position smaller.
3196 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
3197 and _M_atoms_in.