1 2004-10-10 Benjamin Kosnik <bkoz@redhat.com>
3 * include/bits/functexcept.h: Add guards.
5 * acinclude.m4 (GLIBCXX_ENABLE_THREADS): Tweak test.
6 * configure: Regenerate.
8 2004-10-10 Paolo Carlini <pcarlini@suse.de>
10 * config/locale/gnu/monetary_members.cc (_S_construct_pattern):
11 Give __ret a default value, thus avoiding spurious warnings.
13 * testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: Open either
14 words or linux.words, otherwise exit.
15 * testsuite/performance/27_io/ifstream_getline.cc: Slighlty tweak.
17 2004-10-09 Paolo Carlini <pcarlini@suse.de>
19 * include/std/std_memory.h (__get_temporary_buffer): Don't use
20 INT_MAX, prefer numeric_limits<ptrdiff_t>::max(), ok on 64-bit
22 * testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust dg-error
25 2004-10-08 Benjamin Kosnik <bkoz@redhat.com>
27 * acconfig.h: Add _GLIBCXX_USE___CXA_ATEXIT.
28 * acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): New.
29 * configure.ac: Call GLIBCXX_ENABLE_CXA_EXIT.
30 * configure: Regenerate.
31 * src/mt_allocator.cc (__pool::~__pool): Make conditional on
32 _GLIBCXX_USE___CXA_ATEXIT macro.
33 * docs/html/ext/mt_allocator.html: Add note about deallocation.
34 * testsuite/ext/mt_allocator/deallocate_local-2.cc: Guard checks
35 with _GLIBCXX_USE___CXA_ATEXIT.
36 * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
37 * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
38 * testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
39 * testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
40 * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
41 * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
42 * testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.
44 2004-10-07 Phil Edwards <phil@codesourcery.com>
46 * testsuite/lib/libstdc++.exp: Update list of undefined functions.
48 2004-10-07 Paolo Carlini <pcarlini@suse.de>
50 * include/bits/list.tcc (operator=): Avoid iterator postincrement.
51 * include/bits/stl_tree.h (erase(iterator, iterator)): Likewise.
53 2004-10-07 Benjamin Kosnik <bkoz@redhat.com>
56 * include/tr1/array: New.
57 * include/Makefile.am (tr1_headers): New.
59 (install-headers): New.
60 (allstamped): Add stamp-tr1.
62 * include/ext/array_allocator.h: New.
63 * include/Makefile.am: Add.
64 * include/Makefile.in: Regenerate.
65 * testsuite/ext/array_allocator/1.cc: New.
66 * testsuite/ext/array_allocator/2.cc: New.
68 2004-10-07 Richard Earnshaw <rearnsha@arm.com>
70 * testsuite/lib/libstdc++.exp (libstdc++_exit): New proc.
72 2004-10-07 Roger Sayle <roger@eyesopen.com>
75 * configure.ac: Newlib does not provide strtold.
76 * configure: Regenerate.
78 2004-10-06 Benjamin Kosnik <bkoz@redhat.com>
80 * acinclude.m4 (GLIBCXX_ENABLE_THREADS): Set enable_thread.
81 (GLIBCXX_CONFIGURE_TESTSUITE): Use it.
82 * configure: Regenerated.
83 * testsuite/Makefile.am (CLEANFILES): Add TEST for
84 check-performance executables.
87 * testsuite/Makefile.in: Regenerate.
88 * scripts/create_testsuite_files: Filter thread tests.
90 * testsuite/thread/pthread1.cc: Remove macro conditionals: this
91 file will only be run by thread enabled configurations.
92 * testsuite/thread/pthread7-rope.cc: Same, add rope_type typedef.
93 * testsuite/thread/pthread6.cc: Same.
94 * testsuite/thread/pthread5.cc: Same.
95 * testsuite/thread/pthread4.cc: Same.
96 * testsuite/thread/pthread3.cc: Same.
97 * testsuite/thread/pthread2.cc: Same.
99 * testsuite/ext/mt_allocator/instantiate.cc: Add in __GTHREADS guard.
100 * testsuite/ext/mt_allocator/deallocate_global-1.cc: Move to...
101 * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: ...here.
102 * testsuite/ext/mt_allocator/deallocate_global-3.cc: Move to...
103 * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: ...here.
104 * testsuite/ext/mt_allocator/deallocate_local-1.cc: Move to...
105 * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: ...here.
106 * testsuite/ext/mt_allocator/deallocate_local-3.cc: Move to...
107 * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: ...here.
109 2004-10-06 Benjamin Kosnik <bkoz@redhat.com>
110 Paolo Carlini <pcarlini@suse.de>
113 * src/mt_allocator.cc (__pool<true>::_M_reserve_block): Revert
114 to old locking order.
116 2004-10-06 Paolo Carlini <pcarlini@suse.de>
118 * include/std/std_sstream.h (_M_sync): When the caller is
119 setbuf, don't trust _M_string.capacity() to be the size of
120 the buffer area, use _M_string.size() in this case.
121 * testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: New.
122 * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise.
124 * include/bits/sstream.tcc (overflow): Avoid calling string::assign
125 unnecessarily when the current _M_string is empty.
127 2004-10-06 Paolo Carlini <pcarlini@suse.de>
129 * include/bits/stl_algo.h (__reverse(bidirectional_iterator_tag)):
130 Avoid iterator postincrement.
131 (__rotate): Likewise.
133 * include/bits/stl_algo.h: Minor formatting tweaks.
135 2004-10-06 Christopher Jefferson <caj@cs.york.ac.uk>
137 * include/bits/stl_algo.h (__reverse(random_access_iterator_tag)):
138 Avoid iterator postincrement; fix swapping middle element with
139 itself on odd-length inputs.
141 2004-10-05 Benjamin Kosnik <bkoz@redhat.com>
144 * include/ext/mt_allocator.h (__pool_base::_Tune): Add default
145 options as compile-time constant enums.
146 (__pool_base::_Tune::is_default): New.
147 (__pool_base::_Block_address): New.
148 (__pool_base): Rearrange data members.
149 (__pool::_M_reserve_memory): To _M_reserve_block.
150 (__pool::_M_reclaim_memory): To _M_reclaim_block.
151 (__pool::_Bin_record): Add _Block_address data member.
152 (__pool<false>): Add _M_thread_freelist_initial.
153 (__pool::~__pool): Declare.
154 (__common_pool_policy): Move static data member to...
155 (__common_pool_policy::_S_get_pool): ...here, make static local.
156 (__per_type_pool_policy): Move static data member to...
157 (__per_type_pool_policy::_S_get_pool): ...here, make static local.
158 (__mt_alloc::__mt_alloc): Call __policy_type::_S_get_pool.
159 Remove static member definitions. Use define for __default_policy.
160 * src/mt_allocator.cc: Same.
161 * config/linker-map.gnu: Don't export _S_get_pool. Renames.
162 * testsuite/ext/new_allocator: New.
163 * testsuite/ext/new_allocator/instantiate.cc: New.
164 * testsuite/ext/new_allocator/check_new.cc: New.
165 * testsuite/ext/new_allocator/deallocate_global.cc: New.
166 * testsuite/ext/new_allocator/deallocate_local.cc: New.
167 * testsuite/ext/mt_allocator/instantiate.cc: Instantiate all
169 * testsuite/ext/mt_allocator/deallocate_global-1.cc: New.
170 * testsuite/ext/mt_allocator/deallocate_global-2.cc: New.
171 * testsuite/ext/mt_allocator/deallocate_global-3.cc: New.
172 * testsuite/ext/mt_allocator/deallocate_global-4.cc: New.
173 * testsuite/ext/mt_allocator/deallocate_local-1.cc: New.
174 * testsuite/ext/mt_allocator/deallocate_local-2.cc: New.
175 * testsuite/ext/mt_allocator/deallocate_local-3.cc: New.
176 * testsuite/ext/mt_allocator/deallocate_local-4.cc: New.
177 * testsuite/ext/mt_allocator/deallocate.cc: New.
178 * testsuite/ext/malloc_allocator/deallocate.cc: New.
179 * testsuite/ext/malloc_allocator/deallocate_global.cc: New.
180 * testsuite/ext/malloc_allocator/deallocate_local.cc: New.
182 2004-10-05 Ulrich Weigand <uweigand@de.ibm.com>
184 * configure.host (abi_baseline_pair): Define for s390-*-linux* and
186 * config/abi/s390-linux-gnu/baseline_symbols.txt: Add missing symbols.
187 * config/abi/s390x-linux-gnu/baseline_symbols.txt: New file.
189 2004-10-05 Christopher Jefferson <caj@cs.york.ac.uk>
191 * include/bits/stl_algobase.h (iter_swap): delegate to swap via
192 __iter_swap when iterator's value_types are equal.
193 (struct __iter_swap): New.
195 2004-10-04 Benjamin Kosnik <bkoz@redhat.com>
197 * configure.ac (libtool_VERSION): To 6:3:0.
198 * configure: Regnerate.
199 * testsuite/testsuite_abi.cc (check_version): Add 3.4.3.
201 2004-10-04 Roger Sayle <roger@eyesopen.com>
202 Eric Botcazou <ebotcazou@libertysurf.fr>
205 * config/linker-map.gnu: Synchronize the current list of stub
206 functions from libmath.
208 2004-10-03 Roger Sayle <roger@eyesopen.com>
210 * config/locale/generic/c_locale.cc (__convert_to_v): Use
211 _GLIBCXX_HAVE_STRTOF instead _GLIBCXX_USE_C99 to check for strtof.
212 Likewise, use _GLIBCXX_HAVE_STRTOLD instead of _GLIBCXX_USE_C99
213 to check for presence of strtold.
215 2004-10-03 Paolo Carlini <pcarlini@suse.de>
217 * include/bits/stl_list.h: Trivial formatting fixes.
218 * include/bits/stl_tree.h: Likewise.
220 2004-10-03 Paolo Carlini <pcarlini@suse.de>
222 * include/bits/sstream.tcc (seekpos): In case of success, just
225 2004-10-01 Paolo Carlini <pcarlini@suse.de>
227 * include/bits/sstream.tcc (pbackfail): Implement correctly
228 27.7.1.3/2, bullet 2: if mode & ios_base::out is false do not
230 * testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: New.
231 * testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise.
232 * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise.
233 * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise.
234 * testsuite/27_io/basic_istream/putback/char/1.cc: Tweak consistently.
236 2004-10-01 Paolo Carlini <pcarlini@suse.de>
238 * include/bits/sstream.tcc (seekpos): Minor rearrangement of two
239 conditionals consistently with seekoff.
240 * include/std/std_sstream.h (setbuf): Avoid a string temporary.
241 (_M_sync): Simplify a bit, clean-up comment.
243 2004-09-30 Paolo Carlini <pcarlini@suse.de>
245 PR libstdc++/10975 (DR 453)
246 * include/bits/sstream.tcc (seekoff): Don't fail if __beg == 0
248 * docs/html/ext/howto.html: Add an entry for DR 453.
249 * testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: New.
250 * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
251 * testsuite/27_io/basic_istream/tellg/char/1.cc: Tweak consistently.
252 * testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
253 * testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
254 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: Fix and
256 * testsuite/27_io/basic_istream/seekp/char/2346-fstream.cc: ... here.
257 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: Fix and
259 * testsuite/27_io/basic_istream/seekp/char/2346-sstream.cc: ... here.
261 2004-09-29 Paolo Carlini <pcarlini@suse.de>
263 * include/std/std_sstream.h (basic_stringbuf(ios_base::openmode)):
264 Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1.
265 (str()): Slightly tweak, protect from pptr() == 0.
266 (_M_update_egptr()): Likewise.
267 * include/bits/sstream.tcc (ssekoff, seekpos): In order to check
268 for an empty buffer use __beg instead of _M_string.capacity().
269 * testsuite/27_io/basic_stringbuf/cons/char/1.cc: New.
270 * testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
272 * testsuite/27_io/basic_filebuf/cons/char/1.cc: New.
273 * testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
274 * testsuite/27_io/basic_streambuf/cons/char/1.cc: Update.
275 * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
277 2004-09-29 Paolo Carlini <pcarlini@suse.de>
278 Benjamin Kosnik <bkoz@redhat.com>
280 * testsuite/testsuite_io.h (class constraint_buf): New, extended
281 and templatized version of constraint_filebuf; add typedefs for
282 streambuf/stringbuf/filebuf and wchar_t counterparts.
284 2004-09-28 Paolo Carlini <pcarlini@suse.de>
287 * include/bits/basic_string.h (_M_dispose, _M_refcopy,
288 basic_string()): When _GLIBCXX_FULLY_DYNAMIC_STRING is defined,
289 don't deal with _S_empty_rep.
290 * include/bits/basic_string.tcc (_S_construct, _M_destroy,
291 _M_leak_hard, _M_mutate): Likewise.
292 * acinclude.m4 (GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING): New.
293 * acconfig.h: Add corresponding undef.
294 * configure.ac: Use GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING.
295 * docs/html/configopts.html: Document --enable-fully-dynamic-string.
296 * configure: Regenerate.
297 * config.h.in: Likewise.
299 2004-09-28 Benjamin Kosnik <bkoz@redhat.com>
300 Paolo Carlini <pcarlini@suse.de>
302 * testsuite/21_strings/basic_string/operations/char/1.cc: New.
303 * testsuite/21_strings/basic_string/operations/wchar_t/1.cc: New.
304 * testsuite/21_strings/basic_string/element_access/char/empty.cc: New.
305 * testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
308 2004-09-28 Paolo Carlini <pcarlini@suse.de>
310 * README: Remove obsolete entry about include/c_shadow.
312 2004-09-24 H.J. Lu <hongjiu.lu@intel.com>
315 * testsuite/lib/libstdc++.exp: Don't use global ld_library_path.
317 2004-09-24 Paolo Carlini <pcarlini@suse.de>
319 * src/localename.cc (locale::locale(const char*)): Minor tweaks:
320 rename a variable, move an assignment.
321 (locale::_Impl::_Impl(const char*, size_t)): Likewise, minor tweak.
323 2004-09-24 Paul Brook <paul@codesourcery.com>
325 * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL more arm
327 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
328 * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Ditto.
329 * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Ditto.
330 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Ditto.
331 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Ditto.
332 * testsuite/ext/stdio_filebuf/char/10063-3.cc: Ditto.
334 2004-09-23 Zack Weinberg <zack@codesourcery.com>
336 * testsuite/20_util/memory/auto_ptr/assign_neg.cc
337 * testsuite/23_containers/map/operators/1_neg.cc
338 * testsuite/23_containers/set/operators/1_neg.cc:
339 Update locations and/or regexps of dg-error markers.
341 2004-09-23 P.J. Darcy <darcypj@us.ibm.com>
343 * include/Makefile.am (thread_host_headers): Add gthr-tpf.h.
344 Add rule to build ${host_builddir}/gthr-tpf.h.
345 * include/Makefile.in: Regenerate.
347 2004-09-23 Paolo Carlini <pcarlini@suse.de>
348 Magnus Fromreide <magfr@lysator.liu.se>
350 * include/bits/boost_concept_check.h (struct _SequenceConcept):
351 Remove wrong requirement, i.e., not present in Table 67.
353 2004-09-21 Paolo Carlini <pcarlini@suse.de>
355 PR libstdc++/12882 (cont)
356 * acinclude.m4 (GLIBCXX_CHECK_LFS): Check for fstat64 too.
357 * configure: Regenerate.
358 * config/io/basic_file_stdio.cc (__basic_file<>::showmanyc): When
359 _GLIBCXX_USE_LFS use fstat64 and lseek64, thus providing a non
360 trivial showmanyc for large files too.
362 2004-09-17 Jonathan Wakely <redi@gcc.gnu.org>
364 * include/bits/stl_algo.h (remove): Remove too restrictive
367 2004-09-17 Paolo Carlini <pcarlini@suse.de>
369 * include/bits/fstream.tcc (xsgetn): Slightly tweak conditional,
370 as per Nathan's original suggestion.
372 2004-09-17 Paolo Carlini <pcarlini@suse.de>
374 * testsuite/ext/mt_allocator/tune-1.cc: Use VERIFY, clean
376 * testsuite/ext/mt_allocator/tune-2.cc: Likewise.
377 * testsuite/ext/mt_allocator/tune-3.cc: Likewise.
378 * testsuite/ext/mt_allocator/tune-4.cc: Likewise.
380 2004-09-17 Paolo Carlini <pcarlini@suse.de>
381 Andrea Arcangeli <andrea@suse.de>
383 * config/io/basic_file_stdio.cc (__basic_file<>::close)): Don't
384 call unnecessarily sync, that is fflush: the library, since 3.4.0
385 does not use buffered fread/fwrite.
386 * include/bits/fstream.tcc (basic_filebuf<>::overflow): Likewise.
388 2004-09-15 Mark Mitchell <mark@codesourcery.com>
390 * config/cpu/arm/cxxabi_tweaks.h (__cxa_cdtor_return_type):
392 * config/cpu/generic/cxxabi_tweaks.h (__cxa_cdtor_return_type):
394 * libsupc++/cxxabi.h (__cxa_cdtor_return_type): New type.
395 (__cxa_vec_new): Use it.
396 (__cxa_vec_new2): Likewise.
397 (__cxa_vec_new3): Likewise.
398 (__cxa_vec_cdtor): Likewise.
399 (__cxa_vec_cctor): Likeiwse.
400 (__cxa_vec_dtor): Likewise.
401 (__cxa_vec_cleanup): Likewise.
402 (__cxa_vec_delete2): Likewise.
403 (__cxa_vec_delete3): Likewise.
404 * libsupc++/vec.cc (__cxa_vec_new): Likewise.
405 (__cxa_vec_new2): Likewise.
406 (__cxa_vec_new3): Likewise.
407 (__cxa_vec_cdtor): Likewise.
408 (__cxa_vec_cctor): Likeiwse.
409 (__cxa_vec_dtor): Likewise.
410 (__cxa_vec_cleanup): Likewise.
411 (__cxa_vec_delete2): Likewise.
412 (__cxa_vec_delete3): Likewise.
413 (__aeabi_vec_ctor_nocookie_nodtor): New function.
414 (__aeabi_vec_ctor_cookie_nodtor): Likewise.
415 (__aeabi_vec_cctor_nocookie_nodtor): Likewise.
416 (__aeabi_vec_new_cookie_noctor): Likewise.
417 (__aeabi_vec_new_nocookie): Likewise.
418 (__aeabi_vec_new_cookie_nodtor): Likewise.
419 (__aeabi_vec_new_cookie): Likewise.
420 (__aeabi_vec_dtor): Likewise.
421 (__aeabi_vec_dtor_cookie): Likewise.
422 (__aeabi_vec_delete): Likewise.
423 (__aeabi_vec_delete3): Likewise.
424 (__aeabi_vec_delete3_nodtor): Likewise.
425 (__aeabi_atexit): Likewise.
427 2004-09-14 Nathan Myers <ncm@cantrip.org>
429 * include/bits/fstream.tcc (xsgetn): Slightly tweak the recent fix
430 for 11722: copy can replace move; the common case is __avail == 0.
432 2004-09-14 Paolo Carlini <pcarlini@suse.de>
434 * include/bits/cpp_type_traits.h: Rename __is_trivially_copyable
435 to __is_scalar, more clear and consistent with "tr1" naming.
436 * include/bits/stl_algobase.h: Update consistently throughout.
438 2004-09-13 Paolo Carlini <pcarlini@suse.de>
441 * include/std/std_fstream.h (xsgetn): Declare only.
442 * include/bits/fstream.tcc (xsgetn): Define, optimize for the
443 always_noconv() case: when __n > __buflen, copy the available
444 buffer and issue a direct read.
445 * testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: New.
447 * include/bits/fstream.tcc (xsputn): Minor tweak, reorder a
450 2004-09-13 Hans-Peter Nilsson <hp@bitrange.com>
452 * testsuite/lib/libstdc++.exp: Use gcc wrapper.exp and call
453 libstdc++_maybe_build_wrapper instead of using local code.
455 2004-09-08 Benjamin Kosnik <bkoz@redhat.com>
457 * config/linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports.
459 2004-09-03 Jan Beulich <jbeulich@novell.com>
461 * crossconfig.m4: Add NetWare as a target.
462 * configure: Regenerate.
464 2004-09-02 Mark Mitchell <mark@codesourcery.com>
466 * libsupc++/typeinfo: Honor __GXX_MERGED_TYPEINFO_NAMES if already
469 2004-09-02 Benjamin Kosnik <bkoz@redhat.com>
470 Simon Richter <Simon.Richter@hogyros.de>
473 * include/bits/istream.tcc: Add extern template for iostream
474 char and wchar_t instantiations.
476 2004-09-02 Benjamin Kosnik <bkoz@redhat.com>
477 Leland Wang <llwang@infor.org>
480 * include/ext/ropeimpl.h (rope::_S_compare): Use
481 _Rope_constants::_S_leaf.
483 2004-09-02 Benjamin Kosnik <bkoz@redhat.com>
486 * include/Makefile.am (ext_headers): Remove demangle.h.
487 * include/Makefile.in: Regenerate.
488 * include/ext/demangle.h: Remove.
490 2004-09-01 Benjamin Kosnik <bkoz@redhat.com>
493 * include/ext/mt_allocator.h (__mt_base): Not type dependent,
495 (__pool): New, specialize.
496 (__common_pool): New, static bits here.
497 (__per_type_pool): New, and here.
498 (__mt_alloc_base): New.
499 (__mt_alloc): Add template parameter, inherit from it.
500 * src/allocator.cc: Split this...
501 * src/allocator-inst.cc: And this...
502 * src/pool_allocator.cc: ...into this.
503 * src/mt_allocator.cc: ... and this. Add definitions for
505 * src/Makefile.am (sources): Split allocator.cc to
506 pool_allocator.cc and mt_allocator.cc.
507 * src/Makefile.in: Regenerate.
508 * config/linker-map.gnu: Add symbols.
509 * docs/html/ext/mt_allocator.html: Document new design.
510 * testsuite/ext/mt_allocator/tune-1.cc: New.
511 * testsuite/ext/mt_allocator/tune-2.cc: New.
512 * testsuite/ext/mt_allocator/tune-3.cc: New.
513 * testsuite/ext/mt_allocator/tune-4.cc: New.
515 * testsuite/testsuite_allocator.h (__gnu_test::check_new): New.
516 * testsuite/ext/allocators.cc: Use check_new, split into...
517 * testsuite/ext/mt_allocator/check_new.cc: this.
518 * testsuite/ext/pool_allocator/check_new.cc: this.
519 * testsuite/ext/malloc_allocator/check_new.cc: this.
520 * testsuite/ext/debug_allocator/check_new.cc: this.
521 * testsuite/ext/mt_allocator/instantiate.cc: this.
522 * testsuite/ext/pool_allocator/instantiate.cc: this.
523 * testsuite/ext/malloc_allocator/instantiate.cc: this.
524 * testsuite/ext/debug_allocator/instantiate.cc: this.
526 2004-08-30 Phil Edwards <phil@codesourcery.com>
528 * docs/html/install.html: Update locales list (from Paolo).
529 Remove other redundant information and point to the GCC install
532 2004-08-30 Benjamin Kosnik <bkoz@redhat.com>
534 * include/ext/pool_allocator.h: Rename __pool_base to
536 * src/allocator.cc: Same.
537 * config/linker-map.gnu: Same.
539 2004-08-30 Paolo Carlini <pcarlini@suse.de>
540 Kenneth C. Schalk <ken@xorian.net>
543 * config/io/basic_file_stdio.cc (__basic_file<char>::close()):
544 Check the return value of fclose/sync, loop on EINTR.
545 (__basic_file<char>::sys_open): Likewise, for sync.
547 2004-08-29 Paolo Carlini <pcarlini@suse.de>
549 * include/bits/locale_facets.tcc (time_get<>::_M_extract_via_format,
550 case 'S'): Allow for at least one leap-second (as per C99, 7.23.1
551 and 7.23.3.5), two if !_GLIBCXX_USE_C99.
552 * testsuite/22_locale/time_get/get_time/char/4.cc: New.
553 * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
555 2004-08-27 Jason Merrill <jason@redhat.com>
558 * libsupc++/guard.cc (static_mutex): Internal class implementing a
559 recursive mutex which controls initialization of local statics.
560 (__gnu_cxx::recursive_init): New exception class.
561 (__cxa_guard_acquire): Deal with locking and recursion detection.
562 (acquire_1, __cxa_guard_abort, __cxa_guard_release): Likewise.
564 2004-08-27 Matthias Klose <doko@debian.org>
566 * configure.host: For mips*-*-linux* update cpu_include_dir
567 after atomicity_dir is set.
569 2004-08-27 Matthias Klose <doko@debian.org>
571 * config/abi/arm-linux-gnu/baseline_symbols.txt: New.
572 * config/abi/mips-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
573 * configure.host: Set abi_baseline_pair for arm*-*-linux* and
576 2004-08-27 Paolo Carlini <pcarlini@suse.de>
578 * testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: New.
579 * testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise.
580 * testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise.
581 * testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
582 * testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
584 * testsuite/27_io/manipulators/adjustfield/char/1.cc: Minor
586 * testsuite/27_io/manipulators/adjustfield/char/2.cc: Likewise.
587 * testsuite/27_io/manipulators/basefield/char/1.cc: Likewise.
588 * testsuite/27_io/manipulators/standard/char/1.cc: Likewise.
589 * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
591 2004-08-25 Paolo Carlini <pcarlini@suse.de>
593 PR libstdc++/17038 (partial)
594 * include/bits/locale_facets.tcc (time_put<>::do_put): Increase
596 * include/bits/locale_facets.h (class __timepunct): Add FIXME
597 comment about _M_put.
598 * config/locale/generic/time_members.cc (_M_put): Always null
600 * config/locale/gnu/time_members.cc (_M_put): Likewise.
601 * testsuite/22_locale/time_put/put/char/17038.cc: New.
602 * testsuite/22_locale/time_put/put/wchar_t/17038.cc: New.
604 2004-08-24 Paolo Carlini <pcarlini@suse.de>
606 * testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: New.
607 * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
608 * testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise.
609 * testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise.
610 * testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
611 * testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise.
613 * testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Trim excess
615 * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise.
617 2004-08-22 Matthias Klose <doko@debian.org>
619 * config/abi/m68k-linux-gnu/baseline_symbols.txt: New.
620 * config/abi/sparc-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
622 2004-08-23 Paolo Carlini <pcarlini@suse.de>
624 * configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE.
625 * aclocal.m4: Regenerate with automake-1.9.1.
626 * configure: Regenerate.
627 * Makefile.in: Likewise.
628 * include/Makefile.in: Likewise.
629 * libmath/Makefile.in: Likewise.
630 * libsupc++/Makefile.in: Likewise.
631 * po/Makefile.in: Likewise.
632 * src/Makefile.in: Likewise.
633 * testsuite/Makefile.in: Likewise.
635 2004-08-22 Paolo Carlini <pcarlini@suse.de>
637 * include/bits/locale_facets.tcc (num_put<>::do_put(bool)): Cast
638 to a signed type, long according to the resolution of DR 359.
639 * testsuite/22_locale/num_put/put/char/9.cc: New.
640 * testsuite/22_locale/num_put/put/wchar_t/9.cc: New.
642 * include/bits/locale_facets.tcc (num_put<>::do_put(const void*)):
643 Simplify a bit: no need to clear showpos.
645 2004-08-21 Paolo Carlini <pcarlini@suse.de>
647 * include/bits/char_traits.h (struct _Char_traits_match): Remove,
650 2004-08-21 Paolo Carlini <pcarlini@suse.de>
652 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Use proper
653 wchar_t type for the fill argument; minor formatting tweaks.
654 * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
655 * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
656 * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
657 * testsuite/22_locale/money_put/put/wchar_t/4.cc: Likewise.
658 * testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise.
659 * testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise.
661 2004-08-21 Paolo Carlini <pcarlini@suse.de>
663 * include/bits/basic_ios.tcc (basic_ios<>::copyfmt): Don't deal
664 with _M_word != _M_local_word two times, redundantly.
666 2004-08-20 Jason Merrill <jason@redhat.com>
668 * include/Makefile.am (${host_builddir}/gthr.h): Don't add
669 _GLIBCXX_ to #pragma lines.
670 * include/Makefile.in: Update.
672 2004-08-20 Paolo Carlini <pcarlini@suse.de>
674 PR libstdc++/7219 (continued)
675 * include/bits/ios_base.h (class ios_base): Expose Annex D.6
677 * testsuite/27_io/types/1.cc: Remove #if _GLIBCXX_DEPRECATED.
678 * testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak dg-error
680 * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
682 2004-08-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
684 * cpu/hppa/atomicity.h (__exchange_and_add, __atomic_add): Add memory
685 barrier to locking asm.
687 2004-08-20 Paolo Carlini <pcarlini@suse.de>
689 * include/c_std/cmath.tcc (__cmath_power): Revert previous commit:
690 actually the warning is a front-end bug (c++/17120).
692 2004-08-20 Matthias Klose <doko@debian.org>
694 * config/abi/s390-linux-gnu/baseline_symbols.txt: New.
696 2004-08-20 Paolo Carlini <pcarlini@suse.de>
698 * include/c_std/cmath.tcc (__cmath_power): Suppress assignment
699 used as truth value warning.
701 2004-08-20 Paolo Carlini <pcarlini@suse.de>
703 * config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Add 32 bit
706 2004-08-20 Paolo Carlini <pcarlini@suse.de>
708 * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Fix it.
710 2004-08-19 Benjamin Kosnik <bkoz@redhat.com>
712 * testsuite/22_locale/time_put/put/char/3.cc (test03): Don't check
714 * testsuite/22_locale/time_put/put/wchar_t/3.cc (test03): Same.
716 2004-08-19 Paolo Carlini <pcarlini@suse.de>
718 * testsuite/performance/20_util/allocator/insert.cc: For std::map
719 instantiate the allocator for a correct pair type.
720 * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
721 * testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
722 * testsuite/performance/20_util/allocator/producer_consumer.cc:
725 * testsuite/performance/20_util/allocator/list_sort_search.cc: Very
726 minor formatting fixes.
727 * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
729 2004-08-19 Paolo Carlini <pcarlini@suse.de>
731 * testsuite/22_locale/time_put/put/char/1.cc: Add VERIFY on the
733 * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
734 * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
735 * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
736 * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
737 * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
738 * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
739 * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
741 2004-08-19 Paolo Carlini <pcarlini@suse.de>
743 * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
745 2004-08-18 Matthias Klose <doko@debian.org>
747 * config/abi/hppa-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
748 * config/abi/i386-linux-gnu/baseline_symbols.txt: New.
749 * config/abi/powerpc-linux-gnu/baseline_symbols.txt: New.
751 2004-08-17 Paolo Carlini <pcarlini@suse.de>
753 * config/abi/alpha-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
755 2004-08-17 Paolo Carlini <pcarlini@suse.de>
757 * config/abi/ia64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
759 2004-08-17 Benjamin Kosnik <bkoz@redhat.com>
761 * config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
763 2004-08-16 Paolo Carlini <pcarlini@suse.de>
765 * include/bits/indirect_array.h: Trivial formatting fixes.
766 * include/bits/valarray_after.h: Likewise.
767 * include/bits/valarray_array.h: Likewise.
768 * src/valarray-inst.cc: Likewise.
770 2004-08-15 Paolo Carlini <pcarlini@suse.de>
772 * testsuite/27_io/basic_stringstream/rdbuf/char/2832.cc: Remove junk.
773 * testsuite/27_io/basic_stringstream/str/char/1.cc: Likewise.
774 * testsuite/27_io/basic_stringstream/str/char/3.cc: Likewise.
776 * testsuite/27_io/basic_stringstream/rdbuf/wchar_t/2832.cc: New.
777 * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
778 * testsuite/27_io/basic_stringstream/str/wchar_t/2.cc: Likewise.
779 * testsuite/27_io/basic_stringstream/str/wchar_t/3.cc: Likewise.
780 * testsuite/27_io/basic_stringstream/str/wchar_t/4.cc: Likewise.
782 2004-08-15 Paolo Carlini <pcarlini@suse.de>
784 * include/bits/deque.tcc: Trivial formatting fixes.
786 2004-08-15 Paolo Carlini <pcarlini@suse.de>
788 * include/bits/deque.tcc: Trivial formatting fixes.
790 * include/bits/locale_facets.tcc (num_get<>::do_get(&bool)):
791 Remove unneded typedef.
793 * include/bits/locale_facets.tcc: Very minor tweaks.
795 * testsuite/22_locale/time_put/put/wchar_t/1.cc: Use proper
796 type for the fill argument.
797 * testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
798 * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
799 * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
800 * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
801 * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
802 * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
803 * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
804 * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
806 2004-08-13 Paolo Carlini <pcarlini@suse.de>
808 * src/debug.cc (_Error_formatter::_M_print_string): Fix thinko,
809 memmove is not needed, memcpy suffices.
811 2004-08-13 Paolo Carlini <pcarlini@suse.de>
813 * include/std/std_fstream.h (class basic_ifstream,
814 class basic_ofstream, class basic_fstream): Add const overloads
815 of is_open, as per DR 365 [WP].
816 * docs/html/ext/howto.html: Add an entry for DR 365.
818 2004-08-12 Paolo Carlini <pcarlini@suse.de>
820 * configure.ac: Specify version 1.8.5 in AM_INIT_AUTOMAKE.
822 2004-08-12 Paolo Carlini <pcarlini@suse.de>
825 * include/bits/sstream.tcc (basic_stringbuf<>::seekoff): Add __off
826 to the returned value, reorganize a bit.
827 * testsuite/27_io/basic_stringbuf/seekoff/char/16956.cc: New.
828 * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/16956.cc: New.
830 * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Remove junk.
831 * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise.
832 * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise.
833 * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise.
835 2004-08-12 Paul Brook <paul@codesourcery.com>
837 * config/cpu/arm/cxxabi_tweaks.h: Define __cxa_vec_ctor_return and
838 _GLIBCXX_CXA_VEC_CTOR_RETURN.
839 * config/cpu/generic/cxxabi_tweaks.h: Ditto.
840 * libsupc++/cxxabi.h (__cxa_vec_ctor, __cxa_vec_cctor): Use
841 __cxa_vec_ctor_return.
842 * libsupc++/vec.cc (__cxa_vec_ctor, __cxa_vec_cctor): Ditto.
843 Use _GLIBCXX_CXA_VEC_CTOR_RETURN.
845 2004-08-12 Kelley Cook <kcook@gcc.gnu.org>
847 * Makefile.in, aclocal.m4, configure, include/Makefile.in,
848 libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
849 src/Makefile.in, testsuite/Makefile.in: Regenerate
851 2004-08-12 Jan Beulich <jbeulich@novell.com>
853 * config/locale/generic/ctype_members.cc
854 (ctype<wchar_t>::_M_convert_to_wmask): Default case must not use 0 as
855 initializer for return value, as that is invalid for enumerated types.
856 * config/locale/gnu/ctype_members.cc
857 (ctype<wchar_t>::_M_convert_to_wmask): Likewise.
859 2004-08-11 Paolo Carlini <pcarlini@suse.de>
861 * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Fix typo.
863 2004-08-11 Paolo Carlini <pcarlini@suse.de>
865 * testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Declare test
867 * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Ditto.
868 * testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Remove junk.
869 * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Ditto.
870 * testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Ditto.
871 * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Ditto.
872 * testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Ditto.
873 * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Ditto.
874 * testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Ditto.
875 * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Ditto.
876 * testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Ditto.
877 * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Ditto.
878 * testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Ditto.
879 * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Ditto.
880 * testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Ditto.
881 * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Ditto.
882 * testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Ditto.
883 * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Ditto.
884 * testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Ditto.
885 * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Ditto.
886 * testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Ditto.
887 * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Ditto.
889 2004-08-11 Paolo Carlini <pcarlini@suse.de>
890 Petur Runolfsson <peturr02@ru.is>
893 * src/ios_init.cc (ios_base::sync_with_stdio): Make sure the
894 standard streams are constructed.
895 * testsuite/27_io/ios_base/sync_with_stdio/16959.cc: New.
897 2004-08-09 Paolo Carlini <pcarlini@suse.de>
899 * include/bits/stl_bvector.h: Trivial formatting fixes.
901 2004-08-09 Paolo Carlini <pcarlini@suse.de>
903 * src/ios.cc (ios_base::_M_grow_words): Uglify the names.
905 2004-08-07 Jonathan Wakely <redi@gcc.gnu.org>
906 Paolo Carlini <pcarlini@suse.de>
908 * src/debug.cc (_Error_formatter::_M_print_string): In order
909 to print individual words from __string, _M_format_word can't
910 be called since may be just sprintf, thus ignoring completely
911 __n: instead, use memmove and append '\0' by hand.
913 2004-08-07 Paolo Carlini <pcarlini@suse.de>
915 * config/locale/generic/c_locale.h (__convert_from_v): Don't
916 use a default for __prec, assume __prec >= 0 and simplify.
917 * config/locale/gnu/c_locale.h (__convert_from_v): Likewise.
918 * include/bits/locale_facets.tcc (money_put<>::do_put(long double)):
919 Pass format "%.*Lf" + precision == 0, equivalent to "%.0Lf".
921 2004-08-04 Phil Edwards <phil@codesourcery.com>
923 * docs/html/configopts.html: Emphasize that options change.
924 * docs/html/17_intro/configury.html: Update links.
926 2004-08-03 Paolo Carlini <pcarlini@suse.de>
928 * include/bits/list.tcc: Trivial formatting fixes.
930 2004-08-03 Mark Mitchell <mark@codesourcery.com>
932 * libsupc++/new_op.cc: Update comments.
933 * libsupc++/del_op.cc: Likewise.
935 2004-08-02 Mark Mitchell <mark@codesourcery.com>
937 * libsupc++/cxxabi.h: Make all declarations have default
939 * libsupc++/exception: Likewise.
940 * libsupc++/new: Likewise.
941 * libsupc++/typeinfo: Likewise.
942 * libsupc++/unwind-cxx.h: Likewise.
943 * libsupc++/eh_alloc.cc (__cxa_allocate_exception): Put it into
944 the __cxxabiv1 namespace.
945 (__cxa_free_exception): Likewise.
946 * libsupc++/eh_aux_runtime.cc (__cxa_bad_cast): Likewise.
947 (__cxa_bad_typeid): Likewise.
948 * libsupc++/eh_catch.cc (__cxa_begin_catch): Likewise.
949 (__cxa_end_catch): Likewise.
950 * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Likewise.
951 (__cxa_get_globals): Likewise.
952 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
953 (__cxa_rethrow): Likewise.
954 * libsupc++/pure.cc (__cxa_pure_virtual): Likewise.
955 * libsupc++/eh_type.cc: Include <cxxabi.h>.
957 * Makefile.am (hosted_source): Add libmath and testsuite.
958 (SUBDIRS): Remove them.
959 * acinclude.m4: (GLIBCXX_ENABLED_HOSTED): Default to freestanding
960 on arm*-*-symbianelf*.
961 * crossconfig.m4: Add arm*-*-symbianelf* support.
962 * include/c_std/std/std_cstdlib.h (stdlib.h): Do not include it
963 when freestanding. Do not bring names into std:: namespace with
964 "using" when freestanding. Declare required functions and macros
966 * libsupc++/Makefile.am (c_sources): Do not include cp-demangle.c
968 * libsupc++/del_op.cc: Declare "free" only when freestanding.
969 * libsupc++/eh_alloc.cc (cstring): Include it only when hosted.
970 (malloc): Declare when freestanding.
973 (__cxa_allocate_exception): Call malloc, not std::malloc. Likewise
975 (__cxa_free_exception): Likewise for free.
976 * libsupc++/new_op.cc: Declare "malloc" when freestanding.
977 * libsupc++/pure.cc (writestr): Define to nothing when
979 * libsupc++/vterminate.cc: Do not define anything when
981 * Makefile.in: Regenerated.
982 * aclocal.m4: Likewise.
983 * configure: Likewise.
984 * include/Makefile.in: Likewise.
985 * libmath/Makefile.in: Likewise.
986 * libsupc++/Makefile.in: Likewise.
987 * po/Makefile.in: Likewise.
988 * src/Makefile.in: Likewise.
989 * testsuite/Makefile.in: Likewise.
991 2004-08-01 Matt Austern <austern@apple.com>
994 * include/bits/stl_list.h (_M_create_node): Remove unused
995 zero-argument version.
996 * include/ext/slist (_M_create_node): Pass two arguments to
997 allocator's construct() member function.
998 * testsuite/23_containers/deque/explicit_instantiation.cc: New.
999 * testsuite/23_containers/list/explicit_instantiation.cc: New.
1000 * testsuite/23_containers/vector/explicit_instantiation.cc: New.
1001 * testsuite/23_containers/map/explicit_instantiation.cc: New.
1002 * testsuite/23_containers/set/explicit_instantiation.cc: New.
1003 * testsuite/23_containers/multimap/explicit_instantiation.cc: New.
1004 * testsuite/23_containers/multiset/explicit_instantiation.cc: New.
1005 * testsuite/ext/hash_set_explicit_instantiation.cc: New.
1006 * testsuite/ext/slist_explicit_instantiation.cc: New.
1008 2004-07-30 Paolo Carlini <pcarlini@suse.de>
1010 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
1011 num_get<>::_M_extract_int): In the main parsing loop delay the
1012 life of __q to the actual use point.
1014 2004-07-29 Paolo Carlini <pcarlini@suse.de>
1017 * include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
1018 Don't clip the precision passed down to __convert_from_v:
1019 22.2.2.2.2 nowhere says so.
1020 * testsuite/22_locale/num_put/put/char/14220.cc: New.
1021 * testsuite/22_locale/num_put/put/wchar_t/14220.c: Likewise.
1023 2004-07-29 Paolo Carlini <pcarlini@suse.de>
1025 * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 31.
1027 2004-07-29 Paolo Carlini <pcarlini@suse.de>
1028 Petur Runolfsson <peturr02@ru.is>
1030 PR libstdc++/12658 (continued)
1031 * src/locale_init.cc (locale::locale, locale::global): Use
1032 a single locale_mutex instead of two separate mutexes.
1034 2004-07-29 Paolo Carlini <pcarlini@suse.de>
1037 * include/debug/map.h (insert(_InputIterator, _InputIterator)):
1039 * testsuite/23_containers/map/insert/16813.cc: New.
1041 2004-07-29 Phil Edwards <phil@codesourcery.com>
1043 * docs/html/faq/index.html: Update version references. Make
1044 clear that code from SGI has diverged greatly. Remove references
1045 to library snapshots and what's-new sections.
1046 * docs/html/faq/index.txt: Regenerate.
1048 2004-07-28 Matt Austern <austern@apple.com>
1050 * include/bits/stl_construct.h (_Destroy): New three-argument
1051 overload that takes an allocator argument. Another inline
1052 three-argument overload that takes std::allocator and dispatches
1053 to the two-argument version.
1054 * include/bits/stl_uninitialized.h (__uninitialized_fill_n_aux):
1055 Change return type to void to match uninitialized_fill_n.
1056 (__uninitialized_copy_a_): New function. Like uninitialized_copy
1057 except that it takes an allocator and uses it for construct and
1058 destroy. If the allocator is std::allocator, dispatches to
1060 (__uninitialized_fill_a): Likewise.
1061 (__uninitialized_fill_n_a): Likewise.
1062 (__uninitialized_copy_copy): Give it an allocator argument.
1063 (__uninitialized_fill_copy): Likewise.
1064 (__uninitialized_copy_fill): Likewise.
1065 * include/bits/deque.tcc: Use new forms defined in stl_construct.h
1066 and stl_uninitialized.h. Replace use of single-argument _Construct
1067 and _Destroy with use of allocator's construct and destroy methods.
1068 * include/bits/list.tcc: Likewise.
1069 * include/bits/stl_deque.h: Likewise.
1070 * include/bits/stl_list.h: Likewise.
1071 * include/bits/stl_tree.h: Likewise.
1072 * include/bits/stl_vector.h: Likewise.
1073 * include/bits/vector.tcc: Likewise.
1074 * include/ext/hashtable.h: Use rebind so that allocator_type
1075 has correct type for a container's allocator. Replace use of
1076 single-argument _Construct and _Destroy with use of allocator's
1077 construct and destroy methods.
1078 * include/ext/memory (__uninitialized_copy_n_a): New function.
1079 Like uninitialized_copy_n except that it takes an extra parameter,
1080 an allocator, and uses it for construct and destroy operations.
1081 * include/ext/rope: Use new forms defined in stl_construct.h,
1082 stl_uninitialized.h, and ext/memory. Replace use of single-argument
1083 _Construct and _Destroy with allocator construct and destroy methods.
1084 * include/ext/ropeimpl.h: Likewise.
1085 * include/ext/slist.h: Likewise.
1086 * testsuite/testsuite_allocator.h (check_construct_destroy): New.
1087 * testsuite/testsuite_allocator.cc (check_construct_destroy): New.
1088 * testsuite/23_containers/deque/check_construct_destroy.cc: New.
1089 * testsuite/23_containers/list/check_construct_destroy.cc: New.
1090 * testsuite/23_containers/set/check_construct_destroy.cc: New.
1091 * testsuite/23_containers/vector/check_construct_destroy.cc: New.
1092 * testsuite/ext/hash_check_construct_destroy.cc: New.
1093 * testsuite/ext/slist_check_construct_destroy.cc: New.
1095 2004-07-28 Alexandre Oliva <aoliva@redhat.com>
1097 2003-10-01 Eric Christopher <echristo@redhat.com>
1098 * config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm'
1100 2003-07-09 Alexandre Oliva <aoliva@redhat.com>
1101 * config/cpu/sh/atomicity.h: New. Use movli and movco on SH4a.
1103 2004-07-23 Benjamin Kosnik <bkoz@redhat.com>
1106 * include/bits/locale_facets.tcc: Fix for -Werror.
1108 2004-07-23 Jonathan Wakely <redi@gcc.gnu.org>
1110 * docs/html/debug.html: Say debug mode only available since 3.4.0.
1112 2004-07-21 Benjamin Kosnik <bkoz@redhat.com>
1114 * docs/doxygen/mainpage.html: Clarify links.
1115 * docs/doxygen/stdheader.cc: Add files.
1116 * docs/doxygen/style.css: Remove bolds, add h2, h3 styles.
1117 * docs/doxygen/user.cfg.in: New options, wrap.
1119 2004-07-20 Danny Smith <dannysmith@users.sourceforge.net>
1121 * include/c_std/std_cwchar.h (wcsstr): Correct signature.
1123 2004-07-19 Benjamin Kosnik <bkoz@redhat.com>
1126 * testsuite/lib/libstdc++.exp (v3-copy-files): Revert.
1128 2004-07-17 Richard Sandiford <rsandifo@redhat.com>
1131 * scripts/create_testsuite_files: Pass -print to find.
1133 2004-07-15 Paolo Carlini <pcarlini@suse.de>
1135 * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 30.
1136 * docs/html/ext/howto.html: Tweak entries for DRs 167/253/389/402.
1138 2004-07-15 Jakub Jelinek <jakub@redhat.com>
1141 * acinclude.m4 (glibcxx_shared_libgcc): Correct
1142 glibcxx_shared_libgcc test for multilibs.
1143 * configure: Rebuilt.
1145 2004-07-14 Paolo Carlini <pcarlini@suse.de>
1148 * include/bits/stl_uninitialized.h (uninitialized_fill_n): Fix
1149 the signature to return void, as per 20.4.4.3.
1150 * include/bits/stl_vector.h (vector::vector(size_type,
1151 const value_type&, const allocator_type&), vector::vector(size_type),
1152 vector::_M_initialize_dispatch): Adjust callers.
1153 * include/bits/vector.tcc (vector<>::_M_fill_assign,
1154 vector<>::_M_fill_insert): Likewise.
1155 * testsuite/20_util/memory/16505.cc: New.
1157 2004-07-14 Paolo Carlini <pcarlini@suse.de>
1159 * testsuite/22_locale/locale/cons/12658_thread-1.cc,
1160 12658_thread-2.cc: Use __gnu_test::try_named_locale.
1162 2004-07-13 Benjamin Kosnik <bkoz@redhat.com>
1164 * docs/html/ext/mt_allocator.html: Add docs for _Tune.
1165 * include/ext/mt_allocator.h (__mt_alloc::_S_get_options): Make public.
1166 (__mt_alloc::_S_set_options): Same.
1169 2004-07-13 Benjamin Kosnik <bkoz@redhat.com>
1171 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add allocator defaults
1173 * configure: Regenerated.
1175 2004-07-13 Paolo Carlini <pcarlini@suse.de>
1177 * testsuite/22_locale/locale/cons/12658_thread.cc: Move/rename
1178 to 12658_thread-1.cc and xfail.
1179 * testsuite/22_locale/locale/cons/12658_thread-2.c: New, much
1180 simpler version of 12658_thread-1.cc, still failing on 3_3 and
1181 not failing on 3_4/mainline - both on single processor and
1182 multiprocessor machines.
1184 2004-07-12 Benjamin Kosnik <bkoz@redhat.com>
1186 * docs/html/abi.html: Remove non-public qualification.
1188 * include/bits/concurrence.h: Tweak comments.
1190 2004-07-11 Paolo Carlini <pcarlini@suse.de>
1192 Add wchar_t counterparts of the basic_streambbuf<char> tests.
1193 * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: New.
1194 * testsuite/27_io/basic_streambuf/imbue/wchar_t/1.cc, 9322.cc:
1196 * testsuite/27_io/basic_streambuf/in_avail/wchar_t/9701-3.cc: Likewise.
1197 * testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc, 2.cc,
1199 * testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
1200 * testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
1201 * testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise.
1202 * testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc: Likewise.
1203 * testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc, 1057.cc:
1205 * testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise.
1207 * testsuite/27_io/basic_streambuf/imbue/char/1.cc, 9322.cc: Minor
1209 * testsuite/27_io/basic_streambuf/overflow/char/2.cc, 3599.cc:
1211 * testsuite/27_io/basic_streambuf/sputn/char/1057.cc: Likewise.
1212 * testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise.
1214 2004-07-11 Phil Edwards <phil@codesourcery.com>
1216 * acinclude.m4: Cosmetic shell syntax fixes.
1217 * configure.ac: Bring comment inline with reality.
1218 * configure.host: Both of the above. Move 'arm' case to right
1219 place in host_cpu switch.
1220 * aclocal.m4, configure: Regenerate.
1222 2004-07-09 Paolo Carlini <pcarlini@suse.de>
1224 Add wchar_t counterparts of the basic_stringbuf<char> tests.
1225 * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc, 9322.cc: New.
1226 * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Likewise.
1227 * testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc, 2.cc,
1228 3599.cc, 9988.cc: Likewise.
1229 * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc, 9825.cc:
1231 * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc:
1233 * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc, 3.cc:
1235 * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc, 2.cc, 3.cc:
1237 * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise.
1238 * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
1239 * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
1240 * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc, 9425.cc:
1242 * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc, 1057.cc,
1243 9404-1.cc: Likewise.
1244 * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc, 1057.cc,
1245 9404-2.cc: Likewise.
1246 * testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc, 2.cc, 3.cc,
1248 * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise.
1249 * testsuite/27_io/basic_stringbuf/sync/wchar_t/1057.cc: Likewise.
1251 2004-07-08 Paolo Carlini <pcarlini@suse.de>
1253 * include/bits/gslice.h: Trivial formatting fixes.
1254 * include/bits/gslice_array.h: Likewise.
1255 * include/bits/indirect_array.h: Likewise.
1256 * include/bits/mask_array.h: Likewise.
1257 * include/bits/slice_array.h: Likewise.
1258 * include/bits/valarray_after.h: Likewise.
1259 * include/bits/valarray_array.h: Likewise.
1260 * include/bits/valarray_before.h: Likewise.
1261 * include/std/std_valarray.h: Likewise.
1263 2004-07-08 Benjamin Kosnik <bkoz@redhat.com>
1266 * include/bits/basic_string.h (basic_string::operator=): Revert.
1268 2004-07-07 Benjamin Kosnik <bkoz@redhat.com>
1270 * configure.ac (libtool_VERSION): To 6:2:0.
1271 * configure: Regenerated.
1273 * testsuite/testsuite_abi.cc (check_version): Add 3.4.2.
1275 2004-07-07 Aaron W. LaFramboise <aaronraolete36@aaronwl.com>
1278 * config/linker-map.gnu: Add stdio_sync_filebuf::file exports.
1280 2004-07-07 Benjamin Kosnik <bkoz@redhat.com>
1282 * docs/html/abi.html: Updates for 3.4.1 release. Add summary of
1285 2004-07-07 Paolo Carlini <pcarlini@suse.de>
1288 * include/bits/sstream.tcc (overflow): When reallocating _M_string
1289 use an exponential grow policy.
1290 * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: New.
1291 * testsuite/performance/27_io/stringbuf_overflow.cc: New.
1293 2004-07-06 Anssi Hannula <anssi.hannula@mbnet.fi>
1296 * crossconfig.m4: Add in bits for djgpp.
1297 * configure: Regenerate.
1299 2004-07-05 Jonathan Wakely <redi@gcc.gnu.org>
1301 * testsuite/23_containers/{set,multiset}/14340.cc: Fix typos in
1302 instantiation of set and multiset (functor param given as int).
1304 2004-07-04 Paolo Carlini <pcarlini@suse.de>
1306 * include/bits/basic_string.h: Trivial formatting fixes and/or
1307 const-ification of some variables.
1308 * include/bits/deque.tcc: Likewise.
1309 * include/bits/stl_algobase.h: Likewise.
1310 * include/bits/stl_bvector.h: Likewise.
1311 * include/bits/stl_construct.h: Likewise.
1312 * include/bits/stl_deque.h: Likewise.
1313 * include/bits/stl_pair.h: Likewise.
1314 * include/bits/stl_vector.h: Likewise.
1315 * include/bits/vector.tcc: Likewise.
1317 2004-07-04 Paolo Carlini <pcarlini@suse.de>
1319 * testsuite/25_algorithms/copy/1.cc: Add instantiations for
1320 systems with no COMDAT or weak support.
1321 * testsuite/25_algorithms/copy/2.cc: Likewise.
1322 * testsuite/25_algorithms/copy/3.cc: Likewise.
1323 * testsuite/25_algorithms/copy/4.cc: Likewise.
1325 2004-07-03 Paul Brook <paul@codesourcery.com>
1327 * configure.ac: Set ABI_TWEAKS_SRCDIR.
1328 * configure.host: Set abi_tweaks_dir. Check for atomicity.h when
1329 setting atomicity_dir. Override type_cpu for arm based targets.
1330 * include/Makefile.am (host_headers): Add cxxabi_tweaks.h.
1331 * libsupc++/cxxabi.h: Include bits/cxxabi.h. Don't declare __guard.
1332 * libsupc++/guard.cc: Use definitions from cxxabi_tweaks.h.
1333 * libsupc++/vec.cc: Ditto.
1334 * config/cpu/arm/cxxabi_tweaks.h: New file.
1335 * config/cpu/generic/cxxabi_tweaks.h: New file.
1336 * */Makefile.in: Regenerate.
1337 * configure: Regenerate.
1339 2004-07-02 Paolo Carlini <pcarlini@suse.de>
1341 * include/bits/type_traits.h (_Is_normal_iterator): Move...
1342 * include/bits/cpp_type_traits.h: ... here, renamed to
1343 __is_normal_iterator and consistent with the other traits.
1344 * include/bits/stl_algobase.h (__copy_ni1, __copy_ni2): Convert
1345 to the struct __copy_normal and three specializations.
1346 (__copy_backward_output_normal_iterator,
1347 __copy_backward_input_normal_iterator): Likewise, convert to
1348 the struct __copy_backward_normal and three specializations.
1349 (copy, copy_backward): Use the latter.
1350 (__copy_aux, __copy_backward_aux): Very minor tweaks.
1352 2004-07-01 Paolo Carlini <pcarlini@suse.de>
1354 * include/bits/stl_algobase.h (__copy_trivial): Remove.
1355 (__copy_aux2): Rewrite as __copy_aux to use __is_pointer,
1356 __is_trivially_copyable, __are_same and __copy::copy.
1357 (__copy): Rewrite as a class template and two specializations.
1358 (__copy_ni2): Simplify, just call __copy_aux.
1360 * include/bits/stl_algobase.h (__copy_backward_aux): Add __are_same
1362 * testsuite/25_algorithms/copy/1.cc, 2.cc, 3.cc, 4.cc: Test also
1363 for destination value type != source value type.
1365 2004-07-01 Benjamin Kosnik <bkoz@redhat.com>
1366 Per Bothner <per@bothner.com>
1367 Mohan Embar <gnustuff@thisiscool.com>
1370 * include/bits/concurrence.h (__glibcxx_mutex_type): New.
1371 (__glibcxx_mutex): Encapsulate mutex init function into type for
1372 threaded configurations without __GTHREAD_MUTEX_INIT.
1373 (lock::lock): Make device member a reference.
1374 (lock::~lock): Same.
1375 * include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change
1377 * src/allocator.cc: Same.
1379 2004-06-30 Brad Spencer <spencer@infointeractive.com>
1381 * include/ext/mt_allocator.h: Handle allocations at static
1382 initialization that happen before _S_options is (automatically)
1383 constructed; set _S_init even if _M_force_new is true.
1385 2004-06-30 Benjamin Kosnik <bkoz@redhat.com>
1387 * config/linker-map.gnu: Revert new exports.
1389 2004-06-30 Benjamin Kosnik <bkoz@redhat.com>
1390 Stuart Anderson <anderson@netsweng.com>
1392 * config/linker-map.gnu: Add destructor exports for abstract base
1393 classes to conform to LSB.
1395 2004-06-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
1396 Paolo Carlini <pcarlini@suse.de>
1398 * include/bits/cpp_type_traits.h: Add __is_pointer and
1399 __is_trivially_copyable.
1400 * include/bits/stl_algobase.h (fill, fill_n): Slightly
1401 tweak to use the latter.
1402 (__copy_backward_dispatch): Remove.
1403 (__copy_backward_aux): Rewrite to use __is_pointer and
1404 __is_trivially_copyable and __copy_backward::copy_b.
1405 (__copy_backward): Rewrite as a class template and two
1408 2004-06-30 Paolo Carlini <pcarlini@suse.de>
1410 * testsuite/25_algorithms/copy.cc: Move to...
1411 * testsuite/25_algorithms/copy/1.cc: ... here, extend.
1412 * testsuite/25_algorithms/copy/2.cc: New.
1413 * testsuite/25_algorithms/copy/3.cc: New.
1414 * testsuite/25_algorithms/copy/4.cc: New.
1416 2004-06-29 Paul Brook <paul@codesourcery.com>
1418 * libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Store the
1419 element size in the cookie.
1421 2004-06-28 Paolo Carlini <pcarlini@suse.de>
1423 * include/bits/cpp_type_traits.h: Move the additions to
1424 namespace __gnu_internal outside of namespace std; trivial
1427 2004-06-28 Benjamin Kosnik <bkoz@redhat.com>
1429 * include/debug/safe_base.h (__gnu_debug::_Safe_sequence_base):
1430 Revert -Weffc++ changes that defined copy ctory and or assignment
1432 * libsupc++/tinfo.cc (__upcast_result): Same.
1434 2004-06-28 Paolo Carlini <pcarlini@suse.de>
1436 * src/localename.cc (locale::_Impl::_Impl): Slightly improve
1437 the algorithm used to name the categories.
1439 2004-06-28 Paolo Bonzini <bonzini@gnu.org>
1441 * include/Makefile.am: Give a .gch extension to
1442 the PCH files, not only to the directory.
1443 * include/Makefile.in: Regenerate.
1445 2004-06-28 Paolo Carlini <pcarlini@suse.de>
1447 * config/locale/gnu/monetary_members.cc
1448 (moneypunct<wchar_t>::_M_initialize_moneypunct): Clean up
1449 assignments of _M_decimal_point and _M_thousands_sep.
1451 2004-06-27 Paolo Carlini <pcarlini@suse.de>
1453 * docs/html/17_intro/contribute.html: Update some links.
1454 * docs/html/17_intro/porting-howto.html: Likewise.
1455 * docs/html/17_intro/porting-howto.xml: Likewise.
1456 * docs/html/18_support/howto.html: Likewise.
1457 * docs/html/21_strings/howto.html: Likewise.
1458 * docs/html/27_io/howto.html: Likewise.
1459 * docs/html/configopts.html: Likewise.
1460 * docs/html/ext/howto.html: Likewise.
1461 * docs/html/faq/index.html: Likewise.
1462 * docs/html/install.html: Don't mention 2.x compilers.
1464 2004-06-27 Paolo Carlini <pcarlini@suse.de>
1466 * include/ext/rope: Trivial formatting fixes.
1467 * include/ext/ropeimpl.h: Likewise.
1469 2004-06-26 Paolo Carlini <pcarlini@suse.de>
1472 * acinclude.m4 (GLIBCXX_ENABLE_LONG_LONG): Do not check for the
1473 availability of strto(u)ll, not used anymore in the iostreams.
1474 * configure: Regenerate.
1476 2004-06-25 Benjamin Kosnik <bkoz@redhat.com>
1479 * linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Revert to
1481 * configure: Regenerate.
1483 2004-06-25 Paul Brook <paul@codesourcery.com>
1485 * libsupc++/cxxabi.h: Define __ARM_EABI__
1487 * libsupc++/guard.h (__cxa_guard_acquire, __cxa_guard_release): Ditto.
1489 2004-06-25 Paul Brook <paul@codesourcery.com>
1491 * include/bits/concurrence.h: Still create mutex object when
1494 2004-06-25 Paolo Carlini <pcarlini@suse.de>
1496 * include/bits/stl_algobase.h (fill, fill_n): Revert last
1497 change: actually we need to copy construct an object of type
1498 _Tp, not of type iterator_traits<>::value_type, therefore the
1501 2004-06-25 Paolo Carlini <pcarlini@suse.de>
1503 * include/bits/stl_algobase.h (fill, fill_n): Tighten the
1504 dispatch: use iterator_traits<>::value_type, not _Tp.
1506 2004-06-25 Paolo Carlini <pcarlini@suse.de>
1508 * testsuite/25_algorithms/fill/1.cc: Tweak instantiations.
1509 * testsuite/25_algorithms/fill/2.cc: Likewise.
1511 2004-06-25 Dan Nicolaescu <dann@ics.uci.edu>
1512 Paolo Carlini <pcarlini@suse.de>
1514 * include/bits/stl_algobase.h (__fill, __fill_n): New helpers
1515 for fill and fill_n, respectively: when copying is cheap, use a
1516 temporary to avoid a memory read in each iteration.
1518 2004-06-25 Paolo Carlini <pcarlini@suse.de>
1520 * testsuite/25_algorithms/fill/1.cc: New.
1521 * testsuite/25_algorithms/fill/2.cc: Likewise.
1523 2004-06-25 Benjamin Kosnik <bkoz@redhat.com>
1525 * include/debug/formatter.h (__gnu_debug::_Error_formatter):
1526 Remove copy constructor and assignment operator.
1528 2004-06-24 Benjamin Kosnik <bkoz@redhat.com>
1530 * include/bits/concurrence.h (__gnu_cxx::lock): New.
1531 * include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove.
1532 (__pool_base::_M_get_mutex): New.
1533 * include/bits/allocator.h: Tweak.
1534 * src/allocator.cc (__pool_base::_M_get_free_list): Correct offset.
1535 * config/linker-map.gnu: Remove __pool_base::_Lock::_S_lock.
1536 * include/bits/stl_threads.h: Remove.
1537 * include/Makefile.am: Also here.
1538 * include/Makefile.in: Regenerate.
1540 * src/locale_init.cc: Use __gnu_cxx::lock.
1542 * src/allocator.cc: Move all instantiations...
1543 * src/allocator-inst.cc: ...here.
1545 2004-06-23 Andrew Pinski <apinski@apple.com>
1547 * linkage.m4: Remove check for libmx.
1548 * configure: Regenerate.
1550 2004-06-23 Paolo Carlini <pcarlini@suse.de>
1553 * include/bits/boost_concept_check.h (struct _TrivialIteratorConcept):
1554 Don't require the _DefaultConstructibleConcept.
1555 (struct _ForwardIteratorConcept): Require it here.
1557 2004-06-22 Alexandre Oliva <aoliva@redhat.com>
1559 * include/bits/istream.tcc (getline): Make sure arguments passed
1560 to min/max have the same type.
1561 * include/bits/locale_facets.tcc (__verify_grouping): Likewise.
1562 * include/bits/stl_deque.h (_Deque_base::_Deque_base): Likewise.
1564 2004-06-22 Benjamin Kosnik <bkoz@redhat.com>
1566 * docs/html/abi.html: Update links.
1568 2004-06-22 Paolo Carlini <pcarlini@suse.de>
1570 * testsuite/26_numerics/complex_inserters_extractors.cc,
1571 complex_value.cc, buggy_complex.cc: Move to...
1572 * testsuite/26_numerics/complex/: ... here.
1573 * testsuite/26_numerics/c99_classification_macros_c++.cc,
1574 c99_classification_macros_c.cc, c_math.cc, c_math_dynamic.cc,
1575 fabs_inline.cc: Move to...
1576 * testsuite/26_numerics/cmath/: ... here.
1577 * testsuite/26_numerics/binary_closure.cc, slice.cc,
1578 slice_array_assignment.cc, valarray.cc, valarray_const_bracket.cc,
1579 valarray_name_lookup.cc, valarray_operators.cc,
1580 valarray_subset_assignment.cc: Move to...
1581 * testsuite/26_numerics/valarray/: ... here (new dir).
1582 * testsuite/26_numerics/sum_diff.cc: Move to...
1583 * testsuite/26_numerics/numeric/: ... here (new dir).
1585 2004-06-22 Paolo Carlini <pcarlini@suse.de>
1587 * include/std/std_istream.h (ignore(streamsize __n = 1,
1588 int_type __delim = traits_type::eof())): Split into...
1589 (ignore(), ignore(streamsize __n), ignore(streamsize __n,
1590 int_type __delim)): The first two can be much more simpler
1591 and efficient than the fully general case; also, the last
1592 two can take advantage of the same mechanism already used
1594 * include/bits/istream.tcc (ignore(streamsize __n = 1,
1595 int_type __delim = traits_type::eof()): Remove.
1596 (ignore(), ignore(streamsize __n), ignore(streamsize __n,
1597 int_type __delim)): New.
1599 2004-06-21 Loren J. Rittle <ljrittle@acm.org>
1601 * config/linker-map.gnu: Use wildcards for
1602 __basic_file::sys_open(FILE*, _Ios_Openmode).
1604 2004-06-20 Paolo Carlini <pcarlini@suse.de>
1606 * testsuite/27_io/basic_istream/ignore/char/3.cc: New.
1608 2004-06-18 Paolo Carlini <pcarlini@suse.de>
1610 * include/ext/mt_allocator (__mt_alloc<>::_Tune): Add _M_align,
1611 the alignment requested.
1612 (__mt_alloc<>::_Tune::_Tune): Tweak consistently.
1613 (__mt_alloc<>::allocate): Use it instead of sizeof(_Block_record).
1614 (__mt_alloc<>::deallocate): Likewise.
1616 2004-06-18 Paolo Carlini <pcarlini@suse.de>
1619 * include/debug/safe_base.h
1620 (_Safe_sequence_base::_Safe_sequence_base(const _Safe_sequence_base&),
1621 _Safe_sequence_base::operator=): Provide definitions.
1622 * testsuite/23_containers/bitset/cons/16020.cc: New.
1624 2004-06-18 Benjamin Kosnik <bkoz@redhat.com>
1626 * include/ext/pool_allocator.h: Qualify __throw_bad_alloc.
1627 (__pool_base): Remove unused template parameter. Add
1628 protected. Move lock data into __pool_base::_Lock. Remove static
1629 on member functions.
1630 (__pool_base::_M_get_free_list): New.
1631 (__pool_alloc): Move _S_force new here.
1632 * src/allocator.cc: Move out of line __pool_base definitions here.
1633 * config/linker-map.gnu: Export bits from __pool_base.
1635 2004-06-18 Paolo Carlini <pcarlini@suse.de>
1637 * config/locale/gnu/numeric_members.cc
1638 (numpunct<wchar_t>::_M_initialize_numpunct): Clean up
1639 assignments of _M_decimal_point and _M_thousands_sep.
1640 * config/locale/gnu/time_members.cc
1641 (__timepunct<wchar_t>::_M_initialize_timepunct): Clean up
1642 and reformat assignments of date and time fields.
1644 2004-06-16 Paolo Carlini <pcarlini@suse.de>
1646 * include/ext/rope (rope(_CharT, const allocator_type&)): Fix
1647 to use _Data_allocate.
1648 * include/ext/ropeimpl.h (rope<>::_S_leaf_concat_char_iter): Likewise.
1649 (rope<>::_S_substring): Likewise.
1650 (rope<>::rope(size_t, _CharT, const allocator_type&)): Likewise.
1651 (rope<>::c_str()): Likewise.
1652 (rope<>::replace_with_c_str()): Likewise.
1654 * include/ext/ropeimpl.h (_Rope_iterator_base<>::_S_setbuf):
1655 Correctly qualify _S_leaf, _S_function, etc., with _Rope_constants::,
1657 (_Rope_iterator_base<>::_S_setcache): Likewise.
1658 (_Rope_iterator_base<>::_S_setcache_for_incr): Likewise.
1659 (rope<>::_S_substring): Likewise.
1660 (rope<>::_S_dump): Likewise.
1661 (rope<>::_S_fetch_ptr): Likewise.
1662 (rope<>::_S_compare): Likewise.
1663 (rope<>::replace_with_c_str()): Likewise.
1665 * testsuite/ext/rope.cc: Rename to testsuite/ext/rope/1.cc.
1666 * testsuite/ext/rope/2.cc: New.
1668 2004-06-16 Paolo Carlini <pcarlini@suse.de>
1669 Matt Austern <austern@apple.com>
1671 * testsuite/ext/rope/3.cc: New.
1673 2004-06-15 Paolo Bonzini <bonzini@gnu.org>
1675 * acinclude.m4: Remove useless multilib configury.
1676 * Makefile.am: Remove useless multilib rules.
1677 * aclocal.m4: Regenerate.
1678 * Makefile.in: Regenerate.
1679 * configure: Regenerate.
1681 2004-06-15 Paolo Carlini <pcarlini@suse.de>
1683 * include/ext/hashtable.h: Trivial formatting fixes.
1684 * include/ext/rb_tree: Likewise.
1686 2004-06-14 Paolo Carlini <pcarlini@suse.de>
1688 * include/ext/hash_map: Trivial formatting fixes.
1689 * include/ext/hash_set: Likewise.
1690 * include/ext/memory: Likewise.
1691 * include/ext/numeric: Likewise.
1693 2004-06-14 Benjamin Kosnik <bkoz@redhat.com>
1695 * Makefile.in: Regenerate with automake 1.8.5.
1697 * include/Makefile.in: Same.
1698 * libmath/Makefile.in: Same.
1699 * libsupc++/Makefile.in: Same.
1700 * po/Makefile.in: Same.
1701 * src/Makefile.in: Same.
1702 * testsuite/Makefile.in: Same.
1704 2004-06-14 Paolo Carlini <pcarlini@suse.de>
1706 * include/ext/slist: Trivial formatting fixes.
1708 2004-06-14 Paolo Carlini <pcarlini@suse.de>
1710 * include/bits/locale_facets.tcc (time_get<>::_M_extract_name):
1711 Don't use the 'magic number' 10 in the computation of __minlen;
1712 never access __name past __minlen; in the loop over __i3, don't
1713 decrease __nmatches and increase __i3 at once, only either of
1716 2004-06-13 Paolo Carlini <pcarlini@suse.de>
1718 * include/bits/locale_facets.tcc (time_get<>::do_get_time,
1719 time_get<>::do_get_date): Use only once _M_extract_via_format,
1720 instead of going through "%X"/"%x" and calling it two times
1723 2004-06-12 Paolo Carlini <pcarlini@suse.de>
1725 * include/ext/algorithm: Trivial formatting fixes.
1726 * include/ext/functional: Likewise.
1727 * include/ext/hash_fun.h: Likewise.
1728 * include/ext/iterator: Likewise.
1730 2004-06-12 Paolo Carlini <pcarlini@suse.de>
1732 * include/bits/basic_string.tcc (find(const _CharT*, size_type,
1733 size_type)): Reimplement using std::search.
1734 * src/string-inst.cc: Instantiate std::search for char/wchar_t.
1736 2004-06-12 Dhruv Matani <dhruvbird@gmx.net>
1738 * testsuite/performance/21_strings/string_find.cc: New.
1740 2004-06-10 Aaron W. LaFramboise <aaronraolete36@aaronwl.com>
1742 * include/bits/istream.tcc (istream::ignore): Fix for -Wuninitialized.
1744 2004-06-10 Jan van Dijk <jan@etpmod.phys.tue.nl>
1746 * include/std/std_complex.h (sin(const complex<_Tp>& __z)): Make
1747 this function return a value.
1749 2004-06-09 Paolo Carlini <pcarlini@suse.de>
1752 * include/bits/stl_deque.h: Consistently with stl_set.h, define
1753 pointer as allocator's pointer, likewise for reference,
1754 const_pointer, and const_reference.
1755 * include/bits/stl_list.h: Likewise.
1756 * include/bits/stl_map.h: Likewise.
1757 * include/bits/stl_multimap.h: Likewise.
1758 * include/bits/stl_vector.h: Likewise.
1760 2004-06-09 Benjamin Kosnik <bkoz@redhat.com>
1762 * crossconfig.m4: Remove signbit, signbitf, signbitl.
1763 * linkage.m4: Comment LIBMATHOBJS, tweak others. AC_DEFINES for
1764 builtin math functions instead of AC_DEFINE_UNQUOTED.
1765 * configure: Regenerate.
1767 2004-06-08 Benjamin Kosnik <bkoz@redhat.com>
1769 * docs/doxygen/filter.sed: Rename _GLIBCXX_STD to std.
1770 * docs/doxygen/mainpage.html: Remove links.
1772 2004-06-08 Jason Merrill <jason@redhat.com>
1774 * config/linker-map.gnu: Use wildcards for
1775 __basic_file::{xsgetn,xsputn,seekoff,xsputn_2}.
1777 2004-06-08 Paolo Carlini <pcarlini@suse.de>
1779 * include/ext/pool_allocator.h: Convert to a global free-list,
1780 as per the original SGI/HP design: move the implementation
1781 details to struct __pool_base, from which __pool_alloc derives.
1782 * src/allocator.cc: Instantiate __pool_base.
1784 2004-06-07 Dhruv Matani <dhruvbird@gmx.net>
1785 Paolo Carlini <pcarlini@suse.de>
1787 * testsuite/testsuite_performance.h
1788 (resource_counter::allocated_memory): Make it return the right
1789 number of bytes requested by the allocators/application. This is
1790 the sbrk+mmaped memory.
1792 2004-06-02 Gabriel Dos Reis <gdr@integrable-solutions.net>
1794 * include/std/std_complex.h (log): Tidy.
1796 2004-05-31 Benjamin Kosnik <bkoz@redhat.com>
1798 * config/linker-map.gnu (GLIBCXX_3.4.1): Add.
1799 * testsuite/testsuite_abi.cc: Same.
1800 * configure.ac (libtool_VERSION): Bump to 6:1:0.
1801 * configure: Regenerate.
1802 * aclocal.m4: Regenerate.
1804 2004-05-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
1806 * include/std/std_complex.h (complex<_Tp>): Properly indent
1808 (complex<>::__rep): New.
1809 (__complex_abs): New. Dispatch to built-ins.
1811 (__complex_arg): New. Dispatch to built-ins.
1813 (__complex_cos): New. Dispatch to built-ins.
1815 (__complex_cosh): New. Dispatch to built-ins.
1817 (__complex_exp): New. Dispatch to built-ins.
1819 (__complex_log): New. Dispatch to built-ins.
1821 (__complex_sin): New. Dispatch to built-ins.
1823 (__complex_sinh): New. Dispatch to built-ins.
1825 (__complex_sqrt): New. Dispatch to built-ins.
1827 (__complex_tan): New. Dispatch to built-ins.
1829 (__complex_tanh): New. Dispatch to built-ins.
1831 (__complex_pow): New. Dispatch to built-ins.
1834 2004-05-29 Richard B. Kreckel <Richard.Kreckel@Framatome-ANP.com>
1835 Benjamin Kosnik <bkoz@redhat.com>
1838 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New.
1839 * include/ext/stdio_filebuf.h (stdio_filebuf::file): New.
1840 * config/io/basic_file_stdio.cc (__basic_file::file): New.
1841 * config/io/basic_file_stdio.h: Define.
1843 2004-05-27 Benjamin Kosnik <bkoz@redhat.com>
1846 * docs/html/documentation.html: Update doxygen links for 3.4.0.
1848 2004-05-27 Jan Beulich <jbeulich@novell.com>
1850 * scripts/create_testsuite_files: Tweak.
1852 2004-05-25 Benjamin Kosnik <bkoz@redhat.com>
1855 * scripts/create_testsuite_files: Revert xtype change, add non-GNU
1856 bits to do the same thing.
1858 2004-05-24 Paolo Carlini <pcarlini@suse.de>
1860 * include/bits/istream.tcc (ignore): Correctly deal with
1861 n == numeric_limits<streamsize>::max().
1862 * testsuite/27_io/basic_istream/ignore/char/2.cc: New.
1864 * include/bits/istream.tcc (basic_istream<>::getline): Prefer
1865 '_M_gcount + 1 < __n' to '--__n; _M_gcount < __n', just in case
1866 __n == numeric_limits<>::min().
1868 * include/bits/istream.tcc: Minor tweaks.
1870 * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
1872 * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
1874 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
1876 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
1878 * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
1880 2004-05-22 Benjamin Kosnik <bkoz@redhat.com>
1883 Fixups for -Weffc++.
1884 * include/bits/basic_string.h (basic_string::operator=): Return
1885 pointer to this instead of result of assign. Although redundant,
1886 this doesn't impact resultant codegen.
1888 * include/bits/locale_facets.h (__numpunct_cache): Declare
1889 assignment opxserator and copy constructor private.
1890 (__timepunct_cache): Same.
1891 (__moneypunct_cache): Same.
1892 (collate): Use member initialization list for _M_c_locale_collate.
1893 * config/locale/gnu/messages_members.h: Same.
1894 * config/locale/gnu/time_members.h (__timepunct): Same.
1895 * src/codecvt.cc: Use member initialization list to initialize
1896 _M_c_locale_codecvt.
1897 * src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok.
1898 * config/os/gnu-linux/ctype_noninline.h: Same.
1899 * src/locale.cc (_Impl): Same.
1900 * src/locale_init.cc: Same.
1901 * src/localename.cc: Same.
1903 * include/bits/basic_ios.h (basic_ios): Complete member
1904 initialization list.
1905 * include/bits/istream.tcc (basic_istream::sentry): Same.
1906 * include/bits/ostream.tcc (basic_ostream::sentry): Same.
1907 * include/bits/fstream.tcc (basic_filebuf): Add _M_lock and
1908 _M_pback to member initialization list.
1909 * include/std/std_streambuf.h: Same.
1910 * include/std/std_sstream.h: Same, for _M_mode.
1911 * src/ios.cc (ios_base): Same.
1913 * include/ext/rope: Make derived classes match exception
1915 specifications. Add copy constructors and assignment operators.
1917 * include/debug/safe_base.h (_Safe_sequence_base): Declare copy
1918 constructor and assignment operator protected.
1919 (_Safe_iterator_base): Same.
1920 * include/debug/formatter.h (_Error_formatter): Define copy
1921 constructor and assignment operator.
1923 * include/backward/strstream: Declare assignment operator and copy
1924 constructor private.
1926 2004-05-22 Benjamin Kosnik <bkoz@redhat.com>
1928 * testsuite/testsuite_hooks.h (func_callback): Declare copy
1929 constructor and assignment operator private.
1930 * testsuite/23_containers/deque/cons/clear_allocator.cc: Match
1931 exception specifications of base class.
1932 * testsuite/23_containers/list/cons/clear_allocator.cc: Same.
1933 * testsuite/23_containers/vector/cons/clear_allocator.cc: Same.
1934 * testsuite/23_containers/vector/bool/clear_allocator.cc: New.
1936 2004-05-22 Benjamin Kosnik <bkoz@redhat.com>
1938 * libsupc++/cxxabi.h: Remove duplicated and useless public and
1939 private keywords in class declarations. Format. Use
1940 stddef.h. Expose declarations to "C" compilation.
1941 * libsupc++/tinfo.cc (__upcast_result): Add copy constructor and
1942 assignment operator.
1943 (__dyncast_result): Same.
1944 * libsupc++/vec.cc (uncatch_exception): Same, use member
1945 initialization list.
1947 2004-05-22 Benjamin Kosnik <bkoz@redhat.com>
1949 * testsuite/abi_check.cc: Add unistd.h.
1951 2004-05-22 Paolo Carlini <pcarlini@suse.de>
1954 * include/bits/locale_facets.tcc (__int_to_char(unsigned long),
1955 __int_to_char(unsigned long long)): Showpos is not relevant
1957 * testsuite/22_locale/num_put/put/char/15565.cc: New.
1958 * testsuite/22_locale/num_put/put/wchar_t/15565.cc: New.
1960 * testsuite/22_locale/num_put/put/wchar_t/1.cc: Use L for the fill
1962 * testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
1963 * testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
1964 * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
1965 * testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
1966 * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
1967 * testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
1969 2004-05-21 Matthias Klose <doko@debian.org>
1971 * docs/doxygen/run_doxygen: Bump required version.
1973 2004-05-21 Benjamin Kosnik <bkoz@redhat.com>
1975 * docs/html/abi.html (libgcc_s): Additions suggested by Matthias Klose.
1976 * docs/doxygen/Intro.3: Subtractions suggested by Phil Edwards.
1978 2004-05-21 Paolo Carlini <pcarlini@suse.de>
1980 * include/bits/istream.tcc (ignore): Remove redundant line.
1981 (readsome): Tidy, closely following 27.6.1.3, p30.
1983 2004-05-20 Paolo Carlini <pcarlini@suse.de>
1985 * include/bits/istream.tcc (operator>>(basic_istream<>&,
1986 basic_string<>&)): Use a temporary buffer, thus avoiding
1987 reallocation for common case.
1988 * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
1990 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
1993 * include/bits/istream.tcc: Const-ification of a few variables.
1995 * include/bits/ostream.tcc: Trivial formatting fixes and
1996 const-ification of some variables.
1998 2004-05-20 Benjamin Kosnik <bkoz@redhat.com>
2002 * docs/doxygen/Intro.3: Remove Allocators.3.
2003 Add new extension headers, extension namespace list.
2004 * docs/doxygen/run_doxygen (problematic): Remove Allocators.3
2005 Rename GLIBCXXSTD names to std::. Rename __gnu_debug to
2006 __gnu_debug::. Remove __policy_ renames.
2007 * docs/doxygen/guide.html: Add dot note.
2008 * docs/doxygen/stdheader.cc: Edit, add files.
2009 * docs/doxygen/user.cfg.in: Regenerate with Doxygen 1.3.7.
2011 2004-05-18 Jonathan Wakely <redi@gcc.gnu.org>
2013 * include/ext/stdio_filebuf.h: Update comments to reflect PR 11691.
2015 2004-05-18 Jan Beulich <jbeulich@novell.com>
2018 * scripts/create_testsuite_files: Also find source files through
2021 2004-05-18 Jan Beulich <jbeulich@novell.com>
2024 * testsuite/lib/libstdc++.exp: Make test files writable.
2026 2004-05-18 Paolo Carlini <pcarlini@suse.de>
2028 * include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor
2031 2004-05-18 Dhruv Matani <dhruvbird@gmx.net>
2033 * include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write
2034 allocation loop which removes blocks from the global free list
2035 from O(N) to O(1) when the required blocks are <= the number
2038 2004-05-18 Jonathan Wakely <redi@gcc.gnu.org>
2040 * include/ext/enc_filebuf.h: Move concept-check macro to class scope.
2042 2004-05-17 Benjamin Kosnik <bkoz@redhat.com>
2044 * testsuite/testsuite_hooks.h (__gnu_test::conversion): New class.
2045 * testsuite/23_containers/deque/14340.cc: New.
2046 * testsuite/23_containers/list/14340.cc: New.
2047 * testsuite/23_containers/map/14340.cc: New.
2048 * testsuite/23_containers/multimap/14340.cc: New.
2049 * testsuite/23_containers/multiset/14340.cc: New.
2050 * testsuite/23_containers/set/14340.cc: New.
2051 * testsuite/23_containers/vector/14340.cc: New.
2053 2004-05-17 Douglas Gregor <gregod@cs.rpi.edu>
2056 * include/debug/safe_iterator.h (_Safe_iterator converting
2057 constructor): Only allow declaration to instantiate when the
2058 incoming _Safe_iterator has exactly the right iterator type.
2060 2004-05-17 Jonathan Wakely <redi@gcc.gnu.org>
2062 * include/bits/boost_concept_check.h: Fix old attribute syntax.
2063 * testsuite/23_containers/map/modifiers/swap.cc: Define operator<
2064 to pass concept-checks.
2065 * testsuite/23_containers/multimap/modifiers/swap.cc: Same.
2066 * testsuite/23_containers/set/modifiers/swap.cc: Same.
2067 * testsuite/23_containers/multiset/modifiers/swap.cc: Same.
2069 2004-05-16 Paolo Carlini <pcarlini@suse.de>
2071 * include/std/std_bitset.h: Minor formatting fixes.
2073 2004-05-16 Paolo Carlini <pcarlini@suse.de>
2075 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
2076 Consistently update __bin._M_free[0].
2077 (__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use
2078 __bin._M_free[0] to simplify the while loop (i.e., the number
2079 of iterations becomes known at the outset).
2081 2004-05-15 Paolo Carlini <pcarlini@suse.de>
2083 * include/std/std_bitset.h: Trivial formatting fixes.
2085 2004-05-14 Paolo Carlini <pcarlini@suse.de>
2086 Ivan Godard <igodard@pacbell.net>
2089 * include/std/std_bitset.h (_Base_bitset<_Nw>::_M_do_find_next): Fix.
2090 * testsuite/23_containers/bitset/ext/15361.cc: New.
2092 2004-05-13 Benjamin Kosnik <bkoz@redhat.com>
2095 * crossconfig.m4: Add C99 math bits for linux crosses.
2096 * configure: Regenerate.
2098 2004-05-13 Simon Marshall <simon.marshall@misys.com>
2099 Benjamin Kosnik <bkoz@redhat.com>
2102 * include/bits/locale_facets.h: Fix for -fno-for-scope.
2103 * include/debug/safe_sequence.h: Same.
2104 * include/debug/safe_iterator.tcc: Same.
2105 * src/debug.cc: Same.
2106 * src/locale.cc: Same.
2107 * src/locale_init.cc: Same.
2108 * src/localename.cc: Same.
2109 * config/locale/gnu/ctype_members.cc: Same.
2110 * config/locale/gnu/numeric_members.cc: Same.
2111 * testsuite/testsuite_abi.cc: Same.
2112 * testsuite/testsuite_hooks.cc: Same.
2114 2004-05-13 Jonathan Wakely <redi@gcc.gnu.org>
2116 * docs/html/abi.html: Document effect of -fabi-version on value
2117 of __GXX_ABI_VERSION, and that it's defined in c-cppbuiltin.c.
2120 2004-05-13 Benjamin Kosnik <bkoz@redhat.com>
2123 * docs/html/faq/index.html: Update docs for libsupc++ usage.
2125 2004-05-13 Benjamin Kosnik <bkoz@redhat.com>
2128 * include/bits/stl_threads.h (_GLIBCXX_mutex): Move to namespace
2130 (_GLIBCXX_mutex_address): Same.
2131 (_GLIBCXX_once): Same.
2132 (_GLIBCXX_mutex_init): Same.
2133 (_GLIBCXX_mutex_address_init): Same.
2135 2004-05-13 Benjamin Kosnik <bkoz@redhat.com>
2137 * docs/html/abi.html: New.
2138 * docs/html/abi.txt: Remove.
2139 * docs/html/documentation.html: Add link.
2140 * testsuite/Makefile.am: Add files.
2141 * testsuite/Makefile.in: Regenerated.
2142 * testsuite/abi_check.cc: Move and modify code into...
2143 * testsuite/testsuite_abi.cc: Add.
2144 * testsuite/testsuite_abi.h: Add.
2146 * docs/html/17_intro/TODO: Update.
2147 * include/bits/stl_pair.h: Format.
2149 2004-05-06 Matthias Klose <doko@debian.org>
2151 * include/backward/iterator.h: Add GPL copyright info,
2152 with exception clause.
2153 * include/bits/boost_concept_check.h: Likewise.
2155 * libsupc++/tinfo.h: Likewise.
2156 * po/string_literals.cc: Likewise.
2158 2004-05-03 Andreas Tobler <a.tobler@schweiz.ch>
2160 * acinclude.m4: Replace -W with more speaking -Wextra.
2161 * configure: Rebuilt.
2163 2004-05-03 Paolo Carlini <pcarlini@suse.de>
2165 Optimize locale::_M_impl->_M_names for the most common cases:
2166 !_M_names[0] means unnamed; !_M_names[1] means all the categories
2167 the same name (_M_names[0] && _M_names[1] means that the full set
2168 of _M_names must be processed, the general case).
2169 * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name):
2170 Tweak, saving work when !_M_names[1].
2171 (locale::locale(const locale&, _Facet*): Simplify: now just setting
2172 _M_names[0] = 0 means unnamed.
2173 * src/locale.cc (locale::operator==): Deal first with the common,
2174 easy cases, otherwise fall back to locale::name().
2175 (locale::name()): Tweak, if !_M_names[0] just return "*".
2176 (locale::_Impl::_Impl(const _Impl&, size_t): Tweak, early stop
2177 copying __imp._M_names if !__imp._M_names[0] or !__imp._M_names[1].
2178 * src/locale_init.cc (locale::_Impl::_Impl(size_t)): Tweak.
2179 * src/localename.cc (locale::_Impl::_Impl(const char*, size_t):
2180 Simplify when !std::strchr, just updating _M_names[0]; clean up.
2181 (locale::_Impl::_M_replace_categories): When !_M_names[1] prepare
2182 for the general case (full set of names), then do the usual work;
2185 * src/locale.cc (locale::name()): Reserve space in __ret.
2186 * src/locale_init.cc (locale::global(const locale&)): Save
2187 the name in a temporary.
2188 * src/localename.cc (locale::locale(const char*)): Reserve space
2191 2004-04-29 Paolo Carlini <pcarlini@suse.de>
2193 * src/locale.cc (locale::operator==): Always avoid constructing
2194 locale::name(), directly compare pairs of _M_names.
2196 2004-04-26 Paolo Carlini <pcarlini@suse.de>
2198 * include/bits/istream.tcc: Fix comment.
2200 2004-04-26 Paolo Carlini <pcarlini@suse.de>
2202 * include/bits/stl_vector.h: Trivial formatting fixes.
2203 * include/bits/vector.tcc: Likewise.
2205 2004-04-25 Paolo Carlini <pcarlini@suse.de>
2207 PR libstdc++/15002 (continued again)
2208 * include/bits/istream.tcc (getline(basic_istream<>&,
2209 basic_string<>&, _CharT)): Use a temporary buffer, thus
2210 avoiding reallocation for common case.
2212 * include/bits/basic_string.tcc (_S_construct(_InIterator,
2213 _InIterator, const _Alloc&, input_iterator_tag)): Tweak size
2214 of temporary buffer to a power of two.
2216 * testsuite/27_io/basic_istream/getline/char/4.cc: Add comment.
2218 2004-04-25 Paolo Carlini <pcarlini@suse.de>
2220 * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
2222 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
2224 * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
2226 2004-04-24 Paolo Carlini <pcarlini@suse.de>
2227 Petur Runolfsson <peturr02@ru.is>
2229 PR libstdc++/15002 (continued)
2230 * include/bits/istream.tcc (basic_istream<>::getline(char_type*,
2231 streamsize, char_type)): Use traits::find/copy in a loop to speed
2232 up greatly the function in the common case (I/O buffer size >> 1).
2234 2004-04-24 Paolo Carlini <pcarlini@suse.de>
2236 * testsuite/27_io/basic_istream/getline/char/4.cc: New.
2238 * include/bits/istream.tcc (getline(basic_istream<>&,
2239 basic_string<>&, _CharT)): Change to use sgetc()/snextc() instead
2240 of sbumpc(), consistently with the other functions, thus also
2241 dealing correctly with the case of exceeded string::max_size().
2243 2004-04-24 Matthias Klose <doko@debian.org>
2245 Jonathan Wakely <cow@compsoc.man.ac.uk>
2246 * docs/html/configopts.html: Fix reference to allocator config option.
2248 2004-04-23 Andrew Pinski <pinskia@physics.uc.edu>
2250 * linkage.m4 (GLIBCXX_CHECK_MATH_SUPPORT): Check for libmx also.
2251 * configure: Regenerate.
2253 2004-04-23 Daniel Jacobowitz <drow@mvista.com>
2255 PR libstdc++/15047, libstdc++/11610
2256 * testsuite/lib/libstdc++.exp (v3-copy-files): Use remote_download.
2257 (libstdc++_init): Don't pass outdir to v3-copy-files.
2259 2004-04-21 Paolo Carlini <pcarlini@suse.de>
2261 * include/bits/deque.tcc: Trivial formatting fixes.
2262 * include/bits/stl_deque.h: Likewise.
2263 * include/bits/stl_list.h: Likewise.
2264 * include/bits/stl_tree.h: Likewise.
2266 2004-04-21 Paolo Carlini <pcarlini@suse.de>
2267 Andrew Pinski <pinskia@physics.uc.edu>
2269 * include/bits/basic_string.tcc (_M_mutate): Don't compute
2270 __src unnecessarily.
2272 2004-04-19 Benjamin Kosnik <bkoz@redhat.com>
2274 * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
2275 Clarify assertion, set test variable to false before assert.
2276 * testsuite/27_io/basic_istringstream/str/char/1.cc: Same.
2277 * testsuite/27_io/basic_stringstream/str/char/1.cc: Same.
2278 * testsuite/27_io/ios_base/storage/2.cc: Same.
2280 * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Fix
2282 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Same.
2283 * testsuite/27_io/fpos/14320-3.cc: Same.
2285 * testsuite/27_io/basic_filebuf/2.cc: Instantiate in namespace std.
2286 * testsuite/27_io/fpos/1.cc: Same.
2287 * testsuite/27_io/basic_stringstream/2.cc: Same.
2288 * testsuite/27_io/basic_stringbuf/4.cc: Same.
2289 * testsuite/27_io/basic_stringbuf/1.cc: Same.
2290 * testsuite/27_io/basic_stringbuf/2.cc: Same.
2291 * testsuite/27_io/basic_streambuf/2.cc: Same.
2292 * testsuite/27_io/basic_ostringstream/2.cc: Same.
2293 * testsuite/27_io/basic_ostream/2.cc: Same.
2294 * testsuite/27_io/basic_ofstream/2.cc: Same.
2295 * testsuite/27_io/basic_istringstream/2.cc: Same.
2296 * testsuite/27_io/basic_istream/2.cc: Same.
2297 * testsuite/27_io/basic_iostream/2.cc: Same.
2298 * testsuite/27_io/basic_ios/2.cc: Same.
2299 * testsuite/27_io/basic_ifstream/2.cc: Same.
2300 * testsuite/27_io/basic_fstream/2.cc: Same.
2301 * testsuite/ext/stdio_filebuf/char/1.cc: Same, in namespace __gnu_cxx.
2303 * testsuite/21_strings/basic_string/capacity/1.cc: Don't compare
2304 unsigned against zero.
2305 * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Same.
2306 * testsuite/21_strings/basic_string/capacity/char/1.cc: Same.
2308 * testsuite/18_support/new_delete_placement.cc: Initialize
2309 variables before first use.
2310 * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Same.
2311 * testsuite/21_strings/char_traits/requirements/char/1.cc: Same.
2312 * testsuite/21_strings/char_traits/requirements/short/1.cc: Same.
2313 * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
2315 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_badbit_throw.cc: Same.
2316 * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
2318 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_failbit_throw.cc: Same.
2319 * testsuite/27_io/types/2.cc: Same.
2321 * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Fix temporary
2323 * testsuite/27_io/fpos/14775.cc: Same.
2325 2004-04-19 Paolo Carlini <pcarlini@suse.de>
2327 PR libstdc++/15002 (partial)
2328 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
2329 Special case __n2 == 1, not calling traits_type::assign/copy.
2331 2004-04-17 Benjamin Kosnik <bkoz@redhat.com>
2333 * include/bits/stl_bvector.h: Use _M_impl._M_start.
2335 2004-04-16 Benjamin Kosnik <bkoz@redhat.com>
2337 * include/bits/c++config (_GLIBCXX_STD): New.
2338 * src/list.cc: Use it.
2339 * include/std/std_bitset.h: Same.
2340 * include/bits/vector.tcc: Same.
2341 * include/bits/stl_set.h: Same.
2342 * include/bits/stl_multiset.h: Same.
2343 * include/bits/stl_multimap.h: Same.
2344 * include/bits/stl_map.h: Same.
2345 * include/bits/stl_list.h: Same.
2346 * include/bits/stl_vector.h: Same.
2347 * include/bits/stl_bvector.h: Same.
2348 * include/bits/stl_deque.h: Same.
2349 * include/bits/deque.tcc: Same.
2350 * include/bits/list.tcc: Same.
2351 * include/debug/vector: Same.
2352 * include/debug/set.h: Same.
2353 * include/debug/multiset.h: Same.
2354 * include/debug/multimap.h: Same.
2355 * include/debug/map.h: Same.
2356 * include/debug/list: Same.
2357 * include/debug/deque: Same.
2358 * include/debug/bitset: Same.
2359 * include/debug/formatter.h (__gnu_debug): Remove using directive.
2360 Add using declaration for std::type_info.
2361 * include/debug/safe_iterator.h: Add using declaration for
2362 std::iterator_traits and std::pair.
2363 * src/debug_list.cc: New.
2364 * src/Makefile.am: Add debug_list.cc.
2365 * src/Makefile.in: Regenerate.
2366 * config/linker-map.gnu: Add _List_node_base exports for std and
2369 * include/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl
2370 idiom that other containers use.
2371 * testsuite/23_containers/vector/bool/clear_allocator.cc: New.
2373 2004-04-16 Paolo Carlini <pcarlini@suse.de>
2376 * include/bits/fstream.tcc (basic_filebuf::imbue): Zero _M_codecvt
2378 * testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: New.
2379 * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: New.
2381 2004-04-16 Paolo Carlini <pcarlini@suse.de>
2383 * acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not
2385 * config.h.in: Regenerate.
2387 2004-04-16 Paolo Carlini <pcarlini@suse.de>
2389 * config/locale/generic/monetary_members.cc
2390 (moneypunct<wchar_t>::_M_initialize_moneypunct): Avoid calling
2391 btowc unnecessarily, just cast to wchar_t (the concerned chars
2392 all belong to the basic character set).
2393 * config/locale/generic/numeric_members.cc
2394 (numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
2395 * config/locale/gnu/monetary_members.cc
2396 (moneypunct<wchar_t>::_M_initialize_moneypunct): Likewise.
2397 * config/locale/gnu/numeric_members.cc
2398 (numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
2400 2004-04-15 Paolo Carlini <pcarlini@suse.de>
2402 * src/locale.cc (locale::operator==): When _M_impl == __rhs._M_impl
2403 avoid constructing unnecessarily this->name().
2405 2004-04-14 Zack Weinberg <zack@codesourcery.com>
2407 * testsuite/Makefile.am: Add definition of AM_CXXFLAGS.
2408 Change definition of CXX to use $(shell) instead of backticks.
2409 * testsuite/Makefile.in: Regenerate.
2411 2004-04-12 Dhruv Matani <dhruvbird@gmx.net>
2413 * testsuite/performance/20_util/allocator/list_sort_search.cc:
2414 Minor formatting fixes.
2415 * testsuite/performance/20_util/allocator/map_mt_find.cc:
2418 2004-04-12 Paolo Carlini <pcarlini@suse.de>
2420 * config/locale/gnu/numeric_members.cc
2421 (numpunct<wchar_t>::_M_initialize_numpunct): No need to wrap
2422 in __uselocale, since btowc is called for chars belonging to
2423 the basic character set.
2425 2004-04-09 Paolo Carlini <pcarlini@suse.de>
2427 * testsuite/22_locale/messages/members/char/1.cc: Remove junk.
2428 * testsuite/22_locale/messages/members/char/2.cc: Ditto.
2429 * testsuite/22_locale/messages/members/char/3.cc: Ditto.
2430 * testsuite/22_locale/num_get/get/char/1.cc: Ditto.
2431 * testsuite/22_locale/num_get/get/char/2.cc: Ditto.
2432 * testsuite/22_locale/num_get/get/char/3.cc: Ditto.
2433 * testsuite/22_locale/num_get/get/wchar_t/1.cc: Ditto.
2434 * testsuite/22_locale/num_get/get/wchar_t/2.cc: Ditto.
2435 * testsuite/22_locale/num_get/get/wchar_t/3.cc: Ditto.
2436 * testsuite/22_locale/num_put/put/char/1.cc: Ditto.
2437 * testsuite/22_locale/num_put/put/char/2.cc: Ditto.
2438 * testsuite/22_locale/num_put/put/char/3.cc: Ditto.
2439 * testsuite/22_locale/num_put/put/wchar_t/1.cc: Ditto.
2440 * testsuite/22_locale/num_put/put/wchar_t/2.cc: Ditto.
2441 * testsuite/22_locale/num_put/put/wchar_t/3.cc: Ditto.
2442 * testsuite/22_locale/numpunct/members/char/1.cc: Ditto.
2443 * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Ditto.
2445 2004-04-07 Paolo Carlini <pcarlini@suse.de>
2447 * config/locale/generic/time_members.cc
2448 (__timepunct<char>::_M_initialize_timepunct,
2449 __timepunct<wchar_t>::_M_initialize_timepunct): the correct
2450 _M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively.
2451 * config/locale/gnu/time_members.cc
2452 (__timepunct<char>::_M_initialize_timepunct,
2453 __timepunct<wchar_t>::_M_initialize_timepunct): Ditto.
2454 * testsuite/22_locale/time_get/get_monthname/char/4.cc: New.
2455 * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New.
2457 * testsuite/22_locale/time_get/date_order/char/1.cc: Remove junk.
2458 * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Ditto.
2459 * testsuite/22_locale/time_get/get_date/char/1.cc: Ditto.
2460 * testsuite/22_locale/time_get/get_date/char/2.cc: Ditto.
2461 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Ditto.
2462 * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Ditto.
2463 * testsuite/22_locale/time_get/get_monthname/char/1.cc: Ditto.
2464 * testsuite/22_locale/time_get/get_monthname/char/2.cc: Ditto.
2465 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
2466 * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Ditto.
2467 * testsuite/22_locale/time_get/get_time/char/1.cc: Ditto.
2468 * testsuite/22_locale/time_get/get_time/char/2.cc: Ditto.
2469 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
2470 * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Ditto.
2471 * testsuite/22_locale/time_get/get_weekday/char/1.cc: Ditto.
2472 * testsuite/22_locale/time_get/get_weekday/char/2.cc: Ditto.
2473 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
2474 * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Ditto.
2475 * testsuite/22_locale/time_get/get_year/char/1.cc: Ditto.
2476 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
2477 * testsuite/22_locale/time_put/put/char/1.cc: Ditto.
2478 * testsuite/22_locale/time_put/put/char/2.cc: Ditto.
2479 * testsuite/22_locale/time_put/put/char/3.cc: Ditto.
2480 * testsuite/22_locale/time_put/put/char/4.cc: Ditto.
2481 * testsuite/22_locale/time_put/put/char/5.cc: Ditto.
2482 * testsuite/22_locale/time_put/put/char/6.cc: Ditto.
2483 * testsuite/22_locale/time_put/put/char/7.cc: Ditto.
2484 * testsuite/22_locale/time_put/put/char/8.cc: Ditto.
2485 * testsuite/22_locale/time_put/put/wchar_t/1.cc: Ditto.
2486 * testsuite/22_locale/time_put/put/wchar_t/2.cc: Ditto.
2487 * testsuite/22_locale/time_put/put/wchar_t/3.cc: Ditto.
2488 * testsuite/22_locale/time_put/put/wchar_t/4.cc: Ditto.
2489 * testsuite/22_locale/time_put/put/wchar_t/5.cc: Ditto.
2490 * testsuite/22_locale/time_put/put/wchar_t/6.cc: Ditto.
2491 * testsuite/22_locale/time_put/put/wchar_t/7.cc: Ditto.
2492 * testsuite/22_locale/time_put/put/wchar_t/8.cc: Ditto.
2494 * testsuite/22_locale/time_put/put/char/9780-1.cc: Fix typos.
2496 2004-04-07 Paolo Carlini <pcarlini@suse.de>
2498 * config/locale/gnu/monetary_members.cc
2499 (moneypunct<wchar_t>::_M_initialize_moneypunct): Prefer
2500 _NL_MONETARY_DECIMAL_POINT_WC, _NL_MONETARY_THOUSANDS_SEP_WC,
2501 and __MON_GROUPING to _NL_NUMERIC_DECIMAL_POINT_WC,
2502 _NL_NUMERIC_THOUSANDS_SEP_WC, and GROUPING.
2503 * config/locale/gnu/numeric_members.cc
2504 (numpunct<char>::_M_initialize_numpunct): Prefer DECIMAL_POINT
2505 and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP.
2507 2004-04-06 Benjamin Kosnik <bkoz@redhat.com>
2509 Fixups for EDG front end.
2510 * include/ext/rope: Instead of non-existent function
2511 _Data_allocate, use allocator's allocate. Use this.
2512 (namespace _Rope_constants): Move _S_max_rope_depth, and _Tag
2513 enumerations from _Rope_RopeRep here.
2514 * include/ext/ropeimpl.h: Same.
2515 * src/ext-inst.cc (_S_min_len): Fix up definition.
2517 * config/locale/gnu/ctype_members.cc: Qualify base class members
2519 * config/locale/generic/ctype_members.cc: Same.
2520 * config/locale/gnu/messages_members.h: Same.
2521 * config/locale/generic/messages_members.h: Same.
2522 * src/ctype.cc: Same.
2523 * include/bits/codecvt.h: Same.
2525 * include/bits/boost_concept_check.h: Declare.
2526 (__error_type_must_be_an_unsigned_integer_type): Remove this.
2527 (__error_type_must_be_an_integer_type): Remove this.
2528 (__error_type_must_be_a_signed_integer_type): Remove this.
2530 * config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast.
2532 * libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception
2533 specification to definition.
2534 (__cxa_allocate_exception): Same.
2535 * libsupc++/eh_catch.cc (__cxa_begin_catch): Same.
2536 * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same.
2537 (__cxa_get_globals): Same.
2539 * libsupc++/del_op.cc: Add comment about freestanding.
2541 2004-04-05 Paolo Carlini <pcarlini@suse.de>
2543 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
2544 The critical section is actually very small, only two assignments.
2546 2004-04-04 Paolo Carlini <pcarlini@suse.de>
2547 Petur Runolfsson <peturr02@ru.is>
2549 * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New,
2550 adapted from libstdc++/11378.
2552 2004-04-03 Paolo Carlini <pcarlini@suse.de>
2554 * include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out
2555 some duplicated code.
2556 (__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used
2557 in the single threaded case.
2558 * testsuite/performance/20_util/allocator/list_sort_search.cc:
2559 Reorder and renumber the tests consistently with the other testfiles.
2560 * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
2561 * testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
2562 * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
2564 2004-04-02 Paolo Carlini <pcarlini@suse.de>
2566 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
2567 Rearrange arithmetic to avoid computing two divisions at
2570 2004-04-01 Paolo Carlini <pcarlini@suse.de>
2572 * include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize):
2573 Streamline the second half, wrapping it in a single
2574 '#ifdef __GTHREADS if (__gthread_active_p())' and avoiding
2575 conditionals inside loops.
2577 2004-04-01 Paolo Carlini <pcarlini@suse.de>
2580 * acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS.
2581 * acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call
2582 GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define
2583 to _GLIBCXX_RES_LIMITS.
2584 (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to
2586 * testsuite/testsuite_hooks.h: Declare set_file_limit.
2587 * testsuite/testsuite_hooks.cc: Define it, using getrlimit
2588 and setrlimit(RLIMIT_FSIZE).
2589 * testsuite/27_io/fpos/14775.cc: New.
2590 * config.h.in: Regenerate.
2591 * configure: Likewise.
2593 2004-03-31 Paolo Carlini <pcarlini@suse.de>
2595 * config/locale/generic/c_locale.cc (__convert_to_v(long double&)):
2596 In v3 uses of sscanf, the special floating-point numbers INF,
2597 INFINITY, etc., cannot occur in input, therefore, if the latter
2598 is too large, ERANGE is always stored in errno, no need of finitel.
2600 2004-03-30 Benjamin Kosnik <bkoz@redhat.com>
2603 * include/bits/stl_tree.h: Adjust initialization list order.
2605 2004-03-29 Loren J. Rittle <ljrittle@acm.org>
2607 * testsuite/thread/pthread7-rope.cc: Update comment to reflect test.
2609 2004-03-29 Paolo Carlini <pcarlini@suse.de>
2611 * testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending
2612 on allocator behavior, the memory pointed by data2 may well be not
2615 2004-03-28 Chavdar Botev <cbotev@yahoo.com>
2618 * include/bits/basic_string.tcc
2619 (basic_string::basic_string(const basic_string&)): Pass to
2620 _Rep::_M_grab the actual allocator of the string being constructed
2621 not the default constructed one.
2623 2004-03-27 Benjamin Kosnik <bkoz@redhat.com>
2626 * config/locale/ieee_1003.1-2001/codecvt_specializations.h
2627 (__enc_traits::_M_destroy): New.
2628 (__enc_traits::~__enc_traits): Use it.
2629 (__enc_traits::operator=): Use _M_destroy, _M_init.
2630 (__enc_traits::__enc_traits): Same.
2632 2004-03-27 Petur Runolfsson <peturr02@ru.is>
2634 * testsuite/ext/enc_filebuf/char/13598.cc: New.
2636 2004-03-27 Paolo Carlini <pcarlini@suse.de>
2638 * include/ext/mt_allocator.h: Uglify consistently names of
2639 variables, members and classes; tidy.
2641 2004-03-27 Dhruv Matani <dhruvbird@gmx.net>
2643 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
2644 Deallocation loop rewrote.
2646 2004-03-26 Paolo Carlini <pcarlini@suse.de>
2648 * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
2649 __mt_alloc<>::deallocate): Protect two instances of
2650 block->thread_id with __GTHREADS.
2652 2004-03-25 Gawain Bolton <gp.bolton@computer.org>
2654 * include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator
2655 default argument in constructors.
2656 (_Rb_tree::_M_empty_initialize): Remove.
2658 2004-03-25 Benjamin Kosnik <bkoz@redhat.com>
2660 * testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
2661 * testsuite/23_containers/set/operators/1_neg.cc: Same.
2663 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
2665 * include/bits/cpp_type_traits.h: Changed __is_pod
2666 completely. Now, it does not use any of the previous type_traits
2667 to detect the pod types, and it also detects function pointers as
2670 * include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl,
2671 which encapsulates the internal implementation of an rb_tree. Made
2672 the allocator a base class of this class instead of the rb_tree,
2673 which was not conforming. This _Rb_tree_impl class is also
2674 specialized on whether the _Compare parameter is a POD type or
2675 not. If so, then it maintains the comparison function as a data
2676 member, otherwise it makes the _Compare parameter a base class of
2677 itself. Also, _M_key_compare is now a function instead of a data
2678 member, so that the above trick can work properly. Delegated the
2679 initialization of the other data members to this newly created
2680 class. Also, now other member functions of rb_tree must refer to
2681 _M_key_compare as _M_impl._M_key_compare(). The other data members
2682 (*) can be referenced to as _M_impl.(*), where
2683 (*) includes _M_header, and _M_node_count.
2685 2004-03-25 Paolo Carlini <pcarlini@suse.de>
2687 * include/ext/mt_allocator.h (__mt_alloc<>::tune):
2688 Add _M_min_bin, the size in bytes of the smallest bin.
2689 (__mt_alloc<>::tune()): Tweak accordingly.
2690 (__mt_alloc<>::tune(size_t, ...)): Likewise.
2691 (__mt_alloc<>::block_record): Change to a union: members next
2692 and thread_id are never used at the same time.
2693 (__mt_alloc<>::allocate): Update consistently.
2694 (__mt_alloc<>::deallocate): Likewise.
2695 (__mt_alloc<>::_S_initialize): Update setups of _S_binmap and
2696 _S_bin_size for the configurable _M_min_size.
2698 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
2700 * include/bits/stl_list.h: Created a _List_impl class and made it
2701 derive from the allocator, instead of the list deriving from the
2702 allocator class, which was not conformant. Changed all references
2703 from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same
2704 as above (changed all references to the concerned variables).
2706 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
2708 * include/bits/stl_deque.h: Created a _Deque_impl class and made
2709 it derive from the allocator, instead of the deque deriving from
2710 the allocator class, which was not conformant. Changed all
2711 references to the _M_start, _M_finish, _M_map, and _M_map_size to
2713 (_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this->
2714 qualification in 2 places where it was missing.
2715 (_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as
2717 * include/bits/deque.tcc: Same as above (changed all references to
2718 the concerned variables).
2720 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
2722 * include/bits/stl_vector.h: Created a _Vector_impl class and made
2723 it derive from the allocator, instead of the _Vector_base class,
2724 deriving from the allocator which was not conformant. Changed all
2725 references to the _M_start, _M_finish, and _M_end_of_storage to
2727 * include/bits/vector.tcc: Same as above (changed all references
2728 to the concerned variables).
2730 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
2732 * testsuite/23_containers/deque/cons/clear_allocator.cc: New.
2733 * testsuite/23_containers/list/cons/clear_allocator.cc: New.
2734 * testsuite/23_containers/vector/cons/clear_allocator.cc: New.
2736 2004-03-24 Dhruv Matani <dhruvbird@gmx.net>
2738 * include/ext/malloc_allocator.h: Fixed the construct function to
2739 call global placement new instead of assignment. Added a check
2740 after the return from malloc to check whether returned pointer is
2741 NULL, and if so, throw std::bad_alloc().
2742 * include/ext/debug_allocator.h: Added a check in the deallocate
2743 function to check whether the user has passed a NULL pointer or
2746 2004-03-24 Benjamin Kosnik <bkoz@redhat.com>
2748 * docs/html/20_util/allocator.html: Add bitmap_allocator links.
2750 2004-03-24 Andreas Schwab <schwab@suse.de>
2752 * testsuite/lib/prune.exp (prune_g++_output): Ignore errata
2753 warning from IA64 assembler.
2755 2004-03-24 Dhruv Matani <dhruvbird@gmx.net>
2757 * include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this
2758 function call __builtin_ctz instead of the while loop.
2759 (allocate) -> If condition has __builtin_expect.
2760 (deallocate) -> Ditto.
2761 Renamed a few left-over variables and typedefs according to the
2762 C++STYLE mentioned in the documentation.
2763 Protected calls to __gthread* by __gthread_active_p(), whose value
2764 is cached in the local variable __threads_active.
2766 2004-03-24 Felix Yen <fwy@alumni.brown.edu>
2768 * testsuite/performance/20_util/allocator/producer_consumer.cc:
2769 Use linear algorithm for producer.
2771 2004-03-24 Paolo Carlini <pcarlini@suse.de>
2773 * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
2774 __mt_alloc<>::deallocate): Avoid redundant conditionals.
2776 2004-03-23 Benjamin Kosnik <bkoz@redhat.com>
2778 * include/bits/locale_facets.h: Tweaks for 80 column.
2779 (__numpunct_cache::_M_cache): Move to locale_facets.tcc.
2780 (__moneypunct_cache::_M_cache): Same.
2781 (num_get): Don't inherit from __num_base.
2783 (money_get): Don't inherit from money_base.
2785 (__timepunct::_M_am_pm_format): New.
2786 (time_get::_M_extract_num): Return iterator, use ios_base as argument.
2787 (time_get::_M_extract_name): Same.
2788 (time_get::_M_extract_via_format): Same.
2789 * include/bits/locale_facets.tcc: Tweaks for 80 column.
2790 Use _M_getloc instead of getloc.
2791 * testsuite/22_locale/money_put/put/char/9780-3.cc: New.
2792 * testsuite/22_locale/num_put/put/char/9780-2.cc: New.
2793 * testsuite/22_locale/time_put/put/char/9780-1.cc: New.
2795 2004-03-22 Paolo Carlini <pcarlini@suse.de>
2797 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
2798 * configure: Regenerate.
2799 * config/allocator/pool_allocator_base.h: New.
2800 * include/ext/pool_allocator.h: Convert to a standard-conforming
2802 * src/allocator.cc: Tweak instantiations.
2803 * testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc.
2804 * testsuite/performance/20_util/allocator/insert_insert.cc: Ditto.
2805 * testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto.
2806 * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
2807 * testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
2808 * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
2810 2004-03-22 Hans-Peter Nilsson <hp@axis.com>
2812 * config/cpu/cris/atomicity.h (__atomic_add): Remove "static
2813 inline" and attribute-unused. Qualify parameter __mem with
2815 (__exchange_and_add): Ditto. Add back memory clobber to asm.
2817 2004-03-20 Paolo Carlini <pcarlini@suse.de>
2819 * testsuite/27_io/basic_istream/extractors_arithmetic/char/2.cc:
2821 * testsuite/27_io/basic_istream/extractors_arithmetic/char/3.cc:
2823 * testsuite/27_io/basic_istream/extractors_arithmetic/char/6.cc:
2825 * testsuite/27_io/basic_istream/extractors_arithmetic/char/7.cc:
2827 * testsuite/27_io/basic_istream/extractors_arithmetic/char/8.cc:
2829 * testsuite/27_io/basic_istream/extractors_arithmetic/char/9.cc:
2831 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
2833 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
2835 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
2837 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
2840 2004-03-20 Paolo Carlini <pcarlini@suse.de>
2842 * include/std/std_valarray.h: Document DR389 [Ready].
2843 * docs/html/ext/howto.html: Add an entry for DR389.
2845 2004-03-19 Michael Eager <eager@mvista.com>
2847 * config/cpu/mips/atomicity.h: Prevent reg loads between LL and
2850 2004-03-19 Paolo Carlini <pcarlini@suse.de>
2852 * testsuite/22_locale/num_get/get/char/11.cc: Remove redundant
2854 * testsuite/22_locale/num_get/get/char/12.cc: Likewise.
2855 * testsuite/22_locale/num_get/get/char/13.cc: Likewise.
2856 * testsuite/22_locale/num_get/get/char/14.cc: Likewise.
2857 * testsuite/22_locale/num_get/get/char/15.cc: Likewise.
2858 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
2859 * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
2860 * testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
2861 * testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
2862 * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
2864 2004-03-19 Paolo Carlini <pcarlini@suse.de>
2865 Petur Runolfsson <peturr02@ru.is>
2868 * include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's
2869 no way to find out the conversion used by the underlying FILE*.
2870 * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New.
2871 * testsuite/27_io/objects/char/9.cc: Tweak.
2873 2004-03-19 Paolo Carlini <pcarlini@suse.de>
2876 * include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix
2877 memory allocation/deallocation calls.
2878 * testsuite/ext/14648.cc: New.
2880 2004-03-19 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
2883 * include/backward/bvector.h (bit_vector): Allocator is in std
2886 2004-03-19 Phil Edwards <phil@codesourcery.com>
2888 * acinclude.m4 (GLIBCXX_CHECK_WCHAR_T_SUPPORT): Set LIBICONV,
2889 not libiconv. SUBST this variable as well.
2890 * testsuite/Makefile.am (site.exp): New target, based on that
2891 created by automake. Also set libiconv.
2893 * configure, Makefile.in, include/Makefile.in, libmath/Makefile.in,
2894 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
2895 testsuite/Makefile.in: Regenerate.
2897 2004-03-16 Benjamin Kosnik <bkoz@redhat.com>
2899 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Default setting is
2900 new_allocator for all hosts.
2901 * configure: Regenerate.
2903 2004-03-16 Paolo Carlini <pcarlini@suse.de>
2905 * testsuite/22_locale/num_put/put/char/4.cc: Fix for 64-bit pointers.
2906 * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
2908 2004-03-15 Paolo Carlini <pcarlini@suse.de>
2910 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
2911 Adjust the logic underlying the parsing of symbol to deal
2912 correctly with an optional sign component (i.e., when either
2913 negative_sign or positive_sign is empty)
2914 * testsuite/22_locale/money_get/get/char/19.cc: New.
2915 * testsuite/22_locale/money_get/get/wchar_t/19.cc: New.
2917 2004-03-15 Paolo Carlini <pcarlini@suse.de>
2919 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
2920 Do not accept an incomplete currency symbol.
2921 * testsuite/22_locale/money_get/get/char/18.cc: New.
2922 * testsuite/22_locale/money_get/get/wchar_t/18.cc: New.
2924 2004-03-13 Benjamin Kosnik <bkoz@redhat.com>
2926 * config/allocator: New.
2927 * config/allocator/bitmap_allocator_base.h: New.
2928 * config/allocator/malloc_allocator_base.h: New.
2929 * config/allocator/mt_allocator_base.h: New.
2930 * config/allocator/new_allocator_base.h: New.
2931 * include/bits/allocator.h: Include c++allocator.h.
2932 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
2933 * aclocal.m4: Regenerate.
2934 * configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
2935 * configure: Regenerate.
2936 * include/Makefile.am (host_headers_extra): Add c++allocator.h.
2937 * include/Makefile.in: Regenerate.
2938 * docs/html/configopts.html: Add enable-libstdcxx-allocator.
2940 2004-03-12 Benjamin Kosnik <bkoz@redhat.com>
2942 * include/bits/allocator.h: Revert.
2944 2004-03-12 Paolo Carlini <pcarlini@suse.de>
2946 * docs/html/ext/howto.html: Add entry for DR 253 [Ready].
2947 * include/bits/gslice_array.h: Add comment about DR 253.
2948 * include/bits/indirect_array.h: Likewise.
2949 * include/bits/mask_array.h: Likewise.
2950 * include/bits/slice_array.h: Likewise.
2952 2004-03-12 Benjamin Kosnik <bkoz@redhat.com>
2954 * testsuite/20_util/allocator/14176.cc: New.
2955 * include/ext/mt_allocator.h: Formatting fixes.
2957 2004-03-11 Dhruv Matani <dhruvbird@HotPOP.com>
2959 * include/Makefile.am (ext_headers): Add
2960 ${ext_srcdir}/bitmap_allocator.h .
2961 * include/Makefile.in: Regenerate.
2962 * docs/html/ext/ballocator_doc.txt: New file.
2963 * include/ext/bitmap_allocator.h: New file.
2964 * testsuite/performance/20_util/allocator/list_sort_search.cc: Add
2966 * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
2967 * testsuite/performance/20_util/allocator/producer_consumer.cc: Add
2968 test for the bitmap_allocator<>.
2969 * testsuite/performance/20_util/allocator/insert.cc: Likewise.
2970 * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
2971 * testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
2973 2004-03-11 Paolo Carlini <pcarlini@suse.de>
2975 * include/std/std_complex.h (pow(const complex&, const _Tp&),
2976 pow(const _Tp&, const complex&), pow(const complex&,
2977 const complex&)): Fully qualify with std:: a few calls.
2978 * testsuite/26_numerics/complex/13450.cc: Minor tweak.
2980 2004-03-11 Steven Bosscher <stevenb@suse.de>
2983 * include/c_std/cmath.tcc (__cmath_power): Define inline.
2985 2004-03-10 Kelley Cook <kcook@gcc.gnu.org>
2987 * configure.ac: Bump AC_PREREQ to 2.59.
2989 2004-03-10 Paolo Carlini <pcarlini@suse.de>
2991 * testsuite/26_numerics/valarray_subset_assignment.cc: Fix typos.
2993 2004-03-10 Paul Kienzle <pkienzle@nist.gov>
2994 Paolo Carlini <pcarlini@suse.de>
2997 * include/std/std_complex.h (pow(const complex&, const _Tp&),
2998 pow(const _Tp&, const complex&)): Use cmath pow only when safe.
2999 * testsuite/26_numerics/complex/13450.cc: New.
3001 * testsuite/26_numerics/cmath/overloads.C: Rename to overloads.cc.
3002 * testsuite/26_numerics/complex/pow.C: Rename to pow.cc and fix.
3004 2004-03-10 Jerry Quinn <jlquinn@optonline.net>
3007 * include/bits/gslice_array.h (gslice_array()): Make public.
3008 (operator=(gslice_array)): Make public. Implement.
3009 * include/bits/indirect_array.h (indirect_array()): Make public.
3010 * include/bits/mask_array.h (mask_array()): Make public.
3011 (operator=(mask_array)): Make public. Implement.
3012 * include/bits/valarray_array.tcc (__valarray_copy):
3013 Comment. Add versions for gslice_array and mask_array.
3014 * testsuite/26_numerics/valarray_subset_assignment.cc: New test.
3016 2004-03-09 Benjamin Kosnik <bkoz@redhat.com>
3018 * testsuite/23_containers/deque/modifiers/swap.cc: Add in bits for
3020 * testsuite/23_containers/vector/modifiers/swap.cc: Same.
3021 * testsuite/23_containers/set/modifiers/swap.cc: Same.
3022 * testsuite/23_containers/multiset/modifiers/swap.cc: Same.
3023 * testsuite/23_containers/multimap/modifiers/swap.cc: Same.
3024 * testsuite/23_containers/map/modifiers/swap.cc: Same.
3025 * testsuite/23_containers/list/modifiers/swap.cc: Same.
3027 * testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions.
3029 2004-03-08 Benjamin Kosnik <bkoz@redhat.com>
3032 * testsuite/23_containers/deque/modifiers/swap.cc: New.
3033 * testsuite/23_containers/list/modifiers/swap.cc: New.
3034 * testsuite/23_containers/map/modifiers/swap.cc: New.
3035 * testsuite/23_containers/multimap/modifiers/swap.cc: New.
3036 * testsuite/23_containers/multiset/modifiers/swap.cc: New.
3037 * testsuite/23_containers/set/modifiers/swap.cc: New.
3038 * testsuite/23_containers/vector/modifiers/swap.cc: New.
3040 2004-03-08 Petur Runolfsson <peturr02@ru.is>
3043 * testsuite/22_locale/locale/cons/12658_thread.cc: New.
3045 2004-03-08 Paolo Carlini <pcarlini@suse.de>
3047 * docs/html/ext/howto.html: Add entry for DR 103 [WP].
3048 * include/bits/stl_multiset.h: Add comment about DR 103.
3049 * include/bits/stl_set.h: Likewise.
3051 2004-03-08 Paolo Carlini <pcarlini@suse.de>
3053 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
3054 The value _space_ indicates that at least one space is required
3056 * testsuite/22_locale/money_get/get/char/17.cc: New.
3057 * testsuite/22_locale/money_get/get/wchar_t/17.cc: New.
3059 * testsuite/22_locale/money_get/get/char/7.cc: Minor tweaks.
3060 * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
3062 * include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)):
3063 Remove redundant conditional on __str.size().
3065 2004-03-08 Benjamin Kosnik <bkoz@redhat.com>
3067 * include/bits/allocator.h: Switch defaults to mt_alloc.
3069 2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
3071 * include/ext/mt_allocator.h (_S_initialize): If
3072 !__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex.
3074 2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
3077 * src/locale_init.cc (locale::locale): Lock critical regions with
3079 (locale::global): Same.
3080 * include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
3081 Add in once bits for cases without __GTHREAD_MUTEX_INIT.
3082 (__glibcxx_mutex_lock): Same.
3084 * config/cpu/generic/atomicity.h: Remove
3085 _GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h.
3086 * src/misc-inst.cc: Move all locking bits out of this file.
3088 * config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK.
3089 * src/misc-inst.cc: Same.
3090 * config/cpu/hppa/atomicity.h: Same.
3092 * config/linker-map.gnu: Remove types in the signature of atomic
3093 exports, as they may vary.
3095 2004-03-06 Paolo Carlini <pcarlini@suse.de>
3097 * include/bits/locale_facets.tcc: Tweak the comment preceding
3098 has_facet: doesn't throw.
3100 2004-03-06 Paolo Carlini <pcarlini@suse.de>
3102 * testsuite/22_locale/money_get/get/char/1.cc: Clean up.
3103 * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
3104 * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
3105 * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
3106 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
3107 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
3108 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
3109 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
3111 2004-03-06 Paolo Carlini <pcarlini@suse.de>
3113 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
3114 num_get<>::_M_extract_int, num_get<>::do_get(bool&),
3115 __pad<>::_S_pad): Prefer plain operator== to traits::eq().
3116 * testsuite/testsuite_character.h (struct __gnu_test::character):
3118 * testsuite/testsuite_hooks.h (struct __gnu_test::pod_char):
3121 2004-03-05 Paolo Carlini <pcarlini@suse.de>
3123 * testsuite/27_io/fpos/14320-2.cc: Remove xfail.
3125 2004-03-04 Benjamin Kosnik <bkoz@redhat.com>
3127 * testsuite/23_containers/multiset/insert/1.cc: Test result string.
3129 * testsuite/23_containers/bitset/invalidation/1.cc: Main always
3131 * testsuite/23_containers/deque/invalidation/4.cc: Same.
3132 * testsuite/23_containers/list/invalidation/1.cc: Same.
3133 * testsuite/23_containers/list/invalidation/2.cc: Same.
3134 * testsuite/23_containers/list/invalidation/3.cc: Same.
3135 * testsuite/23_containers/list/invalidation/4.cc: Same.
3136 * testsuite/23_containers/map/invalidation/2.cc: Same.
3137 * testsuite/23_containers/multimap/invalidation/1.cc: Same.
3138 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
3139 * testsuite/23_containers/multiset/invalidation/1.cc: Same.
3140 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
3141 * testsuite/23_containers/set/invalidation/1.cc: Same.
3142 * testsuite/23_containers/set/invalidation/2.cc: Same.
3143 * testsuite/23_containers/vector/invalidation/1.cc: Same.
3144 * testsuite/23_containers/vector/invalidation/2.cc: Same.
3145 * testsuite/23_containers/vector/invalidation/3.cc: Same.
3146 * testsuite/23_containers/vector/invalidation/4.cc: Same.
3148 2004-03-04 Paolo Carlini <pcarlini@suse.de>
3150 * scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to
3152 * testsuite/lib/libstdc++.exp: Don't add it conditionally to
3154 * testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT"
3155 from the dg-options.
3156 * testsuite/23_containers/vector/invalidation/1.cc: Likewise.
3157 * testsuite/23_containers/vector/invalidation/2.cc: Likewise.
3158 * testsuite/23_containers/vector/invalidation/3.cc: Likewise.
3159 * testsuite/23_containers/vector/invalidation/4.cc: Likewise.
3160 * testsuite/23_containers/vector/resize/1.cc: Likewise.
3161 * testsuite/26_numerics/complex_value.cc: Likewise.
3162 * testsuite/27_io/ios_base/storage/1.cc: Likewise.
3163 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
3164 * testsuite/27_io/ios_base/storage/3.cc: Likewise.
3165 * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
3166 * testsuite/27_io/objects/char/5.cc: Likewise.
3167 * testsuite/27_io/objects/wchar_t/5.cc: Likewise.
3168 * testsuite/backward/11460.cc: Likewise.
3169 * testsuite/thread/pthread7-rope.cc: Likewise.
3171 * testsuite/21_strings/basic_string/compare/char/1.cc: Add
3172 missing test variable.
3173 * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Add
3174 missing test variable.
3176 2004-03-04 Benjamin Kosnik <bkoz@redhat.com>
3178 * testsuite/20_util/allocator/1.cc: Provide explicit
3179 instantiations for non-weak systems.
3180 * testsuite/20_util/binders.cc: Same.
3181 * testsuite/20_util/allocator/8230.cc: Same.
3182 * testsuite/20_util/allocator/10378.cc: Same.
3183 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
3184 * testsuite/22_locale/ctype/is/char/2.cc: Same.
3185 * testsuite/thread/pthread7-rope.cc: Same.
3186 * testsuite/thread/pthread6.cc: Same.
3187 * testsuite/thread/pthread5.cc: Same.
3188 * testsuite/thread/pthread4.cc: Same.
3189 * testsuite/thread/pthread1.cc: Same.
3190 * testsuite/ext/rope.cc: Same.
3191 * testsuite/ext/hash_set.cc: Same.
3192 * testsuite/ext/hash_map.cc: Same.
3193 * testsuite/ext/concept_checks.cc: Same.
3194 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same.
3195 * testsuite/25_algorithms/unique/2.cc: Same.
3196 * testsuite/25_algorithms/unique/1.cc: Same.
3197 * testsuite/25_algorithms/rotate.cc: Same.
3198 * testsuite/25_algorithms/min_max.cc: Same.
3199 * testsuite/25_algorithms/equal.cc: Same.
3200 * testsuite/24_iterators/rel_ops.cc: Same.
3201 * testsuite/24_iterators/iterator.cc: Same.
3202 * testsuite/24_iterators/insert_iterator.cc: Same.
3203 * testsuite/24_iterators/front_insert_iterator.cc: Same.
3204 * testsuite/24_iterators/back_insert_iterator.cc: Same.
3205 * testsuite/23_containers/vector/resize/1.cc: Same.
3206 * testsuite/23_containers/vector/modifiers/2.cc: Same.
3207 * testsuite/23_containers/vector/modifiers/1.cc: Same.
3208 * testsuite/23_containers/vector/invalidation/4.cc: Same.
3209 * testsuite/23_containers/vector/invalidation/3.cc: Same.
3210 * testsuite/23_containers/vector/invalidation/2.cc: Same.
3211 * testsuite/23_containers/vector/invalidation/1.cc: Same.
3212 * testsuite/23_containers/vector/element_access/1.cc: Same.
3213 * testsuite/23_containers/vector/cons/6513.cc: Same.
3214 * testsuite/23_containers/vector/cons/3.cc: Same.
3215 * testsuite/23_containers/vector/cons/2.cc: Same.
3216 * testsuite/23_containers/vector/cons/1.cc: Same.
3217 * testsuite/23_containers/vector/capacity/8230.cc: Same.
3218 * testsuite/23_containers/vector/capacity/1.cc: Same.
3219 * testsuite/23_containers/vector/bool/6886.cc: Same.
3220 * testsuite/23_containers/stack/members/7158.cc: Same.
3221 * testsuite/23_containers/set/invalidation/2.cc: Same.
3222 * testsuite/23_containers/set/invalidation/1.cc: Same.
3223 * testsuite/23_containers/queue/members/7157.cc: Same.
3224 * testsuite/23_containers/priority_queue/members/7161.cc: Same.
3225 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
3226 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
3227 * testsuite/23_containers/multiset/insert/1.cc: Same.
3228 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
3229 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
3230 * testsuite/23_containers/map/operators/1.cc: Same.
3231 * testsuite/23_containers/map/invalidation/2.cc: Same.
3232 * testsuite/23_containers/map/invalidation/1.cc: Same.
3233 * testsuite/23_containers/map/insert/1.cc: Same.
3234 * testsuite/23_containers/list/operators/4.cc: Same.
3235 * testsuite/23_containers/list/operators/3.cc: Same.
3236 * testsuite/23_containers/list/operators/2.cc: Same.
3237 * testsuite/23_containers/list/operators/1.cc: Same.
3238 * testsuite/23_containers/list/modifiers/3.cc: Same.
3239 * testsuite/23_containers/list/modifiers/2.cc: Same.
3240 * testsuite/23_containers/list/modifiers/1.cc: Same.
3241 * testsuite/23_containers/list/invalidation/4.cc: Same.
3242 * testsuite/23_containers/list/invalidation/3.cc: Same.
3243 * testsuite/23_containers/list/invalidation/2.cc: Same.
3244 * testsuite/23_containers/list/invalidation/1.cc: Same.
3245 * testsuite/23_containers/list/cons/9.cc: Same.
3246 * testsuite/23_containers/list/cons/8.cc: Same.
3247 * testsuite/23_containers/list/cons/7.cc: Same.
3248 * testsuite/23_containers/list/cons/6.cc: Same.
3249 * testsuite/23_containers/list/cons/5.cc: Same.
3250 * testsuite/23_containers/list/cons/4.cc: Same.
3251 * testsuite/23_containers/list/cons/3.cc: Same.
3252 * testsuite/23_containers/list/cons/2.cc: Same.
3253 * testsuite/23_containers/list/cons/1.cc: Same.
3254 * testsuite/23_containers/list/capacity/1.cc: Same.
3255 * testsuite/23_containers/deque/operators/1.cc: Same.
3256 * testsuite/23_containers/deque/invalidation/4.cc: Same.
3257 * testsuite/23_containers/deque/invalidation/3.cc: Same.
3258 * testsuite/23_containers/deque/invalidation/2.cc: Same.
3259 * testsuite/23_containers/deque/invalidation/1.cc: Same.
3260 * testsuite/23_containers/deque/cons/2.cc: Same.
3261 * testsuite/23_containers/deque/cons/1.cc: Same.
3263 * src/allocator.cc: Add char, wchar_t instantiations
3264 to match extern template declarations in memory.h.
3266 2004-03-03 Paolo Carlini <pcarlini@suse.de>
3268 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
3269 Fix warning regression.
3271 2004-03-03 Paolo Carlini <pcarlini@suse.de>
3273 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
3274 Deal properly with empty __digits and negative frac_digits,
3277 2004-03-03 Jonathan Wakely <redi@gcc.gnu.org>
3279 * docs/html/documentation.html: Regenerate.
3281 2004-03-02 Paolo Carlini <pcarlini@suse.de>
3284 * include/bits/postypes.h (class streamoff): Remove, now
3285 streamoff is just typedef a 64 bit signed integer type.
3286 (class fpos): Tweak consistently.
3287 * testsuite/27_io/fpos/14320-1.cc: New.
3288 * testsuite/27_io/fpos/14320-2.cc: New.
3289 * testsuite/27_io/fpos/14320-3.cc: New.
3290 * testsuite/27_io/fpos/14320-4.cc: New.
3291 * testsuite/27_io/fpos/14320-5.cc: New.
3292 * testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now.
3294 2004-03-02 Paolo Carlini <pcarlini@suse.de>
3296 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
3297 Reorganize a bit the main parsing loop, thus early detecting
3298 an empty value component.
3299 * testsuite/22_locale/money_get/get/char/16.cc: New.
3300 * testsuite/22_locale/money_get/get/wchar_t/16.cc: New.
3302 2004-03-02 Benjamin Kosnik <bkoz@redhat.com>
3304 Support automake 1.8.2
3305 * configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override.
3306 * po/Makefile.am (EXTRA_DIST): New.
3307 * po/Makefile.in: Regenerate.
3308 * Makefile.in: Same.
3309 * include/Makefile.in: Same.
3310 * libmath/Makefile.in: Same.
3311 * libsupc++/Makefile.in: Same.
3312 * src/Makefile.in: Same.
3313 * testsuite/Makefile.in: Same.
3315 * include/Makefile.am (${host_builddir}/gthr-posix.h): Use
3316 __GXX_WEAK__ instead of SUPPORTS_WEAK.
3317 (${host_builddir}/gthr-default.h): Same.
3318 (${host_builddir}/gthr.h): Same.
3319 * acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove
3320 _GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via
3322 * aclocal.m4: Regenerate.
3323 * acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK.
3324 * config.h.in: Regenerate.
3327 2004-03-01 Benjamin Kosnik <bkoz@redhat.com>