OSDN Git Service

Backported from mainline
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog-2006
1 2006-12-29  Paolo Carlini  <pcarlini@suse.de>
2
3         PR libstdc++/30226
4         * config/abi/pre/gnu.ver: Do not export ctype<char>::widen.
5
6 2006-12-28  Paolo Carlini  <pcarlini@suse.de>
7
8         * include/tr1/array (array<>::_M_at): Remove.
9         (array<>::_M_check): Add.
10         (array<>::at): Use the latter.
11
12 2006-12-22  Paolo Carlini  <pcarlini@suse.de>
13
14         DR 541, [WP].
15         * include/std/memory (auto_ptr<void>): Add specialization.
16         * testsuite/tr1/2_general_utilities/memory/shared_ptr/
17         assign/dr541.cc: New.
18         * testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust
19         dg-error markers.
20         * docs/html/ext/howto.html: Add an entry for DR 541.
21
22 2006-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23
24         * docs/html/27_io/howto.html: Fix typos.
25         * docs/html/24_iterators/howto.html: Likewise.
26         * docs/html/18_support/howto.html: Likewise.
27         * docs/html/21_strings/howto.html: Likewise.
28         * docs/html/ext/howto.html: Likewise.
29         * docs/html/ext/ballocator_doc.html: Likewise.
30         * docs/html/17_intro/porting-howto.xml: Likewise.
31         * docs/html/17_intro/howto.html: Likewise.
32         * docs/html/22_locale/howto.html: Likewise.
33         * docs/html/faq/index.html: Likewise.
34         * docs/doxygen/tables.html: Likewise.
35
36 2006-12-13  Ian Lance Taylor  <iant@google.com>
37
38         PR c++/19564
39         PR c++/19756
40         * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
41         Add parentheses around && within || to avoid warning.
42         (num_get<>::_M_extract_int): Likewise.
43         (money_get<>::_M_extract): Likewise.
44         (num_get<>::do_get(iter_type, iter_type, ios_base&,
45         ios_base::iostate&, void*&)): Add parentheses around & within | to
46         avoid warning.
47         (num_put<>::do_put(iter_type, ios_base&, char_type, const void*)):
48         Likewise.
49         * include/bits/streambuf_iterator.h (istreambuf_iterator::equal):
50         Add parentheses around && within || to avoid warning.
51         * libsupc++/tinfo.cc (__do_dyncast): Likewise.
52         * src/locale.cc (locale::_S_normalize_category): Likewise.
53         * include/bits/stl_tree.h (_Rb_tree<>::_M_insert_unique): Add
54         braces to avoid ambiguous else warning.
55         * src/strstream.cc (strstreambuf::_M_free): Likewise.
56         * src/tree.cc (_Rb_tree_rebalance_for_erase): Likewise.
57
58 2006-12-12  Benjamin Kosnik  <bkoz@redhat.com>
59
60         PR libstdc++/28265
61         * crossconfig.m4: Remove GLIBCXX_CHECK_ICONV_SUPPORT call for
62         mingw crosses.
63         * configure: Regenerate.
64
65 2006-12-12  Benjamin Kosnik  <bkoz@redhat.com>
66
67         PR libstdc++/26497
68         * crossconfig.m4: Add GLIBCXX_CHECK_LINKER_FEATURES for Solaris.
69         * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Set
70         glibcxx_gnu_ld_version only when with GNU ld confirmed.
71         * configure: Regenerate.
72
73 2006-12-11  Benjamin Kosnik  <bkoz@redhat.com>
74
75         PR libstdc++/28125
76         * acinclude.m4 (GLIBCXX_CHECK_ICONV_SUPPORT): Remove link test, ie
77         AC_CHECK_LIB for libiconv. Instead, use bits of AM_ICONV.
78         * configure: Regenerate.
79         * scripts/testsuite_flags.in (cxxldflags): Add LIBICONV bits.
80
81 2006-12-11  Richard Guenther  <rguenther@suse.de>
82             Paolo Carlini  <pcarlini@suse.de>
83
84         * include/ext/pb_ds/detail/pat_trie_/traits.hpp: Qualify types.
85         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Likewise.
86         * include/ext/rope: Likewise.
87         * include/bits/stl_tree.h (struct _Rb_tree): Change the _Link_type
88         typedefs to use _Rb_tree_node<_Val> directly.
89         (_M_get_node, _M_put_node): Use _Link_type.
90
91 2006-12-10  Paolo Carlini  <pcarlini@suse.de>
92
93         * src/valarray-inst.cc (__gslice_to_index): Optimize performance.
94         * testsuite/performance/26_numerics/valarray_gslice_to_index.cc: New.
95
96 2006-12-08  Jakub Jelinek  <jakub@redhat.com>
97
98         * testsuite/util/testsuite_hooks.cc (set_memory_limits): Don't set
99         RLIMIT_AS below 16MB on x86_64-linux.
100
101 2006-12-06  Benjamin Kosnik  <bkoz@redhat.com>
102
103         * include/Makefile.am (std_headers_rename): Remove.
104         (c_base_headers_rename): Remove.
105         (std_headers): Adjust to true names.
106         (c_base_headers): Adjust to true names.
107         (stamp-c_base, stamp_std, stamp_c_base_extra): Adjust.
108         * configure: Regenerate.
109         * include/Makefile.in: Regenerate.
110
111         * include/std/std_algorithm.h: To...
112         * include/std/std_bitset.h: To...
113         * include/std/std_complex.h: To...
114         * include/std/std_deque.h: To...
115         * include/std/std_fstream.h: To...
116         * include/std/std_functional.h: To...
117         * include/std/std_iomanip.h: To...
118         * include/std/std_iosfwd.h: To...
119         * include/std/std_ios.h: To...
120         * include/std/std_iostream.h: To...
121         * include/std/std_istream.h: To...
122         * include/std/std_iterator.h: To...
123         * include/std/std_limits.h: To...
124         * include/std/std_list.h: To...
125         * include/std/std_locale.h: To...
126         * include/std/std_map.h: To...
127         * include/std/std_memory.h: To...
128         * include/std/std_numeric.h: To...
129         * include/std/std_ostream.h: To...
130         * include/std/std_queue.h: To...
131         * include/std/std_set.h: To...
132         * include/std/std_sstream.h: To...
133         * include/std/std_stack.h: To...
134         * include/std/std_stdexcept.h: To...
135         * include/std/std_streambuf.h: To...
136         * include/std/std_string.h: To...
137         * include/std/std_utility.h: To...
138         * include/std/std_valarray.h: To...
139         * include/std/std_vector.h: To...
140         * include/std/algorithm: ...this.
141         * include/std/bitset: ...this.
142         * include/std/complex: ...this.
143         * include/std/deque: ...this.
144         * include/std/fstream: ...this.
145         * include/std/functional: ...this.
146         * include/std/iomanip: ...this.
147         * include/std/iosfwd: ...this.
148         * include/std/ios: ...this.
149         * include/std/iostream: ...this.
150         * include/std/istream: ...this.
151         * include/std/iterator: ...this.
152         * include/std/limits: ...this.
153         * include/std/list: ...this.
154         * include/std/locale: ...this.
155         * include/std/map: ...this.
156         * include/std/memory: ...this.
157         * include/std/numeric: ...this.
158         * include/std/ostream: ...this.
159         * include/std/queue: ...this.
160         * include/std/set: ...this.
161         * include/std/sstream: ...this.
162         * include/std/stack: ...this.
163         * include/std/stdexcept: ...this.
164         * include/std/streambuf: ...this.
165         * include/std/string: ...this.
166         * include/std/utility: ...this.
167         * include/std/valarray: ...this.
168         * include/std/vector: ...this.
169
170         * include/c_std/std_cassert.h: To...
171         * include/c_std/std_cctype.h: To...
172         * include/c_std/std_cerrno.h: To...
173         * include/c_std/std_cfloat.h: To...
174         * include/c_std/std_ciso646.h: To...
175         * include/c_std/std_climits.h: To...
176         * include/c_std/std_clocale.h: To...
177         * include/c_std/std_cmath.h: To...
178         * include/c_std/std_csetjmp.h: To...
179         * include/c_std/std_csignal.h: To...
180         * include/c_std/std_cstdarg.h: To...
181         * include/c_std/std_cstddef.h: To...
182         * include/c_std/std_cstdio.h: To...
183         * include/c_std/std_cstdlib.h: To...
184         * include/c_std/std_cstring.h: To...
185         * include/c_std/std_ctime.h: To...
186         * include/c_std/std_cwchar.h: To...
187         * include/c_std/std_cwctype.h: To...
188         * include/c_std/cassert: ...this.
189         * include/c_std/cctype: ...this.
190         * include/c_std/cerrno: ...this.
191         * include/c_std/cfloat: ...this.
192         * include/c_std/ciso646: ...this.
193         * include/c_std/climits: ...this.
194         * include/c_std/clocale: ...this.
195         * include/c_std/cmath: ...this.
196         * include/c_std/csetjmp: ...this.
197         * include/c_std/csignal: ...this.
198         * include/c_std/cstdarg: ...this.
199         * include/c_std/cstddef: ...this.
200         * include/c_std/cstdio: ...this.
201         * include/c_std/cstdlib: ...this.
202         * include/c_std/cstring: ...this.
203         * include/c_std/ctime: ...this.
204         * include/c_std/cwchar: ...this.
205         * include/c_std/cwctype: ...this.
206
207         * include/c/std_cassert.h: To...
208         * include/c/std_cctype.h: To...
209         * include/c/std_cerrno.h: To...
210         * include/c/std_cfloat.h: To...
211         * include/c/std_ciso646.h: To...
212         * include/c/std_climits.h: To...
213         * include/c/std_clocale.h: To...
214         * include/c/std_cmath.h: To...
215         * include/c/std_csetjmp.h: To...
216         * include/c/std_csignal.h: To...
217         * include/c/std_cstdarg.h: To...
218         * include/c/std_cstddef.h: To...
219         * include/c/std_cstdio.h: To...
220         * include/c/std_cstdlib.h: To...
221         * include/c/std_cstring.h: To...
222         * include/c/std_ctime.h: To...
223         * include/c/std_cwchar.h: To...
224         * include/c/std_cwctype.h: To...
225         * include/c/cassert: ...this.
226         * include/c/cctype: ...this.
227         * include/c/cerrno: ...this.
228         * include/c/cfloat: ...this.
229         * include/c/ciso646: ...this.
230         * include/c/climits: ...this.
231         * include/c/clocale: ...this.
232         * include/c/cmath: ...this.
233         * include/c/csetjmp: ...this.
234         * include/c/csignal: ...this.
235         * include/c/cstdarg: ...this.
236         * include/c/cstddef: ...this.
237         * include/c/cstdio: ...this.
238         * include/c/cstdlib: ...this.
239         * include/c/cstring: ...this.
240         * include/c/ctime: ...this.
241         * include/c/cwchar: ...this.
242         * include/c/cwctype: ...this.
243
244 2006-12-05  Benjamin Kosnik  <bkoz@redhat.com>
245
246         * include/bits/localefwd.h: Consistent @file placement, use
247         include/ as part of the path for files that have shadows instead of no
248         name.
249         * include/bits/valarray_after.h: Same.
250         * include/bits/gslice_array.h: Same.
251         * include/bits/gslice.h: Same.
252         * include/bits/locale_classes.h: Same.
253         * include/bits/locale_facets.h: Same.
254         * include/bits/indirect_array.h: Same.
255         * include/bits/basic_string.h: Same.
256         * include/bits/ios_base.h: Same.
257         * include/bits/postypes.h: Same.
258         * include/bits/codecvt.h: Same.
259         * include/bits/mask_array.h: Same.
260         * include/bits/slice_array.h: Same.
261         * include/bits/boost_concept_check.h: Same.
262         * include/bits/char_traits.h: Same.
263         * include/bits/stringfwd.h: Same.
264         * include/bits/c++config: Same.
265         * include/bits/valarray_array.h: Same.
266         * include/bits/valarray_before.h: Same.
267         * include/bits/cpp_type_traits.h: Same.
268         * include/c/std_cerrno.h: Same.
269         * include/precompiled/extc++.h: Same.
270         * include/precompiled/stdtr1c++.h: Same.
271         * include/precompiled/stdc++.h: Same.
272         * include/tr1/cinttypes: Same.
273         * include/tr1/fenv.h: Same.
274         * include/tr1/mu_iterate.h: Same.
275         * include/tr1/cstdio: Same.
276         * include/tr1/limits.h: Same.
277         * include/tr1/ctgmath: Same.
278         * include/tr1/cstdarg: Same.
279         * include/tr1/tuple: Same.
280         * include/tr1/float.h: Same.
281         * include/tr1/stdint.h: Same.
282         * include/tr1/tuple_iterate.h: Same.
283         * include/tr1/type_traits_fwd.h: Same.
284         * include/tr1/hashtable_policy.h: Same.
285         * include/tr1/cfenv: Same.
286         * include/tr1/wctype.h: Same.
287         * include/tr1/ref_fwd.h: Same.
288         * include/tr1/bind_repeat.h: Same.
289         * include/tr1/utility: Same.
290         * include/tr1/climits: Same.
291         * include/tr1/type_traits: Same.
292         * include/tr1/stdlib.h: Same.
293         * include/tr1/cwchar: Same.
294         * include/tr1/stdio.h: Same.
295         * include/tr1/ref_wrap_iterate.h: Same.
296         * include/tr1/cstdint: Same.
297         * include/tr1/memory: Same.
298         * include/tr1/cstdbool: Same.
299         * include/tr1/cwctype: Same.
300         * include/tr1/bind_iterate.h: Same.
301         * include/tr1/math.h: Same.
302         * include/tr1/random: Same.
303         * include/tr1/tuple_defs.h: Same.
304         * include/tr1/cstdlib: Same.
305         * include/tr1/unordered_map: Same.
306         * include/tr1/boost_shared_ptr.h: Same.
307         * include/tr1/cctype: Same.
308         * include/tr1/random.tcc: Same.
309         * include/tr1/wchar.h: Same.
310         * include/tr1/hashtable: Same.
311         * include/tr1/cmath: Same.
312         * include/tr1/stdbool.h: Same.
313         * include/tr1/ctime: Same.
314         * include/tr1/functional: Same.
315         * include/tr1/unordered_set: Same.
316         * include/tr1/inttypes.h: Same.
317         * include/tr1/functional_iterate.h: Same.
318         * include/tr1/repeat.h: Same.
319         * include/tr1/complex: Same.
320         * include/tr1/cfloat: Same.
321         * include/tr1/ctype.h: Same.
322         * include/tr1/stdarg.h: Same.
323         * include/tr1/tgmath.h: Same.
324         * include/tr1/array: Same.
325         * include/tr1/common.h: Same.
326         * include/std/std_valarray.h: Same.
327         * include/std/std_iostream.h: Same.
328         * include/std/std_queue.h: Same.
329         * include/std/std_algorithm.h: Same.
330         * include/std/std_streambuf.h: Same.
331         * include/std/std_iterator.h: Same.
332         * include/std/std_ios.h: Same.
333         * include/std/std_bitset.h: Same.
334         * include/std/std_iosfwd.h: Same.
335         * include/std/std_set.h: Same.
336         * include/std/std_iomanip.h: Same.
337         * include/std/std_fstream.h: Same.
338         * include/std/std_functional.h: Same.
339         * include/std/std_numeric.h: Same.
340         * include/std/std_vector.h: Same.
341         * include/std/std_deque.h: Same.
342         * include/std/std_stdexcept.h: Same.
343         * include/std/std_utility.h: Same.
344         * include/std/std_stack.h: Same.
345         * include/std/std_string.h: Same.
346         * include/std/std_complex.h: Same.
347         * include/std/std_memory.h: Same.
348         * include/std/std_ostream.h: Same.
349         * include/std/std_list.h: Same.
350         * include/std/std_map.h: Same.
351         * include/std/std_sstream.h: Same.
352         * include/c_std/std_csignal.h: Same.
353         * include/c_std/std_cstdlib.h: Same.
354         * include/c_std/std_cstdio.h: Same.
355         * include/c_std/std_cstdarg.h: Same.
356         * include/c_std/std_cctype.h: Same.
357         * include/c_std/std_cerrno.h: Same.
358         * include/c_std/std_cmath.h: Same.
359         * include/c_std/std_ctime.h: Same.
360         * include/c_std/std_clocale.h: Same.
361         * include/c_std/std_climits.h: Same.
362         * include/c_std/std_cassert.h: Same.
363         * include/c_std/cmath.tcc
364         * include/c_std/std_csetjmp.h: Same.
365         * include/c_std/std_cwchar.h: Same.
366         * include/c_std/std_cfloat.h: Same.
367         * include/c_std/std_cstring.h: Same.
368         * include/c_std/std_cstddef.h: Same.
369         * include/c_std/std_cwctype.h: Same.
370
371         * config/locale/gnu/c_locale.h: Namespace scope in all files.
372         * config/locale/gnu/messages_members.h: Same.
373         * config/locale/gnu/c++locale_internal.h: Same.
374         * config/locale/gnu/time_members.h: Same.
375         * config/locale/ieee_1003.1-2001/c_locale.h: Same.
376         * config/locale/ieee_1003.1-2001/messages_members.h: Same.
377         * config/locale/generic/c_locale.h: Same.
378         * config/locale/generic/messages_members.h: Same.
379         * config/locale/generic/time_members.h: Same.
380         * config/allocator/mt_allocator_base.h: Same.
381         * config/allocator/malloc_allocator_base.h: Same.
382         * config/allocator/new_allocator_base.h: Same.
383         * config/allocator/pool_allocator_base.h: Same.
384         * config/allocator/bitmap_allocator_base.h: Same.
385         * config/os/windiss/ctype_noninline.h: Same.
386         * config/os/windiss/os_defines.h: Same.
387         * config/os/windiss/ctype_inline.h: Same.
388         * config/os/newlib/ctype_noninline.h: Same.
389         * config/os/newlib/os_defines.h: Same.
390         * config/os/newlib/ctype_inline.h: Same.
391         * config/os/aix/ctype_noninline.h: Same.
392         * config/os/aix/os_defines.h: Same.
393         * config/os/aix/ctype_inline.h: Same.
394         * config/os/vxworks/ctype_noninline.h: Same.
395         * config/os/vxworks/os_defines.h: Same.
396         * config/os/vxworks/ctype_inline.h: Same.
397         * config/os/hpux/ctype_noninline.h: Same.
398         * config/os/hpux/os_defines.h: Same.
399         * config/os/hpux/ctype_inline.h: Same.
400         * config/os/mingw32/ctype_noninline.h: Same.
401         * config/os/mingw32/os_defines.h: Same.
402         * config/os/mingw32/ctype_inline.h: Same.
403         * config/os/gnu-linux/ctype_noninline.h: Same.
404         * config/os/gnu-linux/os_defines.h: Same.
405         * config/os/gnu-linux/ctype_inline.h: Same.
406         * config/os/tpf/ctype_noninline.h: Same.
407         * config/os/tpf/os_defines.h: Same.
408         * config/os/tpf/ctype_inline.h: Same.
409         * config/os/uclibc/ctype_noninline.h: Same.
410         * config/os/uclibc/os_defines.h: Same.
411         * config/os/uclibc/ctype_inline.h: Same.
412         * config/os/djgpp/ctype_noninline.h: Same.
413         * config/os/djgpp/os_defines.h: Same.
414         * config/os/djgpp/ctype_inline.h: Same.
415         * config/os/qnx/qnx6.1/ctype_noninline.h: Same.
416         * config/os/qnx/qnx6.1/ctype_inline.h: Same.
417         * config/os/bsd/netbsd/ctype_noninline.h: Same.
418         * config/os/bsd/netbsd/ctype_inline.h: Same.
419         * config/os/bsd/darwin/ctype_noninline.h: Same.
420         * config/os/bsd/darwin/ctype_inline.h: Same.
421         * config/os/bsd/freebsd/ctype_noninline.h: Same.
422         * config/os/bsd/freebsd/ctype_inline.h: Same.
423         * config/os/irix/irix5.2/ctype_noninline.h: Same.
424         * config/os/irix/irix5.2/ctype_inline.h: Same.
425         * config/os/irix/irix6.5/ctype_noninline.h: Same.
426         * config/os/irix/irix6.5/ctype_inline.h: Same.
427         * config/os/solaris/solaris2.5/ctype_noninline.h: Same.
428         * config/os/solaris/solaris2.5/ctype_inline.h: Same.
429         * config/os/solaris/solaris2.6/ctype_noninline.h: Same.
430         * config/os/solaris/solaris2.6/ctype_inline.h: Same.
431         * config/os/solaris/solaris2.7/ctype_noninline.h: Same.
432         * config/os/solaris/solaris2.7/ctype_inline.h: Same.
433         * config/os/generic/ctype_noninline.h: Same.
434         * config/os/generic/os_defines.h: Same.
435         * config/os/generic/ctype_inline.h: Same.
436         * config/cpu/arm/cxxabi_tweaks.h: Same.
437         * config/cpu/powerpc/cpu_defines.h: Same.
438         * config/cpu/generic/cxxabi_tweaks.h: Same.
439         * config/cpu/generic/cpu_defines.h: Same.
440         * config/cpu/generic/atomic_word.h: Same.
441         * config/io/c_io_stdio.h: Same.
442         * config/abi/compatibility.h: Same.
443
444         * docs/doxygen/user.cfg.in: Adjust file list.
445
446 2006-12-05  Paolo Carlini  <pcarlini@suse.de>
447
448         DR 543, [Ready].
449         * include/bits/slice_array.h (slice::slice()): Implement the
450         resolution.
451         * include/bits/gslice.h (gslice::_Indexer::_Indexer()): Add.
452         (gslice::gslice()): Use it.
453         * testsuite/26_numerics/valarray/dr543.cc: New.
454         * docs/html/ext/howto.html: Add an entry for DR 543.
455
456 2006-12-05  Benjamin Kosnik  <bkoz@redhat.com>
457
458         * include/tr1/tuple: Consistent include guards.
459         * include/tr1/type_traits: Same.
460         * include/tr1/array: Same.
461
462 2006-12-04  Paolo Carlini  <pcarlini@suse.de>
463
464         PR libstdc++/29989 (again)
465         * include/bits/c++config: #undef min and max.
466         * testsuite/18_support/numeric_limits/29989.cc: New.
467
468 2006-12-04  Eric Botcazou  <ebotcazou@libertysurf.fr>
469
470         * configure: Regenerate.
471
472 2006-12-03  Paolo Carlini  <pcarlini@suse.de>
473
474         PR libstdc++/29989
475         * include/bits/stl_algobase.h: Remove min and max #undefs.
476
477 2006-12-02  Howard Hinnant  <hhinnant@apple.com>
478
479         * acinclude.m4: Allow OPTIMIZE_CXXFLAGS to be set by configure.host.
480         * configure.host: Set OPTIMIZE_CXXFLAGS to -fvisibility-inlines-hidden
481         for x86/darwin.
482         * configure: Regenerate.
483
484 2006-12-01  Paolo Carlini  <pcarlini@suse.de>
485
486         * include/ext/mt_allocator.h (__pool_base::_M_get_align): Remove
487         redundant const qualifier on the return type.
488
489 2006-11-29  Benjamin Kosnik  <bkoz@redhat.com>
490
491         * include/ext/throw_allocator.h: Consistent @file markup.
492         * include/ext/type_traits.h: Same.
493         * include/debug/hash_map: Same.
494         * include/debug/hash_multimap.h: Same.
495         * include/debug/set.h: Same.
496         * include/debug/hash_set.h: Same.
497         * include/debug/formatter.h: Same.
498         * include/debug/bitset: Same.
499         * include/debug/set: Same.
500         * include/debug/multiset.h: Same.
501         * include/debug/safe_sequence.h: Same.
502         * include/debug/hash_set: Same.
503         * include/debug/functions.h: Same.
504         * include/debug/safe_base.h: Same.
505         * include/debug/hash_multiset.h: Same.
506         * include/debug/safe_iterator.tcc: Same.
507         * include/debug/vector: Same.
508         * include/debug/map.h: Same.
509         * include/debug/deque: Same.
510         * include/debug/hash_map.h: Same.
511         * include/debug/string: Same.
512         * include/debug/macros.h: Same.
513         * include/debug/list: Same.
514         * include/debug/debug.h: Same.
515         * include/debug/map: Same.
516         * include/debug/safe_iterator.h: Same.
517         * include/debug/multimap.h: Same.
518         * config/cpu/generic/atomicity_mutex/atomicity.h: Same.
519         * config/cpu/generic/atomicity_builtins/atomicity.h: Same.
520         * config/cpu/generic/atomic_word.h: Same.
521         * include/tr1/memory: Same.
522         * include/tr1/random: Same.
523         * include/std/std_queue.h: Same.
524         * include/std/std_iterator.h: Same.
525         * include/std/std_bitset.h: Same.
526         * include/std/std_set.h: Same.
527         * include/std/std_vector.h: Same.
528         * include/std/std_deque.h: Same.
529         * include/std/std_utility.h: Same.
530         * include/std/std_stack.h: Same.
531         * include/std/std_string.h: Same.
532         * include/std/std_list.h: Same.
533         * include/std/std_map.h: Same.
534         * libsupc++/typeinfo: Same.
535         * libsupc++/exception: Same.
536         * libsupc++/exception_defines.h: Same.
537         * libsupc++/new: Same.
538
539         * include/ext/bitmap_allocator.h: Change namespace __balloc to
540         __detail.
541         * src/bitmap_allocator.cc: Same.
542
543         * include/bits/cpp_type_traits.h: Change __true_type and
544         __false_type from global to namespace std scope.
545         * include/ext/slist: Same.
546         * include/ext/vstring.h: Same.
547         * include/ext/vstring.tcc: Same.
548         * include/ext/rc_string_base.h: Same.
549         * include/ext/sso_string_base.h: Same.
550
551         * include/bits/codecvt.h: Adjust markup so that correct namespace
552         scope information is in all files.
553         * include/bits/locale_facets.h: Same. Include ctype_base directly.
554         * config/os/windiss/ctype_base.h: Add in namespace markup.
555         * config/os/newlib/ctype_base.h: Same.
556         * config/os/aix/ctype_base.h: Same.
557         * config/os/vxworks/ctype_base.h: Same.
558         * config/os/hpux/ctype_base.h: Same.
559         * config/os/mingw32/ctype_base.h: Same.
560         * config/os/gnu-linux/ctype_base.h: Same.
561         * config/os/tpf/ctype_base.h: Same.
562         * config/os/uclibc/ctype_base.h: Same.
563         * config/os/djgpp/ctype_base.h: Same.
564         * config/os/qnx/qnx6.1/ctype_base.h: Same.
565         * config/os/bsd/netbsd/ctype_base.h: Same.
566         * config/os/bsd/darwin/ctype_base.h: Same.
567         * config/os/bsd/freebsd/ctype_base.h: Same.
568         * config/os/irix/irix5.2/ctype_base.h: Same.
569         * config/os/irix/irix6.5/ctype_base.h: Same.
570         * config/os/solaris/solaris2.5/ctype_base.h: Same.
571         * config/os/solaris/solaris2.6/ctype_base.h: Same.
572         * config/os/solaris/solaris2.7/ctype_base.h: Same.
573         * config/os/generic/ctype_base.h: Same.
574         * include/tr1/mu_iterate.h: Same.
575         * include/tr1/tuple: Same.
576         * include/tr1/tuple_iterate.h: Same.
577         * include/tr1/tuple_defs.h: Same.
578         * include/tr1/random.tcc: Same.
579         * include/tr1/functional: Same.
580         * include/tr1/functional_iterate.h: Same.
581
582         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Line
583         number changes.
584         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
585         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
586         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
587
588         * docs/doxygen/user.cfg.in: Update to doxygen 1.5.1.
589         * docs/html/17_intro/license.html: Updated info for generated docs.
590         * docs/doxygen/guide.html: Adjust.
591         * docs/doxygen/run_doxygen: Adjust.
592         * docs/doxygen/mainpage.html: Same.
593         * docs/doxygen/doxygroups.cc: Same.
594         * docs/doxygen/Intro.3: Same.
595         * docs/doxygen/tables.html: Same.
596
597 2006-11-26  Paolo Carlini  <pcarlini@suse.de>
598
599         PR libstdc++/29385 (2nd part, based on an idea by Ion Gaztanaga)
600         * include/bits/stl_tree.h (_Rb_tree<>::_M_equal_range): Add.
601         (equal_range(const key_type&)): Use it.
602
603 2006-11-26  Paolo Carlini  <pcarlini@suse.de>
604
605         * testsuite/23_containers/multiset/operations/1.cc: New.
606         * testsuite/23_containers/set/operations/1.cc: Likewise.
607         * testsuite/23_containers/multimap/operations/1.cc: Likewise.
608         * testsuite/23_containers/map/operations/1.cc: Likewise.
609
610 2006-11-25  Paolo Carlini  <pcarlini@suse.de>
611
612         PR libstdc++/29385 (partial)
613         * include/bits/stl_tree.h (_Rb_tree<>::destroy_node): Uglify.
614         (_M_erase, erase(iterator), erase(const_iterator)): Adjust
615
616 2006-11-25  Paolo Carlini  <pcarlini@suse.de>
617
618         PR libstdc++/29385 (partial)
619         * include/bits/stl_tree.h (_Rb_tree<>::_M_lower_bound(_Const_Link_type,
620         _Const_Link_type, const _Key&), _M_upper_bound(_Const_Link_type,
621         _Const_Link_type, const _Key&)): Add.
622         (lower_bound(const key_type&), upper_bound(const key_type&),
623         find(const key_type&)): Call the latter.
624
625 2006-11-25  Gawain Bolton  <gp.bolton@computer.org>
626
627         PR libstdc++/29385 (partial)
628         * include/bits/stl_tree.h (_Rb_tree_rotate_left,
629         _Rb_tree_rotate_right): Do not declare.
630         (_Rb_tree<>::_M_insert(_Base_ptr, _Base_ptr, const value_type&),
631         _M_insert(_Const_Base_ptr, _Const_Base_ptr, const value_type&),
632         _M_insert_unique(iterator, const value_type&),
633         _M_insert_unique(const_iterator, const value_type&),
634         _M_insert_equal(iterator, const value_type&),
635         _M_insert_equal(const_iterator, const value_type&)):
636         Remove.
637         (_Rb_tree<>::_M_insert_(_Const_Base_ptr, _Const_Base_ptr,
638         const value_type&), _M_insert_unique_(const_iterator,
639         const value_type&), _M_insert_equal_(const_iterator,
640         const value_type&)): Add, adjust all callers.
641         * include/bits/stl_map.h (map<>::insert(iterator, const value_type&)):
642         Adjust.
643         * include/bits/stl_set.h (set<>::insert(iterator, const value_type&)):
644         Likewise.
645         * include/bits/stl_multimap.h (multimap<>::insert(iterator,
646         const value_type&)): Likewise.
647         * include/bits/stl_multiset.h (multiset<>::insert(iterator,
648         const value_type&)): Likewise.
649
650 2006-11-22  Antony King <anthony.king@st.com>
651             J"orn Rennecke <joern.rennecke@st.com>
652
653         PR libstdc++/29920
654         * include/Makefile.am (stamp-host): Remove CCODECVT_H line.
655         * include/Makefile.in: Regenerate.
656
657 2006-11-21  Benjamin Kosnik  <bkoz@redhat.com>
658
659         * include/ext/hashtable.h: -Wshadow fixes.
660         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
661         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
662         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
663         * include/ext/pb_ds/detail/gp_hash_table_map_/
664         constructor_destructor_fn_imps.hpp: Same.
665         * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
666         * include/ext/pb_ds/detail/ov_tree_map_/
667         constructors_destructor_fn_imps.hpp: Same.
668         * src/mt_allocator.cc: Same.
669         * src/debug.cc: Same.
670         * config/locale/gnu/codecvt_members.cc: Same.
671
672 2006-11-21  Benjamin Kosnik  <bkoz@redhat.com>
673             Howard Hinnant  <hhinnant@apple.com>
674
675         * src/iostream-inst.cc: Remove iostream include.
676
677 2006-11-19  Paolo Carlini  <pcarlini@suse.de>
678
679         * include/tr1/functional (hash(long long), hash(unsigned long long)):
680         Add specializations.
681
682 2006-11-18  Joseph Myers  <joseph@codesourcery.com>
683
684         * config/cpu/powerpc/atomic_word.h (_GLIBCXX_WRITE_MEM_BARRIER):
685         Use plain sync if __NO_LWSYNC__.
686
687 2006-11-14  Joseph Myers  <joseph@codesourcery.com>
688
689         * testsuite/26_numerics/complex/13450.cc: Do not test long double
690         in IBM long double case.
691
692 2006-11-13  Daniel Jacobowitz  <dan@codesourcery.com>
693
694         * configure: Regenerated.
695
696 2006-11-13  Joseph Myers  <joseph@codesourcery.com>
697
698         * libsupc++/eh_globals.cc (__cxxabiv1::__cxa_get_globals):
699         Initialize propagatingExceptions if __ARM_EABI_UNWINDER__.
700         * libsupc++/eh_personality.cc (empty_exception_spec): Define
701         separately in __ARM_EABI_UNWINDER__ case.
702
703 2006-11-13  Joseph Myers  <joseph@codesourcery.com>
704
705         * libsupc++/typeinfo (__GXX_TYPEINFO_EQUALITY_INLINE): Define.
706         Use instead of __GXX_MERGED_TYPEINFO_NAMES to condition inline
707         definitions.
708         * libsupc++/tinfo.cc (operator==): Condition on
709         __GXX_TYPEINFO_EQUALITY_INLINE; check __GXX_MERGED_TYPEINFO_NAMES
710         to determine algorithm.
711         * libsupc++/tinfo2.cc (type_info::before): Likewise.
712
713 2006-11-12  Paolo Carlini  <pcarlini@suse.de>
714
715         * include/ext/bitmap_allocator.h: Uglify some names.
716         * include/ext/concurrence.h: Likewise.
717         * src/bitmap_allocator.cc: Likewise.
718
719 2006-11-11  Paolo Carlini  <pcarlini@suse.de>
720
721         PR libstdc++/29496
722         * include/debug/safe_base.h (_Safe_sequence_base::_M_get_mutex,
723         _Safe_iterator_base::_M_get_mutex, _M_attach_single, _M_detach_single):
724         New.
725         * src/debug.cc: Define the latter.
726         (_Safe_sequence_base::_M_detach_all, _M_detach_singular,
727         _M_revalidate_singular, _M_swap): Use the mutex.
728         (_Safe_iterator_base::_M_attach, _M_detach): Adjust, forward to the
729         *_single version.
730         * include/debug/safe_iterator.h (_Safe_iterator<>::_M_attach_single,
731         _M_invalidate_single): New.
732         * include/debug/safe_iterator.tcc: Define.
733         (_Safe_iterator<>::_M_invalidate): Adjust, forward to
734         _M_invalidate_single.
735         * include/debug/safe_sequence.h (_Safe_sequence<>::_M_invalidate_if,
736         _M_transfer_iter): Use the mutex, adjust, forward to the *_single
737         versions of _M_invalidate and _M_attach.
738         * config/abi/pre/gnu.ver (_Safe_sequence_base::_M_get_mutex,
739         _Safe_iterator_base::_M_get_mutex, _M_attach_single, _M_detach_single):
740         Add @GLIBCXX_3.4.10; adjust.
741         * configure.ac (libtool_VERSION): To 6:10:0.
742         * testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.10.
743         * configure: Regenerate.
744
745 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
746
747         * config/locale/gnu/c_locale.cc (__convert_to_v): Prefer
748         strtold_l over __strtold_l if available.
749
750 2006-11-07  Benjamin Kosnik  <bkoz@redhat.com>
751
752         PR libstdc++/29722
753         * include/ext/concurrence.h (concurrence_lock_error): New.
754         (concurrence_unlock_error): New.
755         (__throw_concurrence_lock_error): New.
756         (__throw_concurrence_unlock_error): New.
757         (__mutex): Use functions.
758         (__recursive_mutex): Same.
759         * testsuite/abi/cxx_runtime_only_linkage.cc: New.
760
761         * include/ext/pb_ds/exception.hpp: Keep exception classes defined
762         even when -fno-exceptions is passed, consistent with other usage.
763
764 2006-11-07  Benjamin Kosnik  <bkoz@redhat.com>
765
766         * include/ext/pb_ds/exception.hpp (pb_ds): Modify for -fno-exceptions.
767         (__throw_container_error): New. Conditionalize based on __EXCEPTIONS.
768         (__throw_insert_error): New.
769         (__throw_join_error): New.
770         (__throw_resize_error): New.
771         * include/ext/pb_ds/detail/resize_policy/
772         hash_prime_size_policy_imp.hpp: Use them.
773         * include/ext/pb_ds/detail/resize_policy/
774         hash_exponential_size_policy_imp.hpp: Same.
775         * include/ext/pb_ds/detail/resize_policy/
776         hash_load_check_resize_trigger_imp.hpp: Same.
777         * include/ext/pb_ds/detail/resize_policy/
778         hash_standard_resize_policy_imp.hpp: Same.
779         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
780         * include/ext/pb_ds/detail/cc_hash_table_map_/
781         constructor_destructor_fn_imps.hpp: Same.
782         * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
783         * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp
784         * include/ext/pb_ds/detail/pat_trie_/
785         constructors_destructor_fn_imps.hpp: Same.
786         * include/ext/pb_ds/detail/bin_search_tree_/
787         constructors_destructor_fn_imps.hpp: Same.
788         * include/ext/pb_ds/detail/bin_search_tree_/
789         split_join_fn_imps.hpp: Same.
790         * include/ext/pb_ds/detail/gp_hash_table_map_/
791         insert_no_store_hash_fn_imps.hpp: Same.
792         * include/ext/pb_ds/detail/gp_hash_table_map_/
793         resize_store_hash_fn_imps.hpp: Same.
794         * include/ext/pb_ds/detail/gp_hash_table_map_/
795         insert_store_hash_fn_imps.hpp: Same.
796         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
797         * include/ext/pb_ds/detail/gp_hash_table_map_/
798         constructor_destructor_fn_imps.hpp: Same.
799         * include/ext/pb_ds/detail/gp_hash_table_map_/
800         resize_no_store_hash_fn_imps.hpp: Same.
801         * include/ext/pb_ds/detail/binary_heap_/
802         constructors_destructor_fn_imps.hpp: Same.
803         * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
804         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
805         constructors_destructor_fn_imps.hpp: Same.
806         * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
807         * include/ext/pb_ds/detail/list_update_map_/
808         constructor_destructor_fn_imps.hpp: Same.
809         * include/ext/pb_ds/exception.hpp: Same.
810         * src/functexcept.cc: Qualify abort with std.
811
812 2006-11-07  Benjamin Kosnik  <bkoz@redhat.com>
813
814         * include/ext/pb_ds/exception.hpp: Add translation support to
815         exception strings.
816         * include/ext/concurrence.h: Same.
817         * include/tr1/array: Same.
818
819 2006-11-05  Paolo Carlini  <pcarlini@suse.de>
820
821         * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 45.
822         * docs/html/ext/lwg-closed.html: Add.
823         * docs/html/ext/howto.html: Adjust.
824
825 2006-10-30  Paolo Carlini  <pcarlini@suse.de>
826
827         * include/tr1/utility (tuple_size<std::pair<> >::value): Provide
828         definition.
829
830 2006-10-30  Paolo Carlini  <pcarlini@suse.de>
831
832         * include/tr1/tuple_iterate.h (tuple_size<tuple<> >::value): Provide
833         definition.
834         * include/tr1/functional (is_bind_expression<>::value,
835         is_placeholder<>::value, + various partial specializations): Likewise.
836         * include/tr1/array (tuple_size<array<> >::value): Likewise.
837
838 2006-10-30  Paolo Carlini  <pcarlini@suse.de>
839
840         * testsuite/tr1/6_containers/array/capacity/max_size.cc: Actually
841         do test max_size().
842
843 2006-10-30  Joseph Myers  <joseph@codesourcery.com>
844
845         * testsuite/config/default.exp (${tool}_target_compile): Use
846         v3_target_compile.
847
848 2006-10-29  Paolo Carlini  <pcarlini@suse.de>
849
850         * src/debug.cc (_Safe_sequence_base::_M_revalidate_singular): Fix
851         pasto, advance __iter only once per iteration.
852
853 2006-10-29  Paolo Carlini  <pcarlini@suse.de>
854
855         PR libstdc++/29520
856         * include/tr1/random (geometric_distribution<>::
857         operator()(_UniformRandomNumberGenerator&)): Only declare.
858         * include/tr1/random.tcc (geometric_distribution<>::
859         operator()(_UniformRandomNumberGenerator&),
860         poisson_distribution<>::operator()(_UniformRandomNumberGenerator&),
861         binomial_distribution<>::operator()(_UniformRandomNumberGenerator&)):
862         Reject candidate floating point values not convertible to the
863         result_type.
864
865 2006-10-28  Paolo Carlini  <pcarlini@suse.de>
866
867         * include/tr1/array (array<>::_M_at): New.
868         (array<>::at): Fix off-by-one bug, use the above.
869         * testsuite/tr1/6_containers/array/element_access/
870         at_out_of_range.cc: Adjust.
871
872         * include/tr1/array (class array<>): Remove non-conforming default
873         for the second parameter.
874         * include/ext/array_allocator.h: Adjust.
875
876         * include/tr1/array (array<>::front, array<>::back): Do not return
877         a reference to memory not belonging to the array when _Nm == 0.
878
879 2006-10-17  Paolo Carlini  <pcarlini@suse.de>
880
881         * include/bits/locale_facets.tcc (money_get<>::__do_get(iter_type,
882         iter_type, bool, ios_base&, ios_base::iostate&, double&),
883         money_get<>::do_get(iter_type, iter_type, bool, ios_base&,
884         ios_base::iostate&, long double&), money_get<>::do_get(iter_type,
885         iter_type, bool, ios_base&, ios_base::iostate&, string_type&)): Tidy.
886
887 2006-10-17  Paolo Carlini  <pcarlini@suse.de>
888
889         PR libstdc++/26020
890         * include/bits/stl_iterator_base_funcs.h (advance): Convert
891         distance parameter to iterator_traits<>::difference_type.
892         * testsuite/24_iterators/26020.cc: New.
893
894 2006-10-17  Benjamin Kosnik  <bkoz@redhat.com>
895
896         * include/tr1/random.tcc: Fixup long line.
897
898 2006-10-17  Benjamin Kosnik  <bkoz@redhat.com>
899
900         PR libstdc++/28514
901         * include/bits/cpp_type_traits.h (__detail): Uglify namespace.
902         * include/ext/rope: Remove global-scope anonymous namespace, use
903         nested __detail. Fixup resulting formatting issues.
904         * include/ext/ropeimpl.h: Same.
905         * include/tr1/hashtable_policy.h: Remove anonymous namespace
906         nesting for __detail.
907         * include/tr1/random: Revert anonymous namespace to nested
908         __detail namespace.
909         * include/tr1/random.tcc: Same.
910         * src/ext-inst.cc: Fixups for above.
911
912 2006-10-16  Douglas Gregor  <doug.gregor@gmail.com>
913
914         * include/Makefile.am (tr1_headers): Add new tuple_defs.h.
915         * include/Makefile.in (tr1_headers): Regenerate.
916         * include/tr1/tuple (tuple): Move declaration to tuple_defs.h.
917         (get): Ditto.
918         (operator==): Ditto.
919         (operator<): Ditto.
920         (operator!=): Ditto.
921         (operator>): Ditto.
922         (operator<=): Ditto.
923         (operator>=): Ditto.
924         (__stripped_tuple_type): Ditto.
925         Include tuple.defs.h
926         * include/tr1/tuple_iterate.h (tuple): Use
927         _GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS_UNNAMED macro instead of 10
928         "typename"s.
929         (tuple_element): Use _GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS and
930         _GLIBCXX_TYPLE_ALL_TEMPLATE_ARGS instead of 10
931         parameters/arguments.
932         * include/tr1/tuple_defs.h: New header, contains declarations and
933         definitions for the tuple template with all arguments.
934         * include/tr1/repeat.h (_GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS): New.
935         (_GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS_UNNAMED): New.
936         (_GLIBCXX_TUPLE_ALL_TEMPLATE_ARGS): New.
937         (_GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS): New.
938         (_GLIBCXX_TEMPLATE_ARGS_STRIPPED): New.
939         * scripts/gen_includers.pl: Update.
940         * scripts/gen_includers2.pl: New.
941
942 2006-10-16  Benjamin Kosnik  <bkoz@redhat.com>
943
944         PR libstdc++/29095 continued
945         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Additions
946         so that testing not in the build directory works for the "C"
947         target language.
948
949 2006-10-16  Jakub Jelinek  <jakub@redhat.com>
950
951         * include/bits/basic_string.tcc (_Rep::_S_create): Call
952         _M_set_sharable() for backwards compatibility.
953
954 2006-10-15  Paolo Carlini  <pcarlini@suse.de>
955
956         * include/bits/istream.tcc (getline(basic_istream<>&,
957         basic_string<>&)): Move...
958         * include/bits/basic_string.h: ... here.
959         (operator<<(basic_ostream<>&, const basic_string<>&)): Mark inline.
960
961 2006-10-15  Geoffrey Keating  <geoffk@apple.com>
962
963         * scripts/make_exports.pl: Use -_ rather than --strip-underscores
964         or --strip-underscore.
965
966 2006-10-14  Geoffrey Keating  <geoffk@apple.com>
967
968         * aclocal.m4: Regenerate.
969         * configure: Regenerate with released autoconf-2.59.
970
971 2006-10-14  Paolo Carlini  <pcarlini@suse.de>
972
973         * docs/html/faq/index.html: Update.
974         * docs/html/faq/index.txt: Regenerate.
975
976 2006-10-14  Paolo Carlini  <pcarlini@suse.de>
977
978         * include/bits/ostream.tcc (operator<<(basic_ostream<>&,
979         const char*)): Further fix for throwing widen.
980
981 2006-10-14  Paolo Carlini  <pcarlini@suse.de>
982
983         * include/bits/ostream.tcc (operator<<(basic_ostream<>&,
984         const char*)): Fix thinko in change for libstdc++/28277,
985         avoid memory leaks.
986
987 2006-10-13  Paolo Carlini  <pcarlini@suse.de>
988
989         * include/bits/istream.tcc (operator>>(__istream_type&
990         (*)(__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)),
991         operator>>(ios_base& (*)(ios_base&))): Move...
992         * include/std/std_istream.h: ... here.
993         (operator>>(basic_istream<char,>&, unsigned char&),
994         operator>>(basic_istream<char,>&, signed char&),
995         operator>>(basic_istream<char,>&, unsigned char*),
996         operator>>(basic_istream<char,>&, signed char*)): Mark inline.
997         * include/bits/ostream.tcc (operator<<(__ostream_type&
998         (*)(__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)),
999         operator<<(ios_base& (*)(ios_base&))): Move...
1000         * include/std/std_ostream.h: ... here.
1001         (operator<<(basic_ostream<>&, _CharT),
1002         operator<<(basic_ostream<>&, char),
1003         operator<<(basic_ostream<char,>&, char),
1004         operator<<(basic_ostream<char,>&, signed char),
1005         operator<<(basic_ostream<char,>&, unsigned char),
1006         operator<<(basic_ostream<>&, const _CharT*),
1007         operator<<(basic_ostream<char,>&, const char*),
1008         operator<<(basic_ostream<char,>&, const signed char*),
1009         operator<<(basic_ostream<char,>&, const unsigned char*),
1010         endl(basic_ostream<>&), ends(basic_ostream<>&),
1011         flush(basic_ostream<>&)): Mark inline.
1012
1013 2006-10-13  Paolo Carlini  <pcarlini@suse.de>
1014
1015         PR libstdc++/28277 (partial: ostream bits 2)
1016         * include/std/std_ostream.h (basic_ostream<>::_M_insert(const
1017         char_type*, streamsize)): New.
1018         (basic_ostream<>::_M_write(char_type, streamsize)): Likewise.
1019         (operator<<(basic_ostream<>&, _CharT), operator<<(basic_ostream<>&,
1020         char), operator<<(basic_ostream<>&, const _CharT*),
1021         operator<<(basic_ostream<>&, const char*)): Use the latter.
1022         * include/bits/ostream.tcc (basic_ostream<>::_M_insert(const
1023         char_type*, streamsize)): Define.
1024         (operator<<(basic_ostream<>&, const char*)): Use the latter.
1025         (operator<<(basic_ostream<>&, _CharT), operator<<(basic_ostream<>&,
1026         char), operator<<(basic_ostream<>&, const _CharT*),
1027         operator<<(basic_ostream<>&, const char*),
1028         operator<<(basic_ostream<>&, const basic_string<>&)): Remove.
1029         * include/bits/basic_string.h (operator<<(basic_ostream<>&,
1030         const basic_string<>&)): Use the latter, implement DR 586.
1031         * config/abi/pre/gnu.ver: Adjust, export the new _M_insert.
1032         * docs/html/ext/howto.html: Add an entry for DR 586.
1033         * testsuite/21_strings/basic_string/inserters_extractors/char/
1034         28277.cc: New.
1035         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
1036         28277.cc: Likewise.
1037         * testsuite/27_io/basic_ostream/inserters_character/char/
1038         28277-3.cc: Likewise.
1039         * testsuite/27_io/basic_ostream/inserters_character/char/
1040         28277-4.cc: Likewise.
1041         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1042         28277-2.cc: Likewise.
1043         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1044         28277-3.cc: Likewise.
1045         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1046         28277-4.cc: Likewise.
1047
1048 2006-10-11  Paolo Carlini  <pcarlini@suse.de>
1049
1050         * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 44.
1051
1052 2006-10-11  Benjamin Kosnik  <bkoz@redhat.com>
1053
1054         PR libstdc++/29426
1055         * libsupc++/guard.cc (get_static_mutex): New.
1056         (mutex_wrapper::mutex_wrapper): Use it to get properly initialized
1057         recursive mutex without ordering issues.
1058
1059         * src/locale_init.cc (__get_locale_mutex): No need to
1060         uglify. Change to get_locale_mutex.
1061
1062 2006-10-11  Paolo Carlini  <pcarlini@suse.de>
1063
1064         * testsuite/22_locale/num_put/put/char/11.cc: New.
1065         * testsuite/22_locale/num_put/put/wchar_t/11.cc: Likewise.
1066
1067 2006-10-10  Benjamin Kosnik  <bkoz@redhat.com>
1068
1069         * testsuite/lib/libstdc++.exp (v3-build_support): Link
1070         libtestc++.a, not a bunch of object files.
1071
1072 2006-10-09  Benjamin Kosnik  <bkoz@redhat.com>
1073
1074         PR libstdc++/29118
1075         * src/locale_init.cc (__get_locale_mutex): New.
1076         (locale::locale): Use it.
1077         (locale::global): Use it.
1078
1079 2006-10-09  Benjamin Kosnik  <bkoz@redhat.com>
1080
1081         PR libstdc++/29095
1082         * libsupc++/cxxabi.h (__cxa_cdtor_type): Explicit "C" linkage.
1083         * config/cpu/arm/cxxabi_tweaks.h: Same.
1084         * config/cpu/generic/cxxabi_tweaks.h: Same.
1085         * testsuite/abi: Add.
1086         * testsuite/abi/header_cxxabi.cc: New.
1087         * testsuite/demangle: Move...
1088         * testsuite/abi/demangle: ...here.
1089         * testsuite/libstdc++-dg/conformance.exp: Adjust testsuite file
1090         calculation.
1091         * scripts/create_testsuite_files: Same.
1092         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): New.
1093         (libstdc++-dg-test): Use it.
1094
1095 2006-10-09  Paolo Carlini  <pcarlini@suse.de>
1096
1097         PR libstdc++/28277 (partial: __add_grouping)
1098         * include/bits/locale_facets.tcc (__add_grouping<>(_CharT*, _CharT,
1099         const char*, size_t, const _CharT*, const _CharT*)): Rewrite in
1100         non-recursive form.
1101
1102 2006-10-09  Paolo Carlini  <pcarlini@suse.de>
1103
1104         PR libstdc++/28277 (partial: money_put bits)
1105         * include/bits/locale_facets.tcc (money_put<>::_M_insert(iter_type,
1106         ios_base&, char_type, const string_type&)): Avoid __builtin_alloca
1107         with no limit, do the work in place.
1108
1109         * include/bits/locale_facets.tcc (money_put<>::do_put(iter_type,
1110         bool, ios_base&, char_type, long double)): Avoid unnecessary
1111         __builtin_alloca, do the work in place.
1112
1113 2006-10-09  Benjamin Kosnik  <bkoz@redhat.com>
1114
1115         * src/globals_io.cc (_GLIBCXX_once): Remove, unused.
1116         (_GLIBCXX_mutex): Same.
1117         (_GLIBCXX_mutex_addres): Same.
1118         (_GLIBCXX_mutex_init): Same.
1119         (_GLIBCXX_mutex_address_init): Same.
1120
1121 2006-10-07  Paolo Carlini  <pcarlini@suse.de>
1122
1123         PR libstdc++/28277 (partial: money_get bits)
1124         * include/bits/locale_facets.tcc (money_get<>::do_get(iter_type,
1125         iter_type, bool, ios_base&, ios_base::iostate&, string_type&)):
1126         Avoid __builtin_alloca with no limit, do the work in place.
1127
1128 2006-10-07  Ion Gaztanaga  <igaztanaga@gmail.com>
1129             Paolo Carlini  <pcarlini@suse.de>
1130
1131         * include/bits/stl_tree.h (_Rb_tree<>::erase(const _Key&)): Don't
1132         call std::distance unnecessarily.
1133
1134 2006-10-06  Paolo Carlini  <pcarlini@suse.de>
1135
1136         PR libstdc++/29368
1137         * include/bits/basic_string.h: Adjust rfind documentation.
1138         * include/ext/vstring.h: Likewise.
1139
1140 2006-10-06  Paolo Carlini  <pcarlini@suse.de>
1141
1142         PR libstdc++/29354
1143         * include/bits/sstream.tcc (basic_stringbuf<>::seekpos(pos_type,
1144         ios_base::openmode)): Allow for seek to pos_type(off_type(0))
1145         when the stream is empty.
1146         * testsuite/27_io/basic_stringbuf/seekpos/char/29354.cc: New.
1147         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/29354.cc: New.
1148
1149 2006-10-04  Benjamin Kosnik  <bkoz@redhat.com>
1150             Mike Stump  <mrs@apple.com>
1151
1152         * testsuite/27_io/ios_base/storage/2.cc: Fail on Darwin 8.[0-4].* only.
1153         * testsuite/23_containers/vector/resize/1.cc: Same.
1154
1155 2006-10-04  Benjamin Kosnik  <bkoz@redhat.com>
1156
1157         * testsuite/util/performance/priority_queue/mem_usage/
1158         pop_test.hpp: Correct typo.
1159         * testsuite/util/performance/assoc/mem_usage/
1160         multimap_insert_test.hpp: Same.
1161         * testsuite/util/performance/assoc/mem_usage/erase_test.hpp: Same.
1162
1163 2006-10-03  Benjamin Kosnik  <bkoz@redhat.com>
1164
1165         * testsuite/util/testsuite_allocator.h (allocation_tracker): To
1166         tracker_allocator_counter.
1167         (allocation_tracker::allocationTotal): To get_allocation_count.
1168         (allocation_tracker::deallocationTotal): To get_deallocation_count.
1169         (allocation_tracker::constructCount): To get_construct_count.
1170         (allocation_tracker::destructCount): To get_destruct_count.
1171         (allocation_tracker::resetCounts): To reset.
1172         (tracker_alloc): To tracker_allocator.
1173         * testsuite/util/performance/mem: Remove.
1174         * testsuite/util/performance/mem/mem_track_allocator_base.hpp: Remove.
1175         * testsuite/util/performance/mem/mem_track_allocator.hpp: Remove.
1176         * testsuite/27_io/basic_stringbuf/4.cc: Adjust for new names
1177         or includes.
1178         * testsuite/ext/hash_set/check_construct_destroy.cc: Same.
1179         * testsuite/ext/slist/check_construct_destroy.cc: Same.
1180         * testsuite/performance/ext/pb_ds/
1181         hash_random_int_erase_mem_usage.cc: Same.
1182         * testsuite/performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
1183         * testsuite/performance/ext/pb_ds/
1184         priority_queue_text_pop_mem_usage.cc: Same.
1185         * testsuite/23_containers/vector/capacity/2.cc: Same.
1186         * testsuite/23_containers/vector/cons/4.cc: Same.
1187         * testsuite/23_containers/vector/check_construct_destroy.cc: Same.
1188         * testsuite/23_containers/deque/cons/2.cc: Same.
1189         * testsuite/23_containers/deque/check_construct_destroy.cc: Same.
1190         * testsuite/23_containers/list/check_construct_destroy.cc: Same.
1191         * testsuite/23_containers/set/check_construct_destroy.cc: Same.
1192         * testsuite/util/testsuite_allocator.h
1193         * testsuite/util/performance/priority_queue/mem_usage/pop_test.hpp
1194         * testsuite/util/performance/assoc/mem_usage/multimap_insert_test.hpp
1195         * testsuite/util/performance/assoc/mem_usage/erase_test.hpp
1196         * testsuite/util/testsuite_allocator.cc: Same.
1197
1198 2006-10-03  Benjamin Kosnik  <bkoz@redhat.com>
1199
1200         * testsuite/util/native_type/priority_queue/native_pq_tag.hpp: Remove.
1201         * testsuite/util/statistic/sample_var.hpp: Rename to...
1202         * testsuite/util/statistic/sample_variance.hpp: ... this.
1203         * testsuite/util/statistic/res_recorder.hpp: Rename to...
1204         * testsuite/util/statistic/result_recorder.hpp: ... this.
1205         * testsuite/util/statistic/sample_mean.hpp: Format.
1206         * testsuite/util/statistic/sample_mean_confidence_checker.hpp: Same.
1207         * testsuite/util/regression/trait/priority_queue/trait.hpp: Same.
1208         * testsuite/util/regression/trait/erase_if_fn.hpp: Same.
1209         * testsuite/util/regression/trait/assoc/trait.hpp: Same.
1210         * testsuite/util/native_type/priority_queue/
1211         native_priority_queue.hpp: Same.
1212         * testsuite/util/native_type/assoc/native_tree_tag.hpp: Same.
1213         * testsuite/util/native_type/assoc/native_hash_tag.hpp: Same.
1214         * testsuite/util/native_type/assoc/native_hash_map.hpp: Same.
1215         * testsuite/util/performance/priority_queue/timing/join_test.hpp: Same.
1216         * testsuite/util/performance/priority_queue/timing/
1217         modify_test.hpp: Same.
1218         * testsuite/util/performance/assoc/timing/
1219         subscript_insert_test.hpp: Same.
1220         * testsuite/util/performance/time/timing_test_base.hpp: Same.
1221
1222 2006-10-02  Paolo Carlini  <pcarlini@suse.de>
1223
1224         * include/ext/rc_string_base.h (_M_compare<wchar_t>):
1225         Protect with _GLIBCXX_USE_WCHAR_T.
1226         * include/ext/sso_string_base.h (_M_compare<wchar_t>):
1227         Likewise.
1228         (__sso_string_base<>::_M_destroy): Inline.
1229
1230 2006-10-02  Benjamin Kosnik  <bkoz@redhat.com>
1231
1232         * include/ext/pb_ds/detail/basic_types.hpp (comp_hash_): Remove,
1233         format.
1234         * include/ext/pb_ds/detail/types_traits.hpp
1235         (types_traits::comp_hash): Use pair typedef.
1236         * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
1237         * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
1238
1239 2006-10-01  Paolo Carlini  <pcarlini@suse.de>
1240
1241         * include/tr1/random (xor_combine<>::_M_initialize_max_aux): New.
1242         (xor_combine<>::operator()()): Tweak per N2079.
1243         * include/tr1/random.tcc (xor_combine<>::_M_initialize_max_aux):
1244         Define.
1245         (xor_combine<>::_M_initialize_max): Use it.
1246         * testsuite/tr1/5_numerical_facilities/random/xor_combine/
1247         cons/default.cc: Adjust.
1248         * docs/html/ext/tr1.html: Adjust.
1249
1250 2006-10-01  Paolo Carlini  <pcarlini@suse.de>
1251
1252         * include/ext/type_traits.h: Avoid _T, badname for some targets;
1253         also avoid plain T.
1254
1255 2006-10-01  Paolo Carlini  <pcarlini@suse.de>
1256
1257         * config/io/basic_file_stdio.cc: As an extension, and
1258         consistently with C facilities, allow for in|out|app and
1259         in|out|app|binary openmodes.
1260         * testsuite/27_io/basic_filebuf/open/char/4.cc: New.
1261
1262 2006-09-30  Benjamin Kosnik  <bkoz@redhat.com>
1263
1264         * include/ext/pb_ds/detail/types_traits.hpp (store_extra_false_type):
1265         To false_type.
1266         (store_extra_true_type): To true_type.
1267         (no_throw_copies_true_type): To true_type.
1268         (no_throw_copies_false_type): To false_type.
1269         * include/ext/pb_ds/detail/cc_hash_table_map_/
1270         insert_no_store_hash_fn_imps.hpp: Same.
1271         * include/ext/pb_ds/detail/cc_hash_table_map_/
1272         resize_store_hash_fn_imps.hpp: Same.
1273         * include/ext/pb_ds/detail/cc_hash_table_map_/
1274         insert_store_hash_fn_imps.hpp: Same.
1275         * include/ext/pb_ds/detail/cc_hash_table_map_/
1276         entry_list_fn_imps.hpp: Same.
1277         * include/ext/pb_ds/detail/cc_hash_table_map_/
1278         debug_no_store_hash_fn_imps.hpp: Same.
1279         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
1280         * include/ext/pb_ds/detail/cc_hash_table_map_/
1281         debug_store_hash_fn_imps.hpp: Same.
1282         * include/ext/pb_ds/detail/cc_hash_table_map_/
1283         resize_no_store_hash_fn_imps.hpp: Same.
1284         * include/ext/pb_ds/detail/gp_hash_table_map_/
1285         insert_no_store_hash_fn_imps.hpp: Same.
1286         * include/ext/pb_ds/detail/gp_hash_table_map_/
1287         resize_store_hash_fn_imps.hpp: Same.
1288         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
1289         * include/ext/pb_ds/detail/gp_hash_table_map_/
1290         insert_store_hash_fn_imps.hpp: Same.
1291         * include/ext/pb_ds/detail/gp_hash_table_map_/
1292         find_no_store_hash_fn_imps.hpp: Same.
1293         * include/ext/pb_ds/detail/gp_hash_table_map_/
1294         debug_no_store_hash_fn_imps.hpp: Same.
1295         * include/ext/pb_ds/detail/gp_hash_table_map_/
1296         debug_store_hash_fn_imps.hpp: Same.
1297         * include/ext/pb_ds/detail/gp_hash_table_map_/
1298         resize_no_store_hash_fn_imps.hpp: Same.
1299         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
1300
1301 2006-09-29  Benjamin Kosnik  <bkoz@redhat.com>
1302
1303         * include/ext/pb_ds/detail/cc_hash_table_map_/
1304         constructor_destructor_no_store_hash_fn_imps.hpp: Formating fixes.
1305         * include/ext/pb_ds/detail/basic_tree_policy/
1306         null_node_metadata.hpp: Same.
1307         * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Same.
1308         * include/ext/pb_ds/detail/basic_types.hpp: Same.
1309         * include/ext/pb_ds/detail/list_update_policy/
1310         mtf_lu_policy_imp.hpp: Same.
1311         * include/ext/pb_ds/detail/list_update_policy/
1312         counter_lu_metadata.hpp: Same.
1313         * include/ext/pb_ds/detail/list_update_policy/
1314         sample_update_policy.hpp: Same.
1315         * include/ext/pb_ds/detail/list_update_policy/
1316         counter_lu_policy_imp.hpp: Same.
1317         * include/ext/pb_ds/list_update_policy.hpp: Same.
1318
1319 2006-09-29  Benjamin Kosnik  <bkoz@redhat.com>
1320             Howard Hinnant  <hhinnant@apple.com>
1321             Paolo Carlini  <pcarlini@suse.de>
1322
1323         * include/ext/type_traits.h (__remove_unsigned): Fix up for signed
1324         char, bool, wchar_t, and floating point types.
1325         (__add_unsigned): Same.
1326         * testsuite/ext/type_traits: New.
1327         * testsuite/ext/type_traits.cc: Move...
1328         * testsuite/ext/type_traits/numeric_traits.cc: ...here.
1329         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: New.
1330         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: New.
1331         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: New.
1332         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: New.
1333         * testsuite/ext/type_traits/add_unsigned.cc: New.
1334         * testsuite/ext/type_traits/remove_unsigned.cc: New.
1335
1336 2006-09-29  Joseph S. Myers  <joseph@codesourcery.com>
1337
1338         * acinclude.m4 (enable_symvers): Default to no if unable to link.
1339         * configure: Regenerate.
1340
1341 2006-09-28  Paolo Carlini  <pcarlini@suse.de>
1342
1343         * include/bits/stl_uninitialized.h
1344         (__uninitialized_fill_n_a(_ForwardIterator, _Size, const _Tp&,
1345         allocator<>)): Inline.
1346
1347 2006-09-28  Benjamin Kosnik  <bkoz@redhat.com>
1348
1349         * include/ext/pb_ds/detail/cc_hash_table_map_/
1350         erase_store_hash_fn_imps.hpp: Formatting fixes.
1351         * include/ext/pb_ds/detail/cc_hash_table_map_/
1352         constructor_destructor_no_store_hash_fn_imps.hpp: Same.
1353         * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
1354         * include/ext/pb_ds/detail/cc_hash_table_map_/
1355         insert_no_store_hash_fn_imps.hpp: Same.
1356         * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
1357         * include/ext/pb_ds/detail/cc_hash_table_map_/
1358         policy_access_fn_imps.hpp: Same.
1359         * include/ext/pb_ds/detail/cc_hash_table_map_/
1360         resize_store_hash_fn_imps.hpp: Same.
1361         * include/ext/pb_ds/detail/cc_hash_table_map_/
1362         constructor_destructor_store_hash_fn_imps.hpp: Same.
1363         * include/ext/pb_ds/detail/cc_hash_table_map_/
1364         insert_store_hash_fn_imps.hpp: Same.
1365         * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
1366         * include/ext/pb_ds/detail/cc_hash_table_map_/
1367         entry_list_fn_imps.hpp: Same.
1368         * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
1369         * include/ext/pb_ds/detail/cc_hash_table_map_/
1370         find_store_hash_fn_imps.hpp: Same.
1371         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
1372         * include/ext/pb_ds/detail/cc_hash_table_map_/
1373         debug_no_store_hash_fn_imps.hpp: Same.
1374         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
1375         * include/ext/pb_ds/detail/cc_hash_table_map_/
1376         constructor_destructor_fn_imps.hpp: Same.
1377         * include/ext/pb_ds/detail/cc_hash_table_map_/
1378         cond_key_dtor_entry_dealtor.hpp: Same.
1379         * include/ext/pb_ds/detail/cc_hash_table_map_/
1380         debug_store_hash_fn_imps.hpp: Same.
1381         * include/ext/pb_ds/detail/cc_hash_table_map_/
1382         erase_no_store_hash_fn_imps.hpp: Same.
1383         * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
1384         * include/ext/pb_ds/detail/cc_hash_table_map_/
1385         iterators_fn_imps.hpp: Same.
1386         * include/ext/pb_ds/detail/cc_hash_table_map_/
1387         resize_no_store_hash_fn_imps.hpp: Same.
1388         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
1389         * include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
1390         * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Same.
1391         * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
1392         * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Same.
1393         * include/ext/pb_ds/detail/pat_trie_/head.hpp: Same.
1394         * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
1395         * include/ext/pb_ds/detail/pat_trie_/cond_dtor_entry_dealtor.hpp: Same.
1396         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
1397         * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Same.
1398         * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
1399         * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
1400         * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Same.
1401         * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Same.
1402         * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Same.
1403         * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
1404         * include/ext/pb_ds/detail/gp_hash_table_map_/
1405         erase_store_hash_fn_imps.hpp: Same.
1406         * include/ext/pb_ds/detail/gp_hash_table_map_/
1407         constructor_destructor_no_store_hash_fn_imps.hpp: Same.
1408         * include/ext/pb_ds/detail/gp_hash_table_map_/
1409         insert_no_store_hash_fn_imps.hpp: Same.
1410         * include/ext/pb_ds/detail/gp_hash_table_map_/
1411         policy_access_fn_imps.hpp: Same.
1412         * include/ext/pb_ds/detail/gp_hash_table_map_/
1413         resize_store_hash_fn_imps.hpp: Same.
1414         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
1415         * include/ext/pb_ds/detail/gp_hash_table_map_/
1416         constructor_destructor_store_hash_fn_imps.hpp: Same.
1417         * include/ext/pb_ds/detail/gp_hash_table_map_/
1418         insert_store_hash_fn_imps.hpp: Same.
1419         * include/ext/pb_ds/detail/gp_hash_table_map_/
1420         iterator_fn_imps.hpp: Same.
1421         * include/ext/pb_ds/detail/gp_hash_table_map_/
1422         info_fn_imps.hpp: Same.
1423         * include/ext/pb_ds/detail/gp_hash_table_map_/
1424         find_no_store_hash_fn_imps.hpp: Same.
1425         * include/ext/pb_ds/detail/gp_hash_table_map_/
1426         find_store_hash_fn_imps.hpp: Same.
1427         * include/ext/pb_ds/detail/gp_hash_table_map_/
1428         debug_no_store_hash_fn_imps.hpp: Same.
1429         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
1430         * include/ext/pb_ds/detail/gp_hash_table_map_/
1431         constructor_destructor_fn_imps.hpp: Same.
1432         * include/ext/pb_ds/detail/gp_hash_table_map_/
1433         erase_no_store_hash_fn_imps.hpp: Same.
1434         * include/ext/pb_ds/detail/gp_hash_table_map_/
1435         resize_no_store_hash_fn_imps.hpp: Same.
1436         * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
1437         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
1438         * include/ext/pb_ds/detail/ov_tree_map_/
1439         policy_access_fn_imps.hpp: Same.
1440         * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
1441         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
1442         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
1443         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
1444         * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
1445         * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
1446         * include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
1447         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
1448         * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
1449         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
1450         * include/ext/pb_ds/detail/splay_tree_/
1451         constructors_destructor_fn_imps.hpp: Same.
1452         * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
1453         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
1454         * include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
1455         * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
1456         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
1457         * include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
1458         * include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
1459         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
1460         * include/ext/pb_ds/detail/list_update_map_/
1461         entry_metadata_base.hpp: Same.
1462         * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
1463         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
1464         * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
1465         * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
1466         * include/ext/pb_ds/detail/list_update_map_/
1467         iterators_fn_imps.hpp: Same.
1468         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
1469         * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
1470         * include/ext/pb_ds/detail/rb_tree_map_/
1471         constructors_destructor_fn_imps.hpp: Same.
1472         * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
1473         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
1474         * include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
1475         * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
1476         * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
1477         * include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
1478
1479 2006-09-28  Paolo Carlini  <pcarlini@suse.de>
1480
1481         * include/tr1/boost_shared_ptr.h: Use __atomic_add_dispatch and
1482         __exchange_and_add_dispatch everywhere.
1483
1484 2006-09-27  Benjamin Kosnik  <bkoz@redhat.com>
1485
1486         * include/ext/typelist.h (type_to_type): Remove.
1487         * include/ext/throw_allocator.h (assert_allocatod): Remove.
1488         (check_allocated(label)): New.
1489         (print_to_string): Print numerical output correctly.
1490
1491         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Adjust line numbers.
1492
1493         * testsuite/util/regression/rand/priority_queue/detail/
1494         operator_fn_imps.hpp: Set and clear label, throw
1495         probability. Check only allocations of the marked label.
1496         * testsuite/util/regression/rand/assoc/detail/
1497         operator_fn_imps.hpp: Same.
1498
1499         * testsuite/performance/ext/pb_ds/text_find_timing.cc: Adjustments for
1500         removal of type_to_type.
1501         * testsuite/performance/ext/pb_ds/
1502         hash_random_int_erase_mem_usage.cc: Same.
1503         * testsuite/performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
1504         * testsuite/performance/ext/pb_ds/
1505         priority_queue_text_push_timing.cc: Same.
1506         * testsuite/performance/ext/pb_ds/
1507         random_int_subscript_find_timing.cc: Same.
1508         * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
1509         * testsuite/performance/ext/pb_ds/random_int_find_timing.cc: Same.
1510         * testsuite/performance/ext/pb_ds/
1511         multimap_text_insert_mem_usage.hpp: Same.
1512         * testsuite/performance/ext/pb_ds/
1513         priority_queue_random_int_push_timing.cc: Same.
1514         * testsuite/performance/ext/pb_ds/multimap_text_find_timing.hpp: Same.
1515         * testsuite/performance/ext/pb_ds/
1516         priority_queue_text_modify_timing.hpp: Same.
1517         * testsuite/performance/ext/pb_ds/
1518         tree_order_statistics_timing.cc: Same.
1519         * testsuite/performance/ext/pb_ds/
1520         priority_queue_text_push_pop_timing.cc: Same.
1521         * testsuite/performance/ext/pb_ds/
1522         priority_queue_text_join_timing.cc: Same.
1523         * testsuite/performance/ext/pb_ds/
1524         priority_queue_random_int_push_pop_timing.cc: Same.
1525         * testsuite/performance/ext/pb_ds/
1526         random_int_subscript_insert_timing.cc: Same.
1527         * testsuite/performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
1528         * testsuite/performance/ext/pb_ds/
1529         multimap_text_insert_timing.hpp: Same.
1530         * testsuite/performance/ext/pb_ds/
1531         priority_queue_text_pop_mem_usage.cc: Same.
1532         * testsuite/performance/ext/pb_ds/
1533         hash_zlob_random_int_find_timing.cc: Same.
1534         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
1535         * testsuite/util/regression/rand/priority_queue/
1536         rand_regression_test.hpp: Same.
1537         * testsuite/util/regression/rand/assoc/detail/
1538         constructor_destructor_fn_imps.hpp: Same.
1539         * testsuite/util/regression/rand/assoc/detail/insert_fn_imps.hpp: Same.
1540         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
1541         * testsuite/util/regression/rand/assoc/
1542         container_rand_regression_test.hpp: Same.
1543         * testsuite/util/regression/assoc/common_type.hpp: Same.
1544         * testsuite/util/regression/basic_type.hpp: Same.
1545         * testsuite/util/common_type/assoc/common_type.hpp: Same.
1546         * testsuite/util/common_type/assoc/string_form.hpp: Same.
1547         * testsuite/util/common_type/assoc/template_policy.hpp: Same.
1548         * testsuite/util/common_type/assoc/native_set.hpp: Same.
1549         * testsuite/util/performance/priority_queue/mem_usage/
1550         pop_test.hpp: Same.
1551         * testsuite/util/performance/priority_queue/timing/
1552         push_pop_test.hpp: Same.
1553         * testsuite/util/performance/priority_queue/timing/join_test.hpp: Same.
1554         * testsuite/util/performance/priority_queue/timing/push_test.hpp: Same.
1555         * testsuite/util/performance/priority_queue/timing/
1556         modify_test.hpp: Same.
1557         * testsuite/util/performance/assoc/mem_usage/
1558         multimap_insert_test.hpp: Same.
1559         * testsuite/util/performance/assoc/mem_usage/erase_test.hpp: Same.
1560         * testsuite/util/performance/assoc/timing/
1561         multimap_insert_test.hpp: Same.
1562         * testsuite/util/performance/assoc/timing/
1563         subscript_find_test.hpp: Same.
1564         * testsuite/util/performance/assoc/timing/find_test.hpp: Same.
1565         * testsuite/util/performance/assoc/timing/
1566         subscript_insert_test.hpp: Same.
1567         * testsuite/util/performance/assoc/timing/insert_test.hpp: Same.
1568         * testsuite/util/performance/assoc/timing/
1569         tree_order_statistics_test.hpp: Same.
1570         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
1571         * testsuite/util/performance/assoc/timing/
1572         tree_split_join_test.hpp: Same.
1573         * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
1574         * testsuite/util/testsuite_common_types.h: Same.
1575
1576         * include/ext/pb_ds/detail/cc_hash_table_map_/
1577         constructor_destructor_no_store_hash_fn_imps.hpp: Typedef
1578         normalization, consistency in member names between cc and gp hash
1579         tables, formatting fixes.
1580         * include/ext/pb_ds/detail/cc_hash_table_map_/
1581         erase_store_hash_fn_imps.hpp: Same.
1582         * include/ext/pb_ds/detail/cc_hash_table_map_/
1583         insert_no_store_hash_fn_imps.hpp: Same.
1584         * include/ext/pb_ds/detail/cc_hash_table_map_/
1585         constructor_destructor_store_hash_fn_imps.hpp: Same.
1586         * include/ext/pb_ds/detail/cc_hash_table_map_/
1587         insert_store_hash_fn_imps.hpp: Same.
1588         * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
1589         * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
1590         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
1591         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
1592         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
1593         * include/ext/pb_ds/detail/cc_hash_table_map_/
1594         constructor_destructor_fn_imps.hpp: Same.
1595         * include/ext/pb_ds/detail/cc_hash_table_map_/
1596         erase_no_store_hash_fn_imps.hpp: Same.
1597         * include/ext/pb_ds/detail/gp_hash_table_map_/
1598         constructor_destructor_no_store_hash_fn_imps.hpp: Same.
1599         * include/ext/pb_ds/detail/gp_hash_table_map_/
1600         erase_store_hash_fn_imps.hpp: Same.
1601         * include/ext/pb_ds/detail/gp_hash_table_map_/
1602         insert_no_store_hash_fn_imps.hpp: Same.
1603         * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
1604         * include/ext/pb_ds/detail/gp_hash_table_map_/
1605         constructor_destructor_store_hash_fn_imps.hpp: Same.
1606         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
1607         * include/ext/pb_ds/detail/gp_hash_table_map_/
1608         insert_store_hash_fn_imps.hpp: Same.
1609         * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
1610         * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
1611         * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
1612         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
1613         * include/ext/pb_ds/detail/gp_hash_table_map_/
1614         constructor_destructor_fn_imps.hpp: Same.
1615         * include/ext/pb_ds/detail/gp_hash_table_map_/
1616         erase_no_store_hash_fn_imps.hpp: Same.
1617
1618         * include/ext/pb_ds/assoc_container.hpp: Formatting fixes.
1619         * include/ext/pb_ds/detail/resize_policy/
1620         hash_prime_size_policy_imp.hpp: Same.
1621         * include/ext/pb_ds/detail/resize_policy/
1622         hash_standard_resize_policy_imp.hpp: Same.
1623         * include/ext/pb_ds/detail/types_traits.hpp: Same.
1624         * include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
1625         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
1626         * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
1627         * include/ext/pb_ds/detail/hash_fn/
1628         direct_mod_range_hashing_imp.hpp: Same.
1629         * include/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp: Same.
1630         * include/ext/pb_ds/detail/hash_fn/
1631         direct_mask_range_hashing_imp.hpp: Same.
1632
1633 2006-09-27  Paolo Carlini  <pcarlini@suse.de>
1634
1635         PR libstdc++/29217
1636         * src/localename.cc (locale::_Impl::_M_replace_categories)):
1637         Compensate for the inconsistent numerical encodings of the
1638         collate and time categories vs the corresponding names.
1639         * testsuite/22_locale/locale/cons/29217.cc: New.
1640
1641         * testsuite/22_locale/locale/cons/2.cc: Enable and split
1642         out the few ENC_TRAITS bits to...
1643         * testsuite/22_locale/locale/cons/unicode/1.cc... here.
1644
1645 2006-09-25  Howard Hinnant  <hhinnant@apple.com>
1646
1647         PR libstdc++/29224
1648         * include/tr1/functional_iterate.h: Avoid -Wshadow warnings.
1649
1650 2006-09-25  Paolo Carlini  <pcarlini@suse.de>
1651
1652         PR libstdc++/29179
1653         * include/ext/mt_allocator.h (__pool_base): Adjust/extend
1654         documentation in comments.
1655
1656 2006-09-24  Paolo Carlini  <pcarlini@suse.de>
1657
1658         * include/tr1/boost_shared_ptr.h (shared_ptr<>::shared_ptr(const
1659         __shared_ptr<>&), shared_ptr(const __weak_ptr<>&),
1660         shared_ptr(const __shared_ptr<>&, __static_cast_tag),
1661         shared_ptr(const __shared_ptr<>&, __const_cast_tag),
1662         shared_ptr(const __shared_ptr<>&, __dynamic_cast_tag),
1663         weak_ptr<>::weak_ptr(const __shared_ptr<>&), weak_ptr(const
1664         __weak_ptr<>&)): Remove.
1665         (shared_ptr<>::shared_ptr(const shared_ptr<>&),
1666         shared_ptr(const weak_ptr<>&), shared_ptr(const shared_ptr<>&,
1667         __static_cast_tag), shared_ptr(const shared_ptr<>&,
1668         __const_cast_tag), shared_ptr(const shared_ptr<>&,
1669         __dynamic_cast_tag), static_pointer_cast(const shared_ptr<>&),
1670         const_pointer_cast(const shared_ptr<>&), dynamic_pointer_cast(const
1671         shared_ptr<>&), weak_ptr<>::weak_ptr(const shared_ptr<>&),
1672         weak_ptr(const weak_ptr<>&), weak_ptr<>::lock(),
1673         __enable_shared_from_this_helper(const __shared_count<>&, const
1674         enable_shared_from_this<>*, const _Tp2*)): Add.
1675         (class enable_shared_from_this): Add.
1676         * testsuite/tr1/2_general_utilities/memory/enable_shared_from_this/
1677         1.cc: New.
1678         * testsuite/tr1/2_general_utilities/memory/shared_ptr/casts/1.cc:
1679         Likewise.
1680         * testsuite/tr1/2_general_utilities/memory/weak_ptr/lock/1.cc:
1681         Likewise.
1682
1683         * include/tr1/boost_shared_ptr.h: Further formatting and
1684         uglification fixes.
1685
1686 2006-09-22  Paolo Carlini  <pcarlini@suse.de>
1687
1688         PR libstdc++/29134 (vector<bool> bits)
1689         * include/bits/stl_bvector.h (vector<bool>::max_size):
1690         Use allocator' max_size.
1691         * testsuite/23_containers/vector/bool/capacity/29134.cc: New.
1692
1693         * testsuite/23_containers/deque/capacity/29134-2.cc: Minor tweak.
1694         * testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.
1695
1696 2006-09-22  Paolo Carlini  <pcarlini@suse.de>
1697
1698         * include/tr1/type_traits (add_reference): Robustify vs
1699         reference to void.
1700         * testsuite/tr1/4_metaprogramming/reference_modifications/
1701         add_reference.cc: Add test.
1702
1703         * include/tr1/memory: include <tr1/type_traits>.
1704         * include/tr1/boost_shared_ptr.h (__shared_ptr<>::operator*):
1705         Use add_reference instead.
1706         * testsuite/tr1/2_general_utilities/memory/enable_shared_from_this/
1707         explicit_instantiation/1.cc: New.
1708         * testsuite/tr1/2_general_utilities/memory/shared_ptr/
1709         explicit_instantiation/1.cc: Likewise.
1710         * testsuite/tr1/2_general_utilities/memory/weak_ptr/
1711         explicit_instantiation/1.cc: Likewise.
1712
1713         * testsuite/util/testsuite_tr1.h: Tweak; avoid empty enum.
1714
1715         * include/tr1/type_traits_fwd.h: Spelling fix.
1716
1717         * include/tr1/boost_shared_ptr.h: Obvious stylistic fixes.
1718
1719 2006-09-22  Paolo Carlini  <pcarlini@suse.de>
1720
1721         * include/tr1/boost_shared_ptr.h: Trivial formatting fixes.
1722
1723 2006-09-21  Benjamin Kosnik  <bkoz@redhat.com>
1724
1725         * include/ext/type_traits.h (__numeric_traits_integer): New.
1726         (__numeric_traits_floating): New.
1727         (__numeric_traits): Use them.
1728         * testsuite/ext/type_traits.cc: New.
1729
1730 2006-09-21  Paolo Carlini  <pcarlini@suse.de>
1731
1732         * include/ext/hash_map: Remove forward declaration of equality
1733         operator, not needed for friendship of all its instances.
1734         * include/ext/hash_set: Likewise.
1735         * include/bits/stl_set.h: Likewise for equality operator and
1736         operator less.
1737         * include/bits/stl_multiset.h: Likewise.
1738         * include/bits/stl_multimap.h: Likewise.
1739         * include/bits/stl_queue.h: Likewise.
1740         * include/bits/stl_stack.h: Likewise.
1741         * include/bits/streambuf_iterator.h: Likewise for copy.
1742         * include/std/std_streambuf.h: Likewise for __copy_aux and find.
1743         * include/tr1/boost_shared_ptr.h: Likewise for get_deleter.
1744         * include/tr1/random: Likewise, remove all forward declarations
1745         of inserters and extractors.
1746
1747 2006-09-21  Paolo Carlini  <pcarlini@suse.de>
1748
1749         * include/ext/sso_string_base.h (__sso_string_base<>::_M_max_size(),
1750         _M_destroy, _M_create): Use _M_get_allocator.
1751
1752 2006-09-21  Ben Elliston  <bje@au.ibm.com>
1753
1754         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove invocations of
1755         GLIBCXX_CHECK_COMPILER_FEATURES.
1756         * configure.ac: Always invoke GLIBCXX_CHECK_COMPILER_FEATURES.
1757         Remove invocations elsewhere.
1758         * configure: Regenerate.
1759
1760 2006-09-21  Paolo Carlini  <pcarlini@suse.de>
1761
1762         PR libstdc++/29134 (ext/vstring bits)
1763         * include/ext/sso_string_base.h (__sso_string_base<>::_S_max_size):
1764         Remove.
1765         (__sso_string_base<>::_M_max_size): Use allocator' max_size.
1766         (__sso_string_base<>::_M_create): Adjust.
1767         * include/ext/vstring.h: Minor comment tweak.
1768         * testsuite/ext/vstring/capacity/29134.cc: New.
1769
1770 2006-09-20  Paolo Carlini  <pcarlini@suse.de>
1771
1772         PR libstdc++/29134
1773         * include/bits/stl_list.h (list<>::max_size): Forward to allocator'
1774         max_size.
1775         * include/bits/stl_vector.h (vector<>::max_size): Likewise.
1776         * include/bits/stl_deque.h (deque<>::max_size): Likewise.
1777         * include/bits/stl_tree.h (_Rb_tree<>::max_size): Likewise.
1778         * include/tr1/hashtable (_Hashtable<>::max_size): Likewise.
1779         * testsuite/23_containers/vector/capacity/29134.cc: Add.
1780         * testsuite/23_containers/deque/capacity/29134.cc: Likewise.
1781         * testsuite/23_containers/list/capacity/29134.cc: Likewise.
1782         * testsuite/23_containers/set/capacity/29134.cc: Likewise.
1783         * testsuite/23_containers/map/capacity/29134.cc: Likewise.
1784         * testsuite/23_containers/multiset/capacity/29134.cc: Likewise.
1785         * testsuite/23_containers/multimap/capacity/29134.cc: Likewise.
1786         * testsuite/tr1/6_containers/unordered/capacity/29134-set.cc: Likewise.
1787         * testsuite/tr1/6_containers/unordered/capacity/29134-map.cc: Likewise.
1788         * testsuite/tr1/6_containers/unordered/capacity/29134-multiset.cc:
1789         Likewise.
1790         * testsuite/tr1/6_containers/unordered/capacity/29134-multimap.cc:
1791         Likewise.
1792
1793         * include/bits/deque.tcc (deque<>::_M_new_elements_at_front,
1794         deque<>::_M_new_elements_at_back): Check for length errors.
1795         * testsuite/23_containers/deque/capacity/29134-2.cc: New.
1796         * testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.
1797
1798         * include/tr1/hashtable (_Hashtable<>::_M_get_Value_allocator): Add.
1799         (_Hashtable<>::_M_allocate_node, _M_deallocate_node): Use it.
1800         * testsuite/tr1/6_containers/unordered/instantiate/set.cc: Add test.
1801         * testsuite/tr1/6_containers/unordered/instantiate/map.cc: Likewise.
1802         * testsuite/tr1/6_containers/unordered/instantiate/multiset.cc:
1803         Likewise.
1804         * testsuite/tr1/6_containers/unordered/instantiate/multimap.cc:
1805         Likewise.
1806
1807 2006-09-20  Benjamin Kosnik  <bkoz@redhat.com>
1808
1809         * include/ext/pb_ds/detail/
1810         typelist_assoc_container.hpp: Remove, unused.
1811         * include/ext/pb_ds/detail/typelist/
1812         typelist_assoc_container_find.hpp: Same.
1813         * include/ext/pb_ds/detail/typelist: Remove.
1814         * include/ext/pb_ds/detail/typelist.hpp: Merge...
1815         * include/ext/pb_ds/detail/typelist/typelist_flatten.hpp: Same.
1816         * include/ext/pb_ds/detail/typelist/typelist_contains.hpp: Same.
1817         * include/ext/pb_ds/detail/typelist/typelist_typelist_append.hpp: Same.
1818         * include/ext/pb_ds/detail/typelist/typelist_apply.hpp: Same.
1819         * include/ext/pb_ds/detail/typelist/typelist_filter.hpp: Same.
1820         * include/ext/pb_ds/detail/typelist/typelist_append.hpp: Same.
1821         * include/ext/pb_ds/detail/typelist/typelist_at_index.hpp: Same.
1822         * include/ext/pb_ds/detail/typelist/typelist_transform.hpp: Same.
1823         * include/ext/typelist.h: ... into this.
1824         * include/Makefile.am: Subtractions.
1825         * include/Makefile.in: Regenerate.
1826
1827         * include/ext/pb_ds/assoc_container.hpp: Fixups for new includes,
1828         namespaces, and names.
1829         * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
1830         * include/ext/pb_ds/detail/resize_policy/
1831         hash_prime_size_policy_imp.hpp: Same.
1832         * include/ext/pb_ds/detail/resize_policy/
1833         cc_hash_max_collision_check_resize_trigger_imp.hpp: Same.
1834         * include/ext/pb_ds/detail/resize_policy/
1835         sample_resize_policy.hpp: Same.
1836         * include/ext/pb_ds/detail/resize_policy/
1837         sample_resize_trigger.hpp: Same.
1838         * include/ext/pb_ds/detail/resize_policy/
1839         hash_exponential_size_policy_imp.hpp: Same.
1840         * include/ext/pb_ds/detail/resize_policy/
1841         hash_load_check_resize_trigger_size_base.hpp: Same.
1842         * include/ext/pb_ds/detail/resize_policy/
1843         hash_load_check_resize_trigger_imp.hpp: Same.
1844         * include/ext/pb_ds/detail/resize_policy/
1845         hash_standard_resize_policy_imp.hpp: Same.
1846         * include/ext/pb_ds/detail/container_base_dispatch.hpp: Same.
1847         * testsuite/performance/ext/pb_ds/text_find_timing.cc
1848         * testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc
1849         * testsuite/performance/ext/pb_ds/tree_text_insert_timing.cc
1850         * testsuite/performance/ext/pb_ds/priority_queue_text_push_timing.cc
1851         * testsuite/performance/ext/pb_ds/random_int_subscript_find_timing.cc
1852         * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc
1853         * testsuite/performance/ext/pb_ds/random_int_find_timing.cc
1854         * testsuite/performance/ext/pb_ds/
1855         multimap_text_insert_mem_usage.hpp: Same.
1856         * testsuite/performance/ext/pb_ds/
1857         priority_queue_random_int_push_timing.cc
1858         * testsuite/performance/ext/pb_ds/multimap_text_find_timing.hpp: Same.
1859         * testsuite/performance/ext/pb_ds/
1860         priority_queue_text_modify_timing.hpp: Same.
1861         * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc
1862         * testsuite/performance/ext/pb_ds/
1863         priority_queue_text_push_pop_timing.cc
1864         * testsuite/performance/ext/pb_ds/priority_queue_text_join_timing.cc
1865         * testsuite/performance/ext/pb_ds/
1866         priority_queue_random_int_push_pop_timing.cc
1867         * testsuite/performance/ext/pb_ds/random_int_subscript_insert_timing.cc
1868         * testsuite/performance/ext/pb_ds/tree_text_lor_find_timing.cc
1869         * testsuite/performance/ext/pb_ds/
1870         multimap_text_insert_timing.hpp: Same.
1871         * testsuite/performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc
1872         * testsuite/performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc
1873         * testsuite/performance/23_containers/find/map.cc
1874         * testsuite/performance/23_containers/create/map.cc
1875         * testsuite/performance/23_containers/insert_erase/associative.cc
1876         * testsuite/performance/23_containers/insert/sequence.cc
1877         * testsuite/performance/23_containers/insert/associative.cc
1878         * testsuite/performance/23_containers/create_from_sorted/set.cc
1879         * testsuite/performance/23_containers/index/map.cc
1880         * testsuite/performance/23_containers/insert_from_sorted/set.cc
1881         * testsuite/performance/23_containers/create_sort/list.cc
1882         * testsuite/performance/23_containers/sort_search/list.cc
1883         * testsuite/performance/23_containers/producer_consumer/sequence.cc
1884         * testsuite/performance/23_containers/producer_consumer/associative.cc
1885         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
1886         * testsuite/util/regression/rand/priority_queue/
1887         rand_regression_test.hpp: Same.
1888         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
1889         * testsuite/util/regression/assoc/common_type.hpp: Same.
1890         * testsuite/util/native_type/assoc/native_multimap.hpp: Same.
1891         * testsuite/util/native_type/assoc/native_tree_tag.hpp: Same.
1892         * testsuite/util/native_type/assoc/native_hash_multimap.hpp: Same.
1893         * testsuite/util/native_type/assoc/native_set.hpp: Same.
1894         * testsuite/util/native_type/assoc/native_map.hpp: Same.
1895         * testsuite/util/native_type/assoc/native_hash_set.hpp: Same.
1896         * testsuite/util/native_type/assoc/native_hash_map.hpp: Same.
1897         * testsuite/util/common_type/priority_queue/common_type.hpp: Same.
1898         * testsuite/util/common_type/assoc/common_type.hpp: Same.
1899         * testsuite/util/common_type/assoc/string_form.hpp: Same.
1900         * testsuite/util/common_type/assoc/template_policy.hpp: Same.
1901         * testsuite/util/performance/priority_queue/mem_usage/pop_test.hpp:
1902         Same.
1903         * testsuite/util/performance/priority_queue/timing/push_pop_test.hpp:
1904         Same.
1905         * testsuite/util/performance/priority_queue/timing/join_test.hpp: Same.
1906         * testsuite/util/performance/priority_queue/timing/push_test.hpp: Same.
1907         * testsuite/util/performance/priority_queue/timing/modify_test.hpp:
1908         Same.
1909         * testsuite/util/performance/assoc/mem_usage/multimap_insert_test.hpp:
1910         Same.
1911         * testsuite/util/performance/assoc/mem_usage/erase_test.hpp: Same.
1912         * testsuite/util/performance/assoc/timing/common_type.hpp: Same.
1913         * testsuite/util/performance/assoc/timing/multimap_insert_test.hpp:
1914         Same.
1915         * testsuite/util/performance/assoc/timing/subscript_find_test.hpp:
1916         Same.
1917         * testsuite/util/performance/assoc/timing/find_test.hpp: Same.
1918         * testsuite/util/performance/assoc/timing/subscript_insert_test.hpp:
1919         Same.
1920         * testsuite/util/performance/assoc/timing/insert_test.hpp: Same.
1921         * testsuite/util/performance/assoc/timing/
1922         tree_order_statistics_test.hpp: Same.
1923         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
1924         * testsuite/util/performance/assoc/timing/tree_split_join_test.hpp:
1925         Same.
1926         * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
1927
1928         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Fixup line numbers.
1929
1930 2006-09-19  Paolo Carlini  <pcarlini@suse.de>
1931
1932         * include/tr1/hashtable_policy.h: Uglify all the names.
1933         * include/tr1/hashtable: Likewise.
1934         * include/tr1/unordered_map: Likewise.
1935         * include/tr1/unordered_set: Likewise.
1936         * include/tr1/functional: Uglify struct hash names.
1937         * include/tr1/cmath: Uglify namespace detail to __detail.
1938
1939 2006-09-18  Benjamin Kosnik  <bkoz@redhat.com>
1940
1941         * testsuite/util/regression/res_mng: Remove.
1942         * testsuite/util/regression/res_mng/dbg_ex_allocator_base.cc: Merge..
1943         * testsuite/util/regression/res_mng/forced_exception.hpp: Merge...
1944         * testsuite/util/regression/res_mng/dbg_ex_allocator_base.hpp: Merge..
1945         * testsuite/util/regression/res_mng/dbg_ex_allocator.hpp: Merge..
1946         * testsuite/util/testsuite_allocator.h (throw_allocator): Merge...
1947         * include/ext/throw_allocator.h (throw_allocator): ... into this.
1948         * src/throw_allocator.cc: ...and this.
1949         * include/Makefile.am (ext_headers): Add.
1950         * include/Makefile.in: Regenerate.
1951         * src/Makefile.am (sources): New.
1952         * src/Makefile.in: Regenerate.
1953         * testsuite/lib/libstdc++.exp: Subtract dbg_ex_allocator_base.cc.
1954
1955         * include/ext/pb_ds/detail/map_debug_base.hpp: Adjust
1956         includes, names, and namespaces.
1957         * testsuite/23_containers/list/modifiers/insert/25288.cc: Same.
1958         * testsuite/util/regression/rand/priority_queue/detail/
1959         erase_fn_imps.hpp: Same.
1960         * testsuite/util/regression/rand/priority_queue/detail/
1961         constructor_destructor_fn_imps.hpp: Same.
1962         * testsuite/util/regression/rand/priority_queue/detail/
1963         insert_fn_imps.hpp: Same.
1964         * testsuite/util/regression/rand/priority_queue/detail/
1965         modify_fn_imps.hpp: Same.
1966         * testsuite/util/regression/rand/priority_queue/detail/
1967         split_join_fn_imps.hpp: Same.
1968         * testsuite/util/regression/rand/priority_queue/detail/
1969         operator_fn_imps.hpp: Same.
1970         * testsuite/util/regression/rand/priority_queue/
1971         container_rand_regression_test.hpp: Same.
1972         * testsuite/util/regression/rand/assoc/detail/
1973         subscript_fn_imps.hpp: Same.
1974         * testsuite/util/regression/rand/assoc/detail/
1975         operator_fn_imps.hpp: Same.
1976         * testsuite/util/regression/rand/assoc/detail/erase_fn_imps.hpp: Same.
1977         * testsuite/util/regression/rand/assoc/detail/
1978         constructor_destructor_fn_imps.hpp
1979         * testsuite/util/regression/rand/assoc/detail/insert_fn_imps.hpp: Same.
1980         * testsuite/util/regression/rand/assoc/detail/
1981         split_join_fn_imps.hpp: Same.
1982         * testsuite/util/regression/rand/assoc/
1983         container_rand_regression_test.hpp: Same.
1984         * testsuite/util/regression/priority_queue/common_type.hpp: Same.
1985         * testsuite/util/regression/assoc/common_type.hpp: Same.
1986         * testsuite/util/regression/basic_type.hpp: Same.
1987         * testsuite/util/rng/twister_rand_gen.cc: Tweak.
1988
1989 2006-09-18  Tom Tromey  <tromey@redhat.com>
1990
1991         * configure: Rebuilt.
1992
1993 2006-09-18  Paolo Carlini  <pcarlini@suse.de>
1994
1995         * include/bits/locale_facets.tcc (_M_group_int): Remove
1996         redundant using-declaration.
1997
1998 2006-09-18  Benjamin Kosnik  <bkoz@redhat.com>
1999
2000         * include/ext/typelist.h (cond_type): Remove, use __conditional_type.
2001
2002 2006-09-18  Benjamin Kosnik  <bkoz@redhat.com>
2003             Peter Doerfler  <gcc@pdoerfler.com>
2004             Paolo Carlini  <pcarlini@suse.de>
2005
2006         * include/ext/type_traits.h: New.
2007         (__conditional_type): New.
2008         (__numeric_traits): New.
2009         (__add_unsigned): New.
2010         (__remove_unsigned): New.
2011         (__enable_if): New.
2012         * include/Makefile.am: Add.
2013         * include/Makefile.in: Regenerate.
2014         * include/ext/pb_ds/detail/type_utils.hpp: Use ext include,
2015         remove duplicates.
2016         * include/tr1/hashtable_policy.h (IF): Use __conditional_type.
2017         (_Max_digits10): Same.
2018         (identity): Use _Identity.
2019         (extract1st): Use _Select1st.
2020         * include/tr1/random (_Select): Use __conditional_type.
2021         (_To_Unsigned_Type): Use __add_unsigned. Linebreak fixups.
2022         * include/bits/locale_facets.tcc (__to_unsigned_type): Remove, use
2023         __add_unsigned.
2024         * include/tr1/random.tcc: Fixups as above.
2025         * include/tr1/unordered_map: Same.
2026         * include/tr1/hashtable: Same.
2027         * include/tr1/unordered_set: Same.
2028         * include/ext/pb_ds/detail/gp_hash_table_map_/
2029         standard_policies.hpp: Same.
2030         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
2031         * include/ext/pb_ds/detail/typelist/typelist_filter.hpp: Same.
2032         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
2033         * include/ext/pb_ds/detail/type_utils.hpp: Same.
2034         * include/ext/pb_ds/trie_policy.hpp: Same.
2035         * docs/html/ext/pb_ds/string_trie_e_access_traits.html: Same.
2036
2037         * include/bits/cpp_type_traits.h (__enable_if): Move to ext, make
2038         boolean argument first.
2039         * include/bits/locale_facets.h: Fixups for __enable_if argument
2040         and namespace switch.
2041         * include/bits/stl_algobase.h: Same.
2042         * include/bits/stl_algo.h: Same.
2043         * include/bits/stl_iterator.h: Same.
2044         * include/bits/streambuf_iterator.h: Same.
2045         * include/debug/safe_iterator.h: Same.
2046         * include/tr1/hashtable_policy.h: Same.
2047         * include/tr1/cmath: Same.
2048         * include/tr1/functional: Same.
2049         * include/tr1/functional_iterate.h: Same.
2050         * include/std/std_streambuf.h: Same.
2051         * include/c_std/std_cmath.h: Same.
2052         * testsuite/util/testsuite_tr1.h: Same.
2053         * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
2054
2055 2006-09-18  Paolo Carlini  <pcarlini@suse.de>
2056
2057         PR libstdc++/29063
2058         * include/bits/valarray_array.h: Fix typo, undefine
2059         _DEFINE_ARRAY_FUNCTION.
2060         * include/std/std_valarray.h: Undefine _DEFINE_BINARY_OPERATOR.
2061
2062 2006-09-14  Benjamin Kosnik  <bkoz@redhat.com>
2063
2064         * include/bits/concurrence.h (__mutex::__mutex): Pass address of
2065         mutex to *_MUTEX_INIT_FUNCTION.
2066
2067 2006-09-13  Benjamin Kosnik  <bkoz@redhat.com>
2068
2069         * include/bits/atomicity.h: Move to...
2070         * include/ext/atomicity.h: ...here.
2071         * include/bits/concurrence.h: Move to...
2072         * include/ext/concurrence.h: ...here.
2073         * include/Makefile.am (ext_headers): Additions.
2074         (bits_headers): Subtractions.
2075         * include/Makefile.in: Regenerate.
2076
2077         * include/ext/bitmap_allocator.h (_Mutex), __threads_enabled,
2078         _Lock, _Auto_Lock): Subsume into...
2079         * include/bits/concurrence.h (__mutex): ..this. Error check
2080         locking and unlocking.
2081         (lock): Uglify to...
2082         (__scoped_lock): Use __mutex.
2083         (__glibcxx_mutex_define_initialized): Remove.
2084         (__glibcxx_mutex_type): Remove.
2085
2086         * include/tr1/boost_shared_ptr.h: Formating tweaks, adjustments.
2087         (_Lock_policy): Move from here...
2088         * include/ext/concurrence.h: ... to here.
2089         (__shared_ptr_default_lock_mode): To __default_lock_policy.
2090         (_S_lockfree): To _S_atomic.
2091         Document.
2092
2093         * libsupc++/guard.cc (static_mutex): Subsume into and fixup for...
2094         * include/ext/concurrence.h (__recursive_mutex): ...this. Error
2095         check locking and unlocking.
2096         * libsupc++/eh_alloc.cc: Use __scoped_lock.
2097
2098         * config/os/aix/atomicity.h: Fixups for include paths, mutex to
2099         __scoped_mutex change, removal of locking defines.
2100         * config/os/irix/atomicity.h: Same.
2101         * config/cpu/cris/atomicity.h: Same.
2102         * config/cpu/m68k/atomicity.h: Same.
2103         * config/cpu/hppa/atomicity.h: Same.
2104         * config/cpu/mips/atomicity.h: Same.
2105         * config/cpu/sparc/atomicity.h: Same.
2106         * config/cpu/i386/atomicity.h: Same.
2107         * config/cpu/i486/atomicity.h: Same.
2108         * config/cpu/sh/atomicity.h: Same.
2109         * config/cpu/generic/atomicity_mutex/atomicity.h: Same.
2110         * include/ext/pool_allocator.h: Same.
2111         * include/ext/bitmap_allocator.h: Same.
2112         * include/ext/rc_string_base.h: Same.
2113         * include/ext/mt_allocator.h: Same.
2114         * include/bits/locale_classes.h: Same.
2115         * include/bits/basic_string.h: Same.
2116         * include/bits/ios_base.h: Same.
2117         * include/tr1/memory: Same.
2118         * src/pool_allocator.cc: Same.
2119         * src/mt_allocator.cc: Same.
2120         * src/locale_init.cc: Same.
2121         * src/ios.cc: Same.
2122         * src/locale.cc: Same.
2123         * src/bitmap_allocator.cc: Same.
2124         * src/ios_init.cc: Same.
2125         * src/debug.cc: Same.
2126
2127 2006-09-12  Benjamin Kosnik  <bkoz@redhat.com>
2128
2129         * libsupc++/eh_globals.cc: Remove __gnu_internal.
2130         * config/io/basic_file_stdio.cc: Same.
2131         * config/abi/compatibility.h: Same.
2132         * config/cpu/generic/atomicity_mutex/atomicity.h: Same.
2133         * config/cpu/sh/atomicity.h: Same.
2134
2135 2006-09-10  Paolo Carlini  <pcarlini@suse.de>
2136
2137         * include/bits/stl_heap.h (sort_heap): Iterator post-decrement is
2138         only required to be convertible to the iterator type.
2139
2140 2006-09-08  Paolo Carlini  <pcarlini@suse.de>
2141
2142         * include/tr1/random.tcc (poisson_distribution<>::operator()):
2143         Avoid potential warnings when _IntType is unsigned.
2144
2145 2006-09-08  Benjamin Kosnik  <bkoz@redhat.com>
2146
2147         * include/debug/debug.h (_GLIBCXX_DEBUG_ONLY): New.
2148         * include/ext/bitmap_allocator.h (_BALLOC_SANITY_CHECK,
2149         _BALLOC_ASSERT): Remove. Use _GLIBCXX_DEBUG,
2150         _GLIBCXX_DEBUG_ASSERT.
2151         * include/ext/pb_ds/hash_policy.hpp (PB_DS_DBG_ASSERT): Convert to
2152         _GLIBCXX_DEBUG_ASSERT. Formatting corrections.
2153         (PB_DS_DBG_VERIFY): Remove, unused.
2154         (PB_DS_DBG_ONLY): Convert to _GLIBCXX_DEBUG blocks.
2155         * include/ext/pb_ds/detail/resize_policy/
2156         hash_load_check_resize_trigger_imp.hpp: Same.
2157         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
2158         * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
2159         * include/ext/pb_ds/detail/binomial_heap_base_/
2160         insert_fn_imps.hpp: Same.
2161         * include/ext/pb_ds/detail/binomial_heap_base_/
2162         binomial_heap_base_.hpp: Same.
2163         * include/ext/pb_ds/detail/binomial_heap_base_/
2164         constructors_destructor_fn_imps.hpp: Same.
2165         * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
2166         * include/ext/pb_ds/detail/binomial_heap_base_/
2167         split_join_fn_imps.hpp: Same.
2168         * include/ext/pb_ds/detail/cc_hash_table_map_/
2169         constructor_destructor_no_store_hash_fn_imps.hpp: Same.
2170         * include/ext/pb_ds/detail/cc_hash_table_map_/
2171         erase_store_hash_fn_imps.hpp: Same.
2172         * include/ext/pb_ds/detail/cc_hash_table_map_/
2173         insert_no_store_hash_fn_imps.hpp: Same.
2174         * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
2175         * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
2176         * include/ext/pb_ds/detail/cc_hash_table_map_/
2177         constructor_destructor_store_hash_fn_imps.hpp: Same.
2178         * include/ext/pb_ds/detail/cc_hash_table_map_/
2179         insert_store_hash_fn_imps.hpp: Same.
2180         * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
2181         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
2182         * include/ext/pb_ds/detail/cc_hash_table_map_/
2183         debug_no_store_hash_fn_imps.hpp: Same.
2184         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
2185         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
2186         * include/ext/pb_ds/detail/cc_hash_table_map_/
2187         constructor_destructor_fn_imps.hpp: Same.
2188         * include/ext/pb_ds/detail/cc_hash_table_map_/
2189         debug_store_hash_fn_imps.hpp: Same.
2190         * include/ext/pb_ds/detail/cc_hash_table_map_/
2191         erase_no_store_hash_fn_imps.hpp: Same.
2192         * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
2193         * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
2194         * include/ext/pb_ds/detail/unordered_iterator/
2195         const_point_iterator.hpp: Same.
2196         * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
2197         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
2198         * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Same.
2199         * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
2200         * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Same.
2201         * include/ext/pb_ds/detail/pat_trie_/
2202         constructors_destructor_fn_imps.hpp: Same.
2203         * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
2204         * include/ext/pb_ds/detail/pat_trie_/head.hpp: Same.
2205         * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Same.
2206         * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
2207         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
2208         * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Same.
2209         * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
2210         * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
2211         * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Same.
2212         * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Same.
2213         * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Same.
2214         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
2215         * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Same.
2216         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
2217         * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
2218         * include/ext/pb_ds/detail/bin_search_tree_/
2219         constructors_destructor_fn_imps.hpp: Same.
2220         * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
2221         * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
2222         * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
2223         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
2224         * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
2225         * include/ext/pb_ds/detail/bin_search_tree_/
2226         split_join_fn_imps.hpp: Same.
2227         * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
2228         * include/ext/pb_ds/detail/gp_hash_table_map_/
2229         constructor_destructor_no_store_hash_fn_imps.hpp: Same.
2230         * include/ext/pb_ds/detail/gp_hash_table_map_/
2231         erase_store_hash_fn_imps.hpp: Same.
2232         * include/ext/pb_ds/detail/gp_hash_table_map_/
2233         insert_no_store_hash_fn_imps.hpp: Same.
2234         * include/ext/pb_ds/detail/gp_hash_table_map_/
2235         resize_store_hash_fn_imps.hpp: Same.
2236         * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
2237         * include/ext/pb_ds/detail/gp_hash_table_map_/
2238         constructor_destructor_store_hash_fn_imps.hpp: Same.
2239         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
2240         * include/ext/pb_ds/detail/gp_hash_table_map_/
2241         insert_store_hash_fn_imps.hpp: Same.
2242         * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
2243         * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
2244         * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
2245         * include/ext/pb_ds/detail/gp_hash_table_map_/
2246         debug_no_store_hash_fn_imps.hpp: Same.
2247         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
2248         * include/ext/pb_ds/detail/gp_hash_table_map_/
2249         constructor_destructor_fn_imps.hpp: Same.
2250         * include/ext/pb_ds/detail/gp_hash_table_map_/
2251         debug_store_hash_fn_imps.hpp: Same.
2252         * include/ext/pb_ds/detail/gp_hash_table_map_/
2253         erase_no_store_hash_fn_imps.hpp: Same.
2254         * include/ext/pb_ds/detail/gp_hash_table_map_/
2255         resize_no_store_hash_fn_imps.hpp: Same.
2256         * include/ext/pb_ds/detail/types_traits.hpp: Same.
2257         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
2258         * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
2259         * include/ext/pb_ds/detail/binary_heap_/
2260         constructors_destructor_fn_imps.hpp: Same.
2261         * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
2262         * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Same.
2263         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
2264         * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
2265         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
2266         * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
2267         * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
2268         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
2269         * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
2270         * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
2271         * include/ext/pb_ds/detail/pairing_heap_/
2272         constructors_destructor_fn_imps.hpp: Same.
2273         * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
2274         * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
2275         * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
2276         * include/ext/pb_ds/detail/binomial_heap_/
2277         constructors_destructor_fn_imps.hpp: Same.
2278         * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
2279         * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
2280         * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
2281         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2282         erase_fn_imps.hpp: Same.
2283         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2284         left_child_next_sibling_heap_.hpp: Same.
2285         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2286         const_iterator.hpp: Same.
2287         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2288         insert_fn_imps.hpp: Same.
2289         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2290         constructors_destructor_fn_imps.hpp: Same.
2291         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2292         debug_fn_imps.hpp: Same.
2293         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2294         const_point_iterator.hpp: Same.
2295         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
2296         * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
2297         * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
2298         * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
2299         * include/ext/pb_ds/detail/thin_heap_/
2300         constructors_destructor_fn_imps.hpp: Same.
2301         * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
2302         * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
2303         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
2304         * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Same.
2305         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
2306         * include/ext/pb_ds/detail/ov_tree_map_/
2307         constructors_destructor_fn_imps.hpp: Same.
2308         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
2309         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
2310         * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
2311         * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
2312         * include/ext/pb_ds/detail/map_debug_base.hpp: Same.
2313         * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
2314         * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
2315         * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
2316         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
2317         * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
2318         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
2319         * include/ext/pb_ds/detail/splay_tree_/
2320         constructors_destructor_fn_imps.hpp: Same.
2321         * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
2322         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
2323         * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
2324         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
2325         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
2326         * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
2327         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
2328         * include/ext/pb_ds/detail/list_update_map_/
2329         constructor_destructor_fn_imps.hpp: Same.
2330         * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
2331         * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
2332         * include/ext/pb_ds/detail/list_update_map_/
2333         iterators_fn_imps.hpp: Same.
2334         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
2335         * include/ext/pb_ds/detail/rc_binomial_heap_/
2336         rc_binomial_heap_.hpp: Same.
2337         * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
2338         * include/ext/pb_ds/detail/rc_binomial_heap_/
2339         constructors_destructor_fn_imps.hpp: Same.
2340         * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
2341         * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
2342         * include/ext/pb_ds/detail/rc_binomial_heap_/
2343         split_join_fn_imps.hpp: Same.
2344         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
2345         * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
2346         * include/ext/pb_ds/detail/rb_tree_map_/
2347         constructors_destructor_fn_imps.hpp: Same.
2348         * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
2349         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
2350         * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
2351         * testsuite/util/regression/res_mng/forced_exception.hpp: Same.
2352         * testsuite/util/regression/res_mng/dbg_ex_allocator_base.hpp: Same.
2353         * testsuite/util/regression/res_mng/dbg_ex_allocator.hpp: Same.
2354         * testsuite/util/rng/twister_rand_gen.cc
2355         * testsuite/util/native_type/assoc/native_multimap.hpp: Same.
2356         * testsuite/util/native_type/assoc/native_hash_multimap.hpp: Same.
2357
2358 2006-09-05  Paolo Carlini  <pcarlini@suse.de>
2359
2360         * include/bits/basic_string.tcc (find(const _CharT*, size_type,
2361         size_type)): Robustify.
2362         * include/ext/vstring.tcc (find(const _CharT*, size_type,
2363         size_type)): Likewise.
2364
2365 2006-09-05  Paolo Carlini  <pcarlini@suse.de>
2366
2367         * include/bits/basic_string.tcc (find(const _CharT*, size_type,
2368         size_type)): Reimplement in terms of traits::eq and traits::compare.
2369         * include/ext/vstring.tcc (find(const _CharT*, size_type,
2370         size_type)): Likewise.
2371         * src/string-inst.cc: Remove unneded std::search instantiation.
2372
2373 2006-09-04  Benjamin Kosnik  <bkoz@redhat.com>
2374
2375         PR c++/28871
2376         * include/ext/bitmap_allocator.h: Add comment for end of anonymous
2377         namespace.
2378         * include/ext/rope: Same.
2379         * include/bits/cpp_type_traits.h: Same.
2380         * include/tr1/tuple: Same.
2381         * include/tr1/functional_iterate.h: Same.
2382
2383         * include/bits/cpp_type_traits.h: Revert anonymous namespace
2384         change, use nested detail instead.
2385
2386         * testsuite/lib/libstdc++.exp (libstdc++_init): PCHFLAGS revert to
2387         stdc++.h.
2388
2389 2006-09-04  Paolo Carlini  <pcarlini@suse.de>
2390
2391         * src/mt_allocator.cc (__pool<true>::_M_reclaim_block): Do
2392         not name a variable __used, badname on BSD.
2393
2394 2006-09-02  Paolo Carlini  <pcarlini@suse.de>
2395             Richard Guenther  <rguenther@suse.de>
2396
2397         PR libstdc++/24469
2398         * src/mt_allocator.cc (__pool<true>::_M_reserve_block,
2399         __pool<true>::_M_reclaim_block): Fix the logic to avoid
2400         races, exploit atomic counters stored in second part of
2401         the memory pointed by _M_used.
2402         (__pool<true>::_M_initialize): Adjust _M_used allocation.
2403         * include/ext/mt_allocator.h (__pool<true>::_Bin_record):
2404         Update comment.
2405
2406 2006-08-31  Benjamin Kosnik  <bkoz@redhat.com>
2407
2408         PR libstdc++/28671 continued
2409         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't use
2410         CXXFLAGS when checking for atomic builtins.
2411         * configure: Regenerate.
2412         * include/bits/atomicity.h: Revert.
2413
2414 2006-08-31  Richard Guenther  <rguenther@suse.de>
2415
2416         * include/ext/mt_allocator.h: Remove volatile qualifiers
2417         from data members and corresponding locals and function
2418         signatures.
2419
2420 2006-08-31  Paolo Carlini  <pcarlini@suse.de>
2421
2422         * config/abi/pre/gnu.ver: Correct atomic helper function signature
2423         for case where _Atomic_word is long.
2424
2425 2006-08-31  Benjamin Kosnik  <bkoz@redhat.com>
2426
2427         PR libstdc++/28671
2428         * include/bits/atomicity.h (__exchange_and_add): Declare only.
2429         (__atomic_add): Same.
2430         * config/cpu/generic/atomicity_builtins/atomicity.h: Remove comment.
2431
2432 2006-08-30  Benjamin Kosnik  <bkoz@redhat.com>
2433             Richard Guenther  <rguenther@suse.de>
2434
2435         * config/abi/pre/gnu.ver: Spell out exact signatures for atomic
2436         access functions.
2437
2438         * include/bits/atomicity.h (__atomic_add_dispatch): Remove
2439         volatile qualification for _Atomic_word argument.
2440         (__atomic_add_single): Same.
2441         (__exchange_and_add_dispatch): Same.
2442         (__exchange_and_add_single): Same.
2443
2444 2006-08-29  Paolo Carlini  <pcarlini@suse.de>
2445
2446         * include/tr1/random (subtract_with_carry_01<>::_M_initialize_npows):
2447         New.
2448         (subtract_with_carry_01<>::subtract_with_carry_01(),
2449         subtract_with_carry_01<>::subtract_with_carry_01(unsigned long),
2450         subtract_with_carry_01<>::subtract_with_carry_01(_Gen&)): Use it.
2451         * include/tr1/random.tcc: Define.
2452
2453         * include/tr1/random (xor_combine<>::_M_initialize_max()): New.
2454         (xor_combine<>::xor_combine(), xor_combine<>::xor_combine(const
2455         base1_type&, const base2_type&), xor_combine<>::xor_combine(unsigned
2456         long), xor_combine<>::xor_combine(_Gen&)): Use it.
2457         (xor_combine<>::min, xor_combine<>::max): Adjust.
2458         * include/tr1/random.tcc: Define.
2459
2460 2006-08-29  Benjamin Kosnik  <bkoz@redhat.com>
2461
2462         * acinclude.m4(glibcxx_PCHFLAGS): Set to stdtr1c++.h.
2463         * configure: Regenerate.
2464
2465         * scripts/check_compile: Output current compile line.
2466
2467 2006-08-28  Benjamin Kosnik  <bkoz@redhat.com>
2468
2469         PR libstdc++/23773 partial
2470         * docs/html/abi.html: Update.
2471
2472 2006-08-28  Roger Sayle  <roger@eyesopen.com>
2473             Paolo Carlini  <pcarlini@suse.de>
2474
2475         * include/bits/stl_algo.h (__heap_select, __introselect): New.
2476         (nth_element): New implementation.
2477         (partial_copy): Use __heap_select.
2478         * testsuite/performance/25_algorithms/nth_element_worst_case.cc: New.
2479
2480 2006-08-28  Paolo Carlini  <pcarlini@suse.de>
2481             Roger Sayle  <roger@eyesopen.com>
2482
2483         * testsuite/25_algorithms/nth_element/2.cc: New.
2484
2485 2006-08-27  Paolo Carlini  <pcarlini@suse.de>
2486
2487         PR libstdc++/28830
2488         * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
2489         lockfree_weaktoshared.cc: Rename to...
2490         * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
2491         default_weaktoshared.cc: ... this; test the default base class.
2492         * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
2493         mutex_weaktoshared.cc: Run like the other thread tests.
2494
2495 2006-08-25  Paolo Carlini  <pcarlini@suse.de>
2496
2497         * docs/html/ext/tr1.html: Update.
2498
2499 2006-08-25  Paolo Carlini  <pcarlini@suse.de>
2500
2501         * include/tr1/random (bernoulli_distribution::operator()): Fix
2502         wrt generators returning integers.
2503         (uniform_int<>::_M_call): Add.
2504         (uniform_int<>::operator()): Use it.
2505
2506         * include/tr1/random (_Adaptor<>::min, _Adaptor<>::max): Add.
2507         (_Adaptor<>::operator()): Allow for nonzero _M_g.min().
2508
2509         * include/tr1/random.tcc (linear_congruential<>::min, max):
2510         Move inline...
2511         (__mod): Move ...
2512         * include/tr1/random: ... here.
2513         (struct _Mod): Declare.
2514
2515         * include/tr1/random (struct _To_Unsigned_Type): Only declare,
2516         move...
2517         * include/tr1/random.tcc: ... here.
2518
2519 2006-08-22  Phillip Jordan  <phillip.m.jordan@gmail.com>
2520
2521         *include/tr1/boost_shared_ptr.h: Added locking policy to
2522         tr1::shared_ptr<> and related classes.
2523         * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread: New.
2524         * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
2525         lockfree_weaktoshared.cc: New.
2526         * testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
2527         mutex_weaktoshared.cc: New.
2528         *testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
2529         shared_ptr_neg.cc: Modify.
2530
2531 2006-08-22  Paolo Carlini  <pcarlini@suse.de>
2532
2533         * include/tr1/random.tcc (subtract_with_carry_01<>::
2534         seed(_Gen&, false_type)): Fix _M_carry initialization.
2535
2536         * testsuite/tr1/5_numerical_facilities/random/
2537         subtract_with_carry/cons/default.cc: Qualify 1 as 1UL.
2538         * testsuite/tr1/5_numerical_facilities/random/
2539         subtract_with_carry/cons/gen1.cc: Likewise.
2540
2541 2006-08-22  Paolo Carlini  <pcarlini@suse.de>
2542
2543         * include/tr1/random (class subtract_with_carry_01<>): Add.
2544         * include/tr1/random.tcc (subtract_with_carry_01<>::
2545         seed(unsigned long), subtract_with_carry_01<>::
2546         seed(_Gen&, false_type), subtract_with_carry_01<>::
2547         operator(), operator<<(std::basic_ostream<>&, const
2548         subtract_with_carry_01<>&), operator>>(std::basic_istream<>&,
2549         subtract_with_carry_01<>&)): Define.
2550         * testsuite/tr1/5_numerical_facilities/random/ranlux3_01.cc:
2551         New.
2552         * testsuite/tr1/5_numerical_facilities/random/ranlux4_01.cc:
2553         Likewise.
2554         * testsuite/tr1/5_numerical_facilities/random/
2555         subtract_with_carry_01/cons/seed1.cc: Likewise.
2556         * testsuite/tr1/5_numerical_facilities/random/
2557         subtract_with_carry_01/cons/seed2.cc: Likewise.
2558         * testsuite/tr1/5_numerical_facilities/random/
2559         subtract_with_carry_01/cons/default.cc: Likewise.
2560         * testsuite/tr1/5_numerical_facilities/random/
2561         subtract_with_carry_01/cons/gen1.cc: Likewise.
2562         * testsuite/tr1/5_numerical_facilities/random/
2563         subtract_with_carry_01/requirements/typedefs.cc: Likewise.
2564         * testsuite/tr1/5_numerical_facilities/random/
2565         subtract_with_carry_01/operators/equal.cc: Likewise.
2566         * testsuite/tr1/5_numerical_facilities/random/
2567         subtract_with_carry_01/operators/not_equal.cc: Likewise.
2568         * testsuite/tr1/5_numerical_facilities/random/
2569         subtract_with_carry_01/operators/serialize.cc: Likewise.
2570
2571         * docs/html/ext/howto.html: Add two implemented TR1 issues.
2572
2573         * include/tr1/random.tcc (struct _To_Unsigned_Type<>): Move...
2574         * include/tr1/random: ... here.
2575         (class subtract_with_carry<>): Use it everywhere.
2576
2577         * testsuite/tr1/5_numerical_facilities/random/
2578         subtract_with_carry/cons/seed1.cc: Qualify 1 as 1UL.
2579         * testsuite/tr1/5_numerical_facilities/random/
2580         subtract_with_carry/cons/seed2.cc: Likewise.
2581         * testsuite/tr1/5_numerical_facilities/random/
2582         subtract_with_carry/cons/default.cc: Likewise.
2583         * testsuite/tr1/5_numerical_facilities/random/
2584         subtract_with_carry/cons/gen1.cc: Likewise.
2585         * testsuite/tr1/5_numerical_facilities/random/
2586         subtract_with_carry/requirements/typedefs.cc: Likewise.
2587         * testsuite/tr1/5_numerical_facilities/random/
2588         subtract_with_carry/operators/equal.cc: Likewise.
2589         * testsuite/tr1/5_numerical_facilities/random/
2590         subtract_with_carry/operators/not_equal.cc: Likewise.
2591         * testsuite/tr1/5_numerical_facilities/random/
2592         subtract_with_carry/operators/serialize.cc: Likewise.
2593
2594         * include/tr1/random (class binomial_distribution<>): Reorder the
2595         data members to save space.
2596
2597 2006-08-20  Paolo Carlini  <pcarlini@suse.de>
2598
2599         * include/tr1/random (gamma_distribution<>::_M_initialize,
2600         gamma_distribution<>::_M_l_d): Add.
2601         (gamma_distribution<>::gamma_distribution(const result_type&),
2602         operator>>(std::basic_istream<>&, gamma_distribution&)): Use it.
2603         include/tr1/random.tcc (gamma_distribution<>::_M_initialize):
2604         Define.
2605         (gamma_distribution<>::operator()): Adjust.
2606
2607         * include/tr1/random (geometric_distribution<>::_M_initialize): Add.
2608         (geometric_distribution<>::geometric_distribution(const _RealType&),
2609         operator>>(std::basic_istream<>&, geometric_distribution&)): Use it.
2610
2611 2006-08-18  Paolo Carlini  <pcarlini@suse.de>
2612
2613         * include/tr1/random (class binomial_distribution<>): Add.
2614         * include/tr1/random.tcc (binomial_distribution<>::operator(),
2615         operator<<(std::basic_ostream<>&, const binomial_distribution<>&),
2616         operator>>(std::basic_istream<>&, binomial_distribution<>&,
2617         binomial_distribution<>::_M_waiting(), binomial_distribution<>::
2618         _M_initialize()): Define.
2619         * testsuite/tr1/5_numerical_facilities/random/binomial_distribution/
2620         requirements/typedefs.cc: New.
2621
2622         * include/tr1/random (geometric_distribution<>::
2623         geometric_distribution(const _RealType&)): Fix DEBUG_ASSERT
2624         limits.
2625
2626         * include/tr1/random (poisson_distribution): Add normal_distribution
2627         member, adjust consistently; minor tweaks and rearrangements of the
2628         arithmetic.
2629         (operator>>(std::basic_istream<>&, poisson_distribution<>&)): Move
2630         out of line.
2631         * include/tr1/random.tcc: Adjust.
2632
2633         * include/tr1/random.tcc (normal_distribution<>::operator()): Minor
2634         tweaks.
2635
2636 2006-08-18  Paolo Carlini  <pcarlini@suse.de>
2637
2638         PR libstdc++/28765
2639         * include/ext/rc_string_base.h (_M_clear): New.
2640         * include/ext/sso_string_base.h (_M_clear): Likewise.
2641         * include/ext/vstring.h (clear): Use it.
2642
2643 2006-08-15  Paolo Carlini  <pcarlini@suse.de>
2644
2645         * include/tr1/random (poisson_distribution<>::_M_initialize): Add.
2646         (poisson_distribution<>::poisson_distribution(const _RealType&):
2647         Use it.
2648         (operator>>(std::basic_istream<>&, poisson_distribution<>&)):
2649         Likewise.
2650         (poisson_distribution<>::_M_large): Remove.
2651         * include/tr1/random.tcc (poisson_distribution<>::_M_initialize):
2652         Define.
2653         (operator<<(std::basic_ostream<>&, const poisson_distribution<>&)):
2654         Do not output the constants.
2655
2656         * include/tr1/random (operator>>(std::basic_istream<>&,
2657         gamma_distribution&)): Minor tweak.
2658
2659         * include/tr1/random.tcc (poisson_distribution<>::operator()):
2660         Minor tweak.
2661
2662         * include/tr1/random: Consistently, all data members private.
2663
2664 2006-08-15  Paolo Carlini  <pcarlini@suse.de>
2665
2666         * include/tr1/random.tcc (mersenne_twister<>::operator()): Revert
2667         last change (per gcc-patches/2006-08/msg00484.html).
2668
2669 2006-08-14  Paolo Carlini  <pcarlini@suse.de>
2670
2671         * include/tr1/random (class poisson_distribution<>): Add.
2672         * include/tr1/random.tcc (poisson_distribution<>::operator(),
2673         operator<<(std::basic_ostream<>&, const poisson_distribution<>&),
2674         operator>>(std::basic_istream<>&, poisson_distribution<>&,
2675         poisson_distribution<>::poisson_distribution(const _RealType&)):
2676         Define.
2677         * testsuite/tr1/5_numerical_facilities/random/poisson_distribution/
2678         requirements/typedefs.cc: New.
2679
2680         * include/tr1/random.tcc (mersenne_twister<>::operator()): Tweak
2681         a bit for efficiency.
2682
2683         * include/tr1/random.tcc (operator<<(std::basic_ostream<>&,
2684         const normal_distribution<>&), operator>>(std::basic_istream<>&,
2685         normal_distribution<>&)): Do not output _M_saved unnecessarily.
2686
2687         * include/tr1/random: Trivial formatting fixes.
2688         * include/tr1/cmath: Likewise.
2689
2690 2006-08-11  Paolo Carlini  <pcarlini@suse.de>
2691
2692         * include/bits/stl_bvector.h (__fill_bvector(_Bit_iterator,
2693         _Bit_iterator, bool)): New.
2694         (fill(_Bit_iterator, _Bit_iterator, const bool&)): Use it.
2695
2696 2006-08-10  Paolo Carlini  <pcarlini@suse.de>
2697
2698         * include/tr1/random.tcc (gamma_distribution<>::operator()): Fixes
2699         from the Errata of Devroye's book.
2700
2701 2006-08-10  Paolo Carlini  <pcarlini@suse.de>
2702
2703         * include/bits/stl_bvector.h (_Bit_iterator_base::_M_incr(ptrdiff_t)):
2704         Tidy a bit, thus reducing generated code size.
2705
2706 2006-08-09  Paolo Carlini  <pcarlini@suse.de>
2707
2708         * include/bits/stl_bvector.h (vector<bool>::_M_copy_aligned): New.
2709         (vector<bool>::vector(const vector&), operator=(const vector&),
2710         reserve(size_type), _M_fill_insert(iterator, size_type, bool),
2711         _M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
2712         std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Use it.
2713         * testsuite/performance/23_containers/copy_construct/
2714         vector_bool.cc: New.
2715
2716         * testsuite/23_containers/vector/bool/cons/1.cc: New.
2717         * testsuite/23_containers/vector/bool/cons/2.cc: Likewise.
2718
2719         * include/bits/stl_bvector.h (vector<bool>::_M_fill): Remove.
2720         (fill(_Bit_iterator, _Bit_iterator, const bool&)): New.
2721         (vector<bool>::_M_fill_insert(iterator, size_type, bool)): Adjust.
2722
2723         * include/bits/stl_bvector.h (_M_initialize_range(_InputIterator,
2724         _InputIterator, std::input_iterator_tag)): Remove redundant
2725         assignments.
2726
2727         * include/bits/stl_algo.h (find(istreambuf_iterator<>,
2728         istreambuf_iterator<>, _CharT)): Adjust signature.
2729         * include/bits/streambuf_iterator.h: Likewise.
2730         * include/std/std_streambuf.h: Likewise.
2731
2732 2006-08-09  Paolo Carlini  <pcarlini@suse.de>
2733
2734         * include/bits/stl_algobase.h (fill(const _Deque_iterator<>&,
2735         const _Deque_iterator<>&, const _Tp&)): Move...
2736         * include/bits/deque.tcc: ... here.
2737         * include/bits/stl_deque.h: Declare.
2738
2739 2006-08-06  Paolo Carlini  <pcarlini@suse.de>
2740
2741         PR libstdc++/16611
2742         * include/bits/stl_bvector.h (vector<bool>::operator[],
2743         vector<bool>::operator[] const): Do not use iterator::operator+,
2744         hand code.
2745
2746 2006-08-05  Paolo Carlini  <pcarlini@suse.de>
2747
2748         PR libstdc++/28587
2749         * include/bits/stl_bvector.h (vector<bool>::_M_fill): New.
2750         (vector<bool>::_M_fill_insert): Use it.
2751         * testsuite/performance/23_containers/resize/vector_bool.cc: New.
2752
2753         * testsuite/23_containers/vector/bool/modifiers/insert/1.cc: New.
2754         * testsuite/23_containers/vector/bool/capacity/1.cc: Likewise.
2755
2756 2006-08-04  Paolo Carlini  <pcarlini@suse.de>
2757
2758         * include/bits/stl_queue.h (priority_queue<>::push,
2759         priority_queue<>::pop): Remove try/catch, just follow the
2760         letter of the Standard.
2761
2762 2006-08-03  Paolo Carlini  <pcarlini@suse.de>
2763
2764         * include/bits/stl_queue.h: Trivial formatting fixes.
2765         * include/bits/stl_stack.h: Likewise.
2766
2767 2006-08-01  Ed Smith-Rowland  <3dw4rd@verizon.net>
2768
2769         * docs/html/ext/tr1.html: Update.
2770
2771 2006-07-31  Paolo Carlini  <pcarlini@suse.de>
2772
2773         * include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
2774         Find the decimal point in cs, instead of ws; tidy.
2775
2776 2006-07-30  Roger Sayle  <roger@eyesopen.com>
2777
2778         * include/ext/codevt_specializations.h (__iconv_adaptor): Use
2779         identifier _Tp instead of _T in template argument to avoid conflict.
2780
2781 2006-07-30  Paolo Carlini  <pcarlini@suse.de>
2782
2783         * include/bits/stl_algo.h (stable_sort): Uglify the buf variable.
2784         * include/bits/stl_tempbuf.h (_Temporary_buffer<>::
2785         _M_initialize_buffer): Uglify the val parameter.
2786
2787 2006-07-27  Benjamin Kosnik  <bkoz@wells.artheist.org>
2788
2789         PR libstdc++/19664 round 3
2790         * include/Makefile.am (tr1_headers): Add hashtable_policy.h.
2791         * include/Makefile.in: Regenerate.
2792         * include/tr1/hashtable: Move policy classes into...
2793         * include/tr1/hashtable_policy.h: ... this. New.
2794
2795         * src/globals_locale.cc: Move contents....
2796         * src/locale_init.cc: ... to here, put in anonymous namespace.
2797         * src/Makefile.am: Remove globals_locale.cc.
2798         * src/Makefile.in: Regenerate.
2799
2800         * src/locale.cc: Convert __gnu_internal to anonymous namespace.
2801         * src/debug.cc: Same.
2802         * src/ext-inst.cc: Same.
2803         * src/mt_allocator.cc: Same.
2804         * src/pool_allocator.cc: Same.
2805
2806         * include/tr1/random: Convert std::tr1::_Private to anonymous
2807         namespace.
2808         * include/tr1/random.tcc: Same.
2809
2810         * include/tr1/hashtable: Move ::Internal to std::tr1::detail and
2811         enclose bits that can actually be internal in in anonymous
2812         namespace.
2813         * include/tr1/unordered_set: Adjust explicit qualifications for
2814         namespace changes.
2815         * include/tr1/unordered_map: Same.
2816
2817         * include/tr1/cmath: Convert __gnu_internal to nested detail namespace.
2818
2819         * include/bits/cpp_type_traits.h: Move __type_type into anonymous
2820         namespace.
2821
2822         * include/ext/rope: Change _Rope_constants to anonymous namespace.
2823         * include/ext/ropeimpl.h: Same.
2824         * src/ext-inst.cc: Same.
2825
2826 2006-07-24  Paolo Carlini  <pcarlini@suse.de>
2827
2828         * include/tr1/cinttypes: Simply protect everything with
2829         _GLIBCXX_USE_C99_INTTYPES_TR1.
2830         * include/tr1/cfenv: Likewise with _GLIBCXX_USE_C99_FENV_TR1.
2831         * include/tr1/cstdint: Likewise with _GLIBCXX_USE_C99_STDINT_TR1.
2832
2833 2006-07-21  Benjamin Kosnik  <bkoz@redhat.com>
2834
2835         * include/tr1/random: Make include guards consistent.
2836         * include/tr1/unordered_map: Same.
2837         * include/tr1/hashtable: Same.
2838         * include/tr1/unordered_set: Same.
2839
2840 2006-07-21  Steve Ellcey  <sje@cup.hp.com>
2841
2842         PR target/26792
2843         * configure.ac: Use GCC_CHECK_UNWIND_GETIPINFO to
2844         define HAVE_GETIPINFO.
2845         * aclocal.m4: Add include of ../config/unwind_ipinfo.m4.
2846         * config.h.in: Regenerate.
2847         * configure: Regenerate.
2848         * Makefile.in: Regenerate.
2849         * libmath/Makefile.in: Regenerate.
2850         * include/Makefile.in: Regenerate.
2851         * src/Makefile.in: Regenerate.
2852         * libsupc++/Makefile.in: Regenerate.
2853         * testsuite/Makefile.in: Regenerate.
2854         * po/Makefile.in: Regenerate.
2855         * libsupc++/eh_personality.cc: Check HAVE_GETIPINFO.
2856
2857 2006-07-21  Jason Merrill  <jason@redhat.com>
2858
2859         PR libstdc++/19664 round 2
2860         * libsupc++/eh_personality.cc: Wrap extern "C" function
2861         definitions in namespace __cxxabiv1.
2862
2863 2006-07-21  David Daney  <ddaney@avtrex.com>
2864
2865         PR libgcj/28426
2866         * acinclude.m4: Added a comment.
2867
2868 2006-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2869             Jakub Jelinek  <jakub@redhat.com>
2870
2871         PR libstdc++/19664 round 1
2872         * acinclude.m4 (GLIBCXX_ENABLE_VISIBILITY): Check it.
2873         * configure.ac: Use it.
2874         * configure: Regenerate.
2875         * docs/html/configopts.html: Document it.
2876         * include/Makefile.am: Slip in to c++config.
2877         * include/Makefile.in: Regenerate.
2878         * include/bits/c++config (_GLIBCXX_VISIBILITY): New.
2879         (_GLIBCXX_BEGIN_NAMESPACE): Use it.
2880         (_GLIBCXX_END_NAMESPACE): Use it.
2881         (_GLIBCXX_BEGIN_NESTED_NAMESPACE): Use it.
2882         (_GLIBCXX_END_NESTED_NAMESPACE): Use it.
2883         * src/debug.cc: Mark __gnu_internal namespace with hidden
2884         visibility attribute.
2885         * src/ext-inst.cc: Same.
2886         * src/globals_io.cc: Same.
2887         * src/globals_locale.cc: Same.
2888         * src/ios_init.cc: Same.
2889         * src/locale.cc: Same.
2890         * src/mt_allocator.cc: Same.
2891         * src/pool_allocator.cc: Same.
2892
2893 2006-07-16  Paolo Carlini  <pcarlini@suse.de>
2894
2895         PR libstdc++/28277 (partial: valarray bits)
2896         * include/std/std_valarray.h (valarray<>::shift(int),
2897         valarray<>::cshift(int)): Avoid __builtin_alloca with no limit,
2898         do the work in place.
2899         * testsuite/26_numerics/valarray/28277.cc: New.
2900
2901 2006-07-15  Paolo Carlini  <pcarlini@suse.de>
2902
2903         PR libstdc++/28277 (partial: ostream bits 1)
2904         * include/bits/ostream.tcc (operator<<(basic_ostream<_CharT>&,
2905         const char*)): Avoid __builtin_alloca with no limit in the
2906         widening.
2907         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2908         28277-1.cc: New.
2909
2910 2006-07-14  Benjamin Kosnik  <bkoz@redhat.com>
2911
2912         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): New.
2913         * configure.ac: Use it.
2914         * configure: Regenerated.
2915         * config.h.in: Regenerated.
2916         * configure.host: Simplify.
2917         * include/bits/atomicity.h: Adjust macros.
2918         * config/cpu/generic/atomicity.h: Move...
2919         * config/cpu/generic/atomicity_mutex: New.
2920         * config/cpu/generic/atomicity_mutex/atomicity.h: ...here.
2921         * config/cpu/generic/atomic_builtins: Rename...
2922         * config/cpu/generic/atomicity_builtins: ...to this.
2923         * config/cpu/generic/atomicity_builtins/atomicity.h: Moved.
2924         * config/cpu/mips/atomicity.h: Comment MIPS II requirement.
2925
2926         * scripts/testsuite_flags.in: Make --cxxflags reflect CXXFLAGS.
2927
2928 2006-07-14  Paolo Carlini  <pcarlini@suse.de>
2929
2930         * include/tr1/random (minstd_rand0, minstd_rand, ranlux3, ranlux4):
2931         Use unsigned long as implementation-defined type.
2932
2933 2006-07-14  Paolo Carlini  <pcarlini@suse.de>
2934
2935         * include/tr1/random.tcc (struct _To_Unsigned_Type): Add.
2936         (subtract_with_carry<>::seed(_Gen&, false_type)): Use an
2937         unsigned type in the loop, fix factor multiplier, take g
2938         invocations modulo 2^32.
2939
2940         * include/tr1/random.tcc (subtract_with_carry<>::
2941         seed(unsigned long)): Fix value == 0 special case.
2942
2943         * include/tr1/random (struct _Shift): Fix for large shifts.
2944
2945 2006-07-13  Paolo Carlini  <pcarlini@suse.de>
2946
2947         * testsuite/performance/21_strings/string_copy_cons_and_dest.cc: New.
2948
2949 2006-07-13  Benjamin Kosnik  <bkoz@redhat.com>
2950
2951         * include/Makefile.am (pch*_output_anchor): Add.
2952         (pch*_output): Use.
2953         (CLEANFILES): Use.
2954         * include/Makefile.in: Regenerate.
2955
2956         * scripts/check_performance: Be verbose on compile error.
2957
2958 2006-07-12  Benjamin Kosnik  <bkoz@redhat.com>
2959
2960         * include/Makefile.am: Revert last change.
2961         * include/Makefile.in: Same.
2962
2963 2006-07-12  Benjamin Kosnik  <bkoz@redhat.com>
2964
2965         * include/Makefile.am (pch_output): Don't precompile extc++.h.
2966         (pch_output_dirs): Same.
2967         * include/Makefile.in: Regenerate.
2968
2969         * testsuite/lib/libstdc++.exp: Test PCH with stdtr1c++.h.
2970
2971 2006-07-11  Paolo Carlini  <pcarlini@suse.de>
2972
2973         * include/ext/codecvt_specializations.h: Fix typo in commit
2974         for libstdc++/28290.
2975
2976 2006-07-11  Paolo Carlini  <pcarlini@suse.de>
2977
2978         * include/bits/locale_facets.tcc (collate<>::do_transform(
2979         const _CharT*, const _CharT*)): Simplify previous fix for
2980         libstdc++/28277, always allocate memory dynamically.
2981
2982 2006-07-11  Paolo Carlini  <pcarlini@suse.de>
2983
2984         PR libstdc++/28344
2985         * include/tr1/random (gamma_distribution<>::
2986         gamma_distribution(const result_type&)): Don't use __alpha as
2987         parameter name, a predefined macro on Alpha systems.
2988
2989 2006-07-11  Paolo Carlini  <pcarlini@suse.de>
2990
2991         PR libstdc++/28290
2992         * include/ext/codecvt_specializations.h: Fix, adding missing
2993         includes and guards.
2994
2995 2006-07-11  Paolo Carlini  <pcarlini@suse.de>
2996
2997         PR libstdc++/28277 (partial: collate bits)
2998         * include/bits/locale_facets.tcc (collate<>::do_transform(
2999         const _CharT*, const _CharT*)): Avoid __builtin_alloca with no
3000         limit; also avoid multiple calls (in a loop).
3001         * testsuite/22_locale/collate/transform/char/28277.cc: New.
3002         * testsuite/22_locale/collate/transform/wchar_t/28277.cc: Likewise.
3003
3004 2006-07-10  Mike Stump  <mrs@apple.com>
3005
3006         * libsupc++/eh_globals.cc (~__eh_globals_init): Unset _M_init.
3007
3008 2006-07-10  Benjamin Kosnik  <bkoz@redhat.com>
3009
3010         PR libstdc++/15448
3011         * include/Makefile.am: Clean up pch rules.
3012         * include/Makefile.in: Regenerate.
3013
3014 2006-07-09  Paolo Carlini  <pcarlini@suse.de>
3015
3016         * include/bits/locale_facets.tcc (__int_to_char<>(_CharT*,
3017         long, const _CharT*, ios_base::fmtflags), __int_to_char<>(_CharT*,
3018         unsigned long, const _CharT*, ios_base::fmtflags),
3019         __int_to_char<>(_CharT*, long long, const _CharT*, ios_base::fmtflags),
3020         __int_to_char<>(_CharT*, unsigned long long, const _CharT*,
3021         ios_base::fmtflags)): Remove.
3022         (__int_to_char<>(_CharT*, _ValueT, const _CharT*, ios_base::fmtflags,
3023         bool)): Adjust.
3024         (num_put<>::_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT)):
3025         Likewise.
3026
3027 2006-07-06  Paolo Carlini  <pcarlini@suse.de>
3028
3029         * include/tr1/random (class gamma_distribution<>): Add.
3030         * include/tr1/random.tcc (gamma_distribution<>::operator(),
3031         operator<<(std::basic_ostream<>&, const gamma_distribution<>&)):
3032         Define.
3033         * testsuite/tr1/5_numerical_facilities/random/gamma_distribution/
3034         requirements/typedefs.cc: New.
3035
3036 2006-07-06  Benjamin Kosnik  <bkoz@redhat.com>
3037
3038         * testsuite/util/regression/trait/assoc/trait.hpp: Format.
3039         * testsuite/util/regression/rand/priority_queue/
3040         rand_regression_test.hpp: Same.
3041         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
3042         * testsuite/util/regression/rand/
3043         assoc/container_rand_regression_test.hpp: Same.
3044         * testsuite/util/regression/priority_queue/common_type.hpp: Same.
3045         * testsuite/util/regression/assoc/common_type.hpp: Same.
3046         * testsuite/util/regression/basic_type.hpp: Same.
3047
3048 2006-07-05  Benjamin Kosnik  <bkoz@redhat.com>
3049
3050         * include/Makefile.am (pch_output): New.
3051         (clean-local): Use it.
3052         * include/Makefile.in: Regenerate.
3053
3054 2006-07-04  Paolo Carlini  <pcarlini@suse.de>
3055
3056         * include/tr1/random (_Adaptor<>::operator()()): Cast 1 to
3057         result_type.
3058         (variate_generator<>::operator()(),
3059         variate_generator<>::operator()(_Tp)): Inline.
3060
3061         * include/tr1/random: Minor cosmetic changes.
3062
3063 2006-07-03  Paolo Carlini  <pcarlini@suse.de>
3064
3065         * include/ext/rc_string_base.h (__rc_string_base::_S_max_size):
3066         Adjust, take into account rounding in _M_create.
3067         (__rc_string_base::_M_create): Add early _S_max_size check.
3068
3069 2006-07-03  Ian Lance Taylor  <ian@airs.com>
3070             Paolo Carlini  <pcarlini@suse.de>
3071
3072         * include/ext/rc_string_base.h (__rc_string_base::_S_max_size):
3073         Increase by a factor of two.
3074         * include/ext/sso_string_base.h (__sso_string_base::_S_max_size):
3075         Likewise.
3076
3077 2006-07-03  Paolo Carlini  <pcarlini@suse.de>
3078
3079         * include/ext/sso_string_base.h (__sso_string_base::_M_create): Never
3080         allocate a string bigger than _S_max_size.
3081
3082 2006-06-29  Benjamin Kosnik  <bkoz@redhat.com>
3083
3084         * include/Makefile.am (pch1_input, pch1_output_builddir,
3085         pch1_outputj_installdir, pch1_source): Move from pch_*.
3086         (pch2_input, pch2_output_builddir,
3087         pch2_output_installdir, pch2_source): Clone for ext.
3088         (pch3_input, pch3_output_builddir,
3089         pch3_output_installdir, pch3_source): Clone for tr1.
3090         (install-pch): Same.
3091         * include/Makefile.in: Regenerate.
3092
3093         * include/precompiled: New directory.
3094         * include/stdc++.h: Move...
3095         * include/precompiled/stdc++.h: ... here.
3096         * include/precompiled/stdtr1c++.h: New.
3097         * include/precompiled/extc++.h: New.
3098
3099         * testsuite/lib/libstdc++.exp (libstdc++_init): Set PCH_CXXFLAGS
3100         to -include bits/stdtr1c++.h.
3101
3102 2006-06-29  Benjamin Kosnik  <bkoz@redhat.com>
3103
3104         * testsuite/lib/libstdc++.exp (v3_target_compile): Set timeout to
3105         600.
3106
3107 2006-06-27  Benjamin Kosnik  <bkoz@redhat.com>
3108
3109         * testsuite/util/regression/rand/priority_queue/
3110         rand_regression_test.hpp: Revert.
3111
3112 2006-06-27  Benjamin Kosnik  <bkoz@redhat.com>
3113
3114         * include/ext/typelist.h (typelist_append): To append_typelist.
3115         (typelist): To node.
3116         Enclose in namespace typelist.
3117         * testsuite/util/testsuite_common_types.h: Adjust names, namespaces.
3118         * testsuite/performance/23_containers/find/map.cc: Same.
3119         * testsuite/performance/23_containers/create/map.cc: Same.
3120         * testsuite/performance/23_containers/insert_erase/associative.cc:
3121         Same.
3122         * testsuite/performance/23_containers/insert/sequence.cc: Same.
3123         * testsuite/performance/23_containers/insert/associative.cc: Same.
3124         * testsuite/performance/23_containers/create_from_sorted/set.cc: Same.
3125         * testsuite/performance/23_containers/index/map.cc: Same.
3126         * testsuite/performance/23_containers/insert_from_sorted/set.cc: Same.
3127         * testsuite/performance/23_containers/create_sort/list.cc: Same.
3128         * testsuite/performance/23_containers/sort_search/list.cc: Same.
3129         * testsuite/performance/23_containers/producer_consumer/sequence.cc:
3130         Same.
3131         * testsuite/performance/23_containers/producer_consumer/associative.cc:
3132         Same.
3133
3134 2006-06-26  Benjamin Kosnik  <bkoz@redhat.com>
3135
3136         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc:
3137         Reduce iterations by half.
3138         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Same.
3139         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
3140         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Same.
3141         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Same.
3142         * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Same.
3143         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
3144         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
3145         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
3146
3147         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp:
3148         Set probability of compare from 1 to 0.25.
3149         * testsuite/util/regression/rand/priority_queue/
3150         rand_regression_test.hpp: Same.
3151
3152 2006-06-25  Paolo Carlini  <pcarlini@suse.de>
3153
3154         * include/tr1/random (operator<<(std::basic_ostream<>&,
3155         const linear_congruential<>&), operator>>(std::basic_istream<>&,
3156         linear_congruential<>&), operator<<(std::basic_ostream<>&,
3157         const mersenne_twister<>&), operator>>(std::basic_istream<>&,
3158         mersenne_twister<>&), operator<<(std::basic_ostream<>&,
3159         const subtract_with_carry<>&), operator>>(std::basic_istream<>&,
3160         subtract_with_carry<>&), operator<<(std::basic_ostream<>&,
3161         const discard_block<>&), operator>>(std::basic_istream<>&,
3162         discard_block<>&), operator<<(std::basic_ostream<>&,
3163         const xor_combine<>&), operator>>(std::basic_istream<>&,
3164         xor_combine<>&), operator<<(std::basic_ostream<>&,
3165         const uniform_int<>&), operator>>(std::basic_istream<>&,
3166         uniform_int<>&), operator<<(std::basic_ostream<>&,
3167         const bernoulli_distribution&), operator<<(std::basic_ostream<>&,
3168         const geometric_distribution<>&), operator<<(std::basic_ostream<>&,
3169         const uniform_real<>&), operator>>(std::basic_istream<>&,
3170         uniform_real<>&), operator<<(std::basic_ostream<>&,
3171         const exponential_distribution<>&), operator<<(std::basic_ostream<>&,
3172         const normal_distribution<>&), operator>>(std::basic_istream<>&,
3173         normal_distribution<>&)): Redo per TR1 specs; move out of line...
3174         * include/tr1/random.tcc: ... here.
3175
3176 2006-06-24  Paolo Carlini  <pcarlini@suse.de>
3177
3178         * include/tr1/random (class normal_distribution<>): Add.
3179         * include/tr1/random.tcc (normal_distribution<>::operator()): Define.
3180
3181         * include/tr1/random.tcc (struct _Max): Remove, "inline" in the
3182         only user, mersenne_twister<>::max().
3183
3184         * include/tr1/random.tcc (struct _Shift): Move...
3185         * include/tr1/random: ... here.
3186
3187         * include/tr1/random.tcc (linear_congruential<>::
3188         linear_congruential(unsigned long), linear_congruential<>::
3189         linear_congruential(_Gen&), mersenne_twister<>::max())): Move inline...
3190         * include/tr1/random: ... here.
3191
3192         * include/tr1/random (exponential_distribution<>::
3193         exponential_distribution(const result_type&)): Add missing
3194         _GLIBCXX_DEBUG_ASSERT.
3195
3196         * testsuite/tr1/5_numerical_facilities/random/
3197         exponential_distribution/requirements/typedefs.cc: New.
3198         * testsuite/tr1/5_numerical_facilities/random/
3199         normal_distribution/requirements/typedefs.cc: Likewise.
3200         * testsuite/tr1/5_numerical_facilities/random/
3201         bernoulli_distribution/requirements/typedefs.cc: Likewise.
3202         * testsuite/tr1/5_numerical_facilities/random/
3203         geometric_distribution/requirements/typedefs.cc: Likewise.
3204
3205 2006-06-23  Benjamin Kosnik  <bkoz@redhat.com>
3206
3207         PR libstdc++/27984
3208         * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust
3209         testing includes.
3210         * docs/html/test.html: Adjust for testsuite changes.
3211
3212 2006-06-22  Jonathan Lennox  <lennox@cs.columbia.edu>
3213             Paolo Carlini  <pcarlini@suse.de>
3214
3215         * include/ext/pb_ds/detail/resize_policy/
3216         hash_prime_size_policy_imp.hpp: Cast to size_t instead.
3217
3218 2006-06-22  Ami Tavory  <atavory@gmail.com>
3219
3220         * include/ext/pb_ds/detail/resize_policy/
3221         hash_prime_size_policy_imp.hpp: Fix for 64-bit machines.
3222
3223 2006-06-21  Paolo Carlini&nbs