]> git.ipfire.org Git - thirdparty/gcc.git/blob - libstdc++-v3/ChangeLog-2006
[Ada] Fix documentation for GNAT.Command_Line.Exit_From_Command_Line
[thirdparty/gcc.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 <pcarlini@suse.de>
3224
3225 * include/bits/postypes.h (operator==(const fpos<>&, const fpos<>&),
3226 operator!=(const fpos<>&, const fpos<>&)): Add.
3227 * testsuite/27_io/fpos/mbstate_t/6.cc: New.
3228
3229 2006-06-21 Mark Mitchell <mark@codesourcery.com>
3230
3231 * acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): When
3232 cross-compiling, put headers in $prefix/$target/include/c++.
3233 * configure: Regenerated.
3234
3235 2006-06-20 Paolo Carlini <pcarlini@suse.de>
3236
3237 * include/tr1/random.tcc (struct _Private::_Mod_w<>,
3238 _Private::__mod_w<>): Remove.
3239 (struct _Private::_Shift<>): New.
3240 (struct _Private::_Max_w<>): Rename to _Max, use the latter.
3241 (mersenne_twister<>::seed(unsigned long), seed(_Gen&, false_type),
3242 max()): Adjust.
3243
3244 2006-06-20 Vladimir Prus <vladimir@codesourcery.com>
3245
3246 * libsupc++/eh_arm.cc (__cxa_begin_cleanup): Always return 'true'.
3247
3248 2006-06-19 Paolo Carlini <pcarlini@suse.de>
3249
3250 * include/tr1/random (xor_combine<>::operator<<): Fix typo.
3251
3252 * include/tr1/random (bernoulli_distribution::min(),
3253 bernoulli_distribution::max(), geometric_distribution<>::min(),
3254 geometric_distribution<>::max()): Remove.
3255
3256 * include/tr1/random (geometric_distribution<>::operator()):
3257 Simplify formula.
3258
3259 * include/tr1/random: Minor cosmetic changes.
3260
3261 * testsuite/tr1/5_numerical_facilities/random/discard_block/
3262 operators/equal.cc: New.
3263 * testsuite/tr1/5_numerical_facilities/random/discard_block/
3264 operators/not_equal.cc: Likewise.
3265 * testsuite/tr1/5_numerical_facilities/random/discard_block/
3266 operators/serialize.cc: Likewise.
3267 * testsuite/tr1/5_numerical_facilities/random/xor_combine/
3268 operators/equal.cc: Likewise.
3269 * testsuite/tr1/5_numerical_facilities/random/xor_combine/
3270 operators/not_equal.cc: Likewise.
3271 * testsuite/tr1/5_numerical_facilities/random/xor_combine/
3272 operators/serialize.cc: Likewise.
3273
3274 2006-06-17 Ami Tavory <atavory@gmail.com>
3275 Paolo Carlini <pcarlini@suse.de>
3276
3277 * testsuite/util/rng/twister_rand_gen.cc: Adapt to simply use
3278 tr1::mt19937.
3279 * testsuite/util/rng/twister_rand_gen.hpp: Likewise.
3280
3281 2006-06-16 Paolo Carlini <pcarlini@suse.de>
3282
3283 * include/tr1/random (uniform_real<>::uniform_real(_RealType,
3284 _RealType)): Implement.
3285 (uniform_real<>::min()): Likewise.
3286 (uniform_real<>::max()): Likewise.
3287 (uniform_real<>::reset()): Likewise.
3288
3289 * include/tr1/random (class uniform_real<>): Minor cosmetic tweaks.
3290
3291 2006-06-16 Paolo Carlini <pcarlini@suse.de>
3292
3293 * include/bits/locale_facets.tcc (time_get<>::_M_extract_via_format):
3294 Ignore the value of the __err argument.
3295 (time_get<>::do_get_weekday): Likewise.
3296 (time_get<>::do_get_monthname): Likewise.
3297 * testsuite/22_locale/time_get/get_year/wchar_t/5.cc: New.
3298 * testsuite/22_locale/time_get/get_year/char/5.cc: Likewise.
3299 * testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc: Likewise.
3300 * testsuite/22_locale/time_get/get_monthname/char/5.cc: Likewise.
3301 * testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc: Likewise.
3302 * testsuite/22_locale/time_get/get_weekday/char/5.cc: Likewise.
3303 * testsuite/22_locale/time_get/get_date/wchar_t/5.cc: Likewise.
3304 * testsuite/22_locale/time_get/get_date/char/5.cc: Likewise.
3305 * testsuite/22_locale/time_get/get_time/wchar_t/5.cc: Likewise.
3306 * testsuite/22_locale/time_get/get_time/char/5.cc: Likewise.
3307
3308 2006-06-15 Benjamin Kosnik <bkoz@redhat.com>
3309
3310 * include/ext/pb_ds/detail/type_utils.hpp (numeric_traits): Add,
3311 const expression interface to std::numeric_limits::min and max
3312 functions.
3313 * include/ext/pb_ds/trie_policy.hpp (string_trie_e_access_traits):
3314 Use it.
3315
3316 * include/ext/pb_ds/detail/resize_policy/
3317 hash_load_check_resize_trigger_imp.hpp: Format.
3318 * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
3319
3320 2006-06-15 Paolo Carlini <pcarlini@suse.de>
3321
3322 * include/tr1/random.tcc (mersenne_twister<>::operator()()):
3323 Reload the last position of the _M_x vector too.
3324
3325 2006-06-15 Paolo Carlini <pcarlini@suse.de>
3326
3327 * include/tr1/random (class xor_combine): Fix result_type typedef.
3328 * testsuite/tr1/5_numerical_facilities/random/xor_combine/
3329 cons/default.cc: New.
3330 * testsuite/tr1/5_numerical_facilities/random/xor_combine/
3331 requirements/typedefs.cc: Tweak.
3332
3333 * include/tr1/random: Minor cosmetic changes.
3334
3335 2006-06-14 Ami Tavory <atavory@gmail.com>
3336 Benjamin Kosnik <bkoz@redhat.com>
3337
3338 * include/ext/pb_assoc: Delete.
3339 * include/ext/pb_ds: Add.
3340 * docs/html/ext/pb_assoc: Delete.
3341 * docs/html/ext/pb_ds: Add.
3342 * testsuite/ext/pb_assoc: Delete.
3343 * testsuite/ext/pb_ds: Add.
3344 * testsuite/performance/ext: Add.
3345 * testsuite/performance/ext/pb_ds: Add.
3346
3347 * testsuite/util/regression: New.
3348 * testsuite/util/rng: New.
3349 * testsuite/util/native_type: New.
3350 * testsuite/util/common_type: New.
3351 * testsuite/util/performance: New.
3352 * testsuite/util/hash_fn: New.
3353 * testsuite/util/io: New.
3354 * testsuite/util/statistic: New.
3355
3356 * scripts/make_graph.py: New.
3357 * scripts/make_graphs.py: New.
3358 * testsuite/data/thirty_years_among_the_dead_preproc.txt: Add.
3359 * testsuite/data/make_graph_htmls.xml: Add.
3360 * testsuite/data/make_graph_test_infos.xml: Add.
3361
3362 * testsuite/lib/libstdc++.exp (v3-build_support): Add in new
3363 object files for regression testing.
3364 * docs/html/documentation.html: Adjust links.
3365 * include/Makefile.am (install-headers): Update for new sources,
3366 directories.
3367 * include/Makefine.in: Regenerate.
3368 * scripts/testsuite_flags.in: Adjust to testsuite/util path.
3369 * scripts/check_performance: Simplify, adjust for new testsuite output.
3370 * testsuite/Makefile.am (check-performance): Adjust.
3371 (doc-performance): New.
3372 * testsuite/Makefile.in: Regenerate.
3373
3374 * include/ext/pb_ds: New.
3375 * include/ext/pb_ds/assoc_container.hpp: Same.
3376 * include/ext/pb_ds/detail: New.
3377 * include/ext/pb_ds/detail/binomial_heap_base_: New.
3378 * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
3379 * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
3380 * include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same.
3381 * include/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp: Same.
3382 * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
3383 * include/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp: Same.
3384 * include/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp: Same.
3385 * include/ext/pb_ds/detail/resize_policy: New.
3386 * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
3387 * include/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp: Same.
3388 * include/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp: Same.
3389 * include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same.
3390 * include/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp: Same.
3391 * include/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp: Same.
3392 * include/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp: Same.
3393 * include/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp: Same.
3394 * include/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp: Same.
3395 * include/ext/pb_ds/detail/container_base_dispatch.hpp: Same.
3396 * include/ext/pb_ds/detail/cc_hash_table_map_: New.
3397 * include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp: Same.
3398 * include/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp: Same.
3399 * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
3400 * include/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp: Same.
3401 * include/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp: Same.
3402 * include/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp: Same.
3403 * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
3404 * include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp: Same.
3405 * include/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp: Same.
3406 * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
3407 * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
3408 * include/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp: Same.
3409 * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
3410 * include/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp: Same.
3411 * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
3412 * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
3413 * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
3414 * include/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp: Same.
3415 * include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp: Same.
3416 * include/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp: Same.
3417 * include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same.
3418 * include/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp: Same.
3419 * include/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp: Same.
3420 * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
3421 * include/ext/pb_ds/detail/cc_hash_table_map_/standard_policies.hpp: Same.
3422 * include/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp: Same.
3423 * include/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp: Same.
3424 * include/ext/pb_ds/detail/typelist_assoc_container.hpp: Same.
3425 * include/ext/pb_ds/detail/tree_trace_base.hpp: Same.
3426 * include/ext/pb_ds/detail/unordered_iterator: New.
3427 * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
3428 * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same.
3429 * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
3430 * include/ext/pb_ds/detail/unordered_iterator/const_point_iterator.hpp: Same.
3431 * include/ext/pb_ds/detail/typelist.hpp: Same.
3432 * include/ext/pb_ds/detail/pat_trie_: New.
3433 * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
3434 * include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
3435 * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
3436 * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Same.
3437 * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
3438 * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
3439 * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Same.
3440 * include/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp: Same.
3441 * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
3442 * include/ext/pb_ds/detail/pat_trie_/head.hpp: Same.
3443 * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Same.
3444 * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
3445 * include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same.
3446 * include/ext/pb_ds/detail/pat_trie_/cond_dtor_entry_dealtor.hpp: Same.
3447 * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
3448 * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
3449 * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Same.
3450 * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
3451 * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
3452 * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
3453 * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Same.
3454 * include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Same.
3455 * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Same.
3456 * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Same.
3457 * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
3458 * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Same.
3459 * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
3460 * include/ext/pb_ds/detail/bin_search_tree_: New.
3461 * include/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp: Same.
3462 * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
3463 * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
3464 * include/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp: Same.
3465 * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
3466 * include/ext/pb_ds/detail/bin_search_tree_/cond_dtor_entry_dealtor.hpp: Same.
3467 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same.
3468 * include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same.
3469 * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
3470 * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
3471 * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
3472 * include/ext/pb_ds/detail/bin_search_tree_/cond_key_dtor_entry_dealtor.hpp: Same.
3473 * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
3474 * include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same.
3475 * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
3476 * include/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp: Same.
3477 * include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same.
3478 * include/ext/pb_ds/detail/gp_hash_table_map_: New.
3479 * include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp: Same.
3480 * include/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp: Same.
3481 * include/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp: Same.
3482 * include/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp: Same.
3483 * include/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp: Same.
3484 * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
3485 * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
3486 * include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp: Same.
3487 * include/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp: Same.
3488 * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
3489 * include/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp: Same.
3490 * include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same.
3491 * include/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp: Same.
3492 * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
3493 * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
3494 * include/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp: Same.
3495 * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
3496 * include/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp: Same.
3497 * include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp: Same.
3498 * include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same.
3499 * include/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp: Same.
3500 * include/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp: Same.
3501 * include/ext/pb_ds/detail/gp_hash_table_map_/standard_policies.hpp: Same.
3502 * include/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp: Same.
3503 * include/ext/pb_ds/detail/standard_policies.hpp: Same.
3504 * include/ext/pb_ds/detail/typelist: New.
3505 * include/ext/pb_ds/detail/typelist/typelist_flatten.hpp: Same.
3506 * include/ext/pb_ds/detail/typelist/typelist_contains.hpp: Same.
3507 * include/ext/pb_ds/detail/typelist/typelist_typelist_append.hpp: Same.
3508 * include/ext/pb_ds/detail/typelist/typelist_apply.hpp: Same.
3509 * include/ext/pb_ds/detail/typelist/typelist_filter.hpp: Same.
3510 * include/ext/pb_ds/detail/typelist/typelist_append.hpp: Same.
3511 * include/ext/pb_ds/detail/typelist/typelist_assoc_container_find.hpp: Same.
3512 * include/ext/pb_ds/detail/typelist/typelist_transform.hpp: Same.
3513 * include/ext/pb_ds/detail/typelist/typelist_at_index.hpp: Same.
3514 * include/ext/pb_ds/detail/tree_policy: New.
3515 * include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same.
3516 * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same.
3517 * include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Same.
3518 * include/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp: Same.
3519 * include/ext/pb_ds/detail/basic_tree_policy: New.
3520 * include/ext/pb_ds/detail/basic_tree_policy/basic_tree_policy_base.hpp: Same.
3521 * include/ext/pb_ds/detail/basic_tree_policy/null_node_metadata.hpp: Same.
3522 * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: Same.
3523 * include/ext/pb_ds/detail/types_traits.hpp: Same.
3524 * include/ext/pb_ds/detail/binary_heap_: New.
3525 * include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same.
3526 * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
3527 * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
3528 * include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same.
3529 * include/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp: Same.
3530 * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
3531 * include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same.
3532 * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Same.
3533 * include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same.
3534 * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
3535 * include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same.
3536 * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
3537 * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
3538 * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
3539 * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
3540 * include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same.
3541 * include/ext/pb_ds/detail/trie_policy: New.
3542 * include/ext/pb_ds/detail/trie_policy/string_trie_e_access_traits_imp.hpp: Same.
3543 * include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same.
3544 * include/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp: Same.
3545 * include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
3546 * include/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp: Same.
3547 * include/ext/pb_ds/detail/trie_policy/sample_trie_e_access_traits.hpp: Same.
3548 * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same.
3549 * include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Same.
3550 * include/ext/pb_ds/detail/cond_dealtor.hpp: Same.
3551 * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same.
3552 * include/ext/pb_ds/detail/pairing_heap_: Name.
3553 * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
3554 * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
3555 * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
3556 * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
3557 * include/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp: Same.
3558 * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
3559 * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
3560 * include/ext/pb_ds/detail/binomial_heap_: New.
3561 * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
3562 * include/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp: Same.
3563 * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
3564 * include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
3565 * include/ext/pb_ds/detail/type_utils.hpp: Same.
3566 * include/ext/pb_ds/detail/eq_fn: New.
3567 * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
3568 * include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same.
3569 * include/ext/pb_ds/detail/basic_types.hpp: Same.
3570 * include/ext/pb_ds/detail/list_update_policy: New.
3571 * include/ext/pb_ds/detail/list_update_policy/mtf_lu_policy_imp.hpp: Same.
3572 * include/ext/pb_ds/detail/list_update_policy/counter_lu_metadata.hpp: Same.
3573 * include/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp: Same.
3574 * include/ext/pb_ds/detail/list_update_policy/counter_lu_policy_imp.hpp: Same.
3575 * include/ext/pb_ds/detail/thin_heap_: New.
3576 * include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same.
3577 * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
3578 * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
3579 * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
3580 * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
3581 * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
3582 * include/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp: Same.
3583 * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
3584 * include/ext/pb_ds/detail/left_child_next_sibling_heap_: New.
3585 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp: Same.
3586 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp: Same.
3587 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/null_metadata.hpp: Same.
3588 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp: Same.
3589 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp: Same.
3590 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp: Same.
3591 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp: Same.
3592 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp: Same.
3593 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp: Same.
3594 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp: Same.
3595 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp: Same.
3596 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp: Same.
3597 * include/ext/pb_ds/detail/left_child_next_sibling_heap_/const_point_iterator.hpp: Same.
3598 * include/ext/pb_ds/detail/ov_tree_map_: New.
3599 * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
3600 * include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same.
3601 * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Same.
3602 * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
3603 * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
3604 * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
3605 * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
3606 * include/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp: Same.
3607 * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
3608 * include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same.
3609 * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
3610 * include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
3611 * include/ext/pb_ds/detail/map_debug_base.hpp: Same.
3612 * include/ext/pb_ds/detail/hash_fn: New.
3613 * include/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp: Same.
3614 * include/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp: Same.
3615 * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
3616 * include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same.
3617 * include/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp: Same.
3618 * include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same.
3619 * include/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp: Same.
3620 * include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same.
3621 * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
3622 * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
3623 * include/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp: Same.
3624 * include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same.
3625 * include/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp: Same.
3626 * include/ext/pb_ds/detail/splay_tree_: New.
3627 * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
3628 * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
3629 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
3630 * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
3631 * include/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp: Same.
3632 * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
3633 * include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
3634 * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
3635 * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
3636 * include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
3637 * include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same.
3638 * include/ext/pb_ds/detail/list_update_map_: New.
3639 * include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
3640 * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
3641 * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
3642 * include/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp: Same.
3643 * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
3644 * include/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp: Same.
3645 * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
3646 * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
3647 * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
3648 * include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same.
3649 * include/ext/pb_ds/detail/rc_binomial_heap_: New.
3650 * include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same.
3651 * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
3652 * include/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp: Same.
3653 * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
3654 * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
3655 * include/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp: Same.
3656 * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
3657 * include/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp: Same.
3658 * include/ext/pb_ds/detail/rb_tree_map_: New.
3659 * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
3660 * include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same.
3661 * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
3662 * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
3663 * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
3664 * include/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp: Same.
3665 * include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
3666 * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
3667 * include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
3668 * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
3669 * include/ext/pb_ds/list_update_policy.hpp: Same.
3670 * include/ext/pb_ds/exception.hpp: Same.
3671 * include/ext/pb_ds/tree_policy.hpp: Same.
3672 * include/ext/pb_ds/tag_and_trait.hpp: Same.
3673 * include/ext/pb_ds/hash_policy.hpp: Same.
3674 * include/ext/pb_ds/trie_policy.hpp: Same.
3675 * include/ext/pb_ds/priority_queue.hpp: Same.
3676
3677 * docs/html/ext/pb_ds: New.
3678 * docs/html/ext/pb_ds/container_tag.html: Same.
3679 * docs/html/ext/pb_ds/trivial_iterator_tag.html: Same.
3680 * docs/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png
3681 * docs/html/ext/pb_ds/sample_trie_e_access_traits.html: Same.
3682 * docs/html/ext/pb_ds/gp_hash_table.html: Same.
3683 * docs/html/ext/pb_ds/priority_queue_tag_cd.svg
3684 * docs/html/ext/pb_ds/container_cd.svg
3685 * docs/html/ext/pb_ds/linear_probe_fn.html: Same.
3686 * docs/html/ext/pb_ds/hash_random_int_erase_mem_usage_test_local.png
3687 * docs/html/ext/pb_ds/quadratic_probe_fn.html: Same.
3688 * docs/html/ext/pb_ds/assoc_regression_tests.html: Same.
3689 * docs/html/ext/pb_ds/tree_tag.html: Same.
3690 * docs/html/ext/pb_ds/hash_random_int_erase_mem_usage_test.html: Same.
3691 * docs/html/ext/pb_ds/interface.html: Same.
3692 * docs/html/ext/pb_ds/hash_zlob_random_int_find_timing_test_msvc.png
3693 * docs/html/ext/pb_ds/hash_random_int_subscript_find_timing_test.html: Same.
3694 * docs/html/ext/pb_ds/lu_based_containers.html: Same.
3695 * docs/html/ext/pb_ds/embedded_lists_3.png
3696 * docs/html/ext/pb_ds/tree_text_find_find_timing_test.html: Same.
3697 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_hash_local.png
3698 * docs/html/ext/pb_ds/assoc_performance_tests.html: Same.
3699 * docs/html/ext/pb_ds/list_update.html: Same.
3700 * docs/html/ext/pb_ds/priority_queue_random_int_push_pop_timing_test_gcc.png
3701 * docs/html/ext/pb_ds/tree_text_insert_timing_test_pat_trie_local.png
3702 * docs/html/ext/pb_ds/point_iterators_range_ops_1.png
3703 * docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_insert_msvc.png
3704 * docs/html/ext/pb_ds/hash_zlob_random_int_find_timing_test_gcc.png
3705 * docs/html/ext/pb_ds/text_find_timing_test_tree_like_msvc.png
3706 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_tree_local.png
3707 * docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_local.png
3708 * docs/html/ext/pb_ds/tree_text_insert_timing_test_pat_trie_msvc.png
3709 * docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test.html: Same.
3710 * docs/html/ext/pb_ds/move_to_front_lu_policy.html: Same.
3711 * docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_hash_gcc.png
3712 * docs/html/ext/pb_ds/hash_random_int_find_find_timing_test.html: Same.
3713 * docs/html/ext/pb_ds/string_trie_e_access_traits.html: Same.
3714 * docs/html/ext/pb_ds/prerequisites.html: Same.
3715 * docs/html/ext/pb_ds/gp_hash_tag.html: Same.
3716 * docs/html/ext/pb_ds/priority_queue_tag_cd.png
3717 * docs/html/ext/pb_ds/container_cd.png
3718 * docs/html/ext/pb_ds/priority_queue_text_join_timing_test_gcc.png
3719 * docs/html/ext/pb_ds/container_base.html: Same.
3720 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_hash_msvc.png
3721 * docs/html/ext/pb_ds/tree_random_int_find_find_timing_test.html: Same.
3722 * docs/html/ext/pb_ds/binary_priority_queue_random_int_push_timing_test_msvc.png
3723 * docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_find_local.png
3724 * docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_find_gcc.png
3725 * docs/html/ext/pb_ds/priority_queue_text_push_pop_timing_test_msvc.png
3726 * docs/html/ext/pb_ds/random_int_find_find_timing_test_tree_msvc.png
3727 * docs/html/ext/pb_ds/text_find_timing_test_hash_local.png
3728 * docs/html/ext/pb_ds/tree_text_insert_timing_test_node_tree_msvc.png
3729 * docs/html/ext/pb_ds/ov_tree_tag.html: Same.
3730 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_hash_local.png
3731 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_hash_msvc.png
3732 * docs/html/ext/pb_ds/priority_queue_text_pop_mem_usage_test_msvc.png
3733 * docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png
3734 * docs/html/ext/pb_ds/list_update_tag.html: Same.
3735 * docs/html/ext/pb_ds/balls_and_bins.png
3736 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_tree_local.png
3737 * docs/html/ext/pb_ds/disclaimer.html: Same.
3738 * docs/html/ext/pb_ds/insert_error.html: Same.
3739 * docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_hash_gcc.png
3740 * docs/html/ext/pb_ds/ccgp_hash_random_int_subscript_timing_test_insert_gcc.png
3741 * docs/html/ext/pb_ds/examples.html: Same.
3742 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_small.html: Same.
3743 * docs/html/ext/pb_ds/pairing_priority_queue_text_push_pop_timing_test_gcc.png
3744 * docs/html/ext/pb_ds/sample_probe_fn.html: Same.
3745 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_hash_local.png
3746 * docs/html/ext/pb_ds/priority_queue_text_push_timing_test.html: Same.
3747 * docs/html/ext/pb_ds/priority_queue_random_int_push_timing_test_gcc.png
3748 * docs/html/ext/pb_ds/null_mapped_type.html: Same.
3749 * docs/html/ext/pb_ds/binary_priority_queue_random_int_push_timing_test_gcc.png
3750 * docs/html/ext/pb_ds/tree_order_statistics_timing_test_gcc.png
3751 * docs/html/ext/pb_ds/associative_container_tag.html: Same.
3752 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_tree_local.png
3753 * docs/html/ext/pb_ds/design.html: Same.
3754 * docs/html/ext/pb_ds/cc_hash_max_collision_check_resize_trigger.html: Same.
3755 * docs/html/ext/pb_ds/pairing_heap_tag.html: Same.
3756 * docs/html/ext/pb_ds/tree_text_lor_find_timing_test_gcc.png
3757 * docs/html/ext/pb_ds/references.html: Same.
3758 * docs/html/ext/pb_ds/tree_order_statistics_timing_test_msvc.png
3759 * docs/html/ext/pb_ds/hash_load_check_resize_trigger.html: Same.
3760 * docs/html/ext/pb_ds/priority_queue_text_pop_mem_usage_test_gcc.png
3761 * docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png
3762 * docs/html/ext/pb_ds/hash_random_int_erase_mem_usage_test_gcc.png
3763 * docs/html/ext/pb_ds/pq_different_underlying_dss.png
3764 * docs/html/ext/pb_ds/insert_resize_sequence_diagram1.png
3765 * docs/html/ext/pb_ds/pq_regression_tests.html: Same.
3766 * docs/html/ext/pb_ds/sample_tree_node_update.html: Same.
3767 * docs/html/ext/pb_ds/invalidation_guarantee_erase.png
3768 * docs/html/ext/pb_ds/basic_invalidation_guarantee.html: Same.
3769 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_hash_local.png
3770 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_hash_gcc.png
3771 * docs/html/ext/pb_ds/hash_zlob_random_int_find_timing_test_local.png
3772 * docs/html/ext/pb_ds/point_iterators_range_ops_2.png
3773 * docs/html/ext/pb_ds/null_probe_fn.html: Same.
3774 * docs/html/ext/pb_ds/hash_prime_size_policy.html: Same.
3775 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png
3776 * docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_gcc.png
3777 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_tree_local.png
3778 * docs/html/ext/pb_ds/binary_priority_queue_random_int_push_timing_test_local.png
3779 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png
3780 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png
3781 * docs/html/ext/pb_ds/multimap_text_find_timing_test_large.html: Same.
3782 * docs/html/ext/pb_ds/sample_resize_policy.html: Same.
3783 * docs/html/ext/pb_ds/binomial_heap_tag.html: Same.
3784 * docs/html/ext/pb_ds/priority_queue_text_pop_mem_usage_test_local.png
3785 * docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_pairing_thin_local.png
3786 * docs/html/ext/pb_ds/tree_text_lor_find_find_timing_test.html: Same.
3787 * docs/html/ext/pb_ds/priority_queue_text_join_timing_test_msvc.png
3788 * docs/html/ext/pb_ds/trie_based_containers.html: Same.
3789 * docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_insert_gcc.png
3790 * docs/html/ext/pb_ds/tree_split_join_timing_test_local.png
3791 * docs/html/ext/pb_ds/text_find_timing_test_hash_gcc.png
3792 * docs/html/ext/pb_ds/motivation.html: Same.
3793 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_tree_msvc.png
3794 * docs/html/ext/pb_ds/tree_split_join_timing_test_gcc.png
3795 * docs/html/ext/pb_ds/tree.html: Same.
3796 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_hash_gcc.png
3797 * docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_insert_msvc.png
3798 * docs/html/ext/pb_ds/invalidation_guarantee_cd.png
3799 * docs/html/ext/pb_ds/tutorial.html: Same.
3800 * docs/html/ext/pb_ds/null_trie_node_update.html: Same.
3801 * docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_gcc.png
3802 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_tree_msvc.png
3803 * docs/html/ext/pb_ds/ccgp_hash_random_int_subscript_timing_test_insert_local.png
3804 * docs/html/ext/pb_ds/point_iterators_cd.png
3805 * docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_hash_local.png
3806 * docs/html/ext/pb_ds/priority_queue_random_int_push_pop_timing_test_local.png
3807 * docs/html/ext/pb_ds/rb_tree_tag.html: Same.
3808 * docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_find_msvc.png
3809 * docs/html/ext/pb_ds/pairing_priority_queue_text_push_timing_test_msvc.png
3810 * docs/html/ext/pb_ds/tree_text_insert_timing_test_pat_trie_gcc.png
3811 * docs/html/ext/pb_ds/exceptions.html: Same.
3812 * docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_msvc.png
3813 * docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_tree_local.png
3814 * docs/html/ext/pb_ds/hash_policy_cd.png
3815 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png
3816 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small.html: Same.
3817 * docs/html/ext/pb_ds/ds_gen.html: Same.
3818 * docs/html/ext/pb_ds/hash_exponential_size_policy.html: Same.
3819 * docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_insert_local.png
3820 * docs/html/ext/pb_ds/hash_random_int_erase_mem_usage_test_msvc.png
3821 * docs/html/ext/pb_ds/index.html: Same.
3822 * docs/html/ext/pb_ds/binary_heap_tag.html: Same.
3823 * docs/html/ext/pb_ds/basic_hash_tag.html: Same.
3824 * docs/html/ext/pb_ds/trie_order_statistics_node_update.html: Same.
3825 * docs/html/ext/pb_ds/sample_resize_trigger.html: Same.
3826 * docs/html/ext/pb_ds/priority_queue_text_push_timing_test_local.png
3827 * docs/html/ext/pb_ds/hash_text_find_find_timing_test.html: Same.
3828 * docs/html/ext/pb_ds/tree_text_insert_timing_test.html: Same.
3829 * docs/html/ext/pb_ds/trie_tag.html: Same.
3830 * docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_find_local.png
3831 * docs/html/ext/pb_ds/pq_tests.html: Same.
3832 * docs/html/ext/pb_ds/insert_resize_sequence_diagram2.png
3833 * docs/html/ext/pb_ds/node_invariant_invalidations.png
3834 * docs/html/ext/pb_ds/priority_queue_text_modify_down_timing_test_msvc.png
3835 * docs/html/ext/pb_ds/resize_policy_cd.png
3836 * docs/html/ext/pb_ds/embedded_lists_1.png
3837 * docs/html/ext/pb_ds/hash_ranged_hash_range_hashing_fns.png
3838 * docs/html/ext/pb_ds/null_lu_metadata.html: Same.
3839 * docs/html/ext/pb_ds/tree_order_statistics_timing_test.html: Same.
3840 * docs/html/ext/pb_ds/trie_prefix_search_node_update.html: Same.
3841 * docs/html/ext/pb_ds/hash_range_hashing_seq_diagram.png
3842 * docs/html/ext/pb_ds/point_invalidation_guarantee.html: Same.
3843 * docs/html/ext/pb_ds/direct_mod_range_hashing.html: Same.
3844 * docs/html/ext/pb_ds/tree_text_insert_timing_test_vector_tree_local.png
3845 * docs/html/ext/pb_ds/priority_queue_random_int_push_pop_timing_test_msvc.png
3846 * docs/html/ext/pb_ds/misc.html: Same.
3847 * docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_hash_local.png
3848 * docs/html/ext/pb_ds/counter_lu_policy.html: Same.
3849 * docs/html/ext/pb_ds/different_underlying_dss.png
3850 * docs/html/ext/pb_ds/restoring_node_invariants.png
3851 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_large.html: Same.
3852 * docs/html/ext/pb_ds/pairing_priority_queue_text_push_timing_test_local.png
3853 * docs/html/ext/pb_ds/sample_update_policy.html: Same.
3854 * docs/html/ext/pb_ds/pairing_priority_queue_text_push_timing_test_gcc.png
3855 * docs/html/ext/pb_ds/tree_order_statistics_timing_test_local.png
3856 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png
3857 * docs/html/ext/pb_ds/simple_list.png
3858 * docs/html/ext/pb_ds/text_find_timing_test_hash_msvc.png
3859 * docs/html/ext/pb_ds/assoc_examples.html: Same.
3860 * docs/html/ext/pb_ds/priority_queue_text_push_pop_timing_test_local.png
3861 * docs/html/ext/pb_ds/hash_based_containers.html: Same.
3862 * docs/html/ext/pb_ds/text_find_timing_test_tree_like_local.png
3863 * docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_tree_local.png
3864 * docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_tree_gcc.png
3865 * docs/html/ext/pb_ds/tree_node_iterator.html: Same.
3866 * docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png
3867 * docs/html/ext/pb_ds/trie_node_iterator.html: Same.
3868 * docs/html/ext/pb_ds/tree_based_containers.html: Same.
3869 * docs/html/ext/pb_ds/hash_random_int_subscript_insert_timing_test.html: Same.
3870 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png
3871 * docs/html/ext/pb_ds/ccgp_hash_random_int_subscript_timing_test_insert_msvc.png
3872 * docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_hash_msvc.png
3873 * docs/html/ext/pb_ds/priority_queue_text_push_timing_test_gcc.png
3874 * docs/html/ext/pb_ds/rationale_null_node_updator.png
3875 * docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_pairing_thin_local.png
3876 * docs/html/ext/pb_ds/lu.png
3877 * docs/html/ext/pb_ds/assoc_container_traits.html: Same.
3878 * docs/html/ext/pb_ds/gp_hash_random_int_find_timing_test_msvc.png
3879 * docs/html/ext/pb_ds/assoc_design.html: Same.
3880 * docs/html/ext/pb_ds/splay_tree_tag.html: Same.
3881 * docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_find_gcc.png
3882 * docs/html/ext/pb_ds/priority_queue_random_int_push_timing_test.html: Same.
3883 * docs/html/ext/pb_ds/assoc_container_tag_cd.svg
3884 * docs/html/ext/pb_ds/resize_error.html: Same.
3885 * docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_hash_msvc.png
3886 * docs/html/ext/pb_ds/tree_text_insert_timing_test_node_tree_gcc.png
3887 * docs/html/ext/pb_ds/priority_queue_text_join_timing_test.html: Same.
3888 * docs/html/ext/pb_ds/basic_tree_assoc_container_const_node_iterator.html: Same.
3889 * docs/html/ext/pb_ds/gp_hash_random_int_find_timing_test_gcc.png
3890 * docs/html/ext/pb_ds/trie_const_node_iterator.html: Same.
3891 * docs/html/ext/pb_ds/hash_zlob_random_int_find_find_timing_test.html: Same.
3892 * docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_tree_gcc.png
3893 * docs/html/ext/pb_ds/sample_size_policy.html: Same.
3894 * docs/html/ext/pb_ds/tree_text_insert_timing_test_vector_tree_gcc.png
3895 * docs/html/ext/pb_ds/cc_hash_table.html: Same.
3896 * docs/html/ext/pb_ds/node_invariants.png
3897 * docs/html/ext/pb_ds/tree_split_join_timing_test_msvc.png
3898 * docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test.html: Same.
3899 * docs/html/ext/pb_ds/tree_order_statistics_node_update.html: Same.
3900 * docs/html/ext/pb_ds/cc_hash_random_int_find_timing_test_msvc.png
3901 * docs/html/ext/pb_ds/cc_hash_random_int_subscript_timing_test_insert_local.png
3902 * docs/html/ext/pb_ds/priority_queue.html: Same.
3903 * docs/html/ext/pb_ds/assoc_tests.html: Same.
3904 * docs/html/ext/pb_ds/assoc_container_tag_cd.png
3905 * docs/html/ext/pb_ds/basic_hash_table.html: Same.
3906 * docs/html/ext/pb_ds/basic_tree_tag.html: Same.
3907 * docs/html/ext/pb_ds/tree_split_join_timing_test.html: Same.
3908 * docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_local.png
3909 * docs/html/ext/pb_ds/insert_resize_sequence_diagram3.png
3910 * docs/html/ext/pb_ds/embedded_lists_2.png
3911 * docs/html/ext/pb_ds/random_int_find_find_timing_test_tree_local.png
3912 * docs/html/ext/pb_ds/sample_ranged_probe_fn.html: Same.
3913 * docs/html/ext/pb_ds/random_int_find_find_timing_test_tree_gcc.png
3914 * docs/html/ext/pb_ds/sample_trie_node_update.html: Same.
3915 * docs/html/ext/pb_ds/introduction.html: Same.
3916 * docs/html/ext/pb_ds/pq_performance_tests.html: Same.
3917 * docs/html/ext/pb_ds/pat_trie.png
3918 * docs/html/ext/pb_ds/range_invalidation_guarantee.html: Same.
3919 * docs/html/ext/pb_ds/contact.html: Same.
3920 * docs/html/ext/pb_ds/sample_range_hashing.html: Same.
3921 * docs/html/ext/pb_ds/priority_queue_random_int_push_timing_test_local.png
3922 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png
3923 * docs/html/ext/pb_ds/update_seq_diagram.png
3924 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_large_s2p_tree_gcc.png
3925 * docs/html/ext/pb_ds/direct_mask_range_hashing.html: Same.
3926 * docs/html/ext/pb_ds/tests.html: Same.
3927 * docs/html/ext/pb_ds/cc_hash_random_int_find_timing_test_gcc.png
3928 * docs/html/ext/pb_ds/tree_node_updator_policy_cd.png
3929 * docs/html/ext/pb_ds/text_find_timing_test_tree_like_gcc.png
3930 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_large.html: Same.
3931 * docs/html/ext/pb_ds/trie_node_updator_policy_cd.png
3932 * docs/html/ext/pb_ds/priority_queue_random_int_push_timing_test_msvc.png
3933 * docs/html/ext/pb_ds/concepts.html: Same.
3934 * docs/html/ext/pb_ds/pq_examples.html: Same.
3935 * docs/html/ext/pb_ds/priority_queue_tag.html: Same.
3936 * docs/html/ext/pb_ds/priority_queue_random_int_push_pop_timing_test.html: Same.
3937 * docs/html/ext/pb_ds/update_policy_cd.png
3938 * docs/html/ext/pb_ds/thin_heap_tag.html: Same.
3939 * docs/html/ext/pb_ds/pairing_priority_queue_text_push_pop_timing_test_msvc.png
3940 * docs/html/ext/pb_ds/basic_tree.html: Same.
3941 * docs/html/ext/pb_ds/null_hash_fn.html: Same.
3942 * docs/html/ext/pb_ds/null_tree_node_update.html: Same.
3943 * docs/html/ext/pb_ds/priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png
3944 * docs/html/ext/pb_ds/trie.html: Same.
3945 * docs/html/ext/pb_ds/multimap_text_find_timing_test_small_s2p_tree_msvc.png
3946 * docs/html/ext/pb_ds/rc_binomial_heap_tag.html: Same.
3947 * docs/html/ext/pb_ds/priority_queue_text_push_timing_test_msvc.png
3948 * docs/html/ext/pb_ds/pq_container_traits.html: Same.
3949 * docs/html/ext/pb_ds/pq_design.html: Same.
3950 * docs/html/ext/pb_ds/checked_by_tidy.gif
3951 * docs/html/ext/pb_ds/tree_text_insert_timing_test_node_tree_local.png
3952 * docs/html/ext/pb_ds/multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png
3953 * docs/html/ext/pb_ds/priority_queue_text_push_pop_timing_test.html: Same.
3954 * docs/html/ext/pb_ds/multimap_text_insert_timing_test_small_s2p_tree_gcc.png
3955 * docs/html/ext/pb_ds/pairing_priority_queue_text_push_pop_timing_test_local.png
3956 * docs/html/ext/pb_ds/acks.html: Same.
3957 * docs/html/ext/pb_ds/gp_hash_random_int_find_timing_test_local.png
3958 * docs/html/ext/pb_ds/cc_hash_tag.html: Same.
3959 * docs/html/ext/pb_ds/sample_ranged_hash_fn.html: Same.
3960 * docs/html/ext/pb_ds/multimap_text_find_timing_test_large_s2p_tree_msvc.png
3961 * docs/html/ext/pb_ds/priority_queue_text_pop_mem_usage_test.html: Same.
3962 * docs/html/ext/pb_ds/multimap_text_find_timing_test_small.html: Same.
3963 * docs/html/ext/pb_ds/tree_text_lor_find_timing_test_msvc.png
3964 * docs/html/ext/pb_ds/hash_range_hashing_seq_diagram2.png
3965 * docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_find_msvc.png
3966 * docs/html/ext/pb_ds/PythonPoweredSmall.gif
3967 * docs/html/ext/pb_ds/cc_hash_random_int_find_timing_test_local.png
3968 * docs/html/ext/pb_ds/pat_trie_tag.html: Same.
3969 * docs/html/ext/pb_ds/hash_standard_resize_policy.html: Same.
3970 * docs/html/ext/pb_ds/tree_text_insert_timing_test_vector_tree_msvc.png
3971 * docs/html/ext/pb_ds/gp_hash_random_int_subscript_timing_test_insert_gcc.png
3972 * docs/html/ext/pb_ds/join_error.html: Same.
3973 * docs/html/ext/pb_ds/priority_queue_text_push_pop_timing_test_gcc.png
3974 * docs/html/ext/pb_ds/priority_queue_text_join_timing_test_local.png
3975
3976 * testsuite/ext/pb_ds: New.
3977 * testsuite/ext/pb_ds/regression: New.
3978 * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
3979 * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Same.
3980 * testsuite/ext/pb_ds/regression/associative_containers.cc: Same.
3981 * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Same.
3982 * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
3983 * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Same.
3984 * testsuite/ext/pb_ds/regression/priority_queues.cc: Same.
3985 * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
3986 * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Same.
3987 * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
3988 * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
3989 * testsuite/ext/pb_ds/example: New.
3990 * testsuite/ext/pb_ds/example/hash_shift_mask.cc: Same.
3991 * testsuite/ext/pb_ds/example/basic_set.cc: Same.
3992 * testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Same.
3993 * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Same.
3994 * testsuite/ext/pb_ds/example/store_hash.cc: Same.
3995 * testsuite/ext/pb_ds/example/assoc_container_traits.cc: Same.
3996 * testsuite/ext/pb_ds/example/hash_load_set_change.cc: Same.
3997 * testsuite/ext/pb_ds/example/ranged_hash.cc: Same.
3998 * testsuite/ext/pb_ds/example/hash_resize.cc: Same.
3999 * testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same.
4000 * testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same.
4001 * testsuite/ext/pb_ds/example/basic_multiset.cc: Same.
4002 * testsuite/ext/pb_ds/example/priority_queue_xref.cc: Same.
4003 * testsuite/ext/pb_ds/example/hash_find_neg.cc: Same.
4004 * testsuite/ext/pb_ds/example/erase_if.cc: Same.
4005 * testsuite/ext/pb_ds/example/priority_queue_container_traits.cc: Same.
4006 * testsuite/ext/pb_ds/example/tree_join.cc: Same.
4007 * testsuite/ext/pb_ds/example/basic_map.cc: Same.
4008 * testsuite/ext/pb_ds/example/trie_split.cc: Same.
4009 * testsuite/ext/pb_ds/example/priority_queue_split_join.cc: Same.
4010 * testsuite/ext/pb_ds/example/priority_queue_dijkstra.cc: Same.
4011 * testsuite/ext/pb_ds/example/priority_queue_erase_if.cc: Same.
4012 * testsuite/ext/pb_ds/example/hash_mod.cc: Same.
4013 * testsuite/ext/pb_ds/example/tree_order_statistics_join.cc: Same.
4014 * testsuite/ext/pb_ds/example/trie_dna.cc: Same.
4015 * testsuite/ext/pb_ds/example/hash_initial_size.cc: Same.
4016 * testsuite/ext/pb_ds/example/basic_priority_queue.cc: Same.
4017 * testsuite/ext/pb_ds/example/tree_intervals.cc: Same.
4018 * testsuite/ext/pb_ds/example/basic_multimap.cc: Same.
4019 * testsuite/performance/ext: New.
4020 * testsuite/performance/ext/pb_ds: New.
4021 * testsuite/performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
4022 * testsuite/performance/ext/pb_ds/text_find_timing.cc: Same.
4023 * testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
4024 * testsuite/performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
4025 * testsuite/performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc: Same.
4026 * testsuite/performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
4027 * testsuite/performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
4028 * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
4029 * testsuite/performance/ext/pb_ds/random_int_find_timing.cc: Same.
4030 * testsuite/performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
4031 * testsuite/performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp: Same.
4032 * testsuite/performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
4033 * testsuite/performance/ext/pb_ds/multimap_text_find_timing.hpp: Same.
4034 * testsuite/performance/ext/pb_ds/priority_queue_text_modify_timing.hpp: Same.
4035 * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
4036 * testsuite/performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
4037 * testsuite/performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
4038 * testsuite/performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
4039 * testsuite/performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
4040 * testsuite/performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
4041 * testsuite/performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
4042 * testsuite/performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc: Same.
4043 * testsuite/performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
4044 * testsuite/performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
4045 * testsuite/performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
4046 * testsuite/performance/ext/pb_ds/multimap_text_insert_timing.hpp: Same.
4047 * testsuite/performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
4048 * testsuite/performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
4049 * testsuite/data/make_graph_test_infos.xml: Same.
4050 * testsuite/data/thirty_years_among_the_dead_preproc.txt: New.
4051 * testsuite/data/make_graph_htmls.xml: Same.
4052 * testsuite/util/regression: New.
4053 * testsuite/util/regression/trait: New.
4054 * testsuite/util/regression/trait/priority_queue: New.
4055 * testsuite/util/regression/trait/priority_queue/trait.hpp: Same.
4056 * testsuite/util/regression/trait/erase_if_fn.hpp: Same.
4057 * testsuite/util/regression/trait/assoc: New.
4058 * testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
4059 * testsuite/util/regression/trait/assoc/node_update_trait.hpp: Same.
4060 * testsuite/util/regression/trait/assoc/get_set_load_trait.hpp: Same.
4061 * testsuite/util/regression/trait/assoc/get_set_loads_trait.hpp: Same.
4062 * testsuite/util/regression/trait/assoc/trait.hpp: Same.
4063 * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
4064 * testsuite/util/regression/trait/assoc/resize_trait.hpp: Same.
4065 * testsuite/util/regression/trait/assoc/to_string.hpp: Same.
4066 * testsuite/util/regression/rand: New.
4067 * testsuite/util/regression/rand/priority_queue: New.
4068 * testsuite/util/regression/rand/priority_queue/detail: New.
4069 * testsuite/util/regression/rand/priority_queue/detail/erase_fn_imps.hpp: Same.
4070 * testsuite/util/regression/rand/priority_queue/detail/cmp_fn_imps.hpp: Same.
4071 * testsuite/util/regression/rand/priority_queue/detail/policy_access_fn_imps.hpp: Same.
4072 * testsuite/util/regression/rand/priority_queue/detail/defs_fn_imps.hpp: Same.
4073 * testsuite/util/regression/rand/priority_queue/detail/it_conversion_fn_imps.hpp: Same.
4074 * testsuite/util/regression/rand/priority_queue/detail/constructor_destructor_fn_imps.hpp: Same.
4075 * testsuite/util/regression/rand/priority_queue/detail/diagnostic_fn_imps.hpp: Same.
4076 * testsuite/util/regression/rand/priority_queue/detail/insert_fn_imps.hpp: Same.
4077 * testsuite/util/regression/rand/priority_queue/detail/clear_fn_imps.hpp: Same.
4078 * testsuite/util/regression/rand/priority_queue/detail/modify_fn_imps.hpp: Same.
4079 * testsuite/util/regression/rand/priority_queue/detail/split_join_fn_imps.hpp: Same.
4080 * testsuite/util/regression/rand/priority_queue/detail/operator_fn_imps.hpp: Same.
4081 * testsuite/util/regression/rand/priority_queue/rand_regression_test.hpp: Same.
4082 * testsuite/util/regression/rand/priority_queue/container_rand_regression_test.hpp: Same.
4083 * testsuite/util/regression/rand/io: New.
4084 * testsuite/util/regression/rand/io/priority_queue: New.
4085 * testsuite/util/regression/rand/io/priority_queue/xml_formatter.hpp: Same.
4086 * testsuite/util/regression/rand/io/assoc: New.
4087 * testsuite/util/regression/rand/io/assoc/xml_formatter.hpp: Same.
4088 * testsuite/util/regression/rand/io/xml_formatter.hpp: Same.
4089 * testsuite/util/regression/rand/assoc: New.
4090 * testsuite/util/regression/rand/assoc/detail: New.
4091 * testsuite/util/regression/rand/assoc/detail/subscript_fn_imps.hpp: Same.
4092 * testsuite/util/regression/rand/assoc/detail/cmp_fn_imps.hpp: Same.
4093 * testsuite/util/regression/rand/assoc/detail/policy_access_fn_imps.hpp: Same.
4094 * testsuite/util/regression/rand/assoc/detail/defs_fn_imps.hpp: Same.
4095 * testsuite/util/regression/rand/assoc/detail/it_conversion_fn_imps.hpp: Same.
4096 * testsuite/util/regression/rand/assoc/detail/diagnostic_fn_imps.hpp: Same.
4097 * testsuite/util/regression/rand/assoc/detail/clear_fn_imps.hpp: Same.
4098 * testsuite/util/regression/rand/assoc/detail/get_set_load_fn_imps.hpp: Same.
4099 * testsuite/util/regression/rand/assoc/detail/operator_fn_imps.hpp: Same.
4100 * testsuite/util/regression/rand/assoc/detail/erase_fn_imps.hpp: Same.
4101 * testsuite/util/regression/rand/assoc/detail/resize_fn_imps.hpp: Same.
4102 * testsuite/util/regression/rand/assoc/detail/constructor_destructor_fn_imps.hpp: Same.
4103 * testsuite/util/regression/rand/assoc/detail/insert_fn_imps.hpp: Same.
4104 * testsuite/util/regression/rand/assoc/detail/split_join_fn_imps.hpp: Same.
4105 * testsuite/util/regression/rand/assoc/detail/get_set_loads_fn_imps.hpp: Same.
4106 * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
4107 * testsuite/util/regression/rand/assoc/container_rand_regression_test.hpp: Same.
4108 * testsuite/util/regression/priority_queue: New.
4109 * testsuite/util/regression/priority_queue/common_type.hpp: Same.
4110 * testsuite/util/regression/basic_type.hpp: Same.
4111 * testsuite/util/regression/assoc: New.
4112 * testsuite/util/regression/assoc/common_type.hpp: Same.
4113 * testsuite/util/regression/res_mng: New.
4114 * testsuite/util/regression/res_mng/forced_exception.hpp: Same.
4115 * testsuite/util/regression/res_mng/dbg_ex_allocator_base.cc: Same.
4116 * testsuite/util/regression/res_mng/dbg_ex_allocator_base.hpp: Same.
4117 * testsuite/util/regression/res_mng/dbg_ex_allocator.hpp: Same.
4118 * testsuite/util/rng: New.
4119 * testsuite/util/rng/twister_rand_gen.cc: Same.
4120 * testsuite/util/rng/twister_rand_gen.hpp: Same.
4121 * testsuite/util/native_type: New.
4122 * testsuite/util/native_type/priority_queue: New.
4123 * testsuite/util/native_type/priority_queue/native_priority_queue.hpp: Same.
4124 * testsuite/util/native_type/priority_queue/native_pq_tag.hpp: Same.
4125 * testsuite/util/native_type/assoc: New.
4126 * testsuite/util/native_type/assoc/native_multimap.hpp: Same.
4127 * testsuite/util/native_type/assoc/native_tree_tag.hpp: Same.
4128 * testsuite/util/native_type/assoc/native_set.hpp: Same.
4129 * testsuite/util/native_type/assoc/native_hash_multimap.hpp: Same.
4130 * testsuite/util/native_type/assoc/native_map.hpp: Same.
4131 * testsuite/util/native_type/assoc/native_hash_tag.hpp: Same.
4132 * testsuite/util/native_type/assoc/native_hash_set.hpp: Same.
4133 * testsuite/util/native_type/assoc/native_hash_map.hpp: Same.
4134 * testsuite/util/common_type: New.
4135 * testsuite/util/common_type/priority_queue
4136 * testsuite/util/common_type/priority_queue/common_type.hpp: Same.
4137 * testsuite/util/common_type/priority_queue/string_form.hpp: Same.
4138 * testsuite/util/common_type/priority_queue/detail
4139 * testsuite/util/common_type/priority_queue/detail/ds_string_form.hpp: Same.
4140 * testsuite/util/common_type/assoc: New.
4141 * testsuite/util/common_type/assoc/common_type.hpp: Same.
4142 * testsuite/util/common_type/assoc/string_form.hpp: Same.
4143 * testsuite/util/common_type/assoc/template_policy.hpp: Same.
4144 * testsuite/util/common_type/assoc/detail: New.
4145 * testsuite/util/common_type/assoc/detail/resize_policy_string_form.hpp: Same.
4146 * testsuite/util/common_type/assoc/detail/trigger_policy_string_form.hpp: Same.
4147 * testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
4148 * testsuite/util/common_type/assoc/detail/comb_hash_fn_string_form.hpp: Same.
4149 * testsuite/util/common_type/assoc/detail/size_policy_string_form.hpp: Same.
4150 * testsuite/util/common_type/assoc/detail/probe_fn_string_form.hpp: Same.
4151 * testsuite/util/common_type/assoc/detail/tree_supports_order_statistics.hpp: Same.
4152 * testsuite/util/common_type/assoc/detail/trie_supports_prefix_search.hpp: Same.
4153 * testsuite/util/common_type/assoc/detail/list_update_policy_string_form.hpp: Same.
4154 * testsuite/util/common_type/assoc/detail/trie_supports_order_statistics.hpp: Same.
4155 * testsuite/util/common_type/assoc/detail/store_hash_string_form.hpp: Same.
4156 * testsuite/util/common_type/assoc/native_set.hpp: Same.
4157 * testsuite/util/performance: New.
4158 * testsuite/util/performance/priority_queue: New.
4159 * testsuite/util/performance/priority_queue/mem_usage: New.
4160 * testsuite/util/performance/priority_queue/mem_usage/pop_test.hpp: Same.
4161 * testsuite/util/performance/priority_queue/timing: New.
4162 * testsuite/util/performance/priority_queue/timing/push_pop_test.hpp: Same.
4163 * testsuite/util/performance/priority_queue/timing/push_test.hpp: Same.
4164 * testsuite/util/performance/priority_queue/timing/join_test.hpp: Same.
4165 * testsuite/util/performance/priority_queue/timing/modify_test.hpp: Same.
4166 * testsuite/util/performance/io: New.
4167 * testsuite/util/performance/io/xml_formatter.hpp: Same.
4168 * testsuite/util/performance/assoc: New.
4169 * testsuite/util/performance/assoc/mem_usage: New.
4170 * testsuite/util/performance/assoc/mem_usage/multimap_insert_test.hpp: Same.
4171 * testsuite/util/performance/assoc/mem_usage/erase_test.hpp: Same.
4172 * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
4173 * testsuite/util/performance/assoc/timing: New.
4174 * testsuite/util/performance/assoc/timing/common_type.hpp: Same.
4175 * testsuite/util/performance/assoc/timing/multimap_insert_test.hpp: Same.
4176 * testsuite/util/performance/assoc/timing/subscript_find_test.hpp: Same.
4177 * testsuite/util/performance/assoc/timing/find_test.hpp: Same.
4178 * testsuite/util/performance/assoc/timing/subscript_insert_test.hpp: Same.
4179 * testsuite/util/performance/assoc/timing/insert_test.hpp: Same.
4180 * testsuite/util/performance/assoc/timing/tree_order_statistics_test.hpp: Same.
4181 * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
4182 * testsuite/util/performance/assoc/timing/tree_split_join_test.hpp: Same.
4183 * testsuite/util/performance/time: New.
4184 * testsuite/util/performance/time/elapsed_timer.cc: Same.
4185 * testsuite/util/performance/time/elapsed_timer.hpp: Same.
4186 * testsuite/util/performance/time/timing_test_base.hpp: Same.
4187 * testsuite/util/performance/mem: New.
4188 * testsuite/util/performance/mem/mem_track_allocator_base.hpp: Same.
4189 * testsuite/util/performance/mem/mem_track_allocator.hpp: Same.
4190 * testsuite/util/hash_fn: New.
4191 * testsuite/util/hash_fn/limit_string_hash_fn.hpp: Same.
4192 * testsuite/util/hash_fn/string_ranged_hash_fn.hpp: Same.
4193 * testsuite/util/hash_fn/string_hash_fn.hpp: Same.
4194 * testsuite/util/hash_fn/string_ranged_probe_fn.hpp: Same.
4195 * testsuite/util/hash_fn/dna_str_limit.hpp: Same.
4196 * testsuite/util/io: New.
4197 * testsuite/util/io/prog_bar.cc: Same.
4198 * testsuite/util/io/prog_bar.hpp: Same.
4199 * testsuite/util/io/text_populate.hpp: Same.
4200 * testsuite/util/io/xml.hpp: Same.
4201 * testsuite/util/io/illegal_input_error.hpp: Same.
4202 * testsuite/util/io/xml_test_formatter.hpp: Same.
4203 * testsuite/util/io/verified_cmd_line_input.cc: Same.
4204 * testsuite/util/io/verified_cmd_line_input.hpp: Same.
4205 * testsuite/util/statistic: New.
4206 * testsuite/util/statistic/sample_var.hpp: Same.
4207 * testsuite/util/statistic/res_recorder.hpp: Same.
4208 * testsuite/util/statistic/sample_mean.hpp: Same.
4209 * testsuite/util/statistic/sample_mean_confidence_checker.hpp: Same.
4210
4211 2006-06-12 Paolo Carlini <pcarlini@suse.de>
4212
4213 PR libstdc++/26970
4214 * config/locale/gnu/c_locale.h (__convert_from_v<>): Change to
4215 variadic function, instead of template function.
4216 * config/locale/generic/c_locale.h (__convert_from_v<>): Likewise.
4217 * include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
4218 Adjust.
4219 (money_put<>::do_put(long double)): Likewise.
4220 * src/locale-misc-inst.cc: Remove.
4221 * src/Makefile.am: Adjust.
4222 * src/Makefile.in: Regenerate.
4223
4224 2006-06-09 Paolo Carlini <pcarlini@suse.de>
4225
4226 * include/tr1/random (random_device::random_device(const
4227 std::string& = "/dev/urandom")): Open in binary mode.
4228
4229 * include/tr1/random (random_device::random_device(const
4230 std::string& = "rand")): Use mersenne_twister.
4231 (random_device::_M_strtoul): New.
4232 (random_device::operator()()): Update.
4233
4234 * include/tr1/random: Minor stylistic changes, consistently
4235 qualify with std::.
4236
4237 2006-06-09 Paolo Carlini <pcarlini@suse.de>
4238
4239 * acinclude.m4 ([GLIBCXX_CHECK_RANDOM_TR1]): New, check for
4240 the availability of "/dev/random" and "/dev/urandom".
4241 * configure.ac: Use it.
4242 * include/tr1/random (random_device): Implement, a fall-back for
4243 systems not providing "/dev/random" and "/dev/urandom" included.
4244 * testsuite/tr1/5_numerical_facilities/random/random_device/
4245 cons/default.cc: New.
4246 * testsuite/tr1/5_numerical_facilities/random/random_device/
4247 cons/token.cc: Likewise.
4248 * testsuite/tr1/5_numerical_facilities/random/random_device/
4249 requirements/typedefs.cc: Likewise.
4250 * config.h.in: Regenerate.
4251 * configure: Likewise.
4252
4253 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
4254 cons/gen1.cc: Minor tweak, add bool test.
4255
4256 2006-06-06 Benjamin Kosnik <bkoz@redhat.com>
4257
4258 * testsuite/util: New directory.
4259 * testsuite/testsuite_hooks.cc: Move to util sub-directory.
4260 * testsuite/testsuite_abi_check.cc: Same.
4261 * testsuite/testsuite_abi.cc: Same.
4262 * testsuite/testsuite_tr1.h: Same.
4263 * testsuite/testsuite_io.h: Same.
4264 * testsuite/testsuite_iterators.h: Same.
4265 * testsuite/testsuite_allocator.cc: Same.
4266 * testsuite/testsuite_allocator.h: Same.
4267 * testsuite/testsuite_hooks.h: Same.
4268 * testsuite/testsuite_character.cc: Same.
4269 * testsuite/testsuite_abi.h: Same.
4270 * testsuite/testsuite_character.h: Same.
4271 * testsuite/testsuite_visualization.h: Same.
4272 * testsuite/testsuite_performance.h: Same.
4273 * testsuite/testsuite_shared.cc: Same.
4274 * testsuite/testsuite_common_types.h: Same.
4275
4276 * testsuite/lib/libstdc++.exp (v3-build_support): Adjust paths.
4277 * testsuite/libstdc++-abi/abi.exp: Same.
4278 * testsuite/libstdc++-dg/conformance.exp: Remove any files in the
4279 utilities subdirectory from the list of test cases.
4280
4281 * scripts/testsuite_flags.in (build-includes): Adjust path for
4282 testsuite includes.
4283 * scripts/create_testsuite_files (dlist): Don't let utility files
4284 creep into the testsuite_files list.
4285
4286 2006-06-06 Paolo Carlini <pcarlini@suse.de>
4287
4288 * include/tr1/random (mersenne_twister<>::operator==,
4289 operator!=, operator<<, operator>>): Implement.
4290 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
4291 operators/equal.cc: New.
4292 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
4293 operators/not_equal.cc: Likewise.
4294 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
4295 operators/serialize.cc: Likewise.
4296
4297 * include/tr1/random (subtract_with_carry<>::operator==): Fix,
4298 compare the whole state; use std::equal.
4299
4300 * include/tr1/random: Minor formatting and style changes.
4301
4302 2006-06-06 Benjamin Kosnik <bkoz@redhat.com>
4303
4304 * testsuite/tr1/5_numerical_facilies: Move to...
4305 * testsuite/tr1/5_numerical_facilities: ...this.
4306
4307 2006-06-06 Paolo Carlini <pcarlini@suse.de>
4308
4309 * include/tr1/random: Trivial uglification fixes.
4310 * include/tr1/random.tcc: Likewise.
4311
4312 * include/tr1/random (subtract_with_carry<>::
4313 subtract_with_carry(_IntType)): Fix parameter type to unsigned long.
4314 (subtract_with_carry<>::seed(_IntType)): Likewise.
4315 * include/tr1/random.tcc (subtract_with_carry<>::seed(_IntType)):
4316 Adjust.
4317
4318 2006-06-05 Paolo Carlini <pcarlini@suse.de>
4319
4320 * include/tr1/random (mersenne_twister<>::seed()): Fix per
4321 tr1/5.1.4.2, p8.
4322 * include/tr1/random.tcc (mod_w): Add.
4323 (mersenne_twister<>::seed(unsigned long)): Fix per tr1/5.1.4.2, p9.
4324 (mersenne_twister<>::seed(Gen&, false_type)): Adjust to use mod_w.
4325 * testsuite/tr1/5_numerical_facilies/random/mt19937.cc: Fix
4326 expected result per tr1/5.1.5, p2.
4327 * testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
4328 cons/default.cc: Adjust.
4329
4330 * include/tr1/random (exponential_distribution<>::operator()()): Fix.
4331
4332 2006-06-05 Paolo Carlini <pcarlini@suse.de>
4333
4334 * include/tr1/random.tcc (Max::value()): Cast 1 to Tp(1) and
4335 adjust shift count to w; rename as Max_w.
4336 (struct Mod_w): New.
4337 (mersenne_twister<>::seed(Gen&, false_type): Use the latter.
4338 (mersenne_twister<>::operator()()): Fix ~0ul to ~_UInt().
4339 * testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
4340 cons/default.cc: Fix ~0ul to 2^32-1.
4341 * testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
4342 cons/gen1.cc: Likewise.
4343
4344 2006-06-05 Stephen M. Webb <stephen.webb@bregmasoft.com>
4345
4346 * include/tr1/random: New.
4347 * include/tr1/random.tcc: Likewise.
4348 * include/Makefile.am: Add.
4349 * testsuite/tr1/5_numerical_facilies/random/ranlux3.cc: New.
4350 * testsuite/tr1/5_numerical_facilies/random/ranlux4.cc: Likewise.
4351 * testsuite/tr1/5_numerical_facilies/random/mt19937.cc: Likewise.
4352 * testsuite/tr1/5_numerical_facilies/random/variate_generator/
4353 requirements/typedefs.cc: Likewise.
4354 * testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
4355 cons/seed1.cc: Likewise.
4356 * testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
4357 cons/seed2.cc: Likewise.
4358 * testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
4359 cons/default.cc: Likewise.
4360 * testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
4361 cons/gen1.cc: Likewise.
4362 * testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
4363 requirements/typedefs.cc: Likewise.
4364 * testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
4365 operators/equal.cc: Likewise.
4366 * testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
4367 operators/not_equal.cc: Likewise.
4368 * testsuite/tr1/5_numerical_facilies/random/subtract_with_carry/
4369 operators/serialize.cc: Likewise.
4370 * testsuite/tr1/5_numerical_facilies/random/uniform_real/
4371 requirements/typedefs.cc: Likewise.
4372 * testsuite/tr1/5_numerical_facilies/random/discard_block/
4373 requirements/requirements.cc: Likewise.
4374 * testsuite/tr1/5_numerical_facilies/random/linear_congruential/
4375 cons/seed1.cc: Likewise.
4376 * testsuite/tr1/5_numerical_facilies/random/linear_congruential/
4377 cons/seed2.cc: Likewise.
4378 * testsuite/tr1/5_numerical_facilies/random/linear_congruential/
4379 cons/default.cc: Likewise.
4380 * testsuite/tr1/5_numerical_facilies/random/linear_congruential/
4381 cons/gen1.cc: Likewise.
4382 * testsuite/tr1/5_numerical_facilies/random/linear_congruential/
4383 requirements/non_uint_neg.cc: Likewise.
4384 * testsuite/tr1/5_numerical_facilies/random/linear_congruential/
4385 requirements/typedefs.cc: Likewise.
4386 * testsuite/tr1/5_numerical_facilies/random/linear_congruential/
4387 operators/equal.cc: Likewise.
4388 * testsuite/tr1/5_numerical_facilies/random/linear_congruential/
4389 operators/not_equal.cc: Likewise.
4390 * testsuite/tr1/5_numerical_facilies/random/linear_congruential/
4391 operators/serialize.cc: Likewise.
4392 * testsuite/tr1/5_numerical_facilies/random/xor_combine/
4393 requirements/typedefs.cc: Likewise.
4394 * testsuite/tr1/5_numerical_facilies/random/minstd_rand.cc: Likewise.
4395 * testsuite/tr1/5_numerical_facilies/random/minstd_rand0.cc: Likewise.
4396 * testsuite/tr1/5_numerical_facilies/random/uniform_int/
4397 cons/range.cc: Likewise.
4398 * testsuite/tr1/5_numerical_facilies/random/uniform_int/
4399 cons/default.cc: Likewise.
4400 * testsuite/tr1/5_numerical_facilies/random/uniform_int/
4401 cons/range_neg.cc: Likewise.
4402 * testsuite/tr1/5_numerical_facilies/random/uniform_int/
4403 requirements/typedefs.cc: Likewise.
4404 * testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
4405 cons/seed1.cc: Likewise.
4406 * testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
4407 cons/seed2.cc: Likewise.
4408 * testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
4409 cons/default.cc: Likewise.
4410 * testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
4411 cons/gen1.cc: Likewise.
4412 * testsuite/tr1/5_numerical_facilies/random/mersenne_twister/
4413 requirements/typedefs.cc: Likewise.
4414 * include/Makefile.in: Regenerate.
4415 * testsuite/tr1/headers.cc: Update.
4416
4417 2006-06-04 Paolo Carlini <pcarlini@suse.de>
4418
4419 PR libstdc++/27867
4420 * include/bits/valarray_before.h (struct _BinClos<_Oper, _ValArray,
4421 _ValArray, _Tp, _Tp>): Fix value_type typedef.
4422 * testsuite/26_numerics/valarray/27867.cc: New.
4423
4424 2006-05-29 Paolo Carlini <pcarlini@suse.de>
4425
4426 PR libstdc++/24692
4427 * include/bits/atomicity.h (__exchange_and_add_multi,
4428 __atomic_add_multi): New, depending on _GLIBCXX_ATOMIC_BUILTINS,
4429 inline the atomic builtins.
4430 (__exchange_and_add_dispatch, __atomic_add_dispatch): Adjust.
4431 * configure.ac: Define _GLIBCXX_ATOMIC_BUILTINS when the atomic
4432 builtins are available.
4433 * configure: Regenerate.
4434 * config.h.in: Likewise.
4435
4436 2006-05-27 Paolo Carlini <pcarlini@suse.de>
4437
4438 * configure.host: If the CPU provides atomic builtins select
4439 generic/atomic_builtins/atomicity.h.
4440 * config/cpu/generic/atomic_builtins/atomicity.h: Add.
4441 * config/cpu/powerpc/atomicity.h: Remove.
4442 * config/cpu/ia64/atomicity.h: Likewise.
4443 * config/cpu/alpha/atomicity.h: Likewise.
4444 * config/cpu/s390/atomicity.h: Likewise.
4445
4446 2006-05-26 Carlos O'Donell <carlos@codesourcery.com>
4447
4448 * Makefile.am: Add install-html target. Add install-html to .PHONY
4449 * Makefile.in: Regenerate.
4450
4451 2006-05-24 Paolo Carlini <pcarlini@suse.de>
4452
4453 PR libstdc++/24704
4454 * include/bits/atomicity.h (__exchange_and_add_single,
4455 __atomic_add_single): New, single thread versions of the atomic
4456 functions.
4457 (__exchange_and_add_dispatch, __atomic_add_dispatch): New,
4458 depending on __GTHREADS and __gthread_active_p() dispatch either
4459 to the above or to the existing atomic functions.
4460 * include/ext/pool_allocator.h: Update callers.
4461 * include/ext/rc_string_base.h: Likewise.
4462 * include/bits/locale_classes.h: Likewise.
4463 * include/bits/basic_string.h: Likewise.
4464 * include/bits/ios_base.h: Likewise.
4465 * include/tr1/boost_shared_ptr.h: Likewise.
4466 * src/ios.cc: Likewise.
4467 * src/locale.cc: Likewise.
4468 * src/ios_init.cc: Likewise.
4469
4470 2006-05-23 Paolo Carlini <pcarlini@suse.de>
4471
4472 * testsuite/testsuite_shared.cc: Fix --enable-threads=single build.
4473
4474 2006-05-19 Paolo Carlini <pcarlini@suse.de>
4475
4476 * testsuite/27_io/objects/wchar_t/9661-1.cc: Avoid leaking the
4477 semaphores if a VERIFY fails.
4478 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
4479 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
4480 * testsuite/27_io/objects/char/7.cc: Likewise.
4481 * testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
4482 * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
4483 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
4484 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise.
4485 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
4486 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
4487
4488 2006-05-17 Paolo Carlini <pcarlini@suse.de>
4489
4490 * include/tr1/hashtable (hashtable<>::m_find): Remove; update callers.
4491
4492 * include/tr1/hashtable (map_base<>::operator[]): Move out of line.
4493
4494 * include/tr1/hashtable (hashtable<>::m_insert(const value_type&,
4495 std::tr1::false_type)): Avoid memory leak risk for new_node.
4496
4497 2006-05-15 Paolo Carlini <pcarlini@suse.de>
4498
4499 * include/tr1/hashtable (hashtable<>::m_find, m_insert_bucket): Add.
4500 (hashtable<>::find, m_insert(const value_type&, std::tr1::true_type),
4501 map_base<>::operator[]): Use the above.
4502 * testsuite/performance/23_containers/insert/unordered_map_array.cc:
4503 New.
4504
4505 * include/tr1/hashtable (hashtable<>::find_node,
4506 insert(const value_type&, ...), erase_node): Rename to m_*, adjust
4507 callers.
4508 * include/tr1/hashtable: Minor cosmetic changes.
4509
4510 2006-05-13 Peter Doerfler <gcc@pdoerfler.com>
4511
4512 * include/tr1/hashtable (identity<>::operator(),
4513 extract1st<>::operator()): Return by const ref.
4514
4515 2006-05-10 Steve Ellcey <sje@cup.hp.com>
4516
4517 * testsuite/lib/libstdc++.exp (check_v3_target_cxa_atexit):
4518 Move to gcc subdir.
4519 * testsuite/lib/dg-options.exp (dg-require-iconv): Remove.
4520 (dg-require-cxa-atexit): Move to gcc subdir.
4521
4522 2006-05-10 Paolo Carlini <pcarlini@suse.de>
4523 Peter Doerfler <gcc@pdoerfler.com>
4524
4525 * include/tr1/hashtable (hashtable_iterator<>::hashtable_iterator(),
4526 hashtable_const_iterator<>::hashtable_const_iterator(),
4527 node_iterator<>::node_iterator(),
4528 node_const_iterator<>::node_const_iterator()): Add.
4529 (node_iterator<>::node_iterator(hash_node<>*),
4530 node_const_iterator<>::node_const_iterator(hash_node<>*)): Tweak,
4531 remove default.
4532 * testsuite/tr1/6_containers/unordered/hashtable/
4533 iterators_default_constructor.c: New.
4534
4535 2006-05-10 Marc Glisse <marc.glisse@normalesup.org>
4536
4537 * include/ext/pool_allocator.h: Add missing std:: qualifications.
4538 * include/ext/mt_allocator.h: Likewise.
4539 * include/ext/pb_assoc/detail/resize_policy/
4540 hash_load_check_resize_trigger_imp.hpp: Likewise.
4541 * include/ext/pb_assoc/detail/resize_policy/
4542 hash_standard_resize_policy_imp.hpp: Likewise.
4543 * include/ext/pb_assoc/detail/lu_policy/
4544 counter_lu_metadata_imp.hpp: Likewise.
4545 * include/ext/pb_assoc/detail/map_debug_base.hpp: Likewise.
4546 * libsupc++/eh_alloc.cc: Typo: memcpy -> memset.
4547
4548 2006-05-07 Paolo Carlini <pcarlini@suse.de>
4549
4550 * include/tr1/type_traits (integral_constant<>::value): Define.
4551 * testsuite/tr1/4_metaprogramming/helper_classes/static_definition.cc:
4552 New.
4553
4554 2006-05-04 Douglas Gregor <dgregor@cs.indiana.edu>
4555
4556 PR libstdc++/27404
4557 * include/ext/rope (_Rope_const_iterator<>::operator*() const,
4558 _Rope_iterator<>::operator*() const): Add.
4559
4560 2006-05-01 Paolo Carlini <pcarlini@suse.de>
4561
4562 * acinclude.m4 (GLIBCXX_ENABLE_WCHAR_T): Always check the
4563 presence of wctype.h, for use in GLIBCXX_ENABLE_C99.
4564 * configure: Regenerate.
4565
4566 2006-04-29 Paolo Carlini <pcarlini@suse.de>
4567
4568 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
4569 Special case main parsing loop for !_M_allocated (i.e., "C" locale).
4570 (num_get<>::_M_extract_int): Likewise.
4571 * include/bits/locale_facets.h (num_get<>::_M_find): New.
4572
4573 2006-04-27 Benjamin Kosnik <bkoz@redhat.com>
4574
4575 * docs/html/17_intro/TODO: Update.
4576
4577 2006-04-26 Benjamin Kosnik <bkoz@redhat.com>
4578
4579 PR libstdc++/26875
4580 * include/ext/array_allocator.h (array_allocator): _M_used, new
4581 data member.
4582 * testsuite/ext/array_allocator/26875.cc: New.
4583
4584 2006-04-26 Shantonu Sen <ssen@opendarwin.org>
4585
4586 PR libstdc++/26513
4587 * scripts/make_exports.pl: Use $ENV{NM_FOR_TARGET}, if present.
4588
4589 2006-04-23 Marc Glisse <marc.glisse@normalesup.org>
4590
4591 PR libstdc++/27199
4592 * ext/pool_allocator.h: Add using declarations for size_t, ptrdiff_t.
4593 * ext/bitmap_allocator.h: Likewise; qualify with std::.
4594 * ext/new_allocator.h: Likewise.
4595 * ext/malloc_allocator.h: Likewise.
4596 * ext/array_allocator.h: Likewise.
4597 * ext/mt_allocator.h: Likewise.
4598 * ext/functional: Likewise for size_t.
4599 * ext/debug_allocator.h: Likewise.
4600 * bits/char_traits.h: Qualify with std:: size_t.
4601 * debug/hash_multimap.h: Likewise.
4602
4603 2006-04-23 Paolo Carlini <pcarlini@suse.de>
4604
4605 * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 42.
4606
4607 2006-04-19 Paolo Carlini <pcarlini@suse.de>
4608
4609 PR libstdc++/26424
4610 * include/tr1/hashtable (X<>::primes): Extend for 64-bit machines.
4611 (X<>::n_primes): Adjust.
4612 (prime_rehash_policy::next_bkt, bkt_for_elements, need_rehash): Adjust.
4613
4614 2006-04-18 Paolo Carlini <pcarlini@suse.de>
4615
4616 * docs/html/faq/index.html ([5.5]): Adjust to mention function
4617 objects and reference_wrapper; minor tweaks.
4618 * docs/html/faq/index.txt: Regenerate.
4619
4620 2006-04-16 Paolo Carlini <pcarlini@suse.de>
4621
4622 PR libstdc++/6702 (again)
4623 * acinclude.m4 (GLIBCXX_ENABLE_C99): Don't check non-C99
4624 wchar_t functions...
4625 (GLIBCXX_ENABLE_WCHAR_T): ... do that here.
4626 * configure.ac: Adjust order of checks.
4627 * configure: Regenerate.
4628
4629 2006-04-14 Douglas Gregor <dgregor@cs.indiana.edu>
4630
4631 PR libstdc++/27162
4632 * include/bits/stl_algo.h (__search_n(,,,, _BinaryPredicate,
4633 std::forward_iterator_tag)): Use __binary_pred, not ==.
4634
4635 2006-04-10 Matthias Klose <doko@debian.org>
4636
4637 * testsuite/lib/libstdc++.exp (libstdc++_init): Recognize multilib
4638 directory names containing underscores.
4639
4640 2006-04-10 Paolo Carlini <pcarlini@suse.de>
4641
4642 DR 538, [Ready]
4643 * include/bits/stl_algo.h (__unique_copy(,,, input_iterator_tag,
4644 output_iterator_tag), and predicated counterpart): Revert to the
4645 algorithm pre-DR 241, i.e., value_type of InputIterator is now
4646 required to be Assignable too.
4647 * testsuite/25_algorithms/unique_copy/3.cc: Remove.
4648 * docs/html/ext/howto.html: Add an entry for DR 538.
4649
4650 2006-03-29 Benjamin Kosnik <bkoz@redhat.com>
4651
4652 * testsuite/data/sgetn.txt: Correct copyright holder.
4653 * testsuite/data/wistream_extractor_other-1.tst: Same.
4654 * testsuite/data/wistream_extractor_other-2.tst: Same.
4655 * testsuite/data/istream_extractor_other-1.txt: Same.
4656 * testsuite/data/filebuf_virtuals-1.txt: Same.
4657 * testsuite/data/wostream_inserter_other-1.tst: Same.
4658 * testsuite/data/wostream_inserter_other-2.tst: Same.
4659 * testsuite/data/ostream_inserter_other-1.tst: Same.
4660 * testsuite/data/ostream_inserter_other-2.tst: Same.
4661 * testsuite/data/wistream_extractor_other-1.txt: Same.
4662 * testsuite/data/istream_extractor_other-1.tst: Same.
4663 * testsuite/data/istream_extractor_other-2.tst: Same.
4664 * testsuite/data/filebuf_virtuals-1.tst: Same.
4665 * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Adjust test
4666 conditions.
4667 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Same.
4668 * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Same.
4669 * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Same.
4670
4671 2006-03-28 Paolo Carlini <pcarlini@suse.de>
4672
4673 * include/ext/vstring.h (operator[]): Allow s[s.size()] in
4674 debug mode, but not pedantic mode.
4675
4676 2006-03-24 Mark Mitchell <mark@codesourcery.com>
4677 Joseph S. Myers <joseph@codesourcery.com>
4678
4679 PR libstdc++/20448
4680 PR libstdc++/20451
4681 * scripts/testsuite_flags.in (--cxxflags): Don't define LOCALEDIR.
4682 * testsuite/lib/libstdc++.exp (libstdc++_init): Always define
4683 LOCALEDIR to ".".
4684 (v3-build_support): Build MO files.
4685
4686 2006-03-22 Paolo Carlini <pcarlini@suse.de>
4687
4688 PR libstdc++/26777
4689 * include/bits/fstream.tcc (basic_filebuf<>::_M_seek): Check
4690 the return value of _M_file.seekoff.
4691 * testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: New.
4692
4693 2006-03-21 Paolo Carlini <pcarlini@suse.de>
4694
4695 PR libstdc++/25482
4696 * include/bits/stl_algobase.h (__copy_aux(_CharT*, _CharT*,
4697 ostreambuf_iterator<_CharT>), __copy_aux(const _CharT*, const _CharT*,
4698 ostreambuf_iterator<_CharT>), __copy_aux(istreambuf_iterator<_CharT>,
4699 istreambuf_iterator<_CharT>, _CharT*), copy(istreambuf_iterator<_CharT>,
4700 istreambuf_iterator<_CharT>, ostreambuf_iterator<_CharT>)): Declare.
4701 * include/bits/stl_algo.h (find(istreambuf_iterator<_CharT>,
4702 istreambuf_iterator<_CharT>, _CharT)): Likewise.
4703 * include/bits/streambuf_iterator.h (copy(istreambuf_iterator<_CharT>,
4704 istreambuf_iterator<_CharT>, ostreambuf_iterator<_CharT>),
4705 __copy_aux(_CharT*, _CharT*, ostreambuf_iterator<_CharT>),
4706 __copy_aux(const _CharT*, const _CharT*, ostreambuf_iterator<_CharT>),
4707 __copy_aux(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
4708 _CharT*), find(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
4709 _CharT)): Define.
4710 (class istreambuf_iterator<>, class ostreambuf_iterator<>): Declare
4711 friends.
4712 * include/std/std_streambuf.h (class basic_streambuf<>): Likewise.
4713 * include/bits/cpp_type_traits.h (struct __is_char<>): Add.
4714 * testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: New.
4715 * testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: New.
4716 * testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: New.
4717 * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: New.
4718 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc: New.
4719 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc: New.
4720 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc: New.
4721 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc: New.
4722 * testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: New.
4723 * testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: New.
4724 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc: New.
4725 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc: New.
4726 * testsuite/performance/25_algorithms/copy_streambuf_iterators.cc: New.
4727 * testsuite/performance/25_algorithms/find_istreambuf_iterators.cc: New.
4728
4729 006-03-13 Paolo Carlini <pcarlini@suse.de>
4730
4731 * include/bits/postypes.h (fpos<>::operator==, operator!=): Remove,
4732 exploit conversion to streamoff.
4733 * testsuite/27_io/fpos/mbstate_t/5.cc: New.
4734
4735 2006-03-12 Howard Hinnant <hhinnant@apple.com>
4736
4737 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc:
4738 Fix race condition.
4739 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
4740 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
4741
4742 2006-03-10 Paolo Carlini <pcarlini@suse.de>
4743
4744 * include/tr1/cmath: Add atan2 and pow bits; add using declarations.
4745 * include/tr1/math.h: Add using declarations.
4746 * include/tr1/complex: Add using declarations.
4747 * testsuite/tr1/8_c_compatibility/cmath/functions.cc: Fully
4748 qualify calls.
4749 * testsuite/tr1/8_c_compatibility/cmath/overloads.cc: Likewise;
4750 add atan2 and pow bits.
4751 * testsuite/tr1/8_c_compatibility/complex/overloads_float.cc: Likewise.
4752 * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: Likewise;
4753 adjust polar bits.
4754
4755 * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add checks for double_t
4756 and float_t typedefs.
4757 * include/tr1/cmath: Add double_t and float_t.
4758 * testsuite/tr1/8_c_compatibility/cmath/types.cc: New.
4759
4760 * include/tr1/ctgmath: New.
4761 * include/tr1/tgmath.h: Likewise.
4762 * include/Makefile.am: Add.
4763 * testsuite/tr1/headers.cc: Update.
4764
4765 * include/Makefile.in: Regenerate.
4766 * configure: Likewise.
4767
4768 * docs/html/ext/tr1.html: Update.
4769
4770 2006-03-08 Paolo Carlini <pcarlini@suse.de>
4771
4772 Implement the resolution of DR 455, [DR].
4773 * src/ios_init.cc (ios_base::Init::Init()): Do it.
4774 * testsuite/27_io/objects/char/dr455.cc: New.
4775 * testsuite/27_io/objects/wchar_t/dr455.cc: Likewise.
4776 * docs/html/ext/howto.html: Add an entry for DR 455.
4777
4778 2006-03-07 Paolo Carlini <pcarlini@suse.de>
4779
4780 * include/tr1/cmath: Add C99 overloads.
4781 * include/tr1/common.h (struct __promote_3): Add.
4782 * testsuite/tr1/8_c_compatibility/cmath/overloads.cc: New.
4783
4784 * testsuite/tr1/8_c_compatibility/cmath/functions.cc: Tweak.
4785 * testsuite/tr1/8_c_compatibility/complex/overloads_float.cc: Likewise.
4786
4787 2006-03-06 Paolo Carlini <pcarlini@suse.de>
4788
4789 PR target/26532
4790 * config/io/c_io_stdio.h (struct __ios_flags): Remove.
4791 * include/bits/ios_base.h: Adjust consistently.
4792 (ios_base::_S_local_word_size): Change to an anonymous enum.
4793 * src/ios.cc: Do not define static const data of __ios_flags,
4794 likewise for ios_base::_S_local_word_size.
4795 * include/bits/locale_classes.h (locale::_S_categories_size):
4796 Change to an anonymous enum.
4797 * src/locale.cc: Don't define.
4798
4799 2006-03-03 Paolo Carlini <pcarlini@suse.de>
4800
4801 PR libstdc++/26526
4802 * config/abi/pre/gnu.ver (__copy_streambufs, 64-bit version): Add
4803 @GLIBCXX_3.4.8; move existing symbols @GLIBCXX_3.4.8 to 3.4.9.
4804 * configure.ac (libtool_VERSION): To 6:9:0.
4805 * testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.9.
4806 * configure: Regenerate.
4807
4808 2006-03-02 Paolo Carlini <pcarlini@suse.de>
4809
4810 * config/abi/pre/gnu.ver: Adjust __copy_streambufs_eof export
4811 vs 64-bit arches.
4812
4813 2006-03-01 Paolo Carlini <pcarlini@suse.de>
4814
4815 * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 41.
4816
4817 2006-02-27 Jakub Jelinek <jakub@redhat.com>
4818
4819 PR other/26208
4820 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
4821 _Unwind_GetIPInfo instead of _Unwind_GetIP.
4822
4823 2006-02-27 Paolo Carlini <pcarlini@suse.de>
4824
4825 PR libstdc++/14866
4826 * testsuite/27_io/ios_base/sync_with_stdio/1.cc: Redirect
4827 stderr instead.
4828
4829 2006-02-26 Paolo Carlini <pcarlini@suse.de>
4830
4831 * include/tr1/cmath: Add templates (8.16.3).
4832 * include/tr1/cstdbool: New.
4833 * include/tr1/stdbool.h: Likewise.
4834 * include/Makefile.am: Add.
4835 * testsuite/tr1/8_c_compatibility/cmath/templates.cc: New.
4836 * testsuite/tr1/headers.cc: Update.
4837 * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <stdbool.h> check.
4838 * docs/html/ext/tr1.html: Update.
4839 * include/Makefile.in: Regenerate.
4840 * config.h.in: Likewise.
4841 * configure: Likewise.
4842
4843 2006-02-24 Paolo Carlini <pcarlini@suse.de>
4844
4845 * include/tr1/array (array<>::swap, assign): Implement.
4846 * include/tr1/array (operator==, operator!=, operator<,
4847 operator>, operator>=, operator<=, swap, get): Inline.
4848 * testsuite/tr1/6_containers/array/requirements/member_swap.cc: New.
4849 * testsuite/tr1/6_containers/array/requirements/assign.cc: Likewise.
4850 * testsuite/tr1/6_containers/array/specialized_algorithms/swap.cc:
4851 Likewise.
4852
4853 2006-02-23 Benjamin Kosnik <bkoz@redhat.com>
4854
4855 * testsuite/22_locale/codecvt/in/wchar_t/1.cc (test01): Change int
4856 to size_t. Use explicit static_cast for casts.
4857 * testsuite/22_locale/codecvt/in/wchar_t/6.cc (test06): Same.
4858 * testsuite/22_locale/codecvt/in/wchar_t/5.cc (test05): Same.
4859 * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc (test01): Same.
4860
4861 2006-02-22 Paolo Carlini <pcarlini@suse.de>
4862
4863 * docs/html/ext/pb_assoc/
4864 basic_tree_assoc_cntnr_const_node_iterator.html:Fix links
4865 * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_node_iterator.html:
4866 Likewise.
4867 * docs/html/ext/pb_assoc/hash_based_containers.html: Likewise.
4868 * docs/html/ext/pb_assoc/hash_standard_resize_policy.html: Likewise.
4869 * docs/html/ext/pb_assoc/interface.html: Likewise..
4870 * docs/html/ext/pb_assoc/list_updates.html: Likewise.
4871 * docs/html/ext/pb_assoc/lu_based_containers.html: Likewise.
4872 * docs/html/ext/pb_assoc/resize_policies.html: Likewise.
4873 * docs/html/ext/pb_assoc/sample_probe_fn.html: Likewise.
4874 * docs/html/ext/pb_assoc/sample_range_hashing.html: Likewise.
4875 * docs/html/ext/pb_assoc/sample_ranged_hash_fn.html: Likewise.
4876 * docs/html/ext/pb_assoc/sample_ranged_probe_fn.html: Likewise.
4877 * docs/html/ext/pb_assoc/sample_resize_policy.html: Likewise.
4878 * docs/html/ext/pb_assoc/tree_assoc_cntnr_const_node_iterator.html:
4879 Likewise.
4880 * docs/html/ext/pb_assoc/tree_assoc_cntnr_node_iterator.html: Likewise.
4881
4882 2006-02-22 Paolo Carlini <pcarlini@suse.de>
4883
4884 PR libstdc++/26132
4885 * include/tr1/hashtable (hashtable<>::rehash): Define.
4886 * testsuite/tr1/6_containers/unordered/hashtable/26132.cc: New.
4887
4888 * include/tr1/hashtable: Trivial formatting and stylistic fixes.
4889
4890 * testsuite/tr1/headers.cc: remove <tr1/hashtable>, not a tr1 header,
4891 only an implementation detail.
4892
4893 2006-02-22 Paolo Carlini <pcarlini@suse.de>
4894
4895 * include/debug/list (splice): Remove splice_alloc check, redundant
4896 after implementing the splice bits of N1599.
4897
4898 2006-02-21 Benjamin Kosnik <bkoz@redhat.com>
4899
4900 * include/c_std/cmath.tcc: Use _GLIBCXX_BEGIN_NAMESPACE,
4901 _GLIBCXX_END_NAMESPACE.
4902
4903 2006-02-21 Benjamin Kosnik <bkoz@redhat.com>
4904
4905 * include/bits/c++config: Simplify debug namespaces.
4906 * include/ext/hash_set: Specialize insert_iterator after norm,
4907 debug containers have been (optionally) declared. Use nested
4908 namespaces.
4909 * include/ext/hash_map: Same.
4910 * include/debug/hash_map.h (insert): Add specialization for value
4911 pointer types.
4912 * include/debug/hash_set.h (insert): Same.
4913 * include/debug/hash_multimap.h: Change __gnu_debug_def to __debug.
4914 * include/debug/set.h: Same.
4915 * include/debug/bitset: Same.
4916 * include/debug/multiset.h: Same.
4917 * include/debug/hash_multiset.h: Same.
4918 * include/debug/vector: Same.
4919 * include/debug/map.h: Same.
4920 * include/debug/deque: Same.
4921 * include/debug/list: Same.
4922 * include/debug/multimap.h. Same.
4923 * include/debug/macros.h: Use __gnu_debug.
4924 * include/debug/debug.h: Same.
4925 * include/debug/formatter.h: Same.
4926 * include/debug/safe_sequence.h: Same.
4927 * include/debug/functions.h: Same.
4928 * include/debug/safe_base.h: Same.
4929 * include/debug/safe_iterator.h: Same.
4930 * include/debug/safe_iterator.tcc: Same.
4931 (_M_invalidate): Adjust compare order.
4932 * include/debug/string: Change std::__gnu_debug to __gnu_debug.
4933 * include/ext/hashtable.h: Formatting fixes.
4934 * include/bits/stl_map.h: Formatting fixes.
4935 * src/compatibility.cc: Adjust compatibility symbols for old debug
4936 mode model.
4937 * src/debug_list.cc: Tweak.
4938 * src/debug.cc: Adjust namespaces.
4939 * docs/html/debug_mode.html: Adjust namespace names.
4940 * testsuite/25_algorithms/heap/heap.cc: Restore _GLIBCXX_DEBUG
4941 macro guards, as count values differ when in debug mode.
4942 * testsuite/23_containers/vector/26412.cc: Move to...
4943 * testsuite/23_containers/vector/26412-1.cc: ... here.
4944 * testsuite/23_containers/vector/26412-2.cc: Add.
4945
4946 * include/ext/pb_assoc/detail/standard_policies.hpp
4947 (PB_ASSOC_HASH_NAMESPACE): Remove, use __gnu_cxx::hash_map and
4948 std::equal_to.
4949
4950 * configure.ac (libtool_VERSION): To 6:8:0.
4951 * configure: Regenerate.
4952 * config/abi/pre/gnu.ver: Revert to exporting __gnu_debug symbols.
4953 (GLIBCXX_3.4.8): New.
4954 * testsuite/testsuite_abi.cc: Add GLIBCXX_3.4.8 to known versions.
4955
4956 2006-02-21 Paolo Carlini <pcarlini@suse.de>
4957
4958 * include/tr1/hashtable: Trivial formatting fixes.
4959
4960 2006-02-20 Paolo Carlini <pcarlini@suse.de>
4961
4962 Revert recent commit for libstdc++/26211, now suspended waiting for
4963 DR 342 (reopened) to reach a new resolution.
4964 * include/bits/istream.tcc (basic_istream<>::tellg, seekg(pos_type),
4965 seekg(off_type, ios_base::seekdir)): Remove sentry.
4966 * testsuite/27_io/basic_istream/seekg/char/26211.cc: Remove.
4967 * testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
4968 * testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
4969 * testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
4970 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Revert changes.
4971 * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
4972 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
4973 * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
4974 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
4975 * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
4976
4977 2006-02-19 Paolo Carlini <pcarlini@suse.de>
4978
4979 * include/std/std_sstream.h (basic_stringbuf<>::setbuf): Simply
4980 clear the internal _M_string, adjust _M_sync call.
4981 * include/bits/sstream.tcc (basic_stringbuf<>::_M_sync): Adjust
4982 consistently for calls from setbuf.
4983
4984 2006-02-17 Paolo Carlini <pcarlini@suse.de>
4985 Howard Hinnant <hhinnant@apple.com>
4986
4987 PR libstdc++/26250
4988 * include/bits/sstream.tcc (basic_stringbuf<>::overflow): Tweak
4989 to leave epgtr() just past the new write position, as per the
4990 relevant bits of 27.7.1.3/8 (not changed by DR 432).
4991 * testsuite/27_io/basic_stringbuf/overflow/char/26250.cc: New.
4992 * testsuite/27_io/basic_stringbuf/overflow/wchar_t/26250.cc: Same.
4993
4994 * docs/html/ext/howto.html: Add entries for DR 169 and DR 432.
4995
4996 * include/std/std_sstream.h (basic_stringbuf<>::_M_sync): Move out
4997 of line...
4998 * include/bits/sstream.tcc: ... here.
4999
5000 2006-02-16 Joseph S. Myers <joseph@codesourcery.com>
5001
5002 PR libstdc++/14939
5003 * config/os/uclibc/ctype_base.h, config/os/uclibc/ctype_inline.h,
5004 config/os/uclibc/ctype_noninline.h, config/os/uclibc/os_defines.h:
5005 New.
5006 * acinclude.m4 (GLIBCXX_CONFIGURE): Test whether using uClibc.
5007 * configure.host: Use os/uclibc for uClibc.
5008 * crossconfig.m4 (*-linux*): Use link tests. Don't hardcode
5009 presence of math functions.
5010 * configure: Regenerate.
5011
5012 2006-02-12 Paolo Carlini <pcarlini@suse.de>
5013
5014 PR libstdc++/26211
5015 * include/bits/istream.tcc (basic_istream<>::tellg, seekg(pos_type),
5016 seekg(off_type, ios_base::seekdir)): Construct a sentry, as per
5017 27.6.1.3/1.
5018 * testsuite/27_io/basic_istream/seekg/char/26211.cc: New.
5019 * testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
5020 * testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
5021 * testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
5022 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Adjust.
5023 * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
5024 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
5025 * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
5026 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
5027 * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
5028
5029 2006-02-10 Paolo Carlini <pcarlini@suse.de>
5030
5031 PR libstdc++/26181
5032 * include/bits/streambuf.tcc (__copy_streambufs_eof): New, like
5033 the existing __copy_streambufs but reporting eof in input.
5034 (__copy_streambufs): Just use the latter.
5035 * src/streambuf.cc (__copy_streambufs_eof): Adjust specializations
5036 of __copy_streambufs.
5037 * include/bits/istream.tcc (operator>>(__streambuf_type*)): Use
5038 __copy_streambufs_eof instead.
5039 * include/std/std_streambuf.h: Adjust.
5040 * src/streambuf-inst.cc: Adjust.
5041 * config/abi/pre/gnu.ver: Export the new symbols.
5042 * testsuite/27_io/basic_istream/extractors_other/char/26181.cc: New.
5043 * testsuite/27_io/basic_istream/extractors_other/wchar_t/26181.cc:
5044 Likewise.
5045 * testsuite/27_io/basic_istream/extractors_other/char/1.cc: Adjust.
5046 * testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc:
5047 Likewise.
5048
5049 2006-02-08 Benjamin Kosnik <bkoz@redhat.com>
5050
5051 PR libstdc++/26142
5052 * include/debug/debug.h: Move debug alias inside namespace std,
5053 same with namespace __gnu_cxx. Add top-level __gnu_debug
5054 namespace.
5055 * include/debug/hash_multimap.h: Nest within __gnu_cxx, not
5056 std. Also, change nesting namespace name from __gnu_debug_def to
5057 __gnu_debug.
5058 * include/debug/hash_map.h: Same.
5059 * include/debug/hash_multiset.h: Same.
5060 * include/debug/hash_set.h: Same.
5061 * docs/html/debug.html: Same.
5062 * testsuite/23_containers/vector/26412.cc: New.
5063 * testsuite/23_containers/vector/invalidation/1.cc: Correct
5064 qualifications for debug namespace change.
5065 * testsuite/23_containers/vector/invalidation/2.cc: Same.
5066 * testsuite/23_containers/vector/invalidation/3.cc: Same.
5067 * testsuite/23_containers/vector/invalidation/4.cc: Same.
5068 * testsuite/23_containers/deque/invalidation/1.cc: Same.
5069 * testsuite/23_containers/deque/invalidation/2.cc: Same.
5070 * testsuite/23_containers/deque/invalidation/3.cc: Same.
5071 * testsuite/23_containers/deque/invalidation/4.cc: Same.
5072 * testsuite/23_containers/multiset/invalidation/1.cc: Same.
5073 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
5074 * testsuite/23_containers/multimap/invalidation/1.cc: Same.
5075 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
5076 * testsuite/23_containers/bitset/invalidation/1.cc: Same.
5077 * testsuite/23_containers/bitset/cons/16020.cc: Same.
5078 * testsuite/23_containers/bitset/operations/13838.cc: Same.
5079 * testsuite/23_containers/list/invalidation/1.cc: Same.
5080 * testsuite/23_containers/list/invalidation/2.cc: Same.
5081 * testsuite/23_containers/list/invalidation/3.cc: Same.
5082 * testsuite/23_containers/list/invalidation/4.cc: Same.
5083 * testsuite/23_containers/set/invalidation/1.cc: Same.
5084 * testsuite/23_containers/set/invalidation/2.cc: Same.
5085 * testsuite/23_containers/map/invalidation/1.cc: Same.
5086 * testsuite/23_containers/map/invalidation/2.cc: Same.
5087 * testsuite/23_containers/map/modifiers/insert/16813.cc: Same.
5088 * testsuite/21_strings/basic_string/2.cc: Same.
5089
5090 2006-02-08 Paolo Carlini <pcarlini@suse.de>
5091
5092 PR libstdc++/26133 (DR 241, [WP])
5093 * include/bits/stl_algo.h (__unique_copy(,,, forward_iterator_tag,
5094 output_iterator_tag), __unique_copy(,,, input_iterator_tag,
5095 output_iterator_tag), __unique_copy(,,, input_iterator_tag,
5096 forward_iterator_tag), and predicated counterparts): Add.
5097 (__unique_copy(,,, output_iterator_tag), __unique_copy(,,,
5098 forward_iterator_tag), and predicated counterparts): Remove.
5099 (unique_copy): Adjust, dispatch to the three helpers above.
5100 * testsuite/25_algorithms/unique_copy/2.cc: New.
5101 * testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
5102 * testsuite/25_algorithms/unique_copy/3.cc: Likewise.
5103 * docs/html/ext/howto.html: Add an entry for DR 241.
5104
5105 * testsuite/25_algorithms/unique_copy/1.cc: Minor cosmetic changes.
5106
5107 2006-02-07 Jakub Jelinek <jakub@redhat.com>
5108 Benjamin Kosnik <bkoz@redhat.com>
5109
5110 * configure.ac (_GLIBCXX_LONG_DOUBLE_COMPAT): New check.
5111 If true, set also port_specific_symbol_files and create
5112 as_symver_specs.
5113 (GLIBCXX_LDBL_COMPAT): New GLIBCXX_CONDITIONAL.
5114 * configure: Rebuilt.
5115 * config.h.in: Rebuilt.
5116 * config/os/gnu-linux/ldbl-extra.ver: New file.
5117 * config/abi/pre/gnu.ver: Make sure no __float128 symbols are
5118 exported.
5119 * include/bits/c++config (_GLIBCXX_LONG_DOUBLE_COMPAT,
5120 _GLIBCXX_LDBL_NAMESPACE, _GLIBCXX_BEGIN_LDBL_NAMESPACE,
5121 _GLIBCXX_END_LDBL_NAMESPACE): Define.
5122 * include/bits/localefwd.h: Use them to conditionally scope facets.
5123 * include/bits/locale_facets.h: Surround std::{money,num}_{get,put}
5124 with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
5125 Surround std::{money,num}_{get,put}
5126 with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
5127 [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::money_get): Add __do_get method.
5128 [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::money_put): Add __do_put method.
5129 [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::num_get): Add __do_get method.
5130 [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::num_put): Add __do_put method.
5131 * include/bits/locale_facets.tcc: Surround std::{money,num}_{get,put}
5132 with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
5133 (std::money_get::__do_get, std::money_put::__do_put,
5134 std::num_get::__do_get, std::num_put::__do_put): New
5135 specializations.
5136 * include/Makefile.am: Conditionally define
5137 _GLIBCXX_LONG_DOUBLE_COMPAT in c++config.
5138 * include/Makefile.in: Regenerate.
5139 * src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT] (_GLIBCXX_LOC_ID,
5140 _GLIBCXX_SYNC_ID): Define, use them.
5141 * src/compatibility-ldbl.cc: New file.
5142 * src/complex_io.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Add compatibility
5143 symbols.
5144 * src/limits.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
5145 * src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
5146 * src/locale-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
5147 * src/locale-misc-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
5148 * src/istream-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
5149 * src/ostream-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
5150 * src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
5151 * src/wlocale-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
5152 * src/compatibility.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
5153 * config/locale/generic/c_locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]:
5154 Likewise.
5155 * config/locale/gnu/c_locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]:
5156 Likewise.
5157 * src/Makefile.am (libstdc++-symbol.ver): Append instead of
5158 insert in the middle if port specific symbol file requests it.
5159 (ldbl_compat_sources): New variable.
5160 (sources): Use it.
5161 (compatibility-ldbl.lo, compatibility-ldbl.o): New rules.
5162 * src/Makefile.in: Rebuilt.
5163 * testsuite/testsuite_abi.cc: Recognize GLIBCXX_LDBL_3.4,
5164 GLIBCXX_LDBL_3.4.7, CXXABI_LDBL_1.3.
5165
5166 2006-02-07 Paolo Carlini <pcarlini@suse.de>
5167
5168 * include/tr1/hashtable: Trivial formatting fixes.
5169
5170 2006-02-07 Paolo Carlini <pcarlini@suse.de>
5171 Zak Kipling <zak@transversal.com>
5172
5173 PR libstdc++/26127
5174 * include/tr1/hashtable (hashtable<>::key_equal): Define.
5175 (hashtable<>::bucket, rehash_base<>::max_load_factor): Fix.
5176 * testsuite/tr1/6_containers/unordered/hashtable/26127.cc: New.
5177
5178 2006-02-07 Paolo Carlini <pcarlini@suse.de>
5179
5180 * include/tr1/cmath: New.
5181 * include/tr1/cstdlib: Likewise.
5182 * include/tr1/ctime: Likewise.
5183 * include/tr1/math.h: Likewise.
5184 * include/tr1/stdlib.h: Likewise.
5185 * include/Makefile.am: Add.
5186 * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <math.h> checks.
5187 * testsuite/tr1/8_c_compatibility/cmath/functions.cc: New.
5188 * testsuite/tr1/8_c_compatibility/cstdlib/functions.cc: Likewise.
5189 * testsuite/tr1/8_c_compatibility/cstdlib/types.cc: Likewise.
5190 * testsuite/tr1/headers.cc: Update.
5191
5192 * include/tr1/cinttypes: Do not provide abs and div, conflicting
5193 with the above overloads for _Longlong types.
5194 * include/tr1/inttypes.h: Adjust.
5195 * testsuite/tr1/8_c_compatibility/cinttypes/functions.cc: Adjust.
5196
5197 * docs/html/ext/tr1.html: Update.
5198
5199 * testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Tweak.
5200
5201 * include/Makefile.in: Regenerate.
5202 * config.h.in: Likewise.
5203 * configure: Likewise.
5204
5205 2006-02-07 Mark Mitchell <mark@codesourcery.com>
5206
5207 * testsuite/testsuite_tr1.h (test_property): New function.
5208 * testsuite/tr1/4_metaprogramming/type_properties/extent/extent.cc
5209 (test01)
5210
5211 2006-02-05 Paolo Carlini <pcarlini@suse.de>
5212
5213 * include/tr1/cstdio: New.
5214 * include/tr1/stdio.h: Likewise.
5215 * include/Makefile.am: Add.
5216 * testsuite/tr1/8_c_compatibility/cstdio/functions.cc: New.
5217 * testsuite/tr1/headers.cc: Update.
5218 * docs/html/ext/tr1.html: Update.
5219
5220 * include/tr1/cwchar: Simplify, use _GLIBCXX_USE_C99, consistently
5221 with the facilities in std::.
5222 * include/tr1/cwctype: Likewise.
5223 * testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Tweak.
5224 * testsuite/tr1/8_c_compatibility/cwctype/functions.cc: Likewise.
5225 * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Remove <wchar.h> and
5226 <wctype.h> checks.
5227
5228 * include/Makefile.in: Regenerate.
5229 * config.h.in: Likewise.
5230 * configure: Likewise.
5231
5232 2006-02-04 Paolo Carlini <pcarlini@suse.de>
5233
5234 * testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Fix.
5235
5236 2006-02-04 Paolo Carlini <pcarlini@suse.de>
5237
5238 * testsuite/27_io/basic_stringbuf/in_avail/char/21955.cc: Avoid
5239 warning on string constant.
5240
5241 2006-02-03 Paolo Carlini <pcarlini@suse.de>
5242
5243 * include/tr1/cwchar: New.
5244 * include/tr1/cwctype: Likewise.
5245 * include/tr1/wchar.h: Likewise.
5246 * include/tr1/wctype.h: Likewise.
5247 * include/Makefile.am: Add.
5248 * testsuite/tr1/8_c_compatibility/cwchar/functions.cc: New.
5249 * testsuite/tr1/8_c_compatibility/cwctype/functions.cc: Likewise.
5250 * testsuite/tr1/headers.cc: Update.
5251 * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <wchar.h> and
5252 <wctype.h> checks.
5253 * docs/html/ext/tr1.html: Update.
5254 * include/Makefile.in: Regenerate.
5255 * config.h.in: Likewise.
5256 * configure: Likewise.
5257
5258 * testsuite/tr1/8_c_compatibility/cctype/functions.cc: Cosmetic tweak.
5259
5260 2006-02-02 Paolo Carlini <pcarlini@suse.de>
5261
5262 * include/tr1/cfloat: New.
5263 * include/tr1/climits: Likewise.
5264 * include/tr1/cstdarg: Likewise.
5265 * include/tr1/ctype.h: Likewise.
5266 * include/tr1/fenv.h: Likewise.
5267 * include/tr1/float.h: Likewise.
5268 * include/tr1/inttypes.h: Likewise.
5269 * include/tr1/limits.h: Likewise.
5270 * include/tr1/stdint.h: Likewise.
5271 * include/tr1/stdarg.h: Likewise.
5272 * include/Makefile.am: Add.
5273 * include/Makefile.in: Regenerate.
5274 * docs/html/ext/tr1.html: Update.
5275 * testsuite/tr1/headers.cc: New.
5276
5277 * include/tr1/cctype: Include <cctype> instead.
5278
5279 2006-01-31 Paolo Carlini <pcarlini@suse.de>
5280
5281 PR libstdc++/21554
5282 * include/tr1/array (array<>::_M_instance): Maximally align.
5283 * testsuite/ext/array_allocator/2.cc: Do not xfail for powerpc.
5284
5285 2006-01-31 Ed Smith-Rowland <3dw4rd@verizon.net>
5286
5287 * docs/html/faq/index.html ([1.0]): Replace references to CVS
5288 with appropriate references to SVN.
5289 ([1.3]): Likewise.
5290 ([1.4]): Likewise.
5291 ([2.3]): Likewise.
5292 * docs/html/faq/index.txt: Regenerated.
5293
5294 2006-01-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
5295
5296 * include/bits/valarray_array.h (__valarray_default_construct):
5297 Replace use __is_fundamental with __is_pod.
5298 (__valarray_fill_construct): Likewise.
5299 (__valarray_copy_construct): Likewise.
5300 (__valarray_destroy_elements): Likewise.
5301 (__valarray_copy): Likewise.
5302
5303 2006-01-30 Paolo Carlini <pcarlini@suse.de>
5304
5305 * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Do the <inttypes.h>
5306 checks only if the <stdint.h> checks are successful.
5307 * configure: Regenerate.
5308
5309 2006-01-30 Paolo Carlini <pcarlini@suse.de>
5310
5311 * include/tr1/cinttypes: New.
5312 * include/Makefile.am: Add.
5313 * testsuite/tr1/8_c_compatibility/cinttypes/functions: New.
5314 * testsuite/tr1/8_c_compatibility/cinttypes/types: Likewise.
5315 * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <inttypes.h> checks.
5316 * docs/html/ext/tr1.html: Update.
5317 * include/Makefile.in: Regenerate.
5318 * config.h.in: Likewise.
5319 * configure: Likewise.
5320
5321 * testsuite/tr1/8_c_compatibility/cfenv/functions.cc: Cosmetic tweak.
5322 * testsuite/tr1/8_c_compatibility/cfenv/types.cc: Likewise.
5323
5324 * testsuite/tr1/8_c_compatibility/cstdint/types.cc: Fix, check in
5325 std::tr1.
5326
5327 2006-01-29 Paolo Carlini <pcarlini@suse.de>
5328
5329 * include/tr1/cstdint: New.
5330 * include/Makefile.am: Add.
5331 * testsuite/tr1/8_c_compatibility/cstdint/types: New.
5332 * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <stdint.h> checks.
5333 * docs/html/ext/tr1.html: Update.
5334 * include/Makefile.in: Regenerate.
5335 * config.h.in: Likewise.
5336 * configure: Likewise.
5337
5338 * testsuite/tr1/8_c_compatibility/cfenv/types.cc: Cosmetic tweak.
5339
5340 2006-01-29 Paolo Carlini <pcarlini@suse.de>
5341
5342 PR libstdc++/26006
5343 * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Tighten <ctype.h> and
5344 <fenv.h> checks.
5345 * configure: Regenerate.
5346
5347 2006-01-26 Paolo Carlini <pcarlini@suse.de>
5348
5349 * include/std/std_bitset.h (bitset<>::_M_copy_to_string):
5350 Call the internal _Unchecked_set(size_t) instead of set.
5351
5352 2006-01-26 Paolo Carlini <pcarlini@suse.de>
5353
5354 * docs/html/install.html ([Tools you will need beforehand]):
5355 Clarify that the de_DE locale is used by configure; clarify
5356 that missing localedata leads to skipped tests, not fails.
5357
5358 2006-01-26 Paolo Carlini <pcarlini@suse.de>
5359
5360 * include/tr1/cfenv: New.
5361 * include/Makefile.am: Add.
5362 * testsuite/tr1/8_c_compatibility/cfenv/functions.cc: New.
5363 * testsuite/tr1/8_c_compatibility/cfenv/types.cc: Likewise.
5364 * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <fenv.h> checks.
5365 * docs/html/ext/tr1.html: Update; add note.
5366 * include/Makefile.in: Regenerate.
5367 * config.h.in: Likewise.
5368 * configure: Likewise.
5369
5370 * testsuite/tr1/8_c_compatibility/complex/functions.cc: Tweak.
5371 * testsuite/tr1/8_c_compatibility/cctype/functions.cc: Likewise.
5372
5373 * docs/html/faq/index.html: Fix link to tr1.html text; fix
5374 formatting.
5375
5376 2006-01-25 Paolo Carlini <pcarlini@suse.de>
5377
5378 * include/tr1/cctype: New.
5379 * include/Makefile.am: Add.
5380 * testsuite/tr1/8_c_compatibility/cctype/functions.cc: New.
5381 * include/Makefile.in: Regenerate.
5382
5383 * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): New, check for C99
5384 support to TR1, Chapter 8.
5385 * configure.ac: Use it.
5386 * include/tr1/complex: Adjust.
5387 * config.h.in: Regenerate.
5388 * configure: Likewise.
5389
5390 2006-01-25 Benjamin Kosnik <bkoz@redhat.com>
5391
5392 * docs/html/configopts.html: Tweak docs.
5393
5394 * libsupc++/eh_personality.cc: Fix typos.
5395
5396 2006-01-24 Paolo Carlini <pcarlini@suse.de>
5397
5398 PR libstdc++/25649
5399 * include/std/std_istream.h (operator>>(short&), operator>>(int&)):
5400 Move out of line...
5401 * include/bits/istream.tcc: ... here.
5402 * include/std/std_ostream.h (operator<<(short), operator<<(int)):
5403 Move out of line...
5404 * include/bits/ostream.tcc: ... here.
5405
5406 2006-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
5407
5408 * docs/html/faq/index.html ([5.2]): Mention TR1 and point to
5409 paragraph [5.5], describing it.
5410 ([5.5]): New.
5411 * docs/html/ext/tr1.html: New.
5412
5413 2006-01-20 Benjamin Kosnik <bkoz@redhat.com>
5414
5415 * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Verbose ld version
5416 reporting. Disable --gc-sections for old binutils, by version.
5417 * configure: Regenerate.
5418
5419 2006-01-20 Joseph S. Myers <joseph@codesourcery.com>
5420
5421 PR libstdc++/25524
5422 * include/Makefile.am: Install host-specific headers in multilib
5423 subdirectory.
5424 * include/Makefile.in: Regenerate.
5425
5426 2006-01-19 Paolo Carlini <pcarlini@suse.de>
5427
5428 Implement list::splice (and merge) bits of N1599
5429 * include/bits/stl_list.h (list<>::_M_check_equal_allocators): New.
5430 (list<>::splice(iterator, list&), splice(iterator, list&, iterator),
5431 splice(iterator, list&, iterator, iterator)): Use it.
5432 * include/bits/list.tcc (list<>::merge(list&), merge(list&,
5433 _StrictWeakOrdering)): Likewise.
5434 * testsuite/23_containers/list/operators/5.cc: New.
5435
5436 2006-01-19 H.J. Lu <hongjiu.lu@intel.com>
5437
5438 PR libstdc++/25797
5439 * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Remove -Werror
5440 from CFLAGS. Check if linker really supports --gc-sections.
5441 * configure: Regenerated.
5442
5443 2006-01-18 Paul Brook <paul@codesourcery.com>
5444
5445 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Use std::abort.
5446
5447 2006-01-18 Paolo Carlini <pcarlini@suse.de>
5448
5449 * include/bits/allocator.h: Include <bits/cpp_type_traits.h>.
5450
5451 2006-01-18 Perry Smith <pedz@easesoftware.net>
5452
5453 PR libstdc++/25823
5454 PR libstdc++/25824
5455 * libsupc++/eh_alloc.cc: Fix return type of memset declaration.
5456 * libsupc++/eh_globals.cc: If !_GLIBCXX_HOSTED declare malloc and free.
5457
5458 2006-01-18 Paolo Carlini <pcarlini@suse.de>
5459
5460 * include/ext/pb_assoc/detail/value_type_adapter/
5461 value_type_adapter.hpp: Include <tr1/type_traits>.
5462 * include/ext/pb_assoc/detail/value_type_adapter/
5463 it_value_type_traits.hpp (it_value_type_traits_<>::value_type_holder):
5464 Use tr1::aligned_storage and tr1::alignment_of.
5465 (it_value_type_traits_<>::buf_t): Remove.
5466 (it_value_type_traits_<>::make_valid, recast): Adjust.
5467
5468 2006-01-16 Benjamin Kosnik <bkoz@redhat.com>
5469
5470 PR libstdc++/25797
5471 * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Add -Werror to
5472 CFLAGS for --gc-sections test. Correct compile test.
5473 * configure: Regenerated.
5474
5475 2006-01-15 Paolo Carlini <pcarlini@suse.de>
5476 Gabriel Dos Reis <gdr@integrable-solutions.net>
5477
5478 PR libstdc++/25626
5479 * include/std/std_valarray.h (valarray(const slice_array<>&),
5480 valarray(const gslice_array<>&), valarray(const mask_array<>&),
5481 valarray(const indirect_array<>&), valarray(const _Expr<>&)):
5482 Forward to __valarray_copy_construct, not __valarray_copy.
5483 * include/bits/valarray_array.h
5484 (__valarray_copy_construct(_Array<>, _Array<>, _Array<>, size_t),
5485 __valarray_copy_construct(_Array<>, size_t, size_t, _Array<>)):
5486 New.
5487
5488 2006-01-15 Paolo Carlini <pcarlini@suse.de>
5489
5490 * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc:
5491 Fix norm test, use casts everywhere.
5492
5493 2006-01-14 Paolo Carlini <pcarlini@suse.de>
5494
5495 * testsuite/testsuite_tr1.h: Add missing include; use std::__are_same.
5496
5497 2006-01-14 Paolo Carlini <pcarlini@suse.de>
5498
5499 * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc:
5500 Fix wrong test (don't pick by mistake the (const complex<>&, int)
5501 overload); add some.
5502
5503 2006-01-13 Paolo Carlini <pcarlini@suse.de>
5504 Howard Hinnant <hhinnant@apple.com>
5505
5506 * include/tr1/complex (arg, conj, imag, norm, polar, pow, real):
5507 Add, implementing TR1, 8.1.9.
5508 (__promote_2): New.
5509 * include/tr1/common.h: New, provides __promote, __promote_2.
5510 * include/Makefile.am: Add.
5511 * include/Makefile.in: Regenerate.
5512 * testsuite/testsuite_tr1.h (check_ret_type): New.
5513 * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: New.
5514 * testsuite/tr1/8_c_compatibility/complex/overloads_float.cc: New.
5515
5516 2006-01-12 Benjamin Kosnik <bkoz@redhat.com>
5517
5518 * acinclude.m4(GLIBCXX_CHECK_LINKER_FEATURES): Enable
5519 --gc-sections in more cases.
5520 * configure: Regenerate.
5521 * scripts/testsuite_flags.in: Remove SECTION_LDFLAGS.
5522 * scripts/testsuite_flags.in (cxxldflags): New.
5523 * testsuite/lib/libstdc++.exp (v3_target_compile): Add cxxldflags.
5524 (libstdc++_init ): Same.
5525
5526 2006-01-12 Jan Beulich <jbeulich@novell.com>
5527
5528 * crossconfig.m4: Add AC_DEFINE-s for HAVE_HYPOT, HAVE_ISINF, and
5529 HAVE_ISNAN for *-*-netware*.
5530 * configure: Refresh.
5531
5532 2006-01-11 Benjamin Kosnik <bkoz@redhat.com>
5533
5534 * acinclude.m4(GLIBCXX_CHECK_LINKER_FEATURES): Use -Wl,-z,relro if
5535 possible.
5536 * configure: Regenerate.
5537
5538 2006-01-10 Paolo Carlini <pcarlini@suse.de>
5539
5540 * include/tr1/complex: New file, hosts the additions to header
5541 <complex> described in TR1, Chapter 8 [tr.c99].
5542 * include/Makefile.am: Add.
5543 * include/Makefile.in: Regenerate.
5544 * testsuite/tr1/8_c_compatibility/complex/functions.cc: New.
5545
5546 2006-01-09 Paolo Carlini <pcarlini@suse.de>
5547
5548 PR libstdc++/25658
5549 * testsuite/23_containers/deque/cons/assign/1.cc: Divide
5550 sizes by 10.
5551
5552 2006-01-08 Paolo Carlini <pcarlini@suse.de>
5553
5554 PR libstdc++/22102 (insert as close to hint as possible)
5555 * include/bits/stl_tree.h (_Rb_tree<>::_M_insert_lower,
5556 _M_insert_equal_lower): New.
5557 (_M_insert_equal(iterator, const _Val&),
5558 _M_insert_equal(const_iterator, const _Val&)): Use the above.
5559 * docs/html/ext/howto.html: Add an entry for DR 233.
5560 * testsuite/23_containers/multiset/modifiers/insert/22102.cc: New.
5561 * testsuite/23_containers/multimap/modifiers/insert/22102.cc: New.
5562
5563 * testsuite/23_containers/set/insert/: Move...
5564 * testsuite/23_containers/set/modifiers/insert/: ...here.
5565 * testsuite/23_containers/map/insert/: Move...
5566 * testsuite/23_containers/map/modifiers/insert/: ...here.
5567 * testsuite/23_containers/multiset/insert/: Move...
5568 * testsuite/23_containers/multiset/modifiers/insert/: ...here.
5569
5570 2006-01-06 Paolo Carlini <pcarlini@suse.de>
5571
5572 * include/bits/stl_tree.h (_Rb_tree<>::insert_unique): Rename
5573 to _M_insert_unique.
5574 (_Rb_tree<>::insert_equal): Rename to _M_insert_equal.
5575 * include/bits/stl_map.h (class map<>): Update callers.
5576 * include/bits/stl_set.h (class set<>): Likewise.
5577 * include/bits/stl_multimap.h (class multimap<>): Likewise.
5578 * include/bits/stl_multiset.h (class multiset<>): Likewise.
5579
5580 2006-01-06 Paolo Carlini <pcarlini@suse.de>
5581
5582 * include/bits/stl_bvector.h (vector<bool>::erase(iterator,
5583 iterator)): Just use _M_erase_at_end.
5584
5585 2006-01-06 Paolo Carlini <pcarlini@suse.de>
5586
5587 * include/bits/stl_bvector.h (class vector<bool>): Move all the
5588 helpers under protected access mode, consistently with the primary
5589 vector template.
5590 (vector<bool>::_M_erase_at_end): Add.
5591 (erase(iterator, iterator), clear, resize, _M_fill_assign,
5592 _M_assign_aux): Use it.
5593 * testsuite/23_containers/vector/bool/modifiers/erase/1.cc: New.
5594
5595 2006-01-06 Paolo Carlini <pcarlini@suse.de>
5596
5597 Implement Option 3 of DR 431 for vector<bool>.
5598 * include/bits/stl_bvector.h (class _Bvector_base): Change to
5599 a struct, consistently with the primary vector template.
5600 (class vector<bool>): Adjust to protected inheritance, tidy
5601 typedefs.
5602 (_Bvector_base<>::_M_get_Bit_allocator): Add.
5603 (vector<bool>::vector(const vector&)): Use it.
5604 (_Bvector_base<>::get_allocator): Tidy.
5605 (vector<bool>::swap): Use __alloc_swap.
5606 * testsuite/23_containers/vector/bool/modifiers/swap/1.cc: New.
5607 * testsuite/23_containers/vector/bool/modifiers/swap/2.cc: New.
5608
5609 2006-01-05 Paolo Carlini <pcarlini@suse.de>
5610
5611 * testsuite/testsuite_hooks.h (test_tm(unsigned)): Change to
5612 take all the tm members.
5613 * testsuite/testsuite_hooks.cc (test_tm): Adjust.
5614 * testsuite/22_locale/time_put/put/wchar_t/10.cc: Update.
5615 * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
5616 * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
5617 * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
5618 * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
5619 * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
5620 * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
5621 * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
5622 * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
5623 * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
5624 * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
5625 * testsuite/22_locale/time_put/put/char/10.cc: Likewise.
5626 * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
5627 * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
5628 * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
5629 * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
5630 * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
5631 * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
5632 * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
5633 * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
5634 * testsuite/22_locale/time_put/put/char/9.cc: Likewise.
5635 * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
5636 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
5637 * testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
5638 * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
5639 * testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
5640 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
5641 * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
5642 * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
5643 * testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
5644 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
5645 * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
5646 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
5647 * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
5648 * testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
5649 * testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
5650 * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
5651 * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
5652 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
5653 * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
5654 * testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
5655 * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
5656 * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
5657 * testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
5658 * testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
5659 * testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
5660 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
5661 * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
5662 * testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
5663 * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
5664 * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
5665 * testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
5666 * testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
5667 * testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
5668
5669 2006-01-05 Paolo Carlini <pcarlini@suse.de>
5670
5671 * testsuite/testsuite_hooks.h (test_tm(unsigned)): New.
5672 * testsuite/testsuite_hooks.cc (test_tm(unsigned)): Define.
5673 * testsuite/22_locale/time_put/put/wchar_t/10.cc: Use it.
5674 * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
5675 * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
5676 * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
5677 * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
5678 * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
5679 * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
5680 * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
5681 * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
5682 * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
5683 * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
5684 * testsuite/22_locale/time_put/put/char/10.cc: Likewise.
5685 * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
5686 * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
5687 * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
5688 * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
5689 * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
5690 * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
5691 * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
5692 * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
5693 * testsuite/22_locale/time_put/put/char/9.cc: Likewise.
5694 * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
5695 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
5696 * testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
5697 * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
5698 * testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
5699 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
5700 * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
5701 * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
5702 * testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
5703 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
5704 * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
5705 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
5706 * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
5707 * testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
5708 * testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
5709 * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
5710 * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
5711 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
5712 * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
5713 * testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
5714 * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
5715 * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
5716 * testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
5717 * testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
5718 * testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
5719 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
5720 * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
5721 * testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
5722 * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
5723 * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
5724 * testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
5725 * testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
5726 * testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
5727
5728 2006-01-04 Paolo Carlini <pcarlini@suse.de>
5729
5730 * include/ext/sso_string_base.h (__sso_string_base<>::_M_dataplus):
5731 Use _CharT_alloc_type as base class.
5732 (_M_get_allocator, _M_swap, _M_create, _M_destroy): Adjust.
5733 * include/ext/vstring.h (get_allocator): Tidy.
5734
5735 2006-01-04 Paolo Carlini <pcarlini@suse.de>
5736
5737 Implement Option 3 of DR 431 for all the containers.
5738 * include/bits/allocator.h (struct __alloc_swap): Add, swaps
5739 allocators, optimized to nothing in case they are empty.
5740 * include/bits/stl_deque.h (deque<>::swap): Use it.
5741 * include/bits/stl_list.h (list<>::swap): Likewise.
5742 * include/bits/stl_tree.h (_Rb_tree<>::swap): Likewise.
5743 * include/bits/stl_vector.h (vector<>::swap): Likewise.
5744 * include/tr1/hashtable (hashtable<>::swap): Likewise.
5745 * include/ext/rc_string_base.h (__rc_string_base<>::_M_swap):
5746 Likewise.
5747 * include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
5748 Likewise.
5749 * include/ext/vstring_util.h (__vstring_utility<>::_Alloc_hider):
5750 Clean-up (now vstring uses the generic __alloc_swap facility).
5751 * include/tr1/unordered_map: Adjust includes.
5752 * include/tr1/unordered_set: Likewise.
5753 * docs/html/ext/howto.html: Add an entry for DR 431.
5754 * testsuite/23_containers/deque/modifiers/swap.cc: Move to...
5755 * testsuite/23_containers/deque/modifiers/swap/1.cc: ... here.
5756 * testsuite/23_containers/deque/modifiers/swap/2.cc: New.
5757 * testsuite/23_containers/deque/modifiers/swap/3.cc: New.
5758 * testsuite/23_containers/list/modifiers/swap.cc: Move to...
5759 * testsuite/23_containers/list/modifiers/swap/1.cc: ... here.
5760 * testsuite/23_containers/list/modifiers/swap/2.cc: New.
5761 * testsuite/23_containers/list/modifiers/swap/3.cc: New.
5762 * testsuite/23_containers/vector/modifiers/swap.cc: Move to...
5763 * testsuite/23_containers/vector/modifiers/swap/1.cc: ... here.
5764 * testsuite/23_containers/vector/modifiers/swap/2.cc: New.
5765 * testsuite/23_containers/vector/modifiers/swap/3.cc: New.
5766 * testsuite/23_containers/set/modifiers/swap.cc: Move to...
5767 * testsuite/23_containers/set/modifiers/swap/1.cc: ... here.
5768 * testsuite/23_containers/set/modifiers/swap/2.cc: New.
5769 * testsuite/23_containers/set/modifiers/swap/3.cc: New.
5770 * testsuite/23_containers/map/modifiers/swap.cc: Move to...
5771 * testsuite/23_containers/map/modifiers/swap/1.cc: ... here.
5772 * testsuite/23_containers/map/modifiers/swap/2.cc: New.
5773 * testsuite/23_containers/map/modifiers/swap/3.cc: New.
5774 * testsuite/23_containers/multiset/modifiers/swap.cc: Move to...
5775 * testsuite/23_containers/multiset/modifiers/swap/1.cc: ... here.
5776 * testsuite/23_containers/multiset/modifiers/swap/2.cc: New.
5777 * testsuite/23_containers/multiset/modifiers/swap/3.cc: New.
5778 * testsuite/23_containers/multimap/modifiers/swap.cc: Move to...
5779 * testsuite/23_containers/multimap/modifiers/swap/1.cc: ... here.
5780 * testsuite/23_containers/multimap/modifiers/swap/2.cc: New.
5781 * testsuite/23_containers/multimap/modifiers/swap/3.cc: New.
5782 * testsuite/tr1/6_containers/unordered/swap/unordered_set/1.cc: New.
5783 * testsuite/tr1/6_containers/unordered/swap/unordered_set/2.cc: New.
5784 * testsuite/tr1/6_containers/unordered/swap/unordered_map/1.cc: New.
5785 * testsuite/tr1/6_containers/unordered/swap/unordered_map/2.cc: New.
5786 * testsuite/tr1/6_containers/unordered/swap/unordered_multiset/1.cc: New.
5787 * testsuite/tr1/6_containers/unordered/swap/unordered_multiset/2.cc: New.
5788 * testsuite/tr1/6_containers/unordered/swap/unordered_multimap/1.cc: New.
5789 * testsuite/tr1/6_containers/unordered/swap/unordered_multimap/2.cc: New.
5790
5791 2006-01-03 Paolo Carlini <pcarlini@suse.de>
5792
5793 * include/bits/stl_list.h (_List_base<>::_M_get_Node_allocator): Add.
5794 (_M_get_Tp_allocator, get_allocator): Tidy.
5795 (list<>::list(const list&), insert(iterator, size_type, const
5796 value_type&), insert(iterator, _InputIterator, _InputIterator)):
5797 Use _M_get_Node_allocator.
5798 * include/bits/stl_tree.h (_Rb_tree<>::_M_get_Node_allocator()): Add.
5799 (_Rb_tree(const _Rb_tree<>&): Use it.
5800 * include/bits/stl_deque.h (_Deque_base<>::_M_get_map_allocator,
5801 get_allocator): Tidy.
5802 * include/bits/stl_vector.h (_Vector_base<>::get_allocator): Tidy.
5803 * testsuite/23_containers/map/operators/1_neg.cc: Adjust dg-error
5804 line numbers.
5805 * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
5806
5807 * testsuite/testsuite_allocator.h (uneq_allocator<>::swap): Fix.
5808
5809 * testsuite/testsuite_allocator.h (class uneq_allocator): A simple
5810 non-empty testing allocator which can be endowed of a "personality"
5811 at construction time.
5812
5813 2006-01-03 Paolo Carlini <pcarlini@suse.de>
5814
5815 * testsuite/27_io/basic_stringstream/str/char/1.cc: Initialize vars.
5816 * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
5817 * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise, tidy.
5818 * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
5819
5820 2006-01-02 Mark Mitchell <mark@codesourcery.com>
5821
5822 * src/Makefile.am (LTLDFLAGS): New variable.
5823 (CXXLINK): Use LTLDFLAGS.
5824 * src/Makefile.in: Regenerated.
5825 * libsupc++/Makefile.am (LTLDFLAGS): New variable.
5826 (CXXLINK): Use LTLDFLAGS.
5827 * libsupc++/Makefile.in: Regenerated.
5828
5829 2006-01-02 Paolo Carlini <pcarlini@suse.de>
5830
5831 PR libstdc++/24645
5832 * include/std/std_istream.h (basic_istream<>::_M_extract): New.
5833 (operator>>(bool&), operator>>(short&), operator>>(unsigned short&),
5834 operator>>(int&), operator>>(unsigned int&), operator>>(long&),
5835 operator>>(unsigned long&), operator>>(long long&), operator>>
5836 (unsigned long long&), operator>>(float&), operator>>(double&),
5837 operator>>(long double&), operator>>(void*&)): Use it.
5838 * include/bits/istream.tcc (basic_istream<>::_M_extract): Define.
5839 * include/std/std_ostream.h (basic_ostream<>::_M_insert): New.
5840 (operator<<(long), operator<<(unsigned long), operator<<(bool),
5841 operator<<(short), operator<<(unsigned short), operator<<(int),
5842 operator<<(unsigned int), operator<<(long long), operator<<
5843 (unsigned long long), operator<<(double), operator<<(float),
5844 operator<<(long double), operator<<(const void*): Use it.
5845 * include/bits/ostream.tcc (basic_ostream<>::_M_insert): Define.
5846 * src/istream-inst.cc: Add _M_extract instantiations.
5847 * src/ostream-inst.cc: Add _M_insert instantiations.
5848 * config/abi/pre/gnu.ver: Export the new symbols @GLIBCXX_3.4.7;
5849 detail existing @GLIBCXX_3.4 exports of basic_ostream, num_put,
5850 money_put, etc., symbols to avoid exporting _M_insert symbols
5851 @GLIBCXX_3.4.
5852 \f
5853 Copyright (C) 2006 Free Software Foundation, Inc.
5854
5855 Copying and distribution of this file, with or without modification,
5856 are permitted in any medium without royalty provided the copyright
5857 notice and this notice are preserved.