1 2005-12-28 Paolo Carlini <pcarlini@suse.de>
3 * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 40.
5 2005-12-28 Chris Jefferson <chris@bubblescope.net>
7 * testsuite/testsuite_allocator.h (check_deallocate_null): Return true.
9 2005-12-28 Paolo Carlini <pcarlini@suse.de>
11 * include/std/std_bitset.h (bitset<>::_M_copy_from_string,
12 bitset<>::_M_copy_to_string, bitset<>::operator>>): Reverse loop.
14 * testsuite/25_algorithms/heap/heap.cc (test01): Always enable
16 * testsuite/18_support/numeric_limits/specialization.cc: Avoid
17 unused parameter warning.
18 * testsuite/18_support/numeric_limits/traps.cc: Acoid unused variable
20 * testsuite/ext/malloc_allocator/deallocate_global.cc: Fix format
22 * testsuite/ext/malloc_allocator/deallocate_local.cc: Likewise.
23 * testsuite/ext/array_allocator/2.cc: Remove unused variable.
24 * testsuite/tr1/3_function_objects/mem_fn.cc: Avoid unused variable
26 * testsuite/tr1/6_containers/unordered/instantiate/set.cc: Just
28 * testsuite/tr1/6_containers/unordered/instantiate/map.cc: Likewise.
29 * testsuite/tr1/6_containers/unordered/instantiate/hash.cc: Likewise.
30 * testsuite/tr1/6_containers/unordered/instantiate/multiset.cc:
32 * testsuite/tr1/6_containers/unordered/instantiate/multimap.cc:
34 * testsuite/tr1/6_containers/array/cons/aggregate_initialization.cc:
35 Avoid unused variable warnings.
36 * testsuite/tr1/6_containers/array/requirements/zero_sized_arrays.cc:
38 * testsuite/thread/18185.cc: Likewise.
39 * testsuite/27_io/ios_base/storage/11584.cc: Likewise; avoid comparison
40 between signed and unsigned warning.
41 * testsuite/27_io/types/1.cc: Avoid unused variable warnings.
42 * testsuite/testsuite_allocator.h (check_new): Likewise.
43 (check_deallocate_null): Adjust return type.
44 * testsuite/testsuite_hooks.h (bitmask_operators): Avoid unused
46 * testsuite/21_strings/c_strings/wchar_t/24559.cc: Avoid unused
49 2005-12-28 Chris Jefferson <chris@bubblescope.net>
51 * include/std/std_bitset.h (bitset<0>::set, bitset<0>::reset,
52 bitset<0>::flip, bitset<0>::test): Add inline specializations for
55 * testsuite/tr1/6_containers/unordered/insert/multiset_range.cc
56 (test01): Add static cast.
57 * testsuite/tr1/6_containers/unordered/insert/set_range.cc
59 * testsuite/testsuite_hooks.h (operator==(NonDefaultConstructible,
60 NonDefaultConstructible), operator<(NonDefaultConstructible,
61 NonDefaultConstrictible)): Avoid unused parameter warning.
63 2005-12-26 Chris Jefferson <chris@bubblescope.net>
65 * include/ext/mt_allocator.h (__mt_alloc::__mt_alloc): Remove
66 name of unused parameter.
67 * include/bits/stream_iterator.h (istream_iterator::istream_iterator):
69 * include/debug/functions.h (__check_valid_range): Add
70 __attribute__((unused)).
71 * include/tr1/hashtable (hashtable::end): Remove name of unused
73 * include/tr1/tuple_iterate.h (tuple::tuple): Likewise.
74 (tuple::operator=): Add __attribute__((unused)).
75 * include/tr1/functional (Fnv_hash<4>::hash): Add static_cast.
76 (Fnv_hash<8>::hash): Likewise.
78 * testsuite/25_algorithms/iter_swap/20577.cc (swap): Remove name of
80 * testsuite/25_algorithms/unique_copy/check_type.cc (S2::S2,X2::X2):
82 * testsuite/22_locale/ctype/narrow/char/19955.cc (do_narrow): Likewise.
83 * testsuite/22_locale/ctype/is/char/9858.cc (Derived::do_is,
84 Derived::do_scan_is, Derived::do_scan_not, Derived2::do_is,
85 Derived2::do_scan_is, Derived2::do_scan_not): Likewise.
86 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc (TP::do_put):
88 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc (TP::do_put):
90 * testsuite/22_locale/time_put/put/char/12439_1.cc (TP::do_put):
92 * testsuite/22_locale/time_put/put/char/12439_3.cc (TP::do_put):
94 * testsuite/testsuite_io.h (fail_num_get::do_get, fail_num_put::do_put):
96 * testsuite/25_algorithms/find/17441.cc (find): Likewise.
97 * testsuite/23_containers/vector/cons/clear_allocator.cc
98 (clear_alloc::clear_alloc): Likewise.
99 * testsuite/23_containers/vector/bool/clear_allocator.cc
100 (clear_alloc::clear_alloc): Likewise.
101 * testsuite/23_containers/list/cons/clear_allocator.cc
102 (clear_alloc::clear_alloc): Likewise.
103 * testsuite/23_containers/set/modifiers/16728.cc (test_container):
105 * testsuite/27_io/basic_ios/cons/char/3.cc (char_traits::to_char_type,
106 to_int_type): Likewise.
107 * testsuite/27_io/basic_filebuf/imbue/12206.cc (codecvt::do_out, do_in,
108 do_unshift, do_length): Likewise.
109 * testsuite/21_strings/basic_string/capacity/1.cc
110 (operator==(A<T>,A<T>), operator<(A<T>,A<T>),
111 char_traits::to_char_type, char_traits::to_int_type): Likewise
112 * testsuite/testsuite_character.h (ctype::do_is, ctype::do_scan_is,
113 ctype::do_scan_not, do_toupper, do_tolower): Likewise.
114 * testsuite/25_algorithms/replace_copy/check_type.cc (Z::operator=):
115 Add missing return statement.
116 * testsuite/25_algorithms/replace_copy_if/check_type.cc (Z::operator=):
118 * testsuite/testsuite_iterators.h (output_iterator_wrapper::operator=,
119 random_access_iterator_wrapper::operator==): Likewise.
120 * testsuite/20_util/functional/binders/1.cc (s::f_int_int_const,
121 s::f_int_int, s::f_int_void_const, s::f_int_void): Likewise.
122 * testsuite/27_io/types/1.cc (test01): Likewise.
123 * testsuite/27_io/basic_ostream/write/wchar_t/1.cc (test01): Likewise.
124 * testsuite/27_io/basic_ostream/write/char/1.cc (test01): Likewise.
125 * testsuite/21_strings/c_strings/wchar_t/24559.cc (main): Likewise.
126 * testsuite/27_io/basic_istream/ignore/wchar_t/2.cc (check): Add static
128 * testsuite/27_io/basic_istream/ignore/char/2.cc (check): Likewise.
129 * testsuite/27_io/basic_istream/getline/wchar_t/5.cc (check): Likewise.
130 * testsuite/27_io/basic_istream/getline/char/5.cc (check): Likewise.
131 * testsuite/testsuite_allocator.h (check_new): Likewise.
132 (check_deallocate_null): Add missing return value.
133 * testsuite/ext/pool_allocator/allocate_chunk.cc (test01):
134 Make variable unsigned.
135 * testsuite/23_containers/vector/modifiers/erase/1.cc (N,N1,N2,N3,N4,
136 N5,test01): Likewise.
137 * testsuite/26_numerics/valarray/valarray_subset_assignment.cc
138 (check_array): Likewise.
139 (main): Removed unused variable.
140 * testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc (test05):
141 Removed unused variable.
142 * testsuite/27_io/basic_ostream/flush/wchar_t/1.cc (test01): Likewise.
143 * testsuite/27_io/basic_ostream/flush/char/1.cc (test01): Likewise.
144 * testsuite/27_io/basic_ostream/endl/wchar_t/1.cc (test01): Likewise.
145 * testsuite/27_io/basic_ostream/endl/char/1.cc (test01): Likewise.
146 * testsuite/27_io/basic_ostream/ends/wchar_t/1.cc (test01): Likewise.
147 * testsuite/27_io/basic_ostream/ends/char/1.cc (test01): Likewise.
148 * testsuite/tr1/2_general_utilities/memory/shared_ptr/
149 assign/shared_ptr.cc (test01): Correct return type.
150 * testsuite/27_io/basic_filebuf/close/char/2.cc (test_02):
151 Add default value to close_num.
153 2005-12-24 Paolo Carlini <pcarlini@suse.de>
155 * include/bits/stl_algobase.h (fill(const _Deque_iterator&,
156 const _Deque_iterator&, const _Tp&)): Deal, correctly, only
157 with iterators (leave const_iterators alone).
159 2005-12-24 Paolo Carlini <pcarlini@suse.de>
161 * include/bits/stl_algobase.h (fill(const _Deque_iterator<>&,
162 const _Deque_iterator<>&, const _Tp&)): Add.
164 * testsuite/23_containers/deque/cons/assign/1.cc: New.
166 2005-12-19 Paolo Carlini <pcarlini@suse.de>
168 * include/bits/stl_deque.h (deque<>::resize, _M_fill_assign):
169 Avoid troubles with ADL, user defined operators and _Deque_iterator.
170 (operator-(const _Deque_iterator<>&, const _Deque_iterator<>&):
171 Add overload for left and right iterators of the same type.
172 * include/bits/deque.tcc (erase(iterator)): Avoid troubles with ADL,
173 user defined operators and _Deque_iterator.
174 * testsuite/23_containers/deque/types/1.cc: Add.
176 * include/bits/deque.tcc (_M_insert_aux(iterator, size_type,
177 const value_type&)): Qualify with std:: fill call.
179 2005-12-18 Benjamin Kosnik <bkoz@redhat.com>
181 * include/bits/c++config: Add in revised namespace associations.
182 _GLIBCXX_BEGIN_NAMESPACE: New macro.
183 _GLIBCXX_END_NAMESPACE: Same.
184 _GLIBCXX_BEGIN_NESTED_NAMESPACE: Same.
185 _GLIBCXX_END_NESTED_NAMESPACE: Same.
186 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS]): Add gnu-versioned-namespace.
187 * configure: Regenerated.
189 * config/abi/pre/gnu-versioned-namespace.ver: New.
190 * config/abi/pre/gnu.ver (GLIBCXX_3.4.7): Add exports for nested
192 * include/Makefile.am (${host_builddir}/c++config.h): Fill in
193 values for __GLIBCXX__ and _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION.
194 * include/Makefile.in: Regnerate.
195 * src/compatibility.cc: Alias new, nested definitions to exported
196 symbols from non-nested __gnu_debug.
197 * src/Makefile.am: Add in ENABLE_SYMVERS_GNU_NAMESPACE.
198 * src/Makefile.in: Regenerate.
200 * docs/html/debug_mode.html: Revise for nested design.
201 * docs/html/debug.html: Use debug qualifications instead of
203 * docs/html/configopts.html: Revise documentation for
206 * include/debug/formatter: Simplify namespace qualifications for
207 current, nested-only reality. Add top-level namespace alias,
208 namespace debug, for debug-mode containers.
209 * include/debug/safe_iterator.h: Same.
210 * include/debug/set.h: Same.
211 * include/debug/hash_multimap.h: Same.
212 * include/debug/hash_set.h: Same.
213 * include/debug/bitset
214 * include/debug/safe_sequence.h: Same.
215 * include/debug/multiset.h: Same.
216 * include/debug/safe_base.h: Same.
217 * include/debug/functions.h: Same.
218 * include/debug/safe_iterator.tcc
219 * include/debug/hash_multiset.h: Same.
220 * include/debug/vector
221 * include/debug/map.h: Same.
222 * include/debug/deque
223 * include/debug/hash_map.h: Same.
224 * include/debug/string
225 * include/debug/macros.h: Same.
227 * include/debug/debug.h: Same.
228 * include/debug/multimap.h: Same.
229 * src/debug.cc: Same.
230 * testsuite/23_containers/vector/invalidation/1.cc: Cleanups.
231 * testsuite/23_containers/vector/invalidation/2.cc: Same.
232 * testsuite/23_containers/vector/invalidation/3.cc: Same.
233 * testsuite/23_containers/vector/invalidation/4.cc: Same.
234 * testsuite/23_containers/deque/invalidation/1.cc: Same.
235 * testsuite/23_containers/deque/invalidation/2.cc: Same.
236 * testsuite/23_containers/deque/invalidation/3.cc: Same.
237 * testsuite/23_containers/deque/invalidation/4.cc: Same.
238 * testsuite/23_containers/multiset/invalidation/1.cc: Same.
239 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
240 * testsuite/23_containers/multimap/invalidation/1.cc: Same.
241 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
242 * testsuite/23_containers/bitset/invalidation/1.cc: Same.
243 * testsuite/23_containers/bitset/cons/16020.cc: Same.
244 * testsuite/23_containers/bitset/operations/13838.cc: Same.
245 * testsuite/23_containers/list/invalidation/1.cc: Same.
246 * testsuite/23_containers/list/invalidation/2.cc: Same.
247 * testsuite/23_containers/list/invalidation/3.cc: Same.
248 * testsuite/23_containers/list/invalidation/4.cc: Same.
249 * testsuite/23_containers/set/invalidation/1.cc: Same.
250 * testsuite/23_containers/set/invalidation/2.cc: Same.
251 * testsuite/23_containers/map/invalidation/1.cc: Same.
252 * testsuite/23_containers/map/invalidation/2.cc: Same.
253 * testsuite/23_containers/map/insert/16813.cc: Same.
255 * include/bits/basic_ios.h: Use _GLIBCXX_BEGIN_NAMESPACE(std) and
257 * include/bits/stl_list.h: Same.
258 * include/bits/stl_map.h: Same.
259 * include/bits/stl_algobase.h: Same.
260 * include/bits/localefwd.h: Same.
261 * include/bits/valarray_array.tcc: Same.
262 * include/bits/valarray_after.h: Same.
263 * include/bits/gslice_array.h: Same.
264 * include/bits/stl_queue.h: Same.
265 * include/bits/gslice.h: Same.
266 * include/bits/locale_facets.tcc: Same.
267 * include/bits/locale_classes.h: Same.
268 * include/bits/stl_set.h: Same.
269 * include/bits/locale_facets.h: Same.
270 * include/bits/stl_stack.h: Same.
271 * include/bits/stl_iterator_base_types.h: Same.
272 * include/bits/stl_heap.h: Same.
273 * include/bits/indirect_array.h: Same.
274 * include/bits/atomicity.h: Same.
275 * include/bits/stream_iterator.h: Same.
276 * include/bits/concurrence.h: Same.
277 * include/bits/basic_string.h: Same.
278 * include/bits/stl_multimap.h: Same.
279 * include/bits/stl_pair.h: Same.
280 * include/bits/basic_ios.tcc: Same.
281 * include/bits/stl_raw_storage_iter.h: Same.
282 * include/bits/stl_vector.h: Same.
283 * include/bits/stl_numeric.h: Same.
284 * include/bits/ios_base.h: Same.
285 * include/bits/stl_deque.h: Same.
286 * include/bits/istream.tcc: Same.
287 * include/bits/postypes.h: Same.
288 * include/bits/stl_multiset.h: Same.
289 * include/bits/mask_array.h: Same.
290 * include/bits/stl_uninitialized.h: Same.
291 * include/bits/ostream.tcc: Same.
292 * include/bits/slice_array.h: Same.
293 * include/bits/boost_concept_check.h: Same.
294 * include/bits/sstream.tcc: Same.
295 * include/bits/stl_iterator_base_funcs.h: Same.
296 * include/bits/char_traits.h: Same.
297 * include/bits/stl_algo.h: Same.
298 * include/bits/stringfwd.h: Same.
299 * include/bits/c++config
300 * include/bits/stl_iterator.h: Same.
301 * include/bits/valarray_array.h: Same.
302 * include/bits/stl_tempbuf.h: Same.
303 * include/bits/vector.tcc: Same.
304 * include/bits/deque.tcc: Same.
305 * include/bits/stl_bvector.h: Same.
306 * include/bits/basic_string.tcc: Same.
307 * include/bits/list.tcc: Same.
308 * include/bits/streambuf_iterator.h: Same.
309 * include/bits/valarray_before.h: Same.
310 * include/bits/stl_construct.h: Same.
311 * include/bits/stl_function.h: Same.
312 * include/bits/cpp_type_traits.h: Same.
313 * include/bits/streambuf.tcc: Same.
314 * include/bits/allocator.h: Same.
315 * include/bits/stl_tree.h: Same.
316 * include/bits/fstream.tcc: Same.
317 * include/bits/stl_relops.h: Same.
318 * include/bits/functexcept.h: Same.
319 * include/std/std_valarray.h: Same.
320 * include/std/std_iostream.h: Same.
321 * include/std/std_streambuf.h: Same.
322 * include/std/std_bitset.h: Same.
323 * include/std/std_iosfwd.h: Same.
324 * include/std/std_iomanip.h: Same.
325 * include/std/std_fstream.h: Same.
326 * include/std/std_limits.h: Same.
327 * include/std/std_stdexcept.h: Same.
328 * include/std/std_istream.h: Same.
329 * include/std/std_complex.h: Same.
330 * include/std/std_memory.h: Same.
331 * include/std/std_ostream.h: Same.
332 * include/std/std_sstream.h: Same.
333 * include/c_std/std_csignal.h: Same.
334 * include/c_std/std_cstdlib.h: Same.
335 * include/c_std/std_cstdio.h: Same.
336 * include/c_std/std_cstdarg.h: Same.
337 * include/c_std/std_cctype.h: Same.
338 * include/c_std/std_cmath.h: Same.
339 * include/c_std/std_ctime.h: Same.
340 * include/c_std/std_clocale.h: Same.
341 * include/c_std/std_csetjmp.h: Same.
342 * include/c_std/std_cwchar.h: Same.
343 * include/c_std/std_cstring.h: Same.
344 * include/c_std/std_cstddef.h: Same.
345 * include/c_std/std_cwctype.h: Same.
346 * include/backward/iterator.h: Same.
347 * include/backward/set.h: Same.
348 * include/backward/hashtable.h: Same.
349 * include/backward/fstream.h: Same.
350 * include/backward/tempbuf.h: Same.
351 * include/backward/istream.h: Same.
352 * include/backward/bvector.h: Same.
353 * include/backward/stack.h: Same.
354 * include/backward/rope.h: Same.
355 * include/backward/complex.h: Same.
356 * include/backward/ostream.h: Same.
357 * include/backward/heap.h: Same.
358 * include/backward/iostream.h: Same.
359 * include/backward/function.h: Same.
360 * include/backward/multimap.h: Same.
361 * include/backward/pair.h: Same.
362 * include/backward/stream.h: Same.
363 * include/backward/iomanip.h: Same.
364 * include/backward/strstream
365 * include/backward/slist.h: Same.
366 * include/backward/tree.h: Same.
367 * include/backward/vector.h: Same.
368 * include/backward/deque.h: Same.
369 * include/backward/multiset.h: Same.
370 * include/backward/list.h: Same.
371 * include/backward/map.h: Same.
372 * include/backward/algobase.h: Same.
373 * include/backward/hash_map.h: Same.
374 * include/backward/algo.h: Same.
375 * include/backward/queue.h: Same.
376 * include/backward/streambuf.h: Same.
377 * src/allocator-inst.cc: Same.
378 * src/complex_io.cc: Same.
379 * src/localename.cc: Same.
380 * src/limits.cc: Same.
381 * src/ios_failure.cc: Same.
382 * src/locale-misc-inst.cc: Same.
383 * src/streambuf-inst.cc: Same.
384 * src/misc-inst.cc: Same.
385 * src/concept-inst.cc: Same.
386 * src/ios_locale.cc: Same.
387 * src/pool_allocator.cc: Same.
388 * src/fstream-inst.cc: Same.
389 * src/istream-inst.cc: Same.
390 * src/string-inst.cc: Same.
391 * src/locale_init.cc: Same.
392 * src/ctype.cc: Same.
393 * src/strstream.cc: Same.
394 * src/ostream-inst.cc: Same.
395 * src/functexcept.cc: Same.
396 * src/streambuf.cc: Same.
397 * src/sstream-inst.cc: Same.
399 * src/valarray-inst.cc: Same.
400 * src/locale.cc: Same.
402 * src/stdexcept.cc: Same.
403 * src/istream.cc: Same.
404 * src/compatibility.cc: Same.
405 * src/locale-inst.cc: Same.
406 * src/globals_io.cc: Same.
408 * src/ios_init.cc: Same.
409 * src/locale_facets.cc: Same.
410 * src/codecvt.cc: Same.
412 * include/tr1/unordered_map: Use _GLIBCXX_BEGIN_NAMESPACE(tr1).
413 * include/tr1/boost_shared_ptr.h: Same.
415 * include/tr1/hashtable
416 * include/tr1/type_traits_fwd.h: Same.
417 * include/tr1/unordered_set
418 * include/tr1/functional
419 * include/tr1/ref_fwd.h: Same.
420 * include/tr1/utility
421 * include/tr1/type_traits
424 * include/ext/hashtable.h: Use _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx).
425 * include/ext/typelist.h: Same.
426 * include/ext/hash_map: Same.
427 * include/ext/rc_string_base.h: Same.
428 * include/ext/pool_allocator.h: Same.
429 * include/ext/iterator: Same.
430 * include/ext/rb_tree: Same.
431 * include/ext/numeric: Same.
432 * include/ext/vstring.tcc: Same.
433 * include/ext/sso_string_base.h: Same.
434 * include/ext/stdio_filebuf.h: Same.
435 * include/ext/algorithm: Same.
436 * include/ext/codecvt_specializations.h: Same.
437 * include/ext/new_allocator.h: Same.
438 * include/ext/array_allocator.h: Same.
439 * include/ext/vstring_util.h: Same.
440 * include/ext/vstring_fwd.h: Same.
441 * include/ext/mt_allocator.h: Same.
442 * include/ext/debug_allocator.h: Same.
443 * include/ext/slist: Same.
444 * include/ext/stdio_sync_filebuf.h: Same.
445 * include/ext/hash_fun.h: Same.
446 * include/ext/malloc_allocator.h: Same.
447 * include/ext/functional: Same.
448 * include/ext/bitmap_allocator.h: Same.
449 * include/ext/pod_char_traits.h: Same.
450 * include/ext/vstring.h: Same.
451 * include/ext/ropeimpl.h: Same.
452 * include/ext/hash_set: Same.
453 * include/ext/memory: Same.
454 * include/ext/rope: Same.
455 * include/bits/boost_concept_check.h: Same.
456 * include/bits/stl_iterator.h: Same.
457 * include/bits/char_traits.h: Same.
458 * include/bits/cpp_type_traits.h: Same.
459 * include/bits/concurrence.h: Same.
460 * include/bits/atomicity.h: Same.
461 * config/locale/gnu/numeric_members.cc: Same.
462 * config/locale/gnu/collate_members.cc: Same.
463 * config/locale/gnu/ctype_members.cc: Same.
464 * config/locale/gnu/c_locale.cc: Same.
465 * config/locale/gnu/codecvt_members.cc: Same.
466 * config/locale/gnu/messages_members.cc: Same.
467 * config/locale/gnu/c_locale.h: Same.
468 * config/locale/gnu/monetary_members.cc: Same.
469 * config/locale/gnu/time_members.cc: Same.
470 * config/locale/ieee_1003.1-2001/c_locale.h: Same.
471 * config/locale/generic/numeric_members.cc: Same.
472 * config/locale/generic/collate_members.cc: Same.
473 * config/locale/generic/ctype_members.cc: Same.
474 * config/locale/generic/c_locale.cc: Same.
475 * config/locale/generic/codecvt_members.cc: Same.
476 * config/locale/generic/messages_members.cc: Same.
477 * config/locale/generic/c_locale.h: Same.
478 * config/locale/generic/monetary_members.cc: Same.
479 * config/locale/generic/time_members.cc: Same.
480 * config/os/aix/atomicity.h: Same.
481 * config/os/irix/atomicity.h: Same.
482 * config/cpu/powerpc/atomicity.h: Same.
483 * config/cpu/cris/atomicity.h: Same.
484 * config/cpu/ia64/atomicity.h: Same.
485 * config/cpu/alpha/atomicity.h: Same.
486 * config/cpu/m68k/atomicity.h: Same.
487 * config/cpu/hppa/atomicity.h: Same.
488 * config/cpu/mips/atomicity.h: Same.
489 * config/cpu/sparc/atomicity.h: Same.
490 * config/cpu/i386/atomicity.h: Same.
491 * config/cpu/i486/atomicity.h: Same.
492 * config/cpu/sh/atomicity.h: Same.
493 * config/cpu/generic/atomicity.h: Same.
494 * config/cpu/s390/atomicity.h: Same.
495 * config/io/c_io_stdio.h: Same.
496 * config/io/basic_file_stdio.cc: Same.
497 * config/io/basic_file_stdio.h: Same.
498 * src/misc-inst.cc: Same.
499 * src/concept-inst.cc: Same.
500 * src/ext-inst.cc: Same.
501 * src/string-inst.cc: Same.
502 * src/pool_allocator.cc: Same.
503 * src/bitmap_allocator.cc: Same.
504 * src/mt_allocator.cc: Same.
505 * libsupc++/exception: Same.
506 * libsupc++/vterminate.cc: Same.
507 * testsuite/ext/hash_map/1.cc: Explicitly qualify __gnu_cxx::hash_map.
508 * testsuite/ext/hash_map/14648.cc: Same.
510 * libsupc++/eh_alloc.cc: Correct comment line spacing.
512 2005-12-18 Paolo Carlini <pcarlini@suse.de>
514 * include/bits/stl_algobase.h (__copy_normal::copy_n): Uglify
516 (__copy_backward::copy_b): Likewise to __copy_b.
517 (__copy_backward_normal::copy_b_n): Likewise to __copy_b_n.
518 (copy, __copy_backward_aux, copy_backward): Adjust.
520 2005-12-18 Paolo Carlini <pcarlini@suse.de>
522 * include/bits/stl_algo.h (partial_sort_copy): Add
523 _BinaryPredicateConcept<_Compare, _InputValueType, _OutputValueType>
524 (merge, set_union, set_symmetric_difference): Add
525 _OutputIteratorConcept<_OutputIterator, _ValueType2>.
526 (binary_search): Remove redundant _BinaryPredicateConcept<_Compare,
527 _ValueType, _Tp>, taken care by lower_bound.
528 * include/bits/stl_algo.h: Cosmetic changes.
530 2005-12-18 Paolo Carlini <pcarlini@suse.de>
531 Howard Hinnant <hhinnant@apple.com>
533 * include/bits/stl_algo.h (merge, includes, set_union,
534 set_intersection, set_difference, set_symmetric_difference):
537 2005-12-18 Paolo Carlini <pcarlini@suse.de>
539 * include/bits/stl_algo.h (partial_sort_copy, lower_bound,
540 upper_bound, equal_range, binary_search): Fix concept checks.
542 2005-12-18 Benjamin Kosnik <bkoz@redhat.com>
544 * config/abi/post: New.
545 * config/abi/*-linux-gnu: Move to..
546 * config/abi/post/*-linux-gnu: ... here.
547 * config/abi/pre: New.
548 * config/linker-map.gnu: Move to ..
549 * config/abi/pre/gnu.ver: ... here.
550 * config/linker-map.dummy: Move to..
551 * config/abi/pre/none.ver: ... here.
552 * src/Makefile.am: Use ENABLE_SYMVERS_GNU,
553 ENABLE_SYMVERS_DARWIN, ENABLE_SYMVERS_GNU_NAMESPACE.
554 Use libstdc++-symbols.ver instead of libstdc++-symbol.ver.
555 * src/Makefile.in: Regnerate.
556 * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Adjust paths for new
557 placement of abi baseline files.
558 (GLIBCXX_ENABLE_SYMVERS): Add ENABLE_SYMVERS, ENABLE_SYMVERS_GNU,
559 ENABLE_SYMVERS_DARWIN. SYMVER_MAP to SYMVER_FILE.
560 * configure: Regnerate.
561 * config.h.in: Regnerate.
562 * src/compatibility.cc: Adjust macro usage.
564 2005-12-17 Benjamin Kosnik <bkoz@redhat.com>
566 * src/io-inst.cc: Separate instantiations into...
567 * src/ios-inst.cc: .. this.
568 * src/iostream-inst.cc: ... and this.
569 * src/Makefile.am (sources): Update.
570 * src/Makefile.in: Regenerate.
572 2005-12-17 Benjamin Kosnik <bkoz@redhat.com>
575 * include/c_std/std_cstdlib.h: Fix for freestanding.
577 2005-12-17 Benjamin Kosnik <bkoz@redhat.com>
579 * testsuite/libstdc++-dg/normal.exp: Rename to..
580 * testsuite/libstdc++-dg/conformance.exp: ... this.
582 2005-12-17 Paolo Carlini <pcarlini@suse.de>
584 * include/bits/stl_vector.h (vector(const vector&)): Use
586 * include/bits/stl_deque.h (deque(const deque&)): Likewise.
587 (_M_destroy_data): Adjust.
589 2005-12-17 Paolo Carlini <pcarlini@suse.de>
591 * include/bits/stl_deque.h (deque<>::_M_erase_at_end,
592 _M_erase_at_begin, _M_destroy_data, _M_destroy_data_dispatch,
593 _M_destroy_data_aux): New, optimize erase at begin() / end() and
594 consistently use the "segmented iterator" optimization.
595 (deque<>::~deque(), resize, clear, _M_assign_aux, _M_fill_assign):
597 * include/bits/deque.tcc (deque<>::operator=, _M_assign_aux): Same.
598 (erase(iterator, iterator)): Likewise, clean-up.
599 (erase(iterator)): Tweak, don't call copy unnecessarily.
600 (_M_destroy_data_aux): Define.
601 * testsuite/23_containers/deque/modifiers/erase/1.cc: New.
602 * testsuite/23_containers/deque/modifiers/erase/2.cc: Likewise.
604 2005-12-17 Gabriel Dos Reis <gdr@integrable-solutions.net>
606 * include/bits/valarray_after.h (_Expr<>::operator[](slice)):
607 Don't assume the closure implements general indexing, as a matter
608 of fact, most of them don't.
609 (_Expr<>::operator[](const gslice&)): Likewise.
610 (_Expr<>::operator[](const valarray<bool>&)): Likewise.
611 (_Expr<>::operator[](const valarray<size_t>&)): Likewise.
612 (_Expr<>::shift): Fix thinko.
613 (_Expr<>::cshift): Likewise.
614 (_Expr<>::apply): Likewise.
616 2005-12-16 Paolo Carlini <pcarlini@suse.de>
618 * testsuite/tr1/4_metaprogramming/type_properties/is_empty/is_empty.cc:
619 Fix class NonEmptyClassTwo.
621 2005-12-15 Paolo Carlini <pcarlini@suse.de>
623 * include/bits/stl_vector.h (vector<>::_M_get_Tp_allocator): Change
624 to return by ref and add non const version.
625 * include/bits/stl_deque.h (deque<>::_M_get_Tp_allocator): Likewise.
627 2005-12-15 Paolo Carlini <pcarlini@suse.de>
630 * config/locale/gnu/c_locale.cc (_S_destroy_c_locale): Check
632 * testsuite/22_locale/facet/25421.cc: New.
634 2005-12-13 Carlos O'Donell <carlos@codesourcery.com>
636 * include/std/std_limits.h (struct numeric_limits):
637 Use __DBL_HAS_DENORM__, __FLT_HAS_DENORM__, __LDBL_HAS_DENORM__.
639 2005-12-10 Paolo Carlini <pcarlini@suse.de>
641 * include/ext/sso_string_base.h (__sso_string_base<>::_M_compare):
642 Add, specialized for char and wchar_t to immediately return true
643 when a string is compared to itself.
644 * include/ext/rc_string_base.h (__rc_string_base<>::_M_compare):
645 Likewise, for the same _Rep.
646 * include/ext/vstring.h (compare(const string&)): Use it.
648 * include/ext/sso_string_base.h (__sso_string_base<>::_M_destroy):
649 Deallocate passed size + 1.
650 (_M_dispose, _M_reserve): Adjust.
652 2005-12-09 Paolo Carlini <pcarlini@suse.de>
653 Howard Hinnant <hhinnant@apple.com>
656 * include/bits/stl_list.h (list<>::_M_insert_dispatch, _M_fill_insert):
658 (_M_initialize_dispatch, _M_fill_initialize): Add.
659 (list(size_type, const value_type&, const allocator_type&),
660 list(const list&), list(_InputIterator, _InputIterator,
661 const allocator_type&): Use the latter.
662 (insert(iterator, size_type, const value_type&), insert(iterator,
663 _InputIterator, _InputIterator)): Use construction & splice.
664 * testsuite/23_containers/list/modifiers/insert/25288.cc: New.
665 * testsuite/testsuite_allocator.h (class throw_allocator): Add.
667 * include/bits/stl_list.h (list<>::insert, erase): Fix wrong comments.
669 2005-12-08 Paolo Carlini <pcarlini@suse.de>
671 * include/bits/stl_vector.h (vector<>::size, resize, capacity,
672 operator[]): Avoid troubles with ADL, user defined operators
673 and __normal_iterator.
674 (_M_erase_at_end): Fix to take a pointer.
675 (clear): Adjust call.
676 * include/bits/vector.tcc (vector<>::insert(iterator, const
677 value_type&), erase(iterator, iterator), operator=(const
678 vector<>&), _M_assign_aux(input_iterator_tag), _M_insert_aux,
679 _M_fill_insert, _M_range_insert): Likewise.
680 (_M_fill_assign, _M_assign_aux(forward_iterator_tag)): Adjust
681 _M_erase_at_end call.
682 * testsuite/23_containers/vector/types/1.cc: New.
684 2005-12-08 Paolo Carlini <pcarlini@suse.de>
687 * include/bits/stl_vector.h (vector<>::_M_erase_at_end): New.
688 (vector<>::clear, resize): Use it.
689 * include/bits/vector.tcc (vector<>::erase(iterator, iterator),
690 _M_fill_assign, _M_assign_aux): Likewise.
692 * testsuite/23_containers/vector/modifiers/erase/1.cc: New.
694 2005-12-07 Paolo Carlini <pcarlini@suse.de>
696 * docs/html/configopts.html ([--enable-libstdcxx-allocator]):
697 Mention the SGI pooled allocator.
699 2005-12-06 Paolo Carlini <pcarlini@suse.de>
701 * include/bits/basic_string.h (insert(iterator, _CharT),
702 erase(iterator), erase(iterator, iterator)): Avoid troubles
703 with ADL, user defined operators and __normal_iterator.
704 * include/bits/stl_iterator.h (operator-(const __normal_iterator
705 <_Iterator, _Container>&, const __normal_iterator<_Iterator,
706 _Container>&)): Add overload for left and right iterators of
708 * include/debug/safe_iterator.h (operator-(const _Safe_iterator
709 <_Iterator, _Sequence>&, const _Safe_iterator<_Iterator,
710 _Sequence>&)): Likewise.
711 * testsuite/21_strings/basic_string/types/1.cc: New.
713 2005-12-05 Paolo Carlini <pcarlini@suse.de>
715 * include/ext/sso_string_base.h (__sso_string_base<>::_M_assign):
716 Simplify, avoid pointless reallocations.
718 2005-12-04 Paolo Carlini <pcarlini@suse.de>
720 * include/ext/sso_string_base.h (__sso_string_base<>::_M_reserve):
723 2005-12-04 Paolo Carlini <pcarlini@suse.de>
725 * include/ext/vstring.h (__versa_string<>::operator+, all
726 versions): Move out of line...
727 * include/ext/vstring.tcc (__versa_string<>::operator+): ...
728 here; consistently use reserve for the benefit of sso_string_base;
729 prefer push_back to single-char append when appropriate.
731 * include/ext/vstring.h (__versa_string<>::push_back): Don't
732 call _M_reserve, _M_mutate instead.
733 (reserve): Just forward to _M_reserve.
734 * include/ext/vstring.tcc (__versa_string<>::_M_reserve): Remove.
735 * include/ext/rc_string_base.h (__rc_string_base<>::_M_reserve): Also
736 do the initial checks (first on length, in case __res == capacity).
737 * include/ext/sso_string_base.h (__sso_string_base<>::_M_reserve:
738 Likewise; don't call _M_set_length unnecessarily.
740 2005-12-04 Paolo Carlini <pcarlini@suse.de>
742 * include/ext/vstring.h (__versa_string<>::_M_append): New.
743 (append(const __versa_string&), append(const __versa_string&,
744 size_type, size_type), append(const _CharT*, size_type),
745 append(const _CharT*)): Use it.
746 (append(size_type, _CharT)): Delegate to _M_replace_aux.
747 (assign(const __versa_string&, size_type, size_type),
748 assign(const _CharT*), replace(size_type, size_type,
749 const _CharT*, size_type)): Forward to _M_replace.
750 * include/ext/vstring.tcc (__versa_string<>::_M_append):
751 Define, core append functionality.
752 (_M_replace): Simplify, move __s == 0 case to _M_replace_aux.
753 (_M_replace_aux): Reorganize, don't call _M_replace.
755 2005-12-04 Paolo Carlini <pcarlini@suse.de>
757 * include/ext/vstring.tcc (__versa_string<>::_M_replace):
758 Perform _M_check_length at the beginning and remove it from ...
759 (replace, _M_replace_dispatch, _M_replace_aux, assign): ... here.
760 (assign): Now move inline.
761 (resize): Don't call _M_check_length redundantly, append does.
763 2005-12-04 Paolo Carlini <pcarlini@suse.de>
765 * include/ext/sso_string_base.h (__sso_string_base<>::_M_get_allocator):
766 Add non const version.
767 * include/ext/rc_string_base.h (__rc_string_base<>::_M_get_allocator):
770 * include/ext/sso_string_base.h (__sso_string_base<>::_M_erase): Add.
771 * include/ext/rc_string_base.h (__rc_string_base<>::_M_erase): Likewise.
772 (_M_leak_hard): Use it.
773 * include/ext/vstring.h (__versa_string<>::clear, erase, all
775 * include/ext/vstring.tcc (__versa_string<>::resize): Likewise.
777 * include/ext/vstring.h (__versa_string<>::_M_replace_safe):
779 * include/ext/vstring.h (__versa_string<>::_M_replace): New, does
780 the in-place work or delegates to _M_mutate in case of reallocation.
781 * include/ext/vstring.tcc (__versa_string<>::_M_replace_safe):
783 * include/ext/vstring.tcc (__versa_string<>::_M_replace): Define.
784 (assign, replace, _M_replace_dispatch, _M_replace_aux): Use it.
785 * include/ext/sso_string_base.h (__sso_string_base<>::_M_mutate):
786 Change to manage only reallocations.
787 * include/ext/rc_string_base.h (__rc_string_base<>::_M_mutate):
790 * include/ext/vstring.h (__versa_string<>::insert(size_type,
791 const __versa_string&), insert(size_type, const __versa_string&,
792 size_type, size_type), insert(size_type, const _CharT*, size_type),
793 insert(size_type, const _CharT*)): Delegate to replace.
795 * include/ext/vstring.h (__versa_string<>::reserve): Move out of
797 * include/ext/vstring.tcc (__versa_string<>::reserve): Do the
798 checks and call _M_reserve.
799 * include/ext/vstring.h (__versa_string<>::append): Call _M_reserve
801 * include/ext/vstring.tcc (__versa_string<>::append, all versions):
803 * include/ext/sso_string_base.h (__sso_string_base<>::_M_reserve):
805 * include/ext/rc_string_base.h (__rc_string_base<>::_M_reserve):
808 2005-12-02 David Billinghurst (David.Billinghurst@riotinto.com)
811 * testsuite/lib/libstdc++.exp (libstdc++-dg-test): Catch
812 error if file cannot be deleted.
814 2005-11-23 Paolo Carlini <pcarlini@suse.de>
816 PR libstdc++/24975 (basic_string)
817 * include/bits/basic_string.h (_Rep::_S_empty_rep): Avoid
818 strict-aliasing warnings.
820 2005-11-22 Paolo Carlini <pcarlini@suse.de>
823 * include/bits/stl_set.h (insert(iterator, const value_type&),
824 erase(iterator), erase(iterator, iterator)): Don't break aliasing
825 rules casting to _Rep_iterator&, forward to _Rb_tree facilities.
826 * include/bits/stl_multiset.h (insert(iterator, const value_type&),
827 erase(iterator), erase(iterator, iterator)): Likewise.
828 * include/bits/stl_tree.h (_Rb_tree<>::_M_insert(_Const_Base_ptr,
829 _Const_Base_ptr, const value_type&), insert_unique(const_iterator,
830 const value_type&), insert_equal(const_iterator, const value_type&),
831 erase(const_iterator), erase(const_iterator, const_iterator)): New,
832 _Rb_tree<>::const_iterator counterparts of existing facilities.
834 2005-11-21 Benjamin Kosnik <bkoz@redhat.com>
835 Ulrich Drepper <drepper@redhat.com>
838 * scripts/create_testsuite_files: Support for "C" test files.
839 * testsuite/lib/libstdc++.exp: Same.
840 * testsuite/libstdc++-dg/normal.exp: Same.
841 * testsuite/ext/mt_allocator/22309_thread.cc: Update names.
842 * testsuite/19_diagnostics/23591_thread-1.c: New.
843 * testsuite/testsuite_shared.cc: Add tests, rename existing functions.
844 * libsupc++/eh_globals.cc: Make global thread local if possible.
845 * configure.ac: Use GCC_CHECK_TLS.
846 * acinclude.m4: Include tls.m4.
847 * configure: Regenerate.
850 2005-11-21 Benjamin Kosnik <bkoz@redhat.com>
852 * libsupc++/del_op.cc: Include c++config.h first.
853 * libsupc++/eh_alloc.cc: Same.
854 * libsupc++/new_opv.cc: Same.
855 * libsupc++/eh_throw.cc: Same.
856 * libsupc++/new_op.cc: Same.
857 * libsupc++/del_opv.cc: Same.
858 * libsupc++/eh_catch.cc: Same.
859 * libsupc++/guard.cc: Same.
860 * libsupc++/del_opnt.cc: Same.
861 * libsupc++/eh_exception.cc: Same.
862 * libsupc++/new_opvnt.cc: Same.
863 * libsupc++/eh_term_handler.cc: Same.
864 * libsupc++/eh_personality.cc: Same.
865 * libsupc++/eh_call.cc: Same.
866 * libsupc++/new_opnt.cc: Same.
867 * libsupc++/del_opvnt.cc: Same.
869 2005-11-21 Benjamin Kosnik <bkoz@redhat.com>
871 * src/Makefile.am (LTCXXCOMPILE): CXXFLAGS last.
872 * libsupc++/Makefile.am: Same.
873 * src/Makefile.in: Regenerate.
874 * libsupc++/Makefile.in: Same.
876 2005-11-21 Paolo Carlini <pcarlini@suse.de>
878 * include/ext/sso_string_base.h: Minor formatting and stylistic fixes.
879 (__sso_string_base<>::_M_get_allocator): Return by const ref.
880 * include/ext/rc_string_base.h: Likewise.
881 (__rc_string_base<>::_M_get_allocator): Return by const ref.
882 (__rc_string_base<>::_M_dispose): Take void, use _M_get_allocator.
883 (__rc_string_base<>::_M_grab): Take one alloc, use _M_get_allocator.
884 (__rc_string_base<>::~__rc_string_base,
885 __rc_string_base(const __rc_string_base&), _M_assign, _M_reserve,
887 * include/ext/vstring_util.h: Minor stylistic fixes.
889 2005-11-18 Paolo Carlini <pcarlini@suse.de>
891 * include/ext/rc_string_base.h (__rc_string_base<>::_Rep): Avoid the
892 anonymous struct extension, adjust everywhere.
894 * include/ext/rc_string_base.h (__rc_string_base<>::_S_empty_rep()):
895 Just use a static member.
896 (__rc_string_base<>::__rc_string_base(), _S_construct): Adjust.
898 * include/ext/rc_string_base.h (__rc_string_base<>::_Rep): Use
899 anonymous union together with _CharT to fix alignment issues,
900 rebind to _Rep and rename _Raw_alloc to _Rep_alloc_type.
901 (__rc_string_base<>::_Rep::_S_create, _M_destroy): Adjust consistently.
903 * include/ext/vstring_util.h (__is_null_p): Move inside struct
904 __vstring_utility as static _S_is_null_pointer.
905 * include/ext/sso_string.h
906 (__sso_string_base<>::_M_construct(std::forward_iterator_tag): Adjust.
907 * include/ext/rc_string_base.h
908 (__rc_string_base<>::_S_construct(std::forward_iterator_tag): Likewise.
910 Implement Option 3 of DR 431 for ext/vstring - both available bases.
911 * include/bits/cpp_type_traits.h (struct __is_empty): Add.
912 * include/ext/vstring.h (__versa_string<>::swap): Delegate to
914 * include/ext/vstring.tcc (__versa_string<>::swap): Remove.
915 * include/ext/vstring_util.h (struct __vstring_utility<>): Add struct
916 _Alloc_hider<>, augmented of allocator swapping facility, specialized
917 to nop for empty allocators.
918 * include/ext/rc_string_base.h (__rc_string_base<>::_M_swap): Use it.
919 (__rc_string_base<>::_M_is_leaked, _M_set_sharable): Change to private.
920 * include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
922 (__sso_string_base<>::_M_is_leaked, _M_set_sharable): Remove, unused.
923 * include/ext/rc_string_base.h (__rc_string_base<>::_M_data(_CharT*):
925 * include/ext/sso_string_base.h (__sso_string_base<>::_M_data(_CharT*):
928 2005-11-17 Geoffrey Keating <geoffk@apple.com>
930 * config/os/bsd/darwin/ppc-extra.ver: New.
931 * src/Makefile.am (libstdc++-symbol.ver): Move outside conditionals,
932 and make dependent on port symbol files.
933 (libstdc++-symbol.explist): Use the generated .ver file, not
935 * src/compatibility.cc [APPLE] (__eprintf): New.
936 * src/Makefile.in: Regenerate.
937 * configure.host (powerpc*-*-darwin*): Define
938 port_specific_symbol_files.
940 2005-11-16 Nathan Sidwell <nathan@codesourcery.com>
942 * libsupc++/eh_arm.cc (__cxa_begin_cleanup): Remember a
943 foreign exception too.
944 (__gnu_end_cleanup): Recover a foreign exception too.
945 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Cope
946 with forced unwinding.
947 * libsupc++/eh_throw.cc (__cxxabiv1::__cxa_rethrow): Use
948 _Unwind_Resume_or_Rethrow for ARM EABI.
950 2005-11-14 Geoffrey Keating <geoffk@apple.com>
952 * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Don't check for
953 shared libgcc for darwin exports.
954 * configure: Regenerate.
956 2005-11-13 Jonathan Wakely <redi@gcc.gnu.org>
958 * include/tr1/boost_shared_ptr.h (get_deleter):
959 Declare before shared_ptr.
960 (shared_ptr<>): Declare get_deleter as friend.
961 (shared_ptr<>:_M_get_deleter): Private.
963 2005-11-13 Douglas Gregor <doug.gregor@gmail.com>
966 * include/tr1/ref_wrap_iterate.h
967 (reference_wrapper::operator()()): Don't dereferene the result of
968 get() before calling it; it's already a reference.
969 * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
970 Test nullary calls to reference_wrappers.
972 2005-11-11 Paolo Carlini <pcarlini@suse.de>
975 * include/tr1/type_traits (__is_abstract_helper): Rename to __in_array
976 (with complemented logic).
977 (is_function): Use it, don't use __conv_helper.
978 (is_abstract): Adjust.
979 (__conv_helper): Rename to __is_convertible_simple.
980 (is_convertible): Adjust.
981 * testsuite/testsuite_tr1.h (class IncompleteClass): Add.
982 * testsuite/tr1/4_metaprogramming/composite_type_traits/is_object/
984 * testsuite/tr1/4_metaprogramming/primary_type_categories/is_enum/
986 * testsuite/tr1/4_metaprogramming/primary_type_categories/is_function/
989 2005-11-11 Paolo Carlini <pcarlini@suse.de>
992 * include/tr1/functional (hash): Inherit from std::unary_function.
993 * testsuite/tr1/6_containers/unordered/hash/24799.cc: New.
996 * include/tr1/boost_shared_ptr.h (swap(shared_ptr<>&, shared_ptr<>&),
997 swap(weak_ptr<>&, weak_ptr<>&)): Move inside namespace tr1.
998 * testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
1002 * include/tr1/type_traits (__is_polymorhpic_helper): Adjust destructor.
1003 * testsuite/tr1/4_metaprogramming/type_properties/is_polymorphic/
1006 2005-11-10 Paolo Carlini <pcarlini@suse.de>
1008 * testsuite/tr1/2_general_utilities/memory/
1009 enable_shared_from_this/not_shared.cc: Adjust, remove xfail.
1010 * testsuite/tr1/2_general_utilities/memory/
1011 enable_shared_from_this/not_shared2.cc: Likewise.
1012 * testsuite/tr1/2_general_utilities/memory/
1013 enable_shared_from_this/not_shared3.cc: Likewise.
1015 2005-11-10 Paolo Carlini <pcarlini@suse.de>
1017 * include/tr1/boost_shared_ptr.h (_Sp_counted_base::release,
1018 weak_release): Protect barriers with __GTHREADS.
1020 2005-11-10 Paolo Carlini <pcarlini@suse.de>
1021 Peter Dimov <pdimov@mmltd.net>
1023 * include/tr1/boost_shared_ptr.h (_Sp_counted_base::release):
1024 Optimize by manually inlining weak_release.
1026 * include/tr1/boost_shared_ptr.h (_Sp_counted_base::release,
1027 weak_release): Use explicit memory barriers.
1029 2005-11-09 Benjamin Kosnik <bkoz@redhat.com>
1030 Paolo Carlini <pcarlini@suse.de>
1031 Gabriel Dos Reis <gdr@integrable-solutions.net>
1034 * numeric_limits.cc: Split into...
1035 * numeric_limits/specialization.cc: ..this.
1036 * numeric_limits/is_iec559.cc: Same.
1037 * numeric_limits/sign.cc: Same.
1038 * numeric_limits/quiet_NaN.cc: Same.
1039 * numeric_limits/digits10.cc: Same.
1040 * numeric_limits/denorm_min.cc: Same.
1041 * numeric_limits/min_max.cc: Same.
1042 * numeric_limits/epsilon.cc: Same.
1043 * numeric_limits/infinity.cc: Same.
1044 * numeric_limits/traps.cc: New.
1046 2005-11-09 Paolo Carlini <pcarlini@suse.de>
1048 * include/tr1/boost_shared_ptr.h: Trivial formatting fixes.
1050 2005-11-08 Benjamin Kosnik <bkoz@redhat.com>
1052 * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode): Use
1053 exe as the executable extension.
1055 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Change gnu defaults to
1057 (GLIBCXX_ENABLE_PCH): Adjust message order.
1058 * configure: Regenerate.
1060 * scripts/testsuite_flags.in (query): Correct print_usagex typo.
1062 * include/bits/functexcept.h: Remove argument names.
1064 * src/mt_allocator.cc: Adjust comment.
1066 2005-11-06 Paolo Carlini <pcarlini@suse.de>
1069 * include/bits/stl_queue.h (priority_queue): Tweak a bit the
1070 comment describing the container.
1072 2005-11-05 Paolo Carlini <pcarlini@suse.de>
1074 * configure.host: Add | rs6000 to the cpu_defines_dir switch,
1075 consistently with the try_cpu one.
1077 2005-11-05 Paolo Carlini <pcarlini@suse.de>
1080 * include/bits/c++config: Include cpu_defines.h.
1081 * include/Makefile.am: Add cpu_defines.h to host_headers.
1082 * configure.host: Add cpu_defines_dir.
1083 * configure.ac: Use it.
1084 * config/cpu/powerpc/cpu_defines.h: New.
1085 * config/cpu/generic/cpu_defines.h: Likewise.
1086 * configure: Regenerate.
1087 * Makefile.in: Likewise.
1088 * include/Makefile.in: Likewise.
1089 * libmath/Makefile.in: Likewise.
1090 * libsupc++/Makefile.in: Likewise.
1091 * po/Makefile.in: Likewise.
1092 * src/Makefile.in: Likewise.
1093 * testsuite/Makefile.in: Likewise.
1095 2005-11-03 Paolo Carlini <pcarlini@suse.de>
1097 * include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
1098 Change the various traits_type::copy call to always copy the
1099 entire local buffer; return early and don't do a full swap on
1100 the lengths for two common cases; change two _S_copy to plain
1103 2005-11-02 Thomas Kho <tkho@ucla.edu>
1106 * include/bits/stl_vector.h (vector<>::clear): Open code
1107 in terms of _Destroy.
1109 2005-11-02 Paolo Carlini <pcarlini@suse.de>
1111 * include/bits/vector.tcc (vector<>::_M_fill_assign): Qualify fill_n.
1113 2005-11-01 Paolo Carlini <pcarlini@suse.de>
1116 * include/tr1/boost_shared_ptr.h (shared_ptr<>::get_deleter):
1117 Move out of shared_ptr.
1118 * testsuite/tr1/2_general_utilities/memory/shared_ptr/misc/24595.cc:
1121 2005-10-30 Paolo Carlini <pcarlini@suse.de>
1124 * include/c_std/std_csignal.h: Adjust comment as per 17.4.1.2/4.
1125 * include/c_std/std_cstdlib.h: Likewise.
1126 * include/c_std/std_cstdio.h: Likewise.
1127 * include/c_std/std_cstdarg.h: Likewise.
1128 * include/c_std/std_cctype.h: Likewise.
1129 * include/c_std/std_cerrno.h: Likewise.
1130 * include/c_std/std_cmath.h: Likewise.
1131 * include/c_std/std_ciso646.h: Likewise.
1132 * include/c_std/std_ctime.h: Likewise.
1133 * include/c_std/std_clocale.h: Likewise.
1134 * include/c_std/std_climits.h: Likewise.
1135 * include/c_std/std_cassert.h: Likewise.
1136 * include/c_std/std_csetjmp.h: Likewise.
1137 * include/c_std/std_cwchar.h: Likewise.
1138 * include/c_std/std_cfloat.h: Likewise.
1139 * include/c_std/std_cstring.h: Likewise.
1140 * include/c_std/std_cstddef.h: Likewise.
1141 * include/c_std/std_cwctype.h: Likewise.
1143 2005-10-29 Carey Evans <carey.evans@gmail.com>
1146 * config/os/djgpp/ctype_inline.h: Fix.
1147 * config/os/djgpp/ctype_noninline.h: Likewise.
1149 2005-10-28 Paolo Carlini <pcarlini@suse.de>
1152 * include/c_std/std_cwchar.h (wcspbrk): Adjust signature.
1153 * testsuite/21_strings/c_strings/wchar_t/24559.cc: New.
1155 2005-10-25 Paolo Carlini <pcarlini@suse.de>
1157 * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 39.
1158 * docs/html/ext/howto.html: Adjust.
1160 2005-10-21 Paolo Carlini <pcarlini@suse.de>
1163 * config/locale/generic/time_members.h (__timepunct<>::
1164 __timepunct(__c_locale, const char*, size_t)): Avoid leaking
1165 memory if new throws inside _M_initialize_timepunct.
1166 * config/locale/gnu/time_members.h (__timepunct<>::
1167 __timepunct(__c_locale, const char*, size_t)): Likewise.
1168 * config/locale/gnu/message_members.h (messages<>::
1169 messages(__c_locale, const char*, size_t)): Rearrange to
1172 2005-10-19 Paolo Carlini <pcarlini@suse.de>
1174 * include/ext/sso_string_base.h (_M_swap): Rewrite.
1176 2005-10-19 Paolo Carlini <pcarlini@suse.de>
1178 * include/ext/rc_string_base.h (_S_terminal): Remove.
1179 (_M_set_length): Adjust.
1180 (_S_max_size): Change to anonymous enum.
1181 (_M_max_size()): Add, returns the latter.
1182 * include/ext/sso_string_base.h: Likewise.
1183 * include/ext/vstring.h (max_size): Adjust.
1185 2005-10-17 Jonathan Wakely <redi@gcc.gnu.org>
1188 * include/tr1/boost_shared_ptr.h
1189 (_Sp_counted_base::_Sp_counted_base()): When __GTHREAD_MUTEX_INIT
1190 is defined, initialize the mutex.
1192 2005-10-15 Paolo Carlini <pcarlini@suse.de>
1194 * include/tr1/functional: Add missing #pragma GCC system_header.
1196 2005-10-14 Paolo Carlini <pcarlini@suse.de>
1198 * include/tr1/hashtable (hashtable::m_erase): Rename to erase_node.
1199 (hashtable::erase(iterator), erase(const_iterator)): Adjust.
1201 2005-10-13 Richard Earnshaw <richard.earnsahw@arm.com>
1204 * acinclude.m4 (port_specific_symbol_files): More symbol versioning
1206 * configure: Regenerate.
1208 2005-10-13 Hans-Peter Nilsson <hp@axis.com>
1210 * testsuite/lib/libstdc++.exp (libstdc++_init): Require
1211 native testing before setting v3-sharedlib to 1.
1213 2005-10-12 Joe Buck <Joe.Buck@synopsys.com>
1215 * docs/html/27_io/howto.html: Use reference to ifstream when
1218 2005-10-11 Andrew Pinski <pinskia@physics.uc.edu>
1221 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Fix typo in check
1223 * configure: Regenerate.
1225 2005-10-10 Benjamin Kosnik <bkoz@redhat.com>
1227 * configure.ac (libtool_VERSION): To 6:7:0.
1228 * configure: Regenerate.
1229 * testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.7.
1230 * config/linker-map.gnu: Export locale::_Impl::_M_install_cache.
1232 2005-10-10 Ian Lance Taylor <ian@airs.com>
1235 * include/bits/locale_classes.h (locale::_Impl::_M_install_cache):
1237 * src/locale.cc: Define here, add mutex.
1239 2005-10-09 Paolo Carlini <pcarlini@suse.de>
1241 PR libstdc++/24061 (issue 6.19)
1242 * include/tr1/hashtable (struct node_const_iterator, struct
1243 hashtable_const_iterator): New, add const variants to enable separate
1244 overloadings for iterator and const_iterator in unordered_set and
1245 unordered_multiset (as required by issue 6.19).
1246 (class hashtable): Change the mutable_iterators template parameter
1247 to constant_iterators and adjust throughout the logic.
1248 (hashtable::insert(iterator, const value_type&), erase(iterator)
1249 erase(iterator, iterator)): New, as per issue 6.19.
1250 (hashtable::m_erase(node*, node**)): New, called by erase(iterator)
1251 and erase(const_iterator).
1252 (hashtable::Insert_Conv_Type): New, used by insert(iterator,
1253 const value_type&) and insert(const_iterator, const value_type&)
1254 to delegate the work to insert(const value_type&).
1255 * include/tr1/unordered_map (class unordered_map, unordered_multimap):
1257 * include/tr1/unordered_set (class unordered_set, unordered_multiset):
1259 * testsuite/tr1/6_containers/unordered/erase/24061-map.cc: New.
1260 * testsuite/tr1/6_containers/unordered/erase/24061-multimap.cc: New.
1261 * testsuite/tr1/6_containers/unordered/erase/24061-multiset.cc: New.
1262 * testsuite/tr1/6_containers/unordered/erase/24061-set.cc: New.
1263 * testsuite/tr1/6_containers/unordered/insert/24061-map.cc: New.
1264 * testsuite/tr1/6_containers/unordered/insert/24061-multimap.cc: New.
1265 * testsuite/tr1/6_containers/unordered/insert/24061-multiset.cc: New.
1266 * testsuite/tr1/6_containers/unordered/insert/24061-set.cc: New.
1268 2005-10-08 Kazu Hirata <kazu@codesourcery.com>
1270 Merge from csl-arm-branch:
1271 2004-12-15 Daniel Jacobowitz <dan@codesourcery.com>
1272 * libstdc++-v3/config/linker-map.gnu: Add ARM EABI symbols.
1274 2005-10-07 Paolo Carlini <pcarlini@suse.de>
1276 Fix libstdc++/24196 for ext/vstring/rc by returning to the behavior
1277 of basic_string pre-2003-06-13; remove fully-dynamic-string stuff.
1278 * include/ext/rc_string_base.h (_M_refcopy): Move inside the
1279 _Rep class and remove code in macro.
1280 (__rc_string_base()): Construct with _S_empty_rep()._M_refcopy().
1281 (_M_dispose, _M_leak_hard): Remove code in macro.
1282 (_S_construct): Return _S_empty_rep()._M_refcopy() for empty string.
1285 * include/ext/rc_string_base.h (_Rep::_M_refdata()): Minor tweak,
1288 2005-10-07 Benjamin Kosnik <bkoz@redhat.com>
1290 * docs/doxygen/user.cfg.in: Update to Doyxygen 1.4.4.
1292 2005-10-05 Paolo Carlini <pcarlini@suse.de>
1294 * include/ext/sso_string_base.h (struct __sso_string_local):
1295 Remove, actually POD types cannot have user defined constructors
1296 (being aggregates) and therefore can always be members of unions.
1297 (class __sso_string_base): Adjust consistently.
1299 2005-10-05 Paolo Carlini <pcarlini@suse.de>
1302 * testsuite/27_io/basic_filebuf/3.cc: Use __gnu_test::pod_ushort
1304 * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
1305 * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
1306 * testsuite/27_io/basic_fstream/3.cc: Likewise; run the test.
1307 * testsuite/27_io/basic_ifstream/3.cc: Likewise; run the test.
1308 * testsuite/27_io/basic_ios/3.cc: Likewise.
1309 * testsuite/27_io/basic_iostream/3.cc: Likewise; run the test.
1310 * testsuite/27_io/basic_istream/3.cc: Likewise; run the test.
1311 * testsuite/27_io/basic_istringstream/3.cc: Likewise; run the test.
1312 * testsuite/27_io/basic_ofstream/3.cc: Likewise; run the test.
1313 * testsuite/27_io/basic_ostream/3.cc: Likewise; run the test.
1314 * testsuite/27_io/basic_ostringstream/3.cc: Likewise; run the test.
1315 * testsuite/27_io/basic_streambuf/3.cc: Likewise.
1316 * testsuite/27_io/basic_stringbuf/3.cc: Likewise.
1317 * testsuite/27_io/basic_stringstream/3.cc: Likewise; run the test.
1319 2005-10-05 Paolo Carlini <pcarlini@suse.de>
1321 PR libstdc++/11729 (DR 280, [Ready])
1322 * include/bits/stl_iterator.h: Add reverse_iterator global
1323 functions with two template parameters (operator==, !=, <,
1325 * testsuite/24_iterators/reverse_iterator/11729.cc: New.
1326 * docs/html/ext/howto.html: Add an entry for issue 280.
1328 2005-10-03 Paolo Carlini <pcarlini@suse.de>
1330 * include/tr1/hashtable
1331 (node_iterator::node_iterator(const node_iterator<,true,>&)): Fix to
1332 take a "false" (i.e., is_const == false) node_iterator.
1333 (hashtable_iterator::hashtable_iterator(const hashtable_iterator<,
1334 true,>&)): Likewise for hashtable_iterator.
1335 (hashtable::const_local_iterator): Fix typedef (is_const == true).
1336 (hashtable::const_iterator): Likewise.
1337 * testsuite/tr1/6_containers/unordered/types/map_iterator.cc: New.
1338 * testsuite/tr1/6_containers/unordered/types/multimap_iterator.cc: New.
1339 * testsuite/tr1/6_containers/unordered/types/set_iterator.cc: New.
1340 * testsuite/tr1/6_containers/unordered/types/multiset_iterator.cc: New.
1342 2005-10-02 Paolo Carlini <pcarlini@suse.de>
1345 * include/tr1/hashtable (erase(const key_type&)): Return the
1346 number of elements erased.
1347 * testsuite/tr1/6_containers/unordered/hashtable/24054.cc: New.
1349 2005-10-01 Kenny Simpson <theonetruekenny@yahoo.com>
1351 * include/tr1/tuple_iterate.h (tuple::operator=(const std::pair<>&)):
1354 2005-09-30 Paolo Carlini <pcarlini@suse.de>
1357 * include/tr1/hashtable (hash_code_base<>::store_code): Add.
1358 (hashtable<>::insert(const value_type&)): Use it.
1359 * testsuite/tr1/6_containers/unordered/hashtable/24064.cc: New.
1361 2005-09-30 Paolo Carlini <pcarlini@suse.de>
1364 * include/bits/locale_facets.tcc (__numpunct_cache<>::_M_cache,
1365 __moneypunct_cache<>::_M_cache): Check that grouping()[0] > 0.
1366 (__verify_grouping): Do the last check only if __grouping[__min] > 0.
1367 (__add_grouping<>): End recursion if *__gbeg <= 0.
1368 * testsuite/22_locale/num_get/get/char/23953.cc: New.
1369 * testsuite/22_locale/num_get/get/wchar_t/23953.cc: Likewise.
1370 * testsuite/22_locale/num_put/put/char/23953.cc: Likewise.
1371 * testsuite/22_locale/num_put/put/wchar_t/23953.cc: Likewise.
1373 2005-09-29 Chris Jefferson <chris@bubblescope.net>
1376 * include/tr1/tuple_iterate.h (tuple): Add operator=(std::pair).
1377 * testsuite/tr1/6_containers/tuple/creation_functions/23978.cc: New.
1379 * include/tr1/functional (ref, cref): Make inline.
1380 * include/tr1/tuple_iterate.h (tie): Correct formatting.
1381 (make_tuple): Make inline.
1383 2005-09-25 Benjamin Kosnik <bkoz@redhat.com>
1384 Eric Botcazou <ebotcazou@libertysurf.fr>
1386 * include/ext/mt_allocator.h
1387 (__per_type_pool<...true>::_S_initialize_once): Always call
1389 (__common_pool<...true>::_S_initialize_once): Same.
1391 2005-09-23 Benjamin Kosnik <bkoz@redhat.com>
1393 * testsuite/ext/mt_allocator/tune-1.cc: Clarify for single-thread.
1394 * testsuite/ext/mt_allocator/tune-2.cc: Same.
1395 * testsuite/ext/mt_allocator/tune-3.cc: Same.
1396 * testsuite/ext/mt_allocator/tune-4.cc: Same.
1398 2005-09-21 Guillaume Melquiond <guillaume.melquiond@ens-lyon.fr>
1401 * include/ext/mt_allocator.h: Remove excess
1402 policy_type::_S_get_pool calls in constructors.
1404 2005-09-18 Paolo Carlini <pcarlini@suse.de>
1406 PR libstdc++/23417 (cont)
1407 * include/bits/stl_tree.h (_Rb_tree_impl<true>): Use member
1408 initialization list for -Weffc++.
1410 2005-09-16 Janis Johnson <janis187@us.ibm.com>
1412 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/23871.cc:
1415 2005-09-15 Benjamin Kosnik <bkoz@redhat.com>
1420 * include/bits/c++config: Set _GLIBCXX_STD regardless of __GXX_WEAK__.
1421 Add in check for __NO_INLINE__ for warning.
1422 * testsuite/lib/dg-options.exp (dg-require-debug-mode): New.
1423 * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode): New.
1424 * testsuite/21_strings/basic_string/element_access/char/21674.cc:
1426 * testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc:
1429 2005-09-15 Paolo Carlini <pcarlini@suse.de>
1432 * include/std/std_ostream.h (operator<<(short), operator<<(unsigned
1433 short), operator<<(int), operator<<(unsigned int), operator<<(float)):
1434 Don't call operator<<(long), operator<<(unsigned long), or
1435 operator<<(double), do the work mandated by the resolution of DR117...
1436 * include/bits/ostream.tcc (operator<<(short), operator<<(unsigned
1437 short), operator<<(int), operator<<(unsigned int), operator<<(float)):
1439 * testsuite/27_io/basic_ostream/inserters_arithmetic/pod/23875.cc: New.
1441 2005-09-15 Mark Mitchell <mark@codesourcery.com>
1443 * testsuite/testsuite_character.h: Specialize character<>
1444 templates in __gnu_cxx, not in __gnu_test.
1446 2005-09-13 Jonathan Wakely <cow@compsoc.man.ac.uk>
1447 Benjamin Kosnik <bkoz@redhat.com>
1450 * testsuite/21_strings/basic_string/element_access/char/21674.cc: New.
1451 * testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc:
1454 2005-09-12 David Edelsohn <dje@gcc.gnu.org>
1458 * include/Makefile.am (stamp-assoc): Install each subgroup
1459 of headers separately.
1460 * include/Makefile.in: Regenerate.
1462 2005-09-12 Benjamin Kosnik <bkoz@redhat.com>
1464 * testsuite/ext/mt_allocator/22309_thread.cc: Remove dg-do run.
1465 * testsuite/lib/libstdc++.exp ( proc libstdc++_init): Enable
1466 shared only for linux.
1468 2005-09-12 Benjamin Kosnik <bkoz@redhat.com>
1469 David Edelsohn <dje@gcc.gnu.org>
1473 * include/Makefile.am (assoc_headers): Break into five sub values.
1474 (install-headers): Use them.
1475 (stamp-assoc): Same.
1476 * include/Makefile.in: Regenerate.
1478 2005-09-12 Chris Jefferson <chris@bubblescope.net>
1480 * include/bits/stl_algo.h (search_n): Delegate to specializations.
1481 (search_n(,,,,binary_predicate)): Likewise.
1482 (__search_n(forward_iterator_tag)): Original search_n, tweak to
1483 remove an unnecessary comparison.
1484 (__search_n(,,,,binary_predicate,forward_iterator_tag)): Likewise.
1486 2005-09-12 Jim Xochellis <jimxoch@yahoo.gr>
1488 * include/bits/stl_algo.h
1489 (__search_n(std::random_access_iterator_tag)): Add specialization.
1490 (__search_n(,,,,binary_predicate,std::random_access_iterator_tag)):
1493 2005-09-12 Benjamin Kosnik <bkoz@redhat.com>
1496 * include/bits/stl_list.h (_List_impl): Use member initialization
1498 * include/bits/stl_tree.h (_Rb_tree_impl): Same.
1500 2005-09-12 Paolo Carlini <pcarlini@suse.de>
1503 * include/bits/stl_iterator.h (__normal_iterator::
1504 __normal_iterator<>(const __normal_iterator<_Iter, _Container>&)):
1505 Enable only when _Iter is equal to _Container::pointer.
1506 * testsuite/21_strings/basic_string/types/23767.cc: New.
1507 * testsuite/23_containers/vector/types/23767.cc: Likewise.
1508 * testsuite/ext/vstring/types/23767.cc: Likewise.
1510 2005-09-11 Benjamin Kosnik <bkoz@redhat.com>
1514 * include/ext/mt_allocator.h
1515 (__gnu_cxx::__create_handler): Remove.
1516 (__pool<true>::_M_destroy_thread_key): Compatibility only.
1517 (__pool<true>::_M_initialize(__destroy): Same.
1518 (__pool<true>::_M_initialize): New.
1519 (__pool<true>::_M_initialize_once): Nothing fancy.
1520 (__pool<true>::_M_once): Remove.
1521 (__common_pool): New.
1522 (__common_pool_base): New.
1523 (__per_type_pool): New.
1524 (__per_type_pool_base): New.
1525 * src/mt_allocator.cc: Same.
1526 * config/linker-map.gnu (__pool<true>::_M_initialize()): Add.
1528 2005-09-11 Jakub Jelinek <jakub@redhat.com>
1532 * src/mt_allocator.cc (__gnu_internal::freelist_mutex): Make static.
1533 (__gnu_internal::__freelist): New type.
1534 (__gnu_internal::freelist): New variable.
1535 (__gnu_internal::_M_destroy_thread_key): New function.
1536 (__gnu_cxx::__pool<true>::_M_destroy): Don't delete
1537 _M_thread_freelist_initial.
1538 (__gnu_cxx::__pool<true>::_M_initialize): Make argument nameless.
1539 Don't use _M_thread_freelist and _M_thread_freelist_initial
1540 __pool<true> fields, instead use __gnu_internal::freelist fields, call
1541 gthread_key_create just once. Use
1542 __gnu_internal::_M_destroy_thread_key as key destructor.
1543 (__gnu_cxx::__pool<true>::_M_get_thread_id): Store size_t id
1544 rather than _Thread_record* in the thread specific value. Don't
1545 use _M_thread_freelist __pool<true> field, instead use
1546 __gnu_internal::freelist fields.
1547 (__gnu_cxx::__pool<true>::_M_destroy_thread_key): Do nothing.
1549 2005-09-11 Benjamin Kosnik <bkoz@redhat.com>
1550 Jakub Jelinek <jakub@redhat.com>
1554 * testsuite/testsuite_shared.cc: New.
1555 * testsuite/lib/dg-options.exp (dg-require-sharedlib): New.
1556 * testsuite/lib/libstdc++.exp (libstdc++_init): Look for shared
1557 library, and set v3-sharedlib based on this.
1558 (check_v3_target_sharedlib): New.
1559 (proc v3-build_support): Build shared objects.
1560 * testsuite/ext/mt_allocator/22309_thread.cc: New, use above.
1562 2005-09-11 Paolo Carlini <pcarlini@suse.de>
1565 * include/bits/stl_list.h (_List_iterator<>::
1566 _List_iterator(_List_node_base*), _List_const_iterator<>::
1567 _List_const_iterator(const _List_node_base*)): Make explicit.
1568 (list<>::begin(), list<>::end(), list<>::pop_back()): Adjust
1570 * include/bits/list.tcc (list<>::insert, list<>::erase): Adjust
1572 * include/bits/stl_tree.h (_Rb_tree_iterator<>::
1573 _Rb_tree_iterator(_Link_type), _Rb_tree_const_iterator<>::
1574 _Rb_tree_const_iterator(_Link_type)): Make explicit.
1575 (_Rb_tree<>::begin(), _Rb_tree<>::end()): Adjust consistently.
1576 * include/ext/slist (_Slist_iterator<>::_Slist_iterator(_Node*)):
1578 (slist<>::erase(iterator), slist<>::erase(iterator, iterator)):
1579 Adjust consistently.
1580 * include/tr1/hashtable (hashtable_iterator<>::
1581 hashtable_iterator(hash_node<>**)): Make explicit.
1582 * testsuite/23_containers/list/23781.cc: New.
1583 * testsuite/23_containers/map/23781.cc: Likewise.
1584 * testsuite/23_containers/multimap/23781.cc: Likewise.
1585 * testsuite/23_containers/multiset/23781.cc: Likewise.
1586 * testsuite/23_containers/set/23781.cc: Likewise.
1587 * testsuite/ext/slist/23781.cc: Likewise.
1588 * testsuite/tr1/6_containers/unordered/23781.cc: Likewise.
1589 * testsuite/23_containers/map/operators/1_neg.cc: Adjust dg-error
1591 * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
1593 * include/tr1/array (array<>::begin(), array<>::end()): Adjust
1594 stylistically for consistency with the other containers.
1596 2005-09-10 Joseph S. Myers <joseph@codesourcery.com>
1598 * testsuite/26_numerics/cmath/c99_classification_macros_c.cc:
1599 XFAIL on *-*-linux*, not *-*-linux-gnu.
1601 2005-09-09 Benjamin Kosnik <bkoz@redhat.com>
1602 Jakub Jelinek <jakub@redhat.com>
1604 * src/debug.cc (iterator_base_mutex): Make static for internal
1606 * src/locale_init.cc (locale_mutex): Same.
1607 * src/mt_allocator.cc (freelist_mutex): Same.
1608 * src/pool_allocator.cc (palloc_init_mutex): Same.
1610 2005-09-02 Paolo Carlini <pcarlini@suse.de>
1612 * testsuite/tr1/6_containers/unordered/hashtable/23465.cc:
1613 Reduce maximum size and lf.
1615 2005-09-01 Benjamin Kosnik <bkoz@redhat.com>
1617 * include/c_std/std_cmath.h: Declare C99 functions and helper
1618 functions as inline.
1620 2005-09-01 Benjamin Kosnik <bkoz@redhat.com>
1621 Paolo Carlini <pcarlini@suse.de>
1623 * testsuite/lib/libstdc++.exp (check_v3_target_cxa_atexit): Fix
1626 2005-09-01 Benjamin Kosnik <bkoz@redhat.com>
1628 * testsuite/lib/libstdc++.exp (check_v3_target_cxa_atexit): New.
1629 * testsuite/lib/dg-options.exp (dg-require-cxa-atexit): New.
1630 * testsuite/ext/mt_allocator/deallocate_local-6.cc: New.
1631 * testsuite/ext/mt_allocator/deallocate_local-8.cc: New.
1632 * testsuite/ext/mt_allocator/deallocate_local_thread-5.cc: New.
1633 * testsuite/ext/mt_allocator/deallocate_local_thread-7.cc: New.
1634 * docs/html/ext/mt_allocator.html: Add link to examples.
1635 * testsuite/testsuite_allocator.h: Tweak.
1636 * testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
1637 * testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
1638 * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
1639 * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
1640 * testsuite/ext/mt_allocator/deallocate_local-2.cc: Same.
1641 * testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.
1642 * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
1643 * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
1644 * testsuite/ext/new_allocator/deallocate_global.cc: Same.
1645 * testsuite/ext/new_allocator/deallocate_local.cc: Same.
1647 2005-08-31 Paolo Carlini <pcarlini@suse.de>
1648 Kaspar Fischer <fischerk@inf.ethz.ch>
1651 * include/bits/stl_bvector.h (_Bit_iterator::operator[],
1652 _Bit_const_iterator::operator[]): Const-ify.
1653 * testsuite/23_containers/vector/bool/23632.cc: New.
1655 2005-08-30 Paolo Carlini <pcarlini@suse.de>
1657 PR libstdc++/23578 (cont)
1658 * include/bits/stl_bvector.h (class vector<bool>): Add
1659 a dummy data() to avoid problems in debug-mode.
1661 2005-08-30 Paolo Carlini <pcarlini@suse.de>
1663 * testsuite/ext/hash_map/23528.cc: New.
1665 2005-08-29 Paolo Carlini <pcarlini@suse.de>
1667 * include/bits/stl_map.h (class map): ... and a missing @a.
1669 2005-08-29 Paolo Carlini <pcarlini@suse.de>
1671 * include/bits/stl_map.h (class map): Add missing % in comment.
1673 2005-08-29 Paolo Carlini <pcarlini@suse.de>
1675 PR libstdc++/23578 (DR 464 [Ready])
1676 * include/bits/stl_map.h (class map): Add at(const key_type&)
1678 * include/bits/stl_vector.h (class vector): Add data() member
1680 * include/debug/map.h (class map): Adjust consistently.
1681 * include/debug/vector (class vector): Likewise.
1682 * testsuite/23_containers/map/element_access/1.cc: New.
1683 * testsuite/23_containers/vector/data_access/1.cc: Likewise.
1684 * docs/html/ext/howto.html: Add an entry for DR 464.
1686 2005-08-26 Benjamin Kosnik <bkoz@redhat.com>
1688 PR libstdc++/20534 (contd)
1689 * src/debug.cc (__gnu_debug): Remove __fancy_abort definition.
1690 Remove cstdio and cstdlib includes.
1691 * include/debug/debug.h: Define inline here. Remove
1692 _GLIBCXX_DEBUG_ABORT.
1693 * include/debug/macros.h: Remove __fancy_abort declaration,
1694 _GLIBXX_DEBUG_ABORT definition.
1695 * config/linker-map.gnu: Remove export.
1697 2005-08-26 Benjamin Kosnik <bkoz@redhat.com>
1699 * scripts/check_compile (UNIQUE_ID): New. Use to name output files.
1701 2005-08-26 Paolo Carlini <pcarlini@suse.de>
1704 * include/tr1/array: Implement members back(), front(), data(),
1705 and the tuple interface; tidy.
1706 * testsuite/tr1/6_containers/array/element_access/back.cc: New.
1707 * testsuite/tr1/6_containers/array/element_access/data.cc: Likewise.
1708 * testsuite/tr1/6_containers/array/element_access/front.cc: Likewise.
1709 * testsuite/tr1/6_containers/array/tuple_interface/get.cc: Likewise.
1710 * testsuite/tr1/6_containers/array/tuple_interface/tuple_element.cc:
1712 * testsuite/tr1/6_containers/array/tuple_interface/tuple_size.cc:
1715 2005-08-25 Paolo Carlini <pcarlini@suse.de>
1717 * include/tr1/hashtable: Use __throw_exception_again,
1718 not naked throw, in the catch clauses.
1720 2005-08-24 Lawrence Lim <llim@redhat.com>
1721 Jakub Jelinek <jakub@redhat.com>
1722 Benjamin Kosnik <bkoz@redhat.com>
1725 * testsuite/21_strings/char_traits/requirements/char/1.cc
1726 (test01): Simplify counting.
1727 * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc
1730 2005-08-24 Paolo Carlini <pcarlini@suse.de>
1731 Chris Jefferson <chris@bubblescope.net>
1734 * include/tr1/hashtable (hash_code_base::m_swap): Use
1736 (hashtable<>::hashtable(const hashtable&)): Use copy_code;
1737 fix m_allocate_node call.
1738 * testsuite/tr1/6_containers/unordered/hashtable/23465.cc: New.
1740 2005-08-23 Kelley Cook <kcook@gcc.gnu.org>
1743 * testsuite/data/sgetn.txt: Revert to previous FSF address.
1745 2005-08-23 Thomas Kho <tkho@ucla.edu>
1748 * include/bits/stl_construct.h (_Destroy(_ForwardIterator,
1749 _ForwardIterator, allocator<_Tp>)): Removed unused template parameter.
1751 2005-08-22 Geoffrey Keating <geoffk@apple.com>
1753 * testsuite/23_containers/vector/resize/1.cc: XFAIL on darwin8.
1754 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
1756 2005-08-19 J"orn Rennecke <joern.rennecke@st.com>
1758 * config/cpu/sh/atomicity.h: Replace broken generic code with current
1759 copy of generic/atomicity.h .
1761 2005-08-17 Kelley Cook <kcook@gcc.gnu.org>
1763 * All files: Update FSF address.
1765 2005-08-09 Andrew Pinski <pinskia@physics.uc.edu>
1767 * testsuite/26_numerics/cmath/c99_classification_macros_c.cc:
1768 xfail on *-*-darwin*.
1770 2005-08-03 Geoffrey Keating <geoffk@apple.com>
1772 * configure.ac: Don't use GCC_NO_EXECUTABLES or clear
1773 GLIBCXX_IS_NATIVE on Darwin crosses.
1774 * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Don't skip configuring
1775 the testsuite just because there's no symbol versioning.
1776 * configure: Regenerate.
1778 * acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Print
1780 (GLIBCXX_CHECK_S_ISREG_OR_S_IFREG): Likewise.
1781 (GLIBCXX_CHECK_POLL): Likewise.
1782 (GLIBCXX_CHECK_WRITEV): Likewise.
1783 (GLIBCXX_CHECK_INT64_T): Likewise.
1784 (GLIBCXX_CHECK_LFS): Likewise.
1785 * configure: Regenerate.
1787 2005-07-30 Andrew Pinski <pinskia@physics.uc.edu>
1789 * scripts/make_exports.pl: Pass --strip-underscores to c++filt.
1791 2005-07-29 H.J. Lu <hongjiu.lu@intel.com>
1794 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Revert
1795 the change to info.ttype_base.
1797 2005-07-28 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
1799 * include/std/std_valarray.h: Fix grammar in comments.
1801 2005-07-25 Geoffrey Keating <geoffk@apple.com>
1803 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Handle darwin-export,
1804 and make it the default for Darwin.
1805 * scripts/make-exports.pl: New.
1806 * src/Makefile.am: Update for changes to GLIBCXX_ENABLE_SYMVERS.
1807 Handle darwin-export.
1808 * configure: Regenerate.
1809 * include/Makefile.in: Regenerate.
1810 * libmath/Makefile.in: Regenerate.
1811 * libsupc++/Makefile.in: Regenerate.
1812 * po/Makefile.in: Regenerate.
1813 * src/Makefile.in: Regenerate.
1814 * testsuite/Makefile.in: Regenerate.
1816 2005-07-25 Dave Odell <evilalias@hotmail.com>
1819 * include/tr1/hashtable (hashtable<>::find_node): Const-ify.
1820 * testsuite/tr1/6_containers/unordered/hashtable/23053.cc: New.
1822 2005-07-25 Paolo Carlini <pcarlini@suse.de>
1825 * include/bits/basic_string.h: Declare the specialization
1826 operator>>(basic_istream<char>&, basic_string<char>&).
1827 * include/std/std_istream.h: Declate the specialization
1828 operator>>(basic_istream<char>&, char*).
1829 * include/std/std_streambuf.h (basic_streambuf): Add friend
1830 declarations for the above.
1831 * src/istream.cc: Define the above.
1832 * testsuite/27_io/basic_istream/extractors_character/char/4.cc: New.
1833 * testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc:
1835 * testsuite/performance/27_io/ifstream_extract_chars.cc: Likewise.
1837 2005-07-20 Paolo Carlini <pcarlini@suse.de>
1839 * include/bits/streambuf.tcc (xsgetn, xsputn): Use streamsize
1841 * src/streambuf.cc (__copy_streambufs): Likewise.
1843 2005-07-18 Paolo Carlini <pcarlini@suse.de>
1845 * config/locale/gnu/ctype_members.cc (do_is(mask, wchar_t)):
1846 Speed-up for the common case of mask == ctype_base::space;
1847 otherwise, exit the loop earlier if the mask is one of the
1850 2005-07-14 Paolo Carlini <pcarlini@suse.de>
1852 PR libstdc++/21193 (float, double, long double)
1853 * include/tr1/functional (hash<float>, hash<double>):
1854 Reimplement exploiting the Fnv_hash<>::hash helper.
1855 (hash<long double>): Reimplement using frexp (in this
1856 case, due to random padding bits, the former approach
1857 is not generally viable).
1859 2005-07-13 Paolo Carlini <pcarlini@suse.de>
1861 PR libstdc++/21193 (string & wstring)
1862 * include/tr1/functional (hash<string>, hash<wstring>):
1863 Reimplement using the FNV hash.
1865 * include/tr1/functional: Trivial formatting fixes.
1867 2005-07-11 Paolo Carlini <pcarlini@suse.de>
1869 * include/bits/ostream.tcc (basic_ostream<>::operator<<(long),
1870 basic_ostream<>::operator<<(long long)): Don't deal with oct
1871 and hex and casts to unsigned here...
1872 * include/bits/locale_facets.tcc (__int_to_char(_CharT*, long,
1873 const _CharT*, ios_base::fmtflags), __int_to_char(_CharT*, long
1874 long, const _CharT*, ios_base::fmtflags)): ... do that here,
1875 instead, as per Table 57.
1876 (num_put<>::_M_insert_int): Tidy treatment of numeric base and
1878 * include/std/std_ostream.h (operator<<(short), operator<<(int)):
1879 Adjust logic, as per the letter of the resolution of DR117 [WP].
1880 * testsuite/22_locale/num_put/put/char/10.cc: New.
1881 * testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise.
1882 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/7.cc:
1884 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/7.cc:
1887 2005-07-07 David Edelsohn <edelsohn@gnu.org>
1889 * testsuite/ext/pb_assoc/example/tree_order_statistics_join.cc:
1890 Change map_t to map_type.
1892 2005-07-05 Paolo Carlini <pcarlini@suse.de>
1894 Add class __versa_string, a versatile "basic_string-type" class:
1895 an additional, non-standard, template parameter allows to specify
1896 the preferred base class. Two are provided: __rc_string_base,
1897 which implements a behavior very similar to our standard string,
1898 and __sso_string_base, not reference-counted and optimized for
1900 * include/ext/rc_string_base.h: New.
1901 * include/ext/sso_string_base.h: Likewise.
1902 * include/ext/vstring.h: Likewise.
1903 * include/ext/vstring.tcc: Likewise.
1904 * include/ext/vstring_fwd.h: Likewise.
1905 * include/ext/vstring_util.h: Likewise.
1906 * include/Makefile.am: Add.
1907 * include/Makefile.in: Regenerate.
1908 * testsuite/ext/vstring/explicit_instantiation/1.cc: New.
1909 * testsuite/ext/vstring/explicit_instantiation/2.cc: Likewise.
1910 * testsuite/ext/vstring/explicit_instantiation/char/1.cc: Likewise.
1911 * testsuite/ext/vstring/explicit_instantiation/wchar_t/1.cc: Likewise.
1913 * Makefile.in: Regenerate with autotools 1.9.3 (to date, the version
1914 officially used by v3).
1915 * aclocal.m4: Likewise.
1916 * libmath/Makefile.in: Likewise.
1917 * libsupc++/Makefile.in: Likewise.
1918 * po/Makefile.in: Likewise.
1919 * src/Makefile.in: Likewise.
1920 * testsuite/Makefile.in: Likewise.
1922 2005-07-01 Paolo Carlini <pcarlini@suse.de>
1924 Port from libstdcxx_so_7-branch:
1925 2004-10-28 Chris Jefferson <chris@bubblescope.net>
1928 * include/bit/stl_algo.h (find(,,,input_iterator_tag),
1929 find(,,,random_access_interator_tag),
1930 find_if(,,,input_iterator_tag),
1931 find_if(,,,random_access_iterator_tag)): Uglify function name.
1932 (find, find_if): Use new uglified specialisation names.
1933 * testsuite/25_algorithms/find/17441.cc: New.
1935 2005-06-30 Ulrich Weigand <uweigand@de.ibm.com>
1937 * include/ext/pb_assoc/detail/hash_fn/mask_based_range_hashing.hpp
1938 (PB_ASSOC_CLASS_C_DEC::s_highest_bit_1): Cast constant 1 to target
1939 type before shifting.
1941 2005-06-29 Paolo Carlini <pcarlini@suse.de>
1943 PR libstdc++/21244 (cont^2)
1944 * include/ext/bitmap_allocator.h: Convert everywhere
1945 bits_per_block to size_t.
1947 2005-06-29 Jonathan Wakely <redi@gcc.gnu.org>
1949 * include/bits/basic_string.h, include/bits/locale_facets.h: Fix
1950 Doxygen comments that use wrong parameter and function names.
1952 2005-06-29 Paolo Carlini <pcarlini@suse.de>
1954 * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 37.
1955 * docs/html/ext/howto.html: Adjust.
1957 2005-06-29 Paolo Carlini <pcarlini@suse.de>
1960 * include/bits/locale_facets.tcc (num_get<>::_M_extract_int,
1961 num_get<>::_M_extract_float, money_get<>::_M_extract):
1962 Adjust to assign the result also when digit grouping is
1963 wrong (but the grammar is correct), as per 22.2.2.1.2, p11-12
1964 (NB: consistently for money_get too).
1965 * config/locale/generic/c_locale.cc (__convert_to_v): Do
1966 not check ios_base::failbit at the outset.
1967 * config/locale/gnu/c_locale.cc: Likewise.
1968 * testsuite/22_locale/money_get/get/char/22131.cc: New.
1969 * testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
1970 * testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
1971 * testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
1972 * testsuite/22_locale/num_get/get/char/12.cc: Adjust.
1973 * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
1974 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
1976 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc:
1979 2005-06-28 Paul Brook <paul@codesourcery.com>
1981 * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Check for
1983 * libsupc++/Makefile.am (sources): Add eh_call.c and eh_arm.c.
1984 * libsupc++/eh_arm.cc: New file.
1985 * libsupc++/eh_call.cc: New file.
1986 * libsupc++/eh_catch.cc (__cxa_get_exception_ptr): Use
1987 __gxx_caught_object.
1988 (__cxa_begin_catch): Ditto. Use __is_gxx_exception_class. Call
1989 _Unwind_Complete when using the ARM EABI.
1990 (__cxa_end_catch): Use __is_gxx_exception_class.
1991 * libsupc++/eh_personality.cc: Define NO_SIZE_OF_ENCODED_VALUE when
1993 (save_caught_exception, restore_caught_exception): New functions.
1994 (_throw_typet): New typedef.
1995 (get_ttype_entry, get_adjusted_ptr, check_exception_spec): Add ARM
1996 EABI implementations.
1997 (PERSONALITY_FUNCTION): Use new functions. Addd support for ARM EABI
1999 (__cxa_unexpected): Disable when using the ARM EABI.
2000 * libsupc++/eh_throw.cc (__cxa_throw): Use __GXX_INIT_EXCEPTION_CLASS.
2001 (__cxa_rethrow): Use __is_gxx_exception_class. Call
2002 _Unwind_RaiseException when using the ARM EABI.
2003 * libsupc++/unwind-cxx.h (struct __cxa_exception): Add fields for ARM
2005 (struct __cxa_eh_globals): Ditto.
2006 (__cxa_call_terminate): Add prototype.
2007 (__cxa_type_match, __cxa_begin_cleanup, __cxa_end_cleanup): Add
2009 (__get_exception_header_from_obj, __get_exception_header_from_ue):
2010 Move earlier in file.
2011 (__is_gxx_exception_class, __GXX_INIT_EXCEPTION_CLASS,
2012 __gxx_caught_object): New functions.
2013 * aclocal.m4: Regenerate.
2014 * configure: Regenerate.
2015 * Makefile.in: Regenerate.
2016 * include/Makefile.in: Regenerate.
2017 * libmath/Makefile.in: Regenerate.
2018 * libsupc++/Makefile.in: Regenerate.
2019 * po/Makefile.in: Regenerate.
2020 * src/Makefie.in: Regenerate.
2021 * testsuite/makefile.in: Regenerate.
2023 2005-06-27 Paolo Carlini <pcarlini@suse.de>
2026 * include/bits/stl_tree.h (insert_unique(iterator, const _Val&),
2027 insert_equal((iterator, const _Val&)): Reimplement to check both
2028 before and after, as per the algorithm "ignore hint if wrong" of
2031 2005-06-27 Benjamin Kosnik <bkoz@redhat.com>
2032 Ami Tavory <pbassoc@gmail.com>
2034 * docs/html/documentation.html: Add link for policy based
2035 associative containers docs.
2036 * docs/html/ext/pb_assoc/Std_hash_set_impl.jpg: New.
2037 * docs/html/ext/pb_assoc/acks.html: New.
2038 * docs/html/ext/pb_assoc/balls_and_bins.jpg: New.
2039 * docs/html/ext/pb_assoc/basic_assoc_cntnr.html: New.
2040 * docs/html/ext/pb_assoc/basic_assoc_cntnr_compound_data.html: New.
2041 * docs/html/ext/pb_assoc/basic_assoc_cntnr_no_data.html: New.
2042 * docs/html/ext/pb_assoc/basic_ds_tag.html: New.
2043 * docs/html/ext/pb_assoc/basic_hash_assoc_cntnr.html: New.
2044 * docs/html/ext/pb_assoc/basic_hash_ds_tag.html: New.
2045 * docs/html/ext/pb_assoc/basic_invalidation_guarantee.html: New.
2046 * docs/html/ext/pb_assoc/basic_ms_tag.html: New.
2047 * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr.html: New.
2048 * docs/html/ext/pb_assoc/
2049 basic_tree_assoc_cntnr_const_node_iterator.html: New.
2050 * docs/html/ext/pb_assoc/
2051 basic_tree_assoc_cntnr_node_iterator.html: New.
2052 * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev.html: New.
2053 * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev_it.html: New.
2054 * docs/html/ext/pb_assoc/basic_tree_ds_tag.html: New.
2055 * docs/html/ext/pb_assoc/cc_hash_assoc_cntnr.html: New.
2056 * docs/html/ext/pb_assoc/cc_hash_ds_tag.html: New.
2057 * docs/html/ext/pb_assoc/
2058 cc_hash_max_collision_check_resize_trigger.html: New.
2059 * docs/html/ext/pb_assoc/cc_hash_policy_cd.jpg: New.
2060 * docs/html/ext/pb_assoc/cd.jpg: New.
2061 * docs/html/ext/pb_assoc/component_requirements.html: New.
2062 * docs/html/ext/pb_assoc/compound_data_enabled_ms_tag.html: New.
2063 * docs/html/ext/pb_assoc/compound_data_type.html: New.
2064 * docs/html/ext/pb_assoc/compound_ds_tag.html: New.
2065 * docs/html/ext/pb_assoc/concepts.html: New.
2066 * docs/html/ext/pb_assoc/contact.html: New.
2067 * docs/html/ext/pb_assoc/counter_update_metadata.html: New.
2068 * docs/html/ext/pb_assoc/counter_update_policy.html: New.
2069 * docs/html/ext/pb_assoc/data_enabled_ms_tag.html: New.
2070 * docs/html/ext/pb_assoc/design.html: New.
2071 * docs/html/ext/pb_assoc/different_underlying_dss.jpg: New.
2072 * docs/html/ext/pb_assoc/direct_mask_range_hashing.html: New.
2073 * docs/html/ext/pb_assoc/direct_mod_range_hashing.html: New.
2074 * docs/html/ext/pb_assoc/disclaimer.html: New.
2075 * docs/html/ext/pb_assoc/ds_gen.html: New.
2076 * docs/html/ext/pb_assoc/ds_tag_cd.jpg: New.
2077 * docs/html/ext/pb_assoc/ds_traits.html: New.
2078 * docs/html/ext/pb_assoc/embedded_lists_1.jpg: New.
2079 * docs/html/ext/pb_assoc/embedded_lists_2.jpg: New.
2080 * docs/html/ext/pb_assoc/examples.html: New.
2081 * docs/html/ext/pb_assoc/exception_guarantees_specifics.html: New.
2082 * docs/html/ext/pb_assoc/find_invalidation_guarantee.html: New.
2083 * docs/html/ext/pb_assoc/find_iterators_cd.jpg: New.
2084 * docs/html/ext/pb_assoc/find_iterators_range_ops_1.jpg: New.
2085 * docs/html/ext/pb_assoc/find_iterators_range_ops_2.jpg: New.
2086 * docs/html/ext/pb_assoc/generics.html: New.
2087 * docs/html/ext/pb_assoc/gp_hash_assoc_cntnr.html: New.
2088 * docs/html/ext/pb_assoc/gp_hash_ds_tag.html: New.
2089 * docs/html/ext/pb_assoc/gp_hash_policy_cd.jpg: New.
2090 * docs/html/ext/pb_assoc/hash_and_probe_general.html: New.
2091 * docs/html/ext/pb_assoc/hash_based_containers.html: New.
2092 * docs/html/ext/pb_assoc/hash_cd.jpg: New.
2093 * docs/html/ext/pb_assoc/hash_exponential_size_policy.html: New.
2094 * docs/html/ext/pb_assoc/hash_fn.html: New.
2095 * docs/html/ext/pb_assoc/hash_load_check_resize_trigger.html: New.
2096 * docs/html/ext/pb_assoc/hash_policies.html: New.
2097 * docs/html/ext/pb_assoc/hash_policy_cd.jpg: New.
2098 * docs/html/ext/pb_assoc/hash_prime_size_policy.html: New.
2099 * docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram.jpg: New.
2100 * docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram2.jpg: New.
2101 * docs/html/ext/pb_assoc/hash_ranged_hash_range_hashing_fns.jpg: New.
2102 * docs/html/ext/pb_assoc/hash_standard_resize_policy.html: New.
2103 * docs/html/ext/pb_assoc/home.html: New.
2104 * docs/html/ext/pb_assoc/index.html: New.
2105 * docs/html/ext/pb_assoc/insert_resize_sequence_diagram1.jpg: New.
2106 * docs/html/ext/pb_assoc/insert_resize_sequence_diagram2.jpg: New.
2107 * docs/html/ext/pb_assoc/insert_resize_sequence_diagram3.jpg: New.
2108 * docs/html/ext/pb_assoc/insert_type_methods.html: New.
2109 * docs/html/ext/pb_assoc/interface.html: New.
2110 * docs/html/ext/pb_assoc/interval_node_invariants.jpg: New.
2111 * docs/html/ext/pb_assoc/introduction.html: New.
2112 * docs/html/ext/pb_assoc/invalidation_guarantee_cd.jpg: New.
2113 * docs/html/ext/pb_assoc/invalidation_guarantee_erase.jpg: New.
2114 * docs/html/ext/pb_assoc/lib_download.html: New.
2115 * docs/html/ext/pb_assoc/linear_probe_fn.html: New.
2116 * docs/html/ext/pb_assoc/list_updates.html: New.
2117 * docs/html/ext/pb_assoc/lu_assoc_cntnr.html: New.
2118 * docs/html/ext/pb_assoc/lu_based_containers.html: New.
2119 * docs/html/ext/pb_assoc/lu_cd.jpg: New.
2120 * docs/html/ext/pb_assoc/lu_ds_tag.html: New.
2121 * docs/html/ext/pb_assoc/lu_ops.jpg: New.
2122 * docs/html/ext/pb_assoc/mmap_value_utils.html: New.
2123 * docs/html/ext/pb_assoc/motivation.html: New.
2124 * docs/html/ext/pb_assoc/move_to_front_update_metadata.html: New.
2125 * docs/html/ext/pb_assoc/move_to_front_update_policy.html: New.
2126 * docs/html/ext/pb_assoc/ms_cd.jpg: New.
2127 * docs/html/ext/pb_assoc/ms_gen.html: New.
2128 * docs/html/ext/pb_assoc/ms_tag_cd.jpg: New.
2129 * docs/html/ext/pb_assoc/ms_traits.html: New.
2130 * docs/html/ext/pb_assoc/node_invariant_invalidations.jpg: New.
2131 * docs/html/ext/pb_assoc/node_invariants.html: New.
2132 * docs/html/ext/pb_assoc/node_invariants.jpg: New.
2133 * docs/html/ext/pb_assoc/non_unique_mapping.html: New.
2134 * docs/html/ext/pb_assoc/non_unique_mapping_containers.jpg: New.
2135 * docs/html/ext/pb_assoc/null_data_type.html: New.
2136 * docs/html/ext/pb_assoc/null_hash_fn.html: New.
2137 * docs/html/ext/pb_assoc/null_probe_fn.html: New.
2138 * docs/html/ext/pb_assoc/order_by_key.html: New.
2139 * docs/html/ext/pb_assoc/order_statistics_key.html: New.
2140 * docs/html/ext/pb_assoc/order_statistics_key_cmp.html: New.
2141 * docs/html/ext/pb_assoc/order_statistics_node_updator.html: New.
2142 * docs/html/ext/pb_assoc/ov_tree_ds_tag.html: New.
2143 * docs/html/ext/pb_assoc/overview.html: New.
2144 * docs/html/ext/pb_assoc/pb_assoc_ex.html: New.
2145 * docs/html/ext/pb_assoc/portability.html: New.
2146 * docs/html/ext/pb_assoc/quadratic_probe_fn.html: New.
2147 * docs/html/ext/pb_assoc/range_invalidation_guarantee.html: New.
2148 * docs/html/ext/pb_assoc/rank_node_invariants.jpg: New.
2149 * docs/html/ext/pb_assoc/rationale_null_node_updator.jpg: New.
2150 * docs/html/ext/pb_assoc/rb_tree_ds_tag.html: New.
2151 * docs/html/ext/pb_assoc/reference_iterator.jpg: New.
2152 * docs/html/ext/pb_assoc/references.html: New.
2153 * docs/html/ext/pb_assoc/regression_tests.html: New.
2154 * docs/html/ext/pb_assoc/resize_general.html: New.
2155 * docs/html/ext/pb_assoc/resize_policies.html: New.
2156 * docs/html/ext/pb_assoc/resize_policy_cd.jpg: New.
2157 * docs/html/ext/pb_assoc/restoring_node_invariants.jpg: New.
2158 * docs/html/ext/pb_assoc/sample_node_updator.hpp: New.
2159 * docs/html/ext/pb_assoc/sample_probe_fn.hpp: New.
2160 * docs/html/ext/pb_assoc/sample_probe_fn.html: New.
2161 * docs/html/ext/pb_assoc/sample_range_hashing.hpp: New.
2162 * docs/html/ext/pb_assoc/sample_range_hashing.html: New.
2163 * docs/html/ext/pb_assoc/sample_ranged_hash_fn.hpp: New.
2164 * docs/html/ext/pb_assoc/sample_ranged_hash_fn.html: New.
2165 * docs/html/ext/pb_assoc/sample_ranged_probe_fn.hpp: New.
2166 * docs/html/ext/pb_assoc/sample_ranged_probe_fn.html: New.
2167 * docs/html/ext/pb_assoc/sample_resize_policy.hpp: New.
2168 * docs/html/ext/pb_assoc/sample_resize_policy.html: New.
2169 * docs/html/ext/pb_assoc/sample_resize_trigger.hpp: New.
2170 * docs/html/ext/pb_assoc/sample_size_policy.hpp: New.
2171 * docs/html/ext/pb_assoc/sample_update_policy.hpp: New.
2172 * docs/html/ext/pb_assoc/size_policies_general.html: New.
2173 * docs/html/ext/pb_assoc/splay_tree_ds_tag.html: New.
2174 * docs/html/ext/pb_assoc/timing_tests.html: New.
2175 * docs/html/ext/pb_assoc/toc.html: New.
2176 * docs/html/ext/pb_assoc/tree_assoc_cntnr.html: New.
2177 * docs/html/ext/pb_assoc/
2178 tree_assoc_cntnr_const_node_iterator.html: New.
2179 * docs/html/ext/pb_assoc/tree_assoc_cntnr_node_iterator.html: New.
2180 * docs/html/ext/pb_assoc/tree_based_containers.html: New.
2181 * docs/html/ext/pb_assoc/tree_cd.jpg: New.
2182 * docs/html/ext/pb_assoc/trigger_policies_general.html: New.
2183 * docs/html/ext/pb_assoc/tutorial.html: New.
2184 * docs/html/ext/pb_assoc/update_seq_diagram.jpg: New.
2185 * include/Makefile.am: Add assoc_srcdir, assoc_builddir, assoc_subdir,
2187 * include/Makefile.in: Regenerate.
2188 * include/ext/typelist.h: New.
2189 * include/ext/pb_assoc/assoc_cntnr.hpp: New.
2190 * include/ext/pb_assoc/data_type.hpp: New.
2191 * include/ext/pb_assoc/ds_trait.hpp: New.
2192 * include/ext/pb_assoc/exception.hpp: New.
2193 * include/ext/pb_assoc/hash_policy.hpp: New.
2194 * include/ext/pb_assoc/lu_policy.hpp: New.
2195 * include/ext/pb_assoc/ms_trait.hpp: New.
2196 * include/ext/pb_assoc/tree_policy.hpp: New.
2197 * include/ext/pb_assoc/trivial_iterator_def.hpp: New.
2198 * include/ext/pb_assoc/detail/assoc_cntnr_base.hpp: New.
2199 * include/ext/pb_assoc/detail/cond_dealtor.hpp: New.
2200 * include/ext/pb_assoc/detail/constructors_destructor_fn_imps.hpp: New.
2201 * include/ext/pb_assoc/detail/ds_trait_imp.hpp: New.
2202 * include/ext/pb_assoc/detail/hash_types_traits.hpp: New.
2203 * include/ext/pb_assoc/detail/map_debug_base.hpp: New.
2204 * include/ext/pb_assoc/detail/mapping_level_imp.hpp: New.
2205 * include/ext/pb_assoc/detail/ms_category_imp.hpp: New.
2206 * include/ext/pb_assoc/detail/ms_trait_imp.hpp: New.
2207 * include/ext/pb_assoc/detail/order_statistics_imp.hpp: New.
2208 * include/ext/pb_assoc/detail/standard_policies.hpp: New.
2209 * include/ext/pb_assoc/detail/standard_sizes.hpp: New.
2210 * include/ext/pb_assoc/detail/type_utils.hpp: New.
2211 * include/ext/pb_assoc/detail/typelist.hpp: New.
2212 * include/ext/pb_assoc/detail/types_traits.hpp: New.
2213 * include/ext/pb_assoc/detail/basic_assoc_cntnr/
2214 constructor_destructor_fn_imps.hpp: New.
2215 * include/ext/pb_assoc/detail/basic_assoc_cntnr/
2216 constructors_destructor_fn_imps.hpp: New.
2217 * include/ext/pb_assoc/detail/basic_assoc_cntnr/d_extract_key.hpp: New.
2218 * include/ext/pb_assoc/detail/basic_assoc_cntnr/
2219 d_find_fn_imps.hpp: New.
2220 * include/ext/pb_assoc/detail/basic_assoc_cntnr/
2221 d_insert_fn_imps.hpp: New.
2222 * include/ext/pb_assoc/detail/basic_assoc_cntnr/erase_fn_imps.hpp: New.
2223 * include/ext/pb_assoc/detail/basic_assoc_cntnr/extract_key.hpp: New.
2224 * include/ext/pb_assoc/detail/basic_assoc_cntnr/info_fn_imps.hpp: New.
2225 * include/ext/pb_assoc/detail/basic_assoc_cntnr/
2226 insert_fn_imps.hpp: New.
2227 * include/ext/pb_assoc/detail/basic_assoc_cntnr/
2228 iterators_fn_imps.hpp: New.
2229 * include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
2230 constructor_destructor_fn_imps.hpp: New.
2231 * include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
2232 constructors_destructor_fn_imps.hpp: New.
2233 * include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
2234 resize_fn_imps.hpp: New.
2235 * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
2236 constructor_destructor_fn_imps.hpp: New.
2237 * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
2238 constructors_destructor_fn_imps.hpp: New.
2239 * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
2240 erase_fn_imps.hpp: New.
2241 * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
2242 node_iteration_fn_imps.hpp: New.
2243 * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
2244 policy_access_fn_imps.hpp: New.
2245 * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
2246 r_erase_fn_imps.hpp: New.
2247 * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
2248 r_range_iteration_fn_imps.hpp: New.
2249 * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
2250 range_iteration_fn_imps.hpp: New.
2251 * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
2252 split_join_fn_imps.hpp: New.
2253 * include/ext/pb_assoc/detail/bin_search_tree_/
2254 bin_search_tree_.hpp: New.
2255 * include/ext/pb_assoc/detail/bin_search_tree_/
2256 cond_dtor_entry_dealtor.hpp: New.
2257 * include/ext/pb_assoc/detail/bin_search_tree_/
2258 cond_key_dtor_entry_dealtor.hpp: New.
2259 * include/ext/pb_assoc/detail/bin_search_tree_/
2260 constructors_destructor_fn_imps.hpp: New.
2261 * include/ext/pb_assoc/detail/bin_search_tree_/debug_fn_imps.hpp: New.
2262 * include/ext/pb_assoc/detail/bin_search_tree_/erase_fn_imps.hpp: New.
2263 * include/ext/pb_assoc/detail/bin_search_tree_/find_fn_imps.hpp: New.
2264 * include/ext/pb_assoc/detail/bin_search_tree_/find_iterators.hpp: New.
2265 * include/ext/pb_assoc/detail/bin_search_tree_/info_fn_imps.hpp: New.
2266 * include/ext/pb_assoc/detail/bin_search_tree_/insert_fn_imps.hpp: New.
2267 * include/ext/pb_assoc/detail/bin_search_tree_/
2268 iterators_fn_imps.hpp: New.
2269 * include/ext/pb_assoc/detail/bin_search_tree_/node_iterators.hpp: New.
2270 * include/ext/pb_assoc/detail/bin_search_tree_/
2271 r_erase_fn_imps.hpp: New.
2272 * include/ext/pb_assoc/detail/bin_search_tree_/rotate_fn_imps.hpp: New.
2273 * include/ext/pb_assoc/detail/bin_search_tree_/
2274 split_join_fn_imps.hpp: New.
2275 * include/ext/pb_assoc/detail/cc_hash_assoc_cntnr/
2276 constructor_destructor_fn_imps.hpp: New.
2277 * include/ext/pb_assoc/detail/cc_ht_map_/cc_ht_map_.hpp: New.
2278 * include/ext/pb_assoc/detail/cc_ht_map_/cmp_fn_imps.hpp: New.
2279 * include/ext/pb_assoc/detail/cc_ht_map_/
2280 cond_key_dtor_entry_dealtor.hpp: New.
2281 * include/ext/pb_assoc/detail/cc_ht_map_/
2282 constructor_destructor_fn_imps.hpp: New.
2283 * include/ext/pb_assoc/detail/cc_ht_map_/
2284 constructor_destructor_no_store_hash_fn_imps.hpp: New.
2285 * include/ext/pb_assoc/detail/cc_ht_map_/
2286 constructor_destructor_store_hash_fn_imps.hpp: New.
2287 * include/ext/pb_assoc/detail/cc_ht_map_/debug_fn_imps.hpp: New.
2288 * include/ext/pb_assoc/detail/cc_ht_map_/
2289 debug_no_store_hash_fn_imps.hpp: New.
2290 * include/ext/pb_assoc/detail/cc_ht_map_/
2291 debug_store_hash_fn_imps.hpp: New.
2292 * include/ext/pb_assoc/detail/cc_ht_map_/entry_list_fn_imps.hpp: New.
2293 * include/ext/pb_assoc/detail/cc_ht_map_/erase_fn_imps.hpp: New.
2294 * include/ext/pb_assoc/detail/cc_ht_map_/
2295 erase_no_store_hash_fn_imps.hpp: New.
2296 * include/ext/pb_assoc/detail/cc_ht_map_/
2297 erase_store_hash_fn_imps.hpp: New.
2298 * include/ext/pb_assoc/detail/cc_ht_map_/
2299 find_fn_imps.hpp: New.
2300 * include/ext/pb_assoc/detail/cc_ht_map_/
2301 find_no_store_hash_fn_imps.hpp: New.
2302 * include/ext/pb_assoc/detail/cc_ht_map_/
2303 find_store_hash_fn_imps.hpp: New.
2304 * include/ext/pb_assoc/detail/cc_ht_map_/info_fn_imps.hpp: New.
2305 * include/ext/pb_assoc/detail/cc_ht_map_/insert_fn_imps.hpp: New.
2306 * include/ext/pb_assoc/detail/cc_ht_map_/
2307 insert_no_store_hash_fn_imps.hpp: New.
2308 * include/ext/pb_assoc/detail/cc_ht_map_/
2309 insert_store_hash_fn_imps.hpp: New.
2310 * include/ext/pb_assoc/detail/cc_ht_map_/iterators_fn_imps.hpp: New.
2311 * include/ext/pb_assoc/detail/cc_ht_map_/
2312 policy_access_fn_imps.hpp: New.
2313 * include/ext/pb_assoc/detail/cc_ht_map_/resize_fn_imps.hpp: New.
2314 * include/ext/pb_assoc/detail/cc_ht_map_/
2315 resize_no_store_hash_fn_imps.hpp: New.
2316 * include/ext/pb_assoc/detail/cc_ht_map_/
2317 resize_store_hash_fn_imps.hpp: New.
2318 * include/ext/pb_assoc/detail/cc_ht_map_/size_fn_imps.hpp: New.
2319 * include/ext/pb_assoc/detail/cc_ht_map_/standard_policies.hpp: New.
2320 * include/ext/pb_assoc/detail/eq_fn/eq_by_less.hpp: New.
2321 * include/ext/pb_assoc/detail/eq_fn/hash_eq_fn.hpp: New.
2322 * include/ext/pb_assoc/detail/gp_hash_assoc_cntnr/
2323 constructor_destructor_fn_imps.hpp: New.
2324 * include/ext/pb_assoc/detail/gp_ht_map_/
2325 constructor_destructor_fn_imps.hpp: New.
2326 * include/ext/pb_assoc/detail/gp_ht_map_/
2327 constructor_destructor_no_store_hash_fn_imps.hpp: New.
2328 * include/ext/pb_assoc/detail/gp_ht_map_/
2329 constructor_destructor_store_hash_fn_imps.hpp: New.
2330 * include/ext/pb_assoc/detail/gp_ht_map_/debug_fn_imps.hpp: New.
2331 * include/ext/pb_assoc/detail/gp_ht_map_/
2332 debug_no_store_hash_fn_imps.hpp: New.
2333 * include/ext/pb_assoc/detail/gp_ht_map_/
2334 debug_store_hash_fn_imps.hpp: New.
2335 * include/ext/pb_assoc/detail/gp_ht_map_/erase_fn_imps.hpp: New.
2336 * include/ext/pb_assoc/detail/gp_ht_map_/
2337 erase_no_store_hash_fn_imps.hpp: New.
2338 * include/ext/pb_assoc/detail/gp_ht_map_/
2339 erase_store_hash_fn_imps.hpp: New.
2340 * include/ext/pb_assoc/detail/gp_ht_map_/find_fn_imps.hpp: New.
2341 * include/ext/pb_assoc/detail/gp_ht_map_/
2342 find_no_store_hash_fn_imps.hpp: New.
2343 * include/ext/pb_assoc/detail/gp_ht_map_/
2344 find_store_hash_fn_imps.hpp: New.
2345 * include/ext/pb_assoc/detail/gp_ht_map_/gp_ht_map_.hpp: New.
2346 * include/ext/pb_assoc/detail/gp_ht_map_/info_fn_imps.hpp: New.
2347 * include/ext/pb_assoc/detail/gp_ht_map_/insert_fn_imps.hpp: New.
2348 * include/ext/pb_assoc/detail/gp_ht_map_/
2349 insert_no_store_hash_fn_imps.hpp: New.
2350 * include/ext/pb_assoc/detail/gp_ht_map_/
2351 insert_store_hash_fn_imps.hpp: New.
2352 * include/ext/pb_assoc/detail/gp_ht_map_/iterator_fn_imps.hpp: New.
2353 * include/ext/pb_assoc/detail/gp_ht_map_/
2354 policy_access_fn_imps.hpp: New.
2355 * include/ext/pb_assoc/detail/gp_ht_map_/resize_fn_imps.hpp: New.
2356 * include/ext/pb_assoc/detail/gp_ht_map_/
2357 resize_no_store_hash_fn_imps.hpp: New.
2358 * include/ext/pb_assoc/detail/gp_ht_map_/
2359 resize_store_hash_fn_imps.hpp: New.
2360 * include/ext/pb_assoc/detail/hash_fn/
2361 direct_mask_range_hashing_imp.hpp: New.
2362 * include/ext/pb_assoc/detail/hash_fn/
2363 direct_mod_range_hashing_imp.hpp: New.
2364 * include/ext/pb_assoc/detail/hash_fn/linear_probe_fn_imp.hpp: New.
2365 * include/ext/pb_assoc/detail/hash_fn/
2366 mask_based_range_hashing.hpp: New.
2367 * include/ext/pb_assoc/detail/hash_fn/mod_based_range_hashing.hpp: New.
2368 * include/ext/pb_assoc/detail/hash_fn/probe_fn_base.hpp: New.
2369 * include/ext/pb_assoc/detail/hash_fn/quadratic_probe_fn_imp.hpp: New.
2370 * include/ext/pb_assoc/detail/hash_fn/ranged_hash_fn.hpp: New.
2371 * include/ext/pb_assoc/detail/hash_fn/ranged_probe_fn.hpp: New.
2372 * include/ext/pb_assoc/detail/lu_assoc_cntnr/
2373 constructor_destructor_fn_imps.hpp: New.
2374 * include/ext/pb_assoc/detail/lu_assoc_cntnr/
2375 policy_access_fn_imps.hpp: New.
2376 * include/ext/pb_assoc/detail/lu_map_/
2377 constructor_destructor_fn_imps.hpp: New.
2378 * include/ext/pb_assoc/detail/lu_map_/debug_fn_imps.hpp: New.
2379 * include/ext/pb_assoc/detail/lu_map_/erase_fn_imps.hpp: New.
2380 * include/ext/pb_assoc/detail/lu_map_/find_fn_imps.hpp: New.
2381 * include/ext/pb_assoc/detail/lu_map_/info_fn_imps.hpp: New.
2382 * include/ext/pb_assoc/detail/lu_map_/insert_fn_imps.hpp: New.
2383 * include/ext/pb_assoc/detail/lu_map_/iterators_fn_imps.hpp: New.
2384 * include/ext/pb_assoc/detail/lu_map_/lu_map_.hpp: New.
2385 * include/ext/pb_assoc/detail/lu_map_/policy_access_fn_imps.hpp: New.
2386 * include/ext/pb_assoc/detail/lu_policy/
2387 counter_lu_metadata_imp.hpp: New.
2388 * include/ext/pb_assoc/detail/lu_policy/counter_lu_policy_imp.hpp: New.
2389 * include/ext/pb_assoc/detail/lu_policy/mtf_lu_policy_imp.hpp: New.
2390 * include/ext/pb_assoc/detail/ov_tree_map_/cond_dtor.hpp: New.
2391 * include/ext/pb_assoc/detail/ov_tree_map_/
2392 constructors_destructor_fn_imps.hpp: New.
2393 * include/ext/pb_assoc/detail/ov_tree_map_/debug_fn_imps.hpp: New.
2394 * include/ext/pb_assoc/detail/ov_tree_map_/erase_fn_imps.hpp: New.
2395 * include/ext/pb_assoc/detail/ov_tree_map_/find_fn_imps.hpp: New.
2396 * include/ext/pb_assoc/detail/ov_tree_map_/info_fn_imps.hpp: New.
2397 * include/ext/pb_assoc/detail/ov_tree_map_/insert_fn_imps.hpp: New.
2398 * include/ext/pb_assoc/detail/ov_tree_map_/iterators_fn_imps.hpp: New.
2399 * include/ext/pb_assoc/detail/ov_tree_map_/node_iterators.hpp: New.
2400 * include/ext/pb_assoc/detail/ov_tree_map_/ov_tree_map_.hpp: New.
2401 * include/ext/pb_assoc/detail/ov_tree_map_/split_join_fn_imps.hpp: New.
2402 * include/ext/pb_assoc/detail/rb_tree_map_/
2403 constructors_destructor_fn_imps.hpp: New.
2404 * include/ext/pb_assoc/detail/rb_tree_map_/debug_fn_imps.hpp: New.
2405 * include/ext/pb_assoc/detail/rb_tree_map_/erase_fn_imps.hpp: New.
2406 * include/ext/pb_assoc/detail/rb_tree_map_/find_fn_imps.hpp: New.
2407 * include/ext/pb_assoc/detail/rb_tree_map_/info_fn_imps.hpp: New.
2408 * include/ext/pb_assoc/detail/rb_tree_map_/insert_fn_imps.hpp: New.
2409 * include/ext/pb_assoc/detail/rb_tree_map_/node.hpp: New.
2410 * include/ext/pb_assoc/detail/rb_tree_map_/rb_tree_.hpp: New.
2411 * include/ext/pb_assoc/detail/rb_tree_map_/split_join_fn_imps.hpp: New.
2412 * include/ext/pb_assoc/detail/resize_policy/
2413 cc_hash_max_collision_resize_trigger_imp.hpp: New.
2414 * include/ext/pb_assoc/detail/resize_policy/
2415 hash_exponential_size_policy_imp.hpp: New.
2416 * include/ext/pb_assoc/detail/resize_policy/
2417 hash_load_check_resize_trigger_imp.hpp: New.
2418 * include/ext/pb_assoc/detail/resize_policy/
2419 hash_prime_size_policy_imp.hpp: New.
2420 * include/ext/pb_assoc/detail/resize_policy/
2421 hash_standard_resize_policy_imp.hpp: New.
2422 * include/ext/pb_assoc/detail/resize_policy/
2423 ht_prime_size_policy_imp.hpp: New.
2424 * include/ext/pb_assoc/detail/resize_policy/size_base.hpp: New.
2425 * include/ext/pb_assoc/detail/splay_tree_/
2426 constructors_destructor_fn_imps.hpp: New.
2427 * include/ext/pb_assoc/detail/splay_tree_/debug_fn_imps.hpp: New.
2428 * include/ext/pb_assoc/detail/splay_tree_/erase_fn_imps.hpp: New.
2429 * include/ext/pb_assoc/detail/splay_tree_/find_fn_imps.hpp: New.
2430 * include/ext/pb_assoc/detail/splay_tree_/info_fn_imps.hpp: New.
2431 * include/ext/pb_assoc/detail/splay_tree_/insert_fn_imps.hpp: New.
2432 * include/ext/pb_assoc/detail/splay_tree_/node.hpp: New.
2433 * include/ext/pb_assoc/detail/splay_tree_/splay_fn_imps.hpp: New.
2434 * include/ext/pb_assoc/detail/splay_tree_/splay_tree_.hpp: New.
2435 * include/ext/pb_assoc/detail/splay_tree_/split_join_fn_imps.hpp: New.
2436 * include/ext/pb_assoc/detail/tree_assoc_cntnr/
2437 constructor_destructor_fn_imps.hpp: New.
2438 * include/ext/pb_assoc/detail/tree_policy/
2439 null_node_updator_imp.hpp: New.
2440 * include/ext/pb_assoc/detail/tree_policy/
2441 order_statistics_imp.hpp: New.
2442 * include/ext/pb_assoc/detail/typelist/typelist_append.hpp: New.
2443 * include/ext/pb_assoc/detail/typelist/typelist_apply.hpp: New.
2444 * include/ext/pb_assoc/detail/typelist/typelist_at_index.hpp: New.
2445 * include/ext/pb_assoc/detail/typelist/typelist_contains.hpp: New.
2446 * include/ext/pb_assoc/detail/typelist/typelist_filter.hpp: New.
2447 * include/ext/pb_assoc/detail/typelist/typelist_transform.hpp: New.
2448 * include/ext/pb_assoc/detail/typelist/
2449 typelist_typelist_append.hpp: New.
2450 * include/ext/pb_assoc/detail/unordered_iterator/
2451 const_find_iterator.hpp: New.
2452 * include/ext/pb_assoc/detail/unordered_iterator/
2453 const_iterator.hpp: New.
2454 * include/ext/pb_assoc/detail/unordered_iterator/
2455 find_iterator.hpp: New.
2456 * include/ext/pb_assoc/detail/unordered_iterator/iterator.hpp: New.
2457 * include/ext/pb_assoc/detail/value_type_adapter/
2458 constructor_destructor_and_related.hpp: New.
2459 * include/ext/pb_assoc/detail/value_type_adapter/
2460 erase_fn_imps.hpp: New.
2461 * include/ext/pb_assoc/detail/value_type_adapter/
2462 erase_if_pred.hpp: New.
2463 * include/ext/pb_assoc/detail/value_type_adapter/find_fn_imps.hpp: New.
2464 * include/ext/pb_assoc/detail/value_type_adapter/info_fn_imps.hpp: New.
2465 * include/ext/pb_assoc/detail/value_type_adapter/
2466 insert_fn_imps.hpp: New.
2467 * include/ext/pb_assoc/detail/value_type_adapter/
2468 invalidation_guarantee_selector.hpp: New.
2469 * include/ext/pb_assoc/detail/value_type_adapter/
2470 it_value_type_traits.hpp: New.
2471 * include/ext/pb_assoc/detail/value_type_adapter/iterator.hpp: New.
2472 * include/ext/pb_assoc/detail/value_type_adapter/
2473 iterator_fn_imps.hpp: New.
2474 * include/ext/pb_assoc/detail/value_type_adapter/ref_pair.hpp: New.
2475 * include/ext/pb_assoc/detail/value_type_adapter/
2476 value_type_adapter.hpp: New.
2477 * include/ext/pb_assoc/detail/value_type_adapter/
2478 value_type_traits.hpp: New.
2479 * testsuite/Makefile.am (CLEANFILES): Add .o, .dat, .cc.
2480 * testsuite/Makefile.in: Regenerate.
2481 * testsuite/testsuite_common_types.h: New.
2482 * testsuite/testsuite_visualization.h: New.
2483 * testsuite/ext/pb_assoc/example/basic_map.cc: New.
2484 * testsuite/ext/pb_assoc/example/basic_multimap.cc: New.
2485 * testsuite/ext/pb_assoc/example/basic_set.cc: New.
2486 * testsuite/ext/pb_assoc/example/ds_traits.cc: New.
2487 * testsuite/ext/pb_assoc/example/erase_if.cc: New.
2488 * testsuite/ext/pb_assoc/example/extract_key.cc: New.
2489 * testsuite/ext/pb_assoc/example/hash_find_neg.cc: New.
2490 * testsuite/ext/pb_assoc/example/hash_illegal_resize.cc: New.
2491 * testsuite/ext/pb_assoc/example/hash_initial_size.cc: New.
2492 * testsuite/ext/pb_assoc/example/hash_load_set_change.cc: New.
2493 * testsuite/ext/pb_assoc/example/hash_mod.cc: New.
2494 * testsuite/ext/pb_assoc/example/hash_resize.cc: New.
2495 * testsuite/ext/pb_assoc/example/hash_resize_neg.cc: New.
2496 * testsuite/ext/pb_assoc/example/hash_shift_mask.cc: New.
2497 * testsuite/ext/pb_assoc/example/mapping_level.cc: New.
2498 * testsuite/ext/pb_assoc/example/mapping_level_neg.cc: New.
2499 * testsuite/ext/pb_assoc/example/ms_traits.cc: New.
2500 * testsuite/ext/pb_assoc/example/ranged_hash.cc: New.
2501 * testsuite/ext/pb_assoc/example/store_hash.cc: New.
2502 * testsuite/ext/pb_assoc/example/tree_intervals.cc: New.
2503 * testsuite/ext/pb_assoc/example/tree_join.cc: New.
2504 * testsuite/ext/pb_assoc/example/tree_order_statistics.cc: New.
2505 * testsuite/ext/pb_assoc/example/tree_order_statistics_join.cc: New.
2506 * testsuite/ext/pb_assoc/example/tree_split.cc: New.
2507 * testsuite/performance/20_util/allocator/(insert.cc,
2508 insert_insert.cc, list_sort_search.cc, map_mt_find.cc, map_thread.cc,
2509 producer_consumer.cc): Recast to use typelists and move to...
2510 * testsuite/performance/23_containers/find/map.cc: New.
2511 * testsuite/performance/23_containers/index/map.cc: New.
2512 * testsuite/performance/23_containers/insert/associative.cc: New.
2513 * testsuite/performance/23_containers/insert/sequence.cc: New.
2514 * testsuite/performance/23_containers/insert_erase/associative.cc: New.
2515 * testsuite/performance/23_containers/producer_consumer/
2516 (associative.cc, sequence.cc): New.
2517 * testsuite/performance/23_containers/sort_search/list.cc: New.
2518 * testsuite/performance/23_containers/container_benchmark.cc: Remove.
2519 * testsuite/performance/23_containers/map_create_fill.cc: Move...
2520 * testsuite/performance/23_containers/create/map.cc: ...here.
2521 * testsuite/performance/23_containers/set_create_from_sorted.cc: Move.
2522 * testsuite/performance/23_containers/create_from_sorted/set.cc: here.
2523 * testsuite/performance/23_containers/list_create_fill_sort.cc: Move...
2524 * testsuite/performance/23_containers/create_sort/list.cc: ...here.
2525 * testsuite/performance/23_containers/set_insert_from_sorted.cc: Move.
2526 * testsuite/performance/23_containers/insert_from_sorted/set.cc: here.
2528 2005-06-23 Jakub Jelinek <jakub@redhat.com>
2531 * src/compatibility.cc (_GLIBCXX_SYMVER_COMPATIBILITY): Remove.
2532 (istreambuf_iterator, basic_fstream, basic_ifstream, basic_ofstream,
2533 _M_copy, _M_move, _M_assign, _M_disjunct, _M_check_length,
2534 _M_set_length_and_sharable, ignore, eq): Define to XX suffixed
2536 (ignore (streamsize)): Remove _W prefixed aliases.
2537 (_GLIBCXX_3_4_SYMVER_SPECIAL, _GLIBCXX_3_4_5_SYMVER_SPECIAL,
2538 _GLIBCXX_APPLY_SYMVER_SPECIAL): Remove.
2539 (_GLIBCXX_3_4_SYMVER, _GLIBCXX_3_4_5_SYMVER): Add XXname argument.
2540 Use #XXname instead of #name as the alias argument.
2541 * config/abi/compatibility.h: Replace uses of
2542 _GLIBCXX_APPLY_SYMVER_SPECIAL with _GLIBCXX_APPLY_SYMVER. Always
2543 pass 2 arguments to the _GLIBCXX_APPLY_SYMVER macro.
2544 * include/bits/char_traits.h (char_traits::eq): Revert 2005-06-15
2546 * acinclude.m4: Decrease glibcxx_min_gnu_ld_version back to 21400.
2547 * configure: Rebuilt.
2549 2005-06-19 Benjamin Kosnik <bkoz@redhat.com>
2552 * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Remove
2553 GLIBCXX_TEST_ABI. Remove duplicate _GLIBCXX_ASM_SYMVER define.
2554 Don't enable abi testing unless versioned.
2555 * configure: Regenerate.
2556 * testsuite/Makefile.am (check-abi): Remove conditional.
2557 * testsuite/Makefile.in: Regenerate.
2558 * testsuite/libstdc++-abi/abi.exp: Call build_support, then check
2559 v3-symver before proceeding.
2560 * testsuite/lib/libstdc++.exp (libstdc++-dg-test): Set v3-symvers
2563 2005-06-17 Paolo Carlini <pcarlini@suse.de>
2565 Port from libstdcxx_so_7-branch:
2566 2005-01-12 Christopher Jefferson <chris@bubblescope.net>
2568 * include/bits/stl_function.h (mem_fun_t, const_mem_fun_t,
2569 mem_fun_ref_t, const_mem_fun_ref_t, mem_fun1_t, const_mem_fun1_t,
2570 mem_fun1_ref_t, const_mem_fun1_ref_t): Remove overloads for void
2571 return type, just an old HP/SGI workaround.
2572 * testsuite/20_util/functional/binders.cc: Move to...
2573 * testsuite/20_util/functional/binders/3113.cc: ...here.
2574 * testsuite/20_util/functional/binders/1.cc: New.
2576 2005-06-17 Jonathan Wakely <redi@gcc.gnu.org>
2578 * docs/html/21_strings/gotw29a.txt: Update code to corrected version.
2580 2005-06-17 Jakub Jelinek <jakub@redhat.com>
2581 Benjamin Kosnik <bkoz@redhat.com>
2583 * config/abi/alpha-linux-gnu/baseline_symbols.txt: Update.
2584 * config/abi/hppa-linux-gnu/baseline_symbols.txt: Same.
2585 * config/abi/mips-linux-gnu/baseline_symbols.txt: Same.
2586 * config/abi/sparc-linux-gnu/baseline_symbols.txt: Same.
2588 * config/abi/alpha-freebsd5/baseline_symbols.txt: Remove.
2589 * config/abi/i386-freebsd4/baseline_symbols.txt: Same.
2590 * config/abi/i386-freebsd5/baseline_symbols.txt: Same.
2591 * config/abi/sparc-freebsd5/baseline_symbols.txt: Same.
2593 * config/abi/arm-linux-gnu/baseline_symbols.txt: Remove.
2594 * config/abi/m68k-linux-gnu/baseline_symbols.txt: Same.
2596 2005-06-17 Jakub Jelinek <jakub@redhat.com>
2598 * config/abi/ia64-linux-gnu/baseline_symbols.txt: Update.
2599 * config/abi/s390x-linux-gnu/baseline_symbols.txt: Update.
2600 * config/abi/s390-linux-gnu/baseline_symbols.txt: Update.
2601 * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update.
2602 * config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
2603 * config/abi/powerpc-linux-gnu/baseline_symbols.txt: Update.
2604 * config/abi/i486-linux-gnu/baseline_symbols.txt: Update.
2605 * config/abi/i386-linux-gnu/baseline_symbols.txt: Update.
2606 * config/abi/powerpc64-linux-gnu/baseline_symbols.txt: New file.
2607 * config/abi/powerpc64-linux-gnu/32/baseline_symbols.txt: New file.
2609 2005-06-16 Jakub Jelinek <jakub@redhat.com>
2611 * src/compatibility.cc: Include bits/c++config.h first.
2612 (_GLIBCXX_SYMVER_COMPATIBILITY): Define if _GLIBCXX_SYMVER
2613 and PIC are both defined.
2614 * include/bits/char_traits.h (char_traits::eq): Rename
2615 only if _GLIBCXX_SYMVER_COMPATIBILITY is defined.
2617 2005-06-16 Jakub Jelinek <jakub@redhat.com>
2619 * acinclude.m4 ((GLIBCXX_ENABLE_SYMVERS): Rename _GLIBCXX_SIZE_T_IS_INT
2620 to _GLIBCXX_SIZE_T_IS_UINT. Define _GLIBCXX_PTRDIFF_T_IS_INT.
2621 * configure: Regenerate.
2622 * config.h.in: Regenerate.
2623 * src/compatibility.cc (istream:ignore(streamsize)): Use
2624 _GLIBCXX_PTRDIFF_T_IS_INT instead of _GLIBCXX_SIZE_T_IS_INT.
2625 * config/abi/compatibility.h: Rename _GLIBCXX_SIZE_T_IS_INT
2626 to _GLIBCXX_SIZE_T_IS_UINT. Use _GLIBCXX_PTRDIFF_T_IS_INT
2627 instead for symbols with streamsize arguments.
2629 2005-06-16 Jakub Jelinek <jakub@redhat.com>
2631 * config/linker-map.gnu: Also export
2632 _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[il][il].
2634 2005-06-15 Benjamin Kosnik <bkoz@redhat.com>
2636 * configure.ac (libtool_VERSION): To 6:6:0.
2637 * configure: Regenerate.
2638 * config/linker-map.gnu: Edit.
2639 * src/istream.cc: Move istream::ignore(streamsize) specializations...
2640 * src/compatibility.cc: ...here. New.
2641 * include/bits/char_traits.h (char_traits::eq): Rename when
2643 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Define _GLIBCXX_SIZE_T_IS_INT.
2644 Bump glibcxx_min_gnu_ld_version to 21590.
2645 * configure: Regenerate.
2646 * acconfig.h: Remove _GLIBCXX_ASM_SYMVER.
2647 * config.h.in: Regenerate.
2648 * src/Makefile.am (sources): Add compatibility.cc.
2649 * src/Makefile.in: Regenerate.
2650 * include/Makefile.am (host_headers_noinst): Add compatibility.h.
2651 * include/Makefile.in: Regenerate.
2652 * testsuite/testsuite_abi.h (symbol): Add data members.
2653 * testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.5,
2654 GLIBCXX_3.4.6. Remove deprecated versions. Do a better job
2657 2005-06-15 Paolo Carlini <pcarlini@suse.de>
2659 * include/tr1/hashtable: Trivial formatting fixes.
2660 * include/tr1/unordered_map: Likewise.
2661 * include/tr1/unordered_set: Likewise.
2663 2005-06-14 Tom Tromey <tromey@redhat.com>
2666 * configure, aclocal.m4: Rebuilt.
2667 * Makefile.in, include/Makefile.in, libmath/Makefile.in,
2668 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
2669 testsuite/Makefile.in: Likewise.
2671 2005-06-08 Benjamin Kosnik <bkoz@redhat.com>
2674 * include/std/std_sstream.h (basic_stringbuf::showmanyc): Add.
2675 Remove unnecessary this->_M_mode decoration.
2676 * include/bits/fstream.tcc: Adjust line spacing.
2677 * testsuite/27_io/basic_streambuf/in_avail/char/1.cc: New, test
2678 base class behavior.
2679 * testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc: Same.
2680 * testsuite/27_io/basic_stringbuf/in_avail/char/21955.cc: New.
2681 * testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Match
2683 * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Same.
2684 * testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc: Same.
2685 * testsuite/27_io/basic_stringbuf/str/char/1.cc: Same.
2686 * testsuite/27_io/basic_streambuf/in_avail/char/9701-3.cc: Move...
2687 * testsuite/27_io/basic_filebuf/in_avail/char/9701-3.cc: ...here.
2689 2005-06-07 Benjamin Kosnik <bkoz@redhat.com>
2691 * acinclude.m4 (GLIBCXX_ENABLE_C99): Use C++ compiler for complex
2693 * configure: Regenerated.
2695 2005-06-07 Adrian Straetling <straetling@de.ibm.com>
2697 * config/cpu/s390/atomicity.h: (__exchange_and_add,
2698 __atomic_add): Use the builtins for atomic memory operations.
2700 2005-06-06 Paolo Carlini <pcarlini@suse.de>
2702 PR libstdc++/21770 (cont: __gnu_debug::string)
2703 * include/debug/string: Use _Base typedefs for pointer, const_pointer,
2704 reference, const_reference, size_type, difference_type.
2705 * testsuite/21_strings/basic_string/2.cc: New.
2707 2005-06-06 Paolo Carlini <pcarlini@suse.de>
2709 PR libstdc++/21770 (cont: debug-mode)
2710 * include/debug/deque: Use _Base typedefs for pointer, const_pointer,
2711 reference, const_reference.
2712 * include/debug/list: Likewise.
2713 * include/debug/map.h: Likewise.
2714 * include/debug/multimap.h: Likewise.
2715 * include/debug/multiset.h: Likewise.
2716 * include/debug/set.h: Likewise.
2717 * include/debug/vector: Likewise.
2719 2005-06-06 Paolo Carlini <pcarlini@suse.de>
2721 Port from libstdcxx_so_7-branch:
2722 2004-09-24 Paolo Carlini <pcarlini@suse.de>
2723 Jonathan Wakely <redi@gcc.gnu.org>
2725 * include/bits/stl_list.h (list::list(size_type, value_type,
2726 const allocator_type&): Implement according to the letter of the
2727 standard, i.e., don't use two overloads, not equivalent in case
2728 of non default constructible T.
2729 (list::resize(size_type, const value_type&)): Fix the signature:
2730 according to the standard the second argument is by value; also,
2731 don't use two overloads.
2732 * include/bits/list.tcc (list::resize(size_type, const value_type&)):
2733 Adjust consistently the signature.
2734 * include/bits/stl_deque.h (deque::deque(size_type, value_type,
2735 const allocator_type&)): Likewise.
2736 (deque::resize(size_type, const value_type&)): Likewise.
2737 * include/bits/stl_vector.h (vector::vector(size_type, value_type,
2738 const allocator_type&)): Likewise.
2739 (vector::resize(size_type, const value_type&)): Likewise.
2740 * testsuite/testsuite_hooks.h: Add NonDefaultConstructible test type.
2741 * testsuite/23_containers/deque/explicit_instantiation/2.cc: New.
2742 * testsuite/23_containers/list/explicit_instantiation/2.cc: New.
2743 * testsuite/23_containers/map/explicit_instantiation/2.cc: New.
2744 * testsuite/23_containers/multimap/explicit_instantiation/2.cc: New.
2745 * testsuite/23_containers/multiset/explicit_instantiation/2.cc: New.
2746 * testsuite/23_containers/set/explicit_instantiation/2.cc: New.
2747 * testsuite/23_containers/vector/explicit_instantiation/2.cc: New.
2749 * include/bits/deque.tcc: Minor formatting fix.
2751 2005-06-06 Peter Doerfler <doerfler@techinfo.rwth-aachen.de>
2753 * include/bits/stl_function.h: ... and another one.
2755 2005-06-06 Peter Doerfler <doerfler@techinfo.rwth-aachen.de>
2757 * include/bits/stl_function.h: Fix typo in comment.
2759 2005-06-05 Paolo Carlini <pcarlini@suse.de>
2761 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Check clog, clogf, clogl
2762 too for ac_c99_complex.
2763 * configure: Regenerate.
2765 2005-06-03 Paolo Carlini <pcarlini@suse.de>
2768 * include/bits/stl_deque.h: Add concept-check. In class _Deque_base
2769 rebind _Alloc to _Tp_alloc_type, change _Deque_impl to inherit from
2770 the latter and add _M_get_Tp_allocator() which returns it. Use
2771 everywhere _M_get_Tp_allocator() instead of get_allocator().
2772 * include/bits/deque.tcc: Likewise, use _M_get_Tp_allocator().
2773 * include/bits/stl_list.h: Add concept-check. In class _List_base
2774 rebind _Alloc to _Tp_alloc_type and add _M_get_Tp_allocator(), which
2775 returns the allocator (of type _Node_alloc_type) converted to
2776 _Tp_alloc_type. Use everywhere _M_get_Tp_allocator() instead of
2778 * include/bits/list.tcc: Likewise, use _M_get_Tp_allocator().
2779 * include/bits/stl_vector.h: Add concept-check. In class _Vector_base
2780 rebind _Alloc to _Tp_alloc_type, change _Vector_impl to inherit from
2781 the latter and add _M_get_Tp_allocator() which returns it. Use
2782 everywhere _M_get_Tp_allocator() instead of get_allocator().
2783 * include/bits/vector.tcc: Likewise, use _M_get_Tp_allocator().
2784 * include/bits/stl_map.h: Add concept-check. Rebind _Alloc to
2785 _Pair_alloc_type and use it for _Rb_tree.
2786 * include/bits/stl_multimap.h: Likewise.
2787 * include/bits/stl_multiset.h: Add concept-check. Rebind _Alloc to
2788 _Key_alloc_type and use it for _Rb_tree.
2789 * include/bits/stl_set.h: Likewise.
2790 * include/bits/basic_string.h: Rebind _Alloc to _CharT_alloc_type and
2791 use it for the allocator typedefs.
2792 * testsuite/21_strings/basic_string/1.cc: New.
2793 * testsuite/23_containers/deque/explicit_instantiation.cc: Move to...
2794 * testsuite/23_containers/deque/explicit_instantiation/1.cc: ... here.
2795 * testsuite/23_containers/deque/explicit_instantiation/3.cc: New.
2796 * testsuite/23_containers/list/explicit_instantiation.cc: Move to...
2797 * testsuite/23_containers/list/explicit_instantiation/1.cc: ... here.
2798 * testsuite/23_containers/list/explicit_instantiation/3.cc: New.
2799 * testsuite/23_containers/map/explicit_instantiation.cc: Move to...
2800 * testsuite/23_containers/map/explicit_instantiation/1.cc: ... here.
2801 * testsuite/23_containers/map/explicit_instantiation/3.cc: New.
2802 * testsuite/23_containers/multimap/explicit_instantiation.cc: Move to...
2803 * testsuite/23_containers/multimap/explicit_instantiation/1.cc: .. here.
2804 * testsuite/23_containers/multimap/explicit_instantiation/3.cc: New.
2805 * testsuite/23_containers/multiset/explicit_instantiation.cc: Move to...
2806 * testsuite/23_containers/multiset/explicit_instantiation/1.cc: .. here.
2807 * testsuite/23_containers/multiset/explicit_instantiation/3.cc: New.
2808 * testsuite/23_containers/set/explicit_instantiation.cc: Move to...
2809 * testsuite/23_containers/set/explicit_instantiation/1.cc: .. here.
2810 * testsuite/23_containers/set/explicit_instantiation/3.cc: New.
2811 * testsuite/23_containers/vector/explicit_instantiation.cc: Move to...
2812 * testsuite/23_containers/vector/explicit_instantiation/1.cc: ... here.
2813 * testsuite/23_containers/vector/explicit_instantiation/3.cc: New.
2815 2005-06-02 Nathan Sidwell <nathan@codesourcery.com>
2818 * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust expected errors.
2819 * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
2821 2005-05-31 Paolo Carlini <pcarlini@suse.de>
2823 PR libstdc++/20534 (contd)
2824 * include/debug/macros.h: Add _GLIBCXX_DEBUG_ABORT, using
2825 __gnu_debug::__fancy_abort.
2826 * src/debug.cc: Define the latter.
2827 * include/debug/debug.h: Use _GLIBCXX_DEBUG_ABORT instead of
2829 * config/linker-map.gnu (__gnu_debug::__fancy_abort): Add.
2831 2005-05-30 Paolo Carlini <pcarlini@suse.de>
2833 * include/std/std_complex.h (log(const complex<_Tp>&)): When
2834 _GLIBCXX_USE_C99_COMPLEX, forward to __builtin_clog/clogf/clogl.
2836 2005-05-28 Paolo Carlini <pcarlini@suse.de>
2839 2005-05-18 Paolo Carlini <pcarlini@suse.de>
2840 Nathan Myers <ncm@cantrip.org>
2843 * include/bits/basic_string.h (_Raw_bytes_alloc): Rebind to
2844 size_type instead of char and rename to _Raw_alloc.
2845 * include/bits/basic_string.tcc (_Rep::_M_destroy, _Rep::_S_create):
2847 * src/bitmap_allocator.cc: Add instantiation for size_type.
2848 * src/mt_allocator.cc: Likewise.
2849 * src/pool_allocator.cc: Likewise.
2850 * include/ext/array_allocator.h: Tweak slightly, avoid assuming
2851 the existence of an _Array::begin() and size() members.
2852 * testsuite/ext/array_allocator/2.cc: Tweak to use an allocator
2853 of size_type, instead of char, thus avoiding problems with
2854 rebinds, not treated correctly by array_allocator.
2856 2005-05-27 Paolo Carlini <pcarlini@suse.de>
2858 * docs/html/abi.html: Mention 3.4.0 as the current baseline; add
2859 a notice about the configure options.
2861 2005-05-27 Mark Mitchell <mark@codesourcery.com>
2863 * docs/html/test.html: Mention PCH_CXXFLAGS.
2864 * testsuite/lib/libstdc++.exp: Set PCH_CXXFLAGS by probing for an
2865 available stcd++.h PCH.
2866 * testsuite/libstdc++-dg/normal.exp: Use PCH_CXXFLAGS.
2868 2005-05-27 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
2870 * src/misc-inst.cc: Remove unnecessary included files.
2872 2005-05-27 Benjamin Kosnik <bkoz@redhat.com>
2875 * include/bits/c++config: Remove extern template use when in debug
2876 mode, disable for non-weak systems.
2878 2005-05-27 Benjamin Kosnik <bkoz@redhat.com>
2881 * include/debug/debug.h: Forwarding header, that pulls in details
2882 only if in debug mode.
2883 * include/debug/macros.h: ...transfer all the internal macros here.
2884 * include/debug/functions.h: ...transfer all the functions here.
2885 * include/debug/safe_iterator.h: Add functions.h, macros.h includes.
2886 * include/debug/safe_sequence.h: Same.
2887 * include/debug/vector: Tweak.
2888 * include/Makefile.am (debug_headers): Add new includes.
2889 * include/Makefile.in: Regenerate.
2890 * testsuite/17_intro/no_assert_neg.cc: Add.
2892 * include/ext/hash_set: Add debug mode include.
2893 * include/ext/hash_map: Same.
2894 * include/debug/hash_map: Fix included files to match actual files.
2895 * include/debug/hash_set: Same.
2897 2005-05-26 Paolo Carlini <pcarlini@suse.de>
2900 * include/c_std/std_cstdlib.h: Do not open code llabs and lldiv,
2901 available when _GLIBCXX_USE_C99 is defined.
2902 * testsuite/26_numerics/cstdlib/13943.cc: New.
2904 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): For completeness, check
2905 also strtoll and strtoull for ac_c99_stdlib.
2906 * configure: Regenerate.
2908 2005-05-25 Benjamin Kosnik <bkoz@redhat.com>
2910 * config/linker-map.gnu: Add linkage support for no extern templates.
2911 (std::ios_base::_M_call_callbacks): Add.
2912 (std::ios_base::_M_dispose_callbacks): Add.
2913 (std::locale::facet::_S_get_c_name): Add.
2914 (std::__copy_streambufs): Add.
2915 * configure.ac (libtool_VERSION): To 6:5:0.
2916 * configure: Regenerate.
2917 * testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.5.
2919 2005-05-25 Paolo Carlini <pcarlini@suse.de>
2921 * include/bits/basic_string.h (_Rep::_M_set_length_and_sharable):
2922 Use, consistently, traits_type::assign.
2924 2005-05-25 Paolo Carlini <pcarlini@suse.de>
2926 * config/cpu/alpha/atomicity.h: Use the builtins for
2927 atomic memory operations.
2928 * config/cpu/powerpc/atomicity.h: Likewise.
2929 * config/cpu/ia64/atomicity.h: Do not include ia64intrin.h.
2931 2005-05-24 Paolo Carlini <pcarlini@suse.de>
2933 * testsuite/25_algorithms/equal.cc: Move to...
2934 * testsuite/25_algorithms/equal: ... here.
2935 * testsuite/25_algorithms/lower_bound.cc: Move to...
2936 * testsuite/25_algorithms/lower_bound: ... here.
2938 2005-05-24 Paolo Carlini <pcarlini@suse.de>
2940 Port from libstdcxx_so_7-branch:
2941 2005-20-05 Chris Jefferson <chris@bubblescope.net>
2943 * testsuite/25_algorithms/heap.cc: Move to...
2944 * testsuite/25_algorithms/heap/heap.cc: ...here.
2945 * testsuite/25_algorithms/partition.cc: Move to...
2946 * testsuite/25_algorithms/partition/partition.cc: ...here.
2948 2005-03-29 Christopher Jefferson <chris@bubblescope.net>
2950 * testsuite/25_algorithms/includes/1.cc: Add tests.
2951 * testsuite/25_algorithms/search/1.cc: Likewise.
2952 * testsuite/25_algorithms/unique_copy/1.cc: Likewise.
2953 * testsuite/25_algorithms/swap_ranges/1.cc: New.
2954 * testsuite/25_algorithms/swap_ranges/check_type.cc: New.
2955 * testsuite/25_algorithms/rotate.cc: Move to...
2956 * testsuite/25_algorithms/rotate/rotate.cc: ... here.
2957 * testsuite/25_algorithms/rotate/1.cc: New.
2958 * testsuite/25_algorithms/rotate/check_type.cc: New.
2959 * testsuite/25_algorithms/search_n/iterator.cc: Fix typo.
2961 2005-03-14 Christopher Jefferson <chris@bubblescope.net>
2963 * include/bits/stl_algo.h (replace_copy, replace_copy_if):
2964 Don't assume that __new_value and *__first are convertible to
2967 * testsuite/25_algorithms/find/1.cc: New.
2968 * testsuite/25_algorithms/find/check_type.cc: New.
2969 * testsuite/25_algorithms/find_if/1.cc: New.
2970 * testsuite/25_algorithms/find_if/check_type.cc: New.
2971 * testsuite/25_algorithms/replace/1.cc: New.
2972 * testsuite/25_algorithms/replace/check_type.cc: New.
2973 * testsuite/25_algorithms/replace_if/1.cc: New.
2974 * testsuite/25_algorithms/replace_if/check_type.cc: New.
2975 * testsuite/25_algorithms/replace_copy/1.cc: New.
2976 * testsuite/25_algorithms/replace_copy/check_type.cc: New.
2977 * testsuite/25_algorithms/replace_copy_if/1.cc: New.
2978 * testsuite/25_algorithms/replace_copy_if/check_type.cc: New.
2979 * testsuite/25_algorithms/remove/1.cc: New.
2980 * testsuite/25_algorithms/remove/check_type.cc: New.
2981 * testsuite/25_algorithms/remove_if/1.cc: New.
2982 * testsuite/25_algorithms/remove_if/check_type.cc: New.
2983 * testsuite/25_algorithms/count/1.cc: New.
2984 * testsuite/25_algorithms/count/check_type.cc: New.
2985 * testsuite/25_algorithms/count_if/1.cc: New.
2986 * testsuite/25_algorithms/count_if/check_type.cc: New.
2988 2005-02-27 Christopher Jefferson <chris@bubblescope.net>
2989 Paolo Carlini <pcarlini@suse.de>
2991 * testsuite/ext/is_heap/check_type.cc: New.
2993 2005-02-27 Paolo Carlini <pcarlini@suse.de>
2995 * testsuite/ext/is_heap/1.cc: New.
2997 2005-02-01 Christopher Jefferson <chris@bubblescope.net>
2999 * testsuite/ext/median.cc: New.
3000 * testsuite/25_algorithms/adjacent_find/1.cc: New.
3001 * testsuite/25_algorithms/adjacent_find/check_type.cc: New.
3002 * testsuite/25_algorithms/search/1.cc: New.
3003 * testsuite/25_algorithms/search/check_type.cc: New.
3004 * testsuite/25_algorithms/unique_copy/1.cc: New.
3005 * testsuite/25_algorithms/unique_copy/check_type.cc: New.
3006 * testsuite/25_algorithms/partial_sort/1.cc: New.
3007 * testsuite/25_algorithms/partial_sort/check_type.cc: New.
3008 * testsuite/25_algorithms/partial_sort_copy/1.cc: New.
3009 * testsuite/25_algorithms/partial_sort_copy/check_type.cc: New.
3010 * testsuite/25_algorithms/lower_bound/1.cc: New.
3011 * testsuite/25_algorithms/lower_bound/check_type.cc: New.
3012 * testsuite/25_algorithms/upper_bound/1.cc: New.
3013 * testsuite/25_algorithms/upper_bound/check_type.cc: New.
3014 * testsuite/25_algorithms/merge/1.cc: New.
3015 * testsuite/25_algorithms/merge/check_type.cc: New.
3016 * testsuite/25_algorithms/inplace_merge/1.cc: New.
3017 * testsuite/25_algorithms/inplace_merge/check_type.cc: New.
3018 * testsuite/25_algorithms/stable_sort/1.cc: New.
3019 * testsuite/25_algorithms/stable_sort/check_type.cc: New.
3020 * testsuite/25_algorithms/nth_element/1.cc: New.
3021 * testsuite/25_algorithms/nth_element/check_type.cc: New.
3022 * testsuite/25_algorithms/equal_range/1.cc: New.
3023 * testsuite/25_algorithms/equal_range/check_type.cc: New.
3024 * testsuite/25_algorithms/binary_search/1.cc: New.
3025 * testsuite/25_algorithms/binary_search/check_type.cc: New.
3026 * testsuite/25_algorithms/includes/1.cc: New.
3027 * testsuite/25_algorithms/includes/check_type.cc: New.
3028 * testsuite/25_algorithms/set_union/1.cc: New.
3029 * testsuite/25_algorithms/set_union/check_type.cc: New.
3030 * testsuite/25_algorithms/set_intersection/1.cc: New.
3031 * testsuite/25_algorithms/set_intersection/check_type.cc: New.
3032 * testsuite/25_algorithms/set_difference/1.cc: New.
3033 * testsuite/25_algorithms/set_difference/check_type.cc: New.
3034 * testsuite/25_algorithms/set_symmetric_difference/1.cc: New.
3035 * testsuite/25_algorithms/set_symmetric_difference/check_type.cc: New.
3036 * testsuite/25_algorithms/min_element/1.cc: New.
3037 * testsuite/25_algorithms/min_element/check_type.cc: New.
3038 * testsuite/25_algorithms/max_element/1.cc: New.
3039 * testsuite/25_algorithms/max_element/check_type.cc: New.
3040 * testsuite/25_algorithms/prev_permutation/1.cc: New.
3041 * testsuite/25_algorithms/prev_permutation/check_type.cc: New.
3042 * testsuite/25_algorithms/next_permutation/1.cc: New.
3043 * testsuite/25_algorithms/next_permutation/check_type.cc: New.
3044 * testsuite/25_algorithms/find_first_of/1.cc: New.
3045 * testsuite/25_algorithms/find_first_of/check_type.cc: New.
3046 * testsuite/25_algorithms/find_end/1.cc: New.
3047 * testsuite/25_algorithms/find_end/check_type.cc: New.
3048 * testsuite/25_algorithms/equal/check_type.cc: Insert iterator type.
3049 * testsuite/25_algorithms/lexicographical_compare/check_type.cc:
3052 2005-01-10 Christopher Jefferson <chris@bubblescope.net>
3054 * testsuite/25_algorithms/lexicographical_compare/check_type.cc: New.
3055 * testsuite/25_algorithms/lexicographical_compare/1.cc: Likewise.
3056 * testsuite/25_algorithms/mismatch/check_type.cc: Likewise.
3057 * testsuite/25_algorithms/mismatch/1.cc: Likewise.
3058 * testsuite/25_algorithms/equal/check_type.cc: New.
3059 * testsuite/25_algorithms/equal/1.cc: New.
3061 2005-05-24 Benjamin Kosnik <bkoz@redhat.com>
3063 * include/bits/allocator.h: Change ___glibcxx_base_allocator to
3064 __glibcxx_base_allocator.
3065 * config/allocator/bitmap_allocator_base.h: Same.
3066 * config/allocator/malloc_allocator_base.h: Same.
3067 * config/allocator/mt_allocator_base.h: Same.
3068 * config/allocator/new_allocator_base.h: Same.
3069 * config/allocator/pool_allocator_base.h: Same.
3071 2005-05-24 Jonathan Wakely <redi@gcc.gnu.org>
3073 * include/debug/string (class basic_string): Add missing
3074 default template arguments; provide typedefs for char
3076 (operator[]): Allow s[s.size()] in debug mode, but not
3079 2005-05-24 Paolo Carlini <pcarlini@suse.de>
3081 Port from libstdcxx_so_7-branch:
3082 2005-04-25 Christopher Jefferson <chris@bubblescope.net>
3084 * include/bits/stl_algo.h (count): Correct concept checks.
3085 (search_n) : Likewise.
3086 * testsuite/25_algorithms/search_n/check_type.cc: New.
3088 * testsuite/testsuite_iterators.h
3089 (random_access_iterator_wrapper::operator+): Move out of
3090 class to external function, and add symmetric version.
3092 2005-03-14 Christopher Jefferson <chris@bubblescope.net>
3094 * testsuite/testsuite_iterators.h (WritableObject::WritableObject):
3097 2005-02-01 Christopher Jefferson <chris@bubblescope.net>
3099 * testsuite/testsuite_iterators.h (random_access_iterator_wrapper::
3100 operator--): Fix typo.
3101 (OutputContainer::OutputContainer): Correct zeroing array.
3102 (WritableObject::operator==): Fix typo.
3103 (WritableObject::operator=): make operator= templated
3104 to allow differing types to be assigned.
3105 (WritableObject::operator++): Fix checking if iterator is
3106 written to multiple times.
3107 (random_access_iterator_wrapper::operator+): Add const.
3108 (random_access_iterator_wrapper::operator-): Likewise.
3109 (random_access_iterator_wrapper::operator[]): Add dereference.
3111 2005-05-23 Jonathan Wakely <redi@gcc.gnu.org>
3113 * docs/html/debug.html: Explain that _GLIBXX_DEBUG_PEDANTIC
3114 had to be defined for pedantic mode in 3.4 and 4.0.0.
3116 2005-05-20 Jan Beulich <jbeulich@novell.com>
3118 * libmath/stubs.c: Also implement fabsf/fabsl if not present in the
3121 2005-05-20 Paolo Carlini <pcarlini@suse.de>
3123 * include/bits/stl_algo.h (__rotate<_RandomAccessIterator>):
3124 Don't qualify __tmp as const, _ValueType is not necessarily
3126 * include/bits/stl_algobase.h (swap, __iter_swap<false>):
3127 Likewise, as an harmless extension.
3129 2005-05-19 Richard Henderson <rth@redhat.com>
3131 * libsupc++/unwind-cxx.h: Revert gcc_unreachable change.
3133 2005-05-19 Jonathan Wakely <redi@gcc.gnu.org>
3135 * include/bits/basic_string.h (operator[]): Allow s[s.size()] in
3136 debug mode, but not pedantic mode.
3138 2005-05-19 Jan Beulich <jbeulich@novell.com>
3140 * libsupc++/unwind-cxx.h: Include cstdlib.
3141 (gcc_unreachable): #define.
3142 * libsupc++/eh_personality.cc (gcc_unreachable): Remove #define.
3144 2005-05-18 Paolo Carlini <pcarlini@suse.de>
3145 Nathan Myers <ncm@cantrip.org>
3148 * include/bits/basic_string.h (_Raw_bytes_alloc): Rebind to
3149 size_type instead of char and rename to _Raw_alloc.
3150 * include/bits/basic_string.tcc (_Rep::_M_destroy, _Rep::_S_create):
3152 * src/bitmap_allocator.cc: Add instantiation for size_type.
3153 * src/mt_allocator.cc: Likewise.
3154 * src/pool_allocator.cc: Likewise.
3155 * include/ext/array_allocator.h: Tweak slightly, avoid assuming
3156 the existence of an _Array::begin() and size() members.
3157 * testsuite/ext/array_allocator/2.cc: Tweak to use an allocator
3158 of size_type, instead of char, thus avoiding problems with
3159 rebinds, not treated correctly by array_allocator.
3161 2005-05-18 Paolo Carlini <pcarlini@suse.de>
3163 * testsuite/22_locale/ctype/is/char/2.cc: Adjust dg-require-namedlocale.
3164 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
3165 * testsuite/22_locale/time_get/get_year/char/wrapped_env.cc: Add
3166 missing dg-require-namedlocale.
3167 * testsuite/22_locale/time_get/get_year/char/wrapped_locale.cc:
3169 * testsuite/22_locale/time_get/get_year/wchar_t/wrapped_env.cc:
3171 * testsuite/22_locale/time_get/get_year/wchar_t/wrapped_locale.cc:
3174 2005-05-18 Paolo Carlini <pcarlini@suse.de>
3176 * testsuite/testsuite_hooks.cc: Remove try_named_locale.
3177 * testsuite/testsuite_hooks.h: Remove try_named_locale.
3178 * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): New.
3179 * testsuite/lib/dg-options.exp (dg-require-namedlocale): New, uses
3181 * testsuite/22_locale/codecvt/always_noconv/char/wrapped_env.cc: Use
3182 dg-require-namedlocale.
3183 * testsuite/22_locale/codecvt/always_noconv/char/wrapped_locale.cc:
3185 * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Likewise.
3186 * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Likewise.
3187 * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Likewise.
3188 * testsuite/22_locale/codecvt/always_noconv/wchar_t/wrapped_env.cc:
3190 * testsuite/22_locale/codecvt/always_noconv/wchar_t/wrapped_locale.cc:
3192 * testsuite/22_locale/codecvt/encoding/char/wrapped_env.cc: Likewise.
3193 * testsuite/22_locale/codecvt/encoding/char/wrapped_locale.cc: Likewise.
3194 * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Likewise.
3195 * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Likewise.
3196 * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Likewise.