12005-12-28  Paolo Carlini  <pcarlini@suse.de>
2
3	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 40.
4
52005-12-28  Chris Jefferson  <chris@bubblescope.net>
6
7	* testsuite/testsuite_allocator.h (check_deallocate_null): Return true.
8
92005-12-28  Paolo Carlini  <pcarlini@suse.de>
10
11	* include/std/std_bitset.h (bitset<>::_M_copy_from_string,
12	bitset<>::_M_copy_to_string, bitset<>::operator>>): Reverse loop.
13
14	* testsuite/25_algorithms/heap/heap.cc (test01): Always enable
15	complexity checks.
16	* testsuite/18_support/numeric_limits/specialization.cc: Avoid
17	unused parameter warning.
18	* testsuite/18_support/numeric_limits/traps.cc: Acoid unused variable
19	warning.
20	* testsuite/ext/malloc_allocator/deallocate_global.cc: Fix format
21	string.
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
25	warnings.
26	* testsuite/tr1/6_containers/unordered/instantiate/set.cc: Just
27	instantiate.
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:
31	Likewise.
32	* testsuite/tr1/6_containers/unordered/instantiate/multimap.cc:
33	Likewise.
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:
37	Likewise.
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
45	variable warnings.
46	* testsuite/21_strings/c_strings/wchar_t/24559.cc: Avoid unused
47	variable warning.
48
492005-12-28  Chris Jefferson  <chris@bubblescope.net>
50
51	* include/std/std_bitset.h (bitset<0>::set, bitset<0>::reset,
52	bitset<0>::flip, bitset<0>::test): Add inline specializations for
53	bitset<0>.
54
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
58	(test01): Likewise.
59	* testsuite/testsuite_hooks.h (operator==(NonDefaultConstructible,
60	NonDefaultConstructible), operator<(NonDefaultConstructible,
61	NonDefaultConstrictible)): Avoid unused parameter warning.
62
632005-12-26  Chris Jefferson  <chris@bubblescope.net>
64
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):
68	Construct _M_value.
69	* include/debug/functions.h (__check_valid_range): Add
70	__attribute__((unused)).
71	* include/tr1/hashtable (hashtable::end): Remove name of unused
72	parameter.
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.
77
78	* testsuite/25_algorithms/iter_swap/20577.cc (swap): Remove name of
79	unused parameter.
80	* testsuite/25_algorithms/unique_copy/check_type.cc (S2::S2,X2::X2):
81	Likewise.
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):
87	Likewise.
88	* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc (TP::do_put):
89	Likewise.
90	* testsuite/22_locale/time_put/put/char/12439_1.cc (TP::do_put):
91	Likewise.
92	* testsuite/22_locale/time_put/put/char/12439_3.cc (TP::do_put):
93	Likewise.
94	* testsuite/testsuite_io.h (fail_num_get::do_get, fail_num_put::do_put):
95	Likewise.
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):
104	Likewise.
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=):
117	Likewise.
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
127	cast.
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.
152
1532005-12-24  Paolo Carlini  <pcarlini@suse.de>
154
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).
158
1592005-12-24  Paolo Carlini  <pcarlini@suse.de>
160
161	* include/bits/stl_algobase.h (fill(const _Deque_iterator<>&,
162	const _Deque_iterator<>&, const _Tp&)): Add.
163
164	* testsuite/23_containers/deque/cons/assign/1.cc: New.
165
1662005-12-19  Paolo Carlini  <pcarlini@suse.de>
167
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.
175
176	* include/bits/deque.tcc (_M_insert_aux(iterator, size_type,
177	const value_type&)): Qualify with std:: fill call.
178
1792005-12-18  Benjamin Kosnik  <bkoz@redhat.com>
180
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.
188	* config.h.in: Same.
189	* config/abi/pre/gnu-versioned-namespace.ver: New.
190	* config/abi/pre/gnu.ver (GLIBCXX_3.4.7): Add exports for nested
191	debug mode items.
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.
199
200	* docs/html/debug_mode.html: Revise for nested design.
201	* docs/html/debug.html: Use debug qualifications instead of
202	__gnu_debug.
203	* docs/html/configopts.html: Revise documentation for
204	--enable-symvers.
205
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.
226	* include/debug/list
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.
254
255	* include/bits/basic_ios.h: Use _GLIBCXX_BEGIN_NAMESPACE(std) and
256	friends.
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.
398	* src/ios.cc: Same.
399	* src/valarray-inst.cc: Same.
400	* src/locale.cc: Same.
401	* src/tree.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.
407	* src/list.cc: Same.
408	* src/ios_init.cc: Same.
409	* src/locale_facets.cc: Same.
410	* src/codecvt.cc: Same.
411
412	* include/tr1/unordered_map: Use _GLIBCXX_BEGIN_NAMESPACE(tr1).
413	* include/tr1/boost_shared_ptr.h: Same.
414	* include/tr1/tuple
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
422	* include/tr1/array
423
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.
509
510	* libsupc++/eh_alloc.cc: Correct comment line spacing.
511
5122005-12-18  Paolo Carlini  <pcarlini@suse.de>
513
514	* include/bits/stl_algobase.h (__copy_normal::copy_n): Uglify
515	to __copy_n.
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.
519
5202005-12-18  Paolo Carlini  <pcarlini@suse.de>
521
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.
529
5302005-12-18  Paolo Carlini  <pcarlini@suse.de>
531	    Howard Hinnant  <hhinnant@apple.com>
532
533	* include/bits/stl_algo.h (merge, includes, set_union,
534	set_intersection, set_difference, set_symmetric_difference):
535	Fix concept checks.
536
5372005-12-18  Paolo Carlini  <pcarlini@suse.de>
538
539	* include/bits/stl_algo.h (partial_sort_copy, lower_bound,
540	upper_bound, equal_range, binary_search): Fix concept checks.
541
5422005-12-18  Benjamin Kosnik  <bkoz@redhat.com>
543
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.
563
5642005-12-17  Benjamin Kosnik  <bkoz@redhat.com>
565
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.
571
5722005-12-17  Benjamin Kosnik  <bkoz@redhat.com>
573
574	PR libstdc++/25472
575        * include/c_std/std_cstdlib.h: Fix for freestanding.
576
5772005-12-17  Benjamin Kosnik  <bkoz@redhat.com>
578
579	* testsuite/libstdc++-dg/normal.exp: Rename to..
580	* testsuite/libstdc++-dg/conformance.exp: ... this.
581
5822005-12-17  Paolo Carlini  <pcarlini@suse.de>
583
584	* include/bits/stl_vector.h (vector(const vector&)): Use
585	_M_get_Tp_allocator.
586	* include/bits/stl_deque.h (deque(const deque&)): Likewise.
587	(_M_destroy_data): Adjust.
588
5892005-12-17  Paolo Carlini  <pcarlini@suse.de>
590
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):
596	Use the above.
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.
603
6042005-12-17  Gabriel Dos Reis  <gdr@integrable-solutions.net>
605
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.
615
6162005-12-16  Paolo Carlini  <pcarlini@suse.de>
617
618	* testsuite/tr1/4_metaprogramming/type_properties/is_empty/is_empty.cc:
619	Fix class NonEmptyClassTwo.
620
6212005-12-15  Paolo Carlini  <pcarlini@suse.de>
622
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.
626
6272005-12-15  Paolo Carlini  <pcarlini@suse.de>
628
629	PR libstdc++/25421
630	* config/locale/gnu/c_locale.cc (_S_destroy_c_locale): Check
631	for null argument.
632	* testsuite/22_locale/facet/25421.cc: New.
633
6342005-12-13  Carlos O'Donell <carlos@codesourcery.com>
635
636	* include/std/std_limits.h (struct numeric_limits):
637	Use __DBL_HAS_DENORM__, __FLT_HAS_DENORM__, __LDBL_HAS_DENORM__.
638
6392005-12-10  Paolo Carlini  <pcarlini@suse.de>
640
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.
647
648	* include/ext/sso_string_base.h (__sso_string_base<>::_M_destroy):
649	Deallocate passed size + 1.
650	(_M_dispose, _M_reserve): Adjust.
651
6522005-12-09  Paolo Carlini  <pcarlini@suse.de>
653	    Howard Hinnant  <hhinnant@apple.com>
654
655	PR libstdc++/25288
656	* include/bits/stl_list.h (list<>::_M_insert_dispatch, _M_fill_insert):
657	Remove.
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.
666
667	* include/bits/stl_list.h (list<>::insert, erase): Fix wrong comments.
668
6692005-12-08  Paolo Carlini  <pcarlini@suse.de>
670
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.
683
6842005-12-08  Paolo Carlini  <pcarlini@suse.de>
685
686	PR libstdc++/24617
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.
691
692	* testsuite/23_containers/vector/modifiers/erase/1.cc: New.
693
6942005-12-07  Paolo Carlini  <pcarlini@suse.de>
695
696	* docs/html/configopts.html ([--enable-libstdcxx-allocator]):
697	Mention the SGI pooled allocator.
698
6992005-12-06  Paolo Carlini  <pcarlini@suse.de>
700
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
707	the same type.
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.
712
7132005-12-05  Paolo Carlini  <pcarlini@suse.de>
714
715	* include/ext/sso_string_base.h (__sso_string_base<>::_M_assign):
716	Simplify, avoid pointless reallocations.
717
7182005-12-04  Paolo Carlini  <pcarlini@suse.de>
719
720	* include/ext/sso_string_base.h (__sso_string_base<>::_M_reserve):
721	Simplify.
722
7232005-12-04  Paolo Carlini  <pcarlini@suse.de>
724
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.
730
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.
739
7402005-12-04  Paolo Carlini  <pcarlini@suse.de>
741
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.
754
7552005-12-04  Paolo Carlini  <pcarlini@suse.de>
756
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.
762
7632005-12-04  Paolo Carlini  <pcarlini@suse.de>
764
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):
768	Likewise.
769
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
774	versions): Use it.
775	* include/ext/vstring.tcc (__versa_string<>::resize): Likewise.
776
777	* include/ext/vstring.h (__versa_string<>::_M_replace_safe):
778	Remove.
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):
782	Remove.
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):
788	Likewise.
789
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.
794
795	* include/ext/vstring.h (__versa_string<>::reserve): Move out of
796	line.
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
800	instead of reserve.
801	* include/ext/vstring.tcc (__versa_string<>::append, all versions):
802	Likewise.
803	* include/ext/sso_string_base.h (__sso_string_base<>::_M_reserve):
804	Adjust.
805	* include/ext/rc_string_base.h (__rc_string_base<>::_M_reserve):
806	Likewise.
807
8082005-12-02  David Billinghurst (David.Billinghurst@riotinto.com)
809
810	PR testsuite/25193
811	* testsuite/lib/libstdc++.exp (libstdc++-dg-test): Catch
812	error if file cannot be deleted.
813
8142005-11-23  Paolo Carlini  <pcarlini@suse.de>
815
816	PR libstdc++/24975 (basic_string)
817	* include/bits/basic_string.h (_Rep::_S_empty_rep): Avoid
818	strict-aliasing warnings.
819
8202005-11-22  Paolo Carlini  <pcarlini@suse.de>
821
822	PR libstdc++/24975
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.
833
8342005-11-21  Benjamin Kosnik  <bkoz@redhat.com>
835            Ulrich Drepper  <drepper@redhat.com>
836
837	PR libstdc++/23591
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.
848	* config.h.in: Same.
849
8502005-11-21  Benjamin Kosnik  <bkoz@redhat.com>
851
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.
868
8692005-11-21  Benjamin Kosnik  <bkoz@redhat.com>
870
871	* src/Makefile.am (LTCXXCOMPILE): CXXFLAGS last.
872	* libsupc++/Makefile.am: Same.
873	* src/Makefile.in: Regenerate.
874	* libsupc++/Makefile.in: Same.
875
8762005-11-21  Paolo Carlini  <pcarlini@suse.de>
877
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,
886	_M_mutate): Adjust.
887	* include/ext/vstring_util.h: Minor stylistic fixes.
888
8892005-11-18  Paolo Carlini  <pcarlini@suse.de>
890
891	* include/ext/rc_string_base.h (__rc_string_base<>::_Rep): Avoid the
892	anonymous struct extension, adjust everywhere.
893
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.
897
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.
902
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.
909
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
913	this->_M_swap.
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):
921	Likewise.
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*):
924	Return void.
925	* include/ext/sso_string_base.h (__sso_string_base<>::_M_data(_CharT*):
926	Likewise.
927
9282005-11-17  Geoffrey Keating  <geoffk@apple.com>
929
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
934	the template.
935	* src/compatibility.cc [APPLE] (__eprintf): New.
936	* src/Makefile.in: Regenerate.
937	* configure.host (powerpc*-*-darwin*): Define
938	port_specific_symbol_files.
939
9402005-11-16  Nathan Sidwell  <nathan@codesourcery.com>
941
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.
949
9502005-11-14  Geoffrey Keating  <geoffk@apple.com>
951
952	* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Don't check for
953	shared libgcc for darwin exports.
954	* configure: Regenerate.
955
9562005-11-13  Jonathan Wakely  <redi@gcc.gnu.org>
957
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.
962
9632005-11-13  Douglas Gregor  <doug.gregor@gmail.com>
964
965	PR libstdc++/24818
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.
971
9722005-11-11  Paolo Carlini  <pcarlini@suse.de>
973
974	PR libstdc++/24808
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/
983	24808.cc: New.
984	* testsuite/tr1/4_metaprogramming/primary_type_categories/is_enum/
985	24808.cc: Likewise.
986	* testsuite/tr1/4_metaprogramming/primary_type_categories/is_function/
987	24808.cc: Likewise.
988
9892005-11-11  Paolo Carlini  <pcarlini@suse.de>
990
991	PR libstdc++/24799
992	* include/tr1/functional (hash): Inherit from std::unary_function.
993	* testsuite/tr1/6_containers/unordered/hash/24799.cc: New.
994
995	PR libstdc++/24805
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/
999	24805.cc: New.
1000
1001	PR libstdc++/24809
1002	* include/tr1/type_traits (__is_polymorhpic_helper): Adjust destructor.
1003	* testsuite/tr1/4_metaprogramming/type_properties/is_polymorphic/
1004	24809.cc: New.
1005
10062005-11-10  Paolo Carlini  <pcarlini@suse.de>
1007
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.
1014
10152005-11-10  Paolo Carlini  <pcarlini@suse.de>
1016
1017	* include/tr1/boost_shared_ptr.h (_Sp_counted_base::release,
1018	weak_release): Protect barriers with __GTHREADS.
1019
10202005-11-10  Paolo Carlini  <pcarlini@suse.de>
1021	    Peter Dimov  <pdimov@mmltd.net>
1022
1023	* include/tr1/boost_shared_ptr.h (_Sp_counted_base::release):
1024	Optimize by manually inlining weak_release.
1025
1026	* include/tr1/boost_shared_ptr.h (_Sp_counted_base::release,
1027	weak_release): Use explicit memory barriers.
1028
10292005-11-09  Benjamin Kosnik  <bkoz@redhat.com>
1030	    Paolo Carlini  <pcarlini@suse.de>
1031            Gabriel Dos Reis  <gdr@integrable-solutions.net>
1032
1033	PR libstdc++/22203
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.
1045
10462005-11-09  Paolo Carlini  <pcarlini@suse.de>
1047
1048	* include/tr1/boost_shared_ptr.h: Trivial formatting fixes.
1049
10502005-11-08  Benjamin Kosnik  <bkoz@redhat.com>
1051
1052	* testsuite/lib/libstdc++.exp (check_v3_target_debug_mode): Use
1053	exe as the executable extension.
1054
1055	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Change gnu defaults to
1056	new.
1057	(GLIBCXX_ENABLE_PCH): Adjust message order.
1058	* configure: Regenerate.
1059
1060	* scripts/testsuite_flags.in (query): Correct print_usagex typo.
1061
1062	* include/bits/functexcept.h: Remove argument names.
1063
1064	* src/mt_allocator.cc: Adjust comment.
1065
10662005-11-06  Paolo Carlini  <pcarlini@suse.de>
1067
1068	PR libstdc++/18174
1069	* include/bits/stl_queue.h (priority_queue): Tweak a bit the
1070	comment describing the container.
1071
10722005-11-05  Paolo Carlini  <pcarlini@suse.de>
1073
1074	* configure.host: Add | rs6000 to the cpu_defines_dir switch,
1075	consistently with the try_cpu one.
1076
10772005-11-05  Paolo Carlini  <pcarlini@suse.de>
1078
1079	PR libstdc++/22203
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.
1094
10952005-11-03  Paolo Carlini  <pcarlini@suse.de>
1096
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
1101	traits_type::copy.
1102
11032005-11-02  Thomas Kho  <tkho@ucla.edu>
1104
1105	PR libstdc++/23425
1106	* include/bits/stl_vector.h (vector<>::clear): Open code
1107	in terms of _Destroy.
1108
11092005-11-02  Paolo Carlini  <pcarlini@suse.de>
1110
1111	* include/bits/vector.tcc (vector<>::_M_fill_assign): Qualify fill_n.
1112
11132005-11-01  Paolo Carlini  <pcarlini@suse.de>
1114
1115	PR libstdc++/24595
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:
1119	New.
1120
11212005-10-30  Paolo Carlini  <pcarlini@suse.de>
1122
1123	PR libstdc++/20213
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.
1142
11432005-10-29  Carey Evans  <carey.evans@gmail.com>
1144
1145	PR libstdc++/22087
1146	* config/os/djgpp/ctype_inline.h: Fix.
1147	* config/os/djgpp/ctype_noninline.h: Likewise.
1148
11492005-10-28  Paolo Carlini  <pcarlini@suse.de>
1150
1151	PR libstdc++/24559
1152	* include/c_std/std_cwchar.h (wcspbrk): Adjust signature.
1153	* testsuite/21_strings/c_strings/wchar_t/24559.cc: New.
1154
11552005-10-25  Paolo Carlini  <pcarlini@suse.de>
1156
1157	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 39.
1158	* docs/html/ext/howto.html: Adjust.
1159
11602005-10-21  Paolo Carlini  <pcarlini@suse.de>
1161
1162	PR libstdc++/24450
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
1170	avoid memory leaks.
1171
11722005-10-19  Paolo Carlini  <pcarlini@suse.de>
1173
1174	* include/ext/sso_string_base.h (_M_swap): Rewrite.
1175
11762005-10-19  Paolo Carlini  <pcarlini@suse.de>
1177
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.
1184
11852005-10-17  Jonathan Wakely  <redi@gcc.gnu.org>
1186
1187	PR libstdc++/24244
1188	* include/tr1/boost_shared_ptr.h
1189	(_Sp_counted_base::_Sp_counted_base()): When __GTHREAD_MUTEX_INIT
1190	is defined, initialize the mutex.
1191
11922005-10-15  Paolo Carlini  <pcarlini@suse.de>
1193
1194	* include/tr1/functional: Add missing #pragma GCC system_header.
1195
11962005-10-14  Paolo Carlini  <pcarlini@suse.de>
1197
1198	* include/tr1/hashtable (hashtable::m_erase): Rename to erase_node.
1199	(hashtable::erase(iterator), erase(const_iterator)): Adjust.
1200
12012005-10-13  Richard Earnshaw  <richard.earnsahw@arm.com>
1202
1203	PR libstdc++/23926
1204	* acinclude.m4 (port_specific_symbol_files): More symbol versioning
1205	fixes.
1206	* configure: Regenerate.
1207
12082005-10-13  Hans-Peter Nilsson  <hp@axis.com>
1209
1210	* testsuite/lib/libstdc++.exp (libstdc++_init): Require
1211	native testing before setting v3-sharedlib to 1.
1212
12132005-10-12  Joe Buck  <Joe.Buck@synopsys.com>
1214
1215	* docs/html/27_io/howto.html: Use reference to ifstream when
1216	including iosfwd.
1217
12182005-10-11  Andrew Pinski  <pinskia@physics.uc.edu>
1219
1220	PR libstdc++/23926
1221	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Fix typo in check
1222	for GNU LD.
1223	* configure: Regenerate.
1224
12252005-10-10  Benjamin Kosnik  <bkoz@redhat.com>
1226
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.
1231
12322005-10-10  Ian Lance Taylor  <ian@airs.com>
1233
1234	PR libstdc++/13583
1235	* include/bits/locale_classes.h (locale::_Impl::_M_install_cache):
1236	Move out of line.
1237	* src/locale.cc: Define here, add mutex.
1238
12392005-10-09  Paolo Carlini  <pcarlini@suse.de>
1240
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):
1256	Adjust typedefs.
1257	* include/tr1/unordered_set (class unordered_set, unordered_multiset):
1258	Likewise.
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.
1267
12682005-10-08  Kazu Hirata  <kazu@codesourcery.com>
1269
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.
1273
12742005-10-07  Paolo Carlini  <pcarlini@suse.de>
1275
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.
1283	(_M_grab): Adjust.
1284
1285	* include/ext/rc_string_base.h (_Rep::_M_refdata()): Minor tweak,
1286	mark throw().
1287
12882005-10-07  Benjamin Kosnik  <bkoz@redhat.com>
1289
1290	* docs/doxygen/user.cfg.in: Update to Doyxygen 1.4.4.
1291
12922005-10-05  Paolo Carlini  <pcarlini@suse.de>
1293
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.
1298
12992005-10-05  Paolo Carlini  <pcarlini@suse.de>
1300
1301	PR libstdc++/24198
1302	* testsuite/27_io/basic_filebuf/3.cc: Use __gnu_test::pod_ushort
1303	instead.
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.
1318
13192005-10-05  Paolo Carlini  <pcarlini@suse.de>
1320
1321	PR libstdc++/11729 (DR 280, [Ready])
1322	* include/bits/stl_iterator.h: Add reverse_iterator global
1323	functions with two template parameters (operator==, !=, <,
1324	>, <=, >=, -).
1325	* testsuite/24_iterators/reverse_iterator/11729.cc: New.
1326	* docs/html/ext/howto.html: Add an entry for issue 280.
1327
13282005-10-03  Paolo Carlini  <pcarlini@suse.de>
1329
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.
1341
13422005-10-02  Paolo Carlini  <pcarlini@suse.de>
1343
1344	PR libstdc++/24054
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.
1348
13492005-10-01  Kenny Simpson  <theonetruekenny@yahoo.com>
1350
1351	* include/tr1/tuple_iterate.h (tuple::operator=(const std::pair<>&)):
1352	Add missing return.
1353
13542005-09-30  Paolo Carlini  <pcarlini@suse.de>
1355
1356	PR libstdc++/24064
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.
1360
13612005-09-30  Paolo Carlini  <pcarlini@suse.de>
1362
1363	PR libstdc++/23953
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.
1372
13732005-09-29  Chris Jefferson <chris@bubblescope.net>
1374
1375	PR libstdc++/23978
1376	* include/tr1/tuple_iterate.h (tuple): Add operator=(std::pair).
1377	* testsuite/tr1/6_containers/tuple/creation_functions/23978.cc: New.
1378
1379	* include/tr1/functional (ref, cref): Make inline.
1380	* include/tr1/tuple_iterate.h (tie): Correct formatting.
1381	(make_tuple): Make inline.
1382
13832005-09-25  Benjamin Kosnik  <bkoz@redhat.com>
1384	    Eric Botcazou  <ebotcazou@libertysurf.fr>
1385
1386	* include/ext/mt_allocator.h
1387	(__per_type_pool<...true>::_S_initialize_once): Always call
1388	_M_initialize_once.
1389	(__common_pool<...true>::_S_initialize_once): Same.
1390
13912005-09-23  Benjamin Kosnik  <bkoz@redhat.com>
1392
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.
1397
13982005-09-21  Guillaume Melquiond  <guillaume.melquiond@ens-lyon.fr>
1399
1400	PR libstdc++/23956
1401	* include/ext/mt_allocator.h: Remove excess
1402	policy_type::_S_get_pool calls in constructors.
1403
14042005-09-18  Paolo Carlini  <pcarlini@suse.de>
1405
1406	PR libstdc++/23417 (cont)
1407	* include/bits/stl_tree.h (_Rb_tree_impl<true>): Use member
1408	initialization list for -Weffc++.
1409
14102005-09-16  Janis Johnson  <janis187@us.ibm.com>
1411
1412	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/23871.cc:
1413	New.
1414
14152005-09-15  Benjamin Kosnik  <bkoz@redhat.com>
1416
1417	PR libstdc++/21674
1418	PR libstdc++/22205
1419	PR libstdc++/22222
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:
1425	Use it.
1426	* testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc:
1427	Use it.
1428
14292005-09-15  Paolo Carlini  <pcarlini@suse.de>
1430
1431	PR libstdc++/23875
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)):
1438	... here.
1439	* testsuite/27_io/basic_ostream/inserters_arithmetic/pod/23875.cc: New.
1440
14412005-09-15  Mark Mitchell  <mark@codesourcery.com>
1442
1443	* testsuite/testsuite_character.h: Specialize character<>
1444	templates in __gnu_cxx, not in __gnu_test.
1445
14462005-09-13  Jonathan Wakely  <cow@compsoc.man.ac.uk>
1447	    Benjamin Kosnik  <bkoz@redhat.com>
1448
1449	PR libstdc++/21674
1450	* testsuite/21_strings/basic_string/element_access/char/21674.cc: New.
1451	* testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc:
1452	New.
1453
14542005-09-12  David Edelsohn  <dje@gcc.gnu.org>
1455
1456	PR libstdc++/22554
1457	PR libstdc++/23734
1458	* include/Makefile.am (stamp-assoc): Install each subgroup
1459	of headers separately.
1460	* include/Makefile.in: Regenerate.
1461
14622005-09-12  Benjamin Kosnik  <bkoz@redhat.com>
1463
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.
1467
14682005-09-12  Benjamin Kosnik  <bkoz@redhat.com>
1469	    David Edelsohn  <dje@gcc.gnu.org>
1470
1471	PR libstdc++/22554
1472	PR libstdc++/23734
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.
1477
14782005-09-12  Chris Jefferson  <chris@bubblescope.net>
1479
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.
1485
14862005-09-12  Jim Xochellis  <jimxoch@yahoo.gr>
1487
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)):
1491	Likewise.
1492
14932005-09-12  Benjamin Kosnik  <bkoz@redhat.com>
1494
1495	PR libstdc++/23417
1496	* include/bits/stl_list.h (_List_impl): Use member initialization
1497	list for -Weffc++.
1498	* include/bits/stl_tree.h (_Rb_tree_impl): Same.
1499
15002005-09-12  Paolo Carlini  <pcarlini@suse.de>
1501
1502	PR libstdc++/23767
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.
1509
15102005-09-11  Benjamin Kosnik  <bkoz@redhat.com>
1511
1512	PR libstdc++/19265
1513	PR libstdc++/22309
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.
1527
15282005-09-11  Jakub Jelinek  <jakub@redhat.com>
1529
1530	PR libstdc++/19265
1531	PR libstdc++/22309
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.
1548
15492005-09-11  Benjamin Kosnik  <bkoz@redhat.com>
1550            Jakub Jelinek  <jakub@redhat.com>
1551
1552	PR libstdc++/19265
1553	PR libstdc++/22309
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.
1561
15622005-09-11  Paolo Carlini  <pcarlini@suse.de>
1563
1564	PR libstdc++/23781
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
1569	consistently.
1570	* include/bits/list.tcc (list<>::insert, list<>::erase): Adjust
1571	consistently.
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*)):
1577	Make explicit.
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
1590	line numbers.
1591	* testsuite/23_containers/set/operators/1_neg.cc: Likewise.
1592
1593	* include/tr1/array (array<>::begin(), array<>::end()): Adjust
1594	stylistically for consistency with the other containers.
1595
15962005-09-10  Joseph S. Myers  <joseph@codesourcery.com>
1597
1598	* testsuite/26_numerics/cmath/c99_classification_macros_c.cc:
1599	XFAIL on *-*-linux*, not *-*-linux-gnu.
1600
16012005-09-09  Benjamin Kosnik  <bkoz@redhat.com>
1602            Jakub Jelinek  <jakub@redhat.com>
1603
1604	* src/debug.cc (iterator_base_mutex): Make static for internal
1605	linkage.
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.
1609
16102005-09-02  Paolo Carlini  <pcarlini@suse.de>
1611
1612	* testsuite/tr1/6_containers/unordered/hashtable/23465.cc:
1613	Reduce maximum size and lf.
1614
16152005-09-01  Benjamin Kosnik  <bkoz@redhat.com>
1616
1617	* include/c_std/std_cmath.h: Declare C99 functions and helper
1618	functions as inline.
1619
16202005-09-01  Benjamin Kosnik  <bkoz@redhat.com>
1621	    Paolo Carlini  <pcarlini@suse.de>
1622
1623	* testsuite/lib/libstdc++.exp (check_v3_target_cxa_atexit): Fix
1624	comment.
1625
16262005-09-01  Benjamin Kosnik  <bkoz@redhat.com>
1627
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.
1646
16472005-08-31  Paolo Carlini  <pcarlini@suse.de>
1648	    Kaspar Fischer <fischerk@inf.ethz.ch>
1649
1650	PR libstdc++/23632
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.
1654
16552005-08-30  Paolo Carlini  <pcarlini@suse.de>
1656
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.
1660
16612005-08-30  Paolo Carlini  <pcarlini@suse.de>
1662
1663	* testsuite/ext/hash_map/23528.cc: New.
1664
16652005-08-29  Paolo Carlini  <pcarlini@suse.de>
1666
1667	* include/bits/stl_map.h (class map): ... and a missing @a.
1668
16692005-08-29  Paolo Carlini  <pcarlini@suse.de>
1670
1671	* include/bits/stl_map.h (class map): Add missing % in comment.
1672
16732005-08-29  Paolo Carlini  <pcarlini@suse.de>
1674
1675	PR libstdc++/23578 (DR 464 [Ready])
1676	* include/bits/stl_map.h (class map): Add at(const key_type&)
1677	member functions.
1678	* include/bits/stl_vector.h (class vector): Add data() member
1679	functions.
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.
1685
16862005-08-26  Benjamin Kosnik  <bkoz@redhat.com>
1687
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.
1696
16972005-08-26  Benjamin Kosnik  <bkoz@redhat.com>
1698
1699	* scripts/check_compile (UNIQUE_ID): New. Use to name output files.
1700
17012005-08-26  Paolo Carlini  <pcarlini@suse.de>
1702
1703	PR libstdc++/23081
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:
1711	Likewise.
1712	* testsuite/tr1/6_containers/array/tuple_interface/tuple_size.cc:
1713	Likewise.
1714
17152005-08-25  Paolo Carlini  <pcarlini@suse.de>
1716
1717	* include/tr1/hashtable: Use __throw_exception_again,
1718	not naked throw, in the catch clauses.
1719
17202005-08-24  Lawrence Lim  <llim@redhat.com>
1721            Jakub Jelinek  <jakub@redhat.com>
1722	    Benjamin Kosnik  <bkoz@redhat.com>
1723
1724	PR libstdc++/23550
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
1728	(test02): Same.
1729
17302005-08-24  Paolo Carlini  <pcarlini@suse.de>
1731	    Chris Jefferson  <chris@bubblescope.net>
1732
1733	PR libstdc++/23465
1734	* include/tr1/hashtable (hash_code_base::m_swap): Use
1735	std::swap.
1736	(hashtable<>::hashtable(const hashtable&)): Use copy_code;
1737	fix m_allocate_node call.
1738	* testsuite/tr1/6_containers/unordered/hashtable/23465.cc: New.
1739
17402005-08-23  Kelley Cook  <kcook@gcc.gnu.org>
1741
1742	PR libstdc++/23462
1743	* testsuite/data/sgetn.txt: Revert to previous FSF address.
1744
17452005-08-23  Thomas Kho  <tkho@ucla.edu>
1746
1747	PR libstdc++/23358
1748	* include/bits/stl_construct.h (_Destroy(_ForwardIterator,
1749	_ForwardIterator, allocator<_Tp>)): Removed unused template parameter.
1750
17512005-08-22  Geoffrey Keating  <geoffk@apple.com>
1752
1753	* testsuite/23_containers/vector/resize/1.cc: XFAIL on darwin8.
1754	* testsuite/27_io/ios_base/storage/2.cc: Likewise.
1755
17562005-08-19  J"orn Rennecke <joern.rennecke@st.com>
1757
1758	* config/cpu/sh/atomicity.h: Replace broken generic code with current
1759	copy of generic/atomicity.h .
1760
17612005-08-17  Kelley Cook  <kcook@gcc.gnu.org>
1762
1763	* All files: Update FSF address.
1764
17652005-08-09  Andrew Pinski  <pinskia@physics.uc.edu>
1766
1767	* testsuite/26_numerics/cmath/c99_classification_macros_c.cc:
1768	xfail on *-*-darwin*.
1769
17702005-08-03  Geoffrey Keating  <geoffk@apple.com>
1771
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.
1777
1778	* acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Print
1779	status messages.
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.
1786
17872005-07-30  Andrew Pinski  <pinskia@physics.uc.edu>
1788
1789	* scripts/make_exports.pl: Pass --strip-underscores to c++filt.
1790
17912005-07-29  H.J. Lu  <hongjiu.lu@intel.com>
1792
1793	PR libstdc++/22284
1794	* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Revert
1795	the change to info.ttype_base.
1796
17972005-07-28  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
1798
1799	* include/std/std_valarray.h: Fix grammar in comments.
1800
18012005-07-25  Geoffrey Keating  <geoffk@apple.com>
1802
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.
1815
18162005-07-25  Dave Odell  <evilalias@hotmail.com>
1817
1818	PR libstdc++/23053
1819	* include/tr1/hashtable (hashtable<>::find_node): Const-ify.
1820	* testsuite/tr1/6_containers/unordered/hashtable/23053.cc: New.
1821
18222005-07-25  Paolo Carlini  <pcarlini@suse.de>
1823
1824	PR libstdc++/22515
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:
1834	Likewise.
1835	* testsuite/performance/27_io/ifstream_extract_chars.cc: Likewise.
1836
18372005-07-20  Paolo Carlini  <pcarlini@suse.de>
1838
1839	* include/bits/streambuf.tcc (xsgetn, xsputn): Use streamsize
1840	instead of size_t.
1841	* src/streambuf.cc (__copy_streambufs): Likewise.
1842
18432005-07-18  Paolo Carlini  <pcarlini@suse.de>
1844
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
1848	elementary ones.
1849
18502005-07-14  Paolo Carlini  <pcarlini@suse.de>
1851
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).
1858
18592005-07-13  Paolo Carlini  <pcarlini@suse.de>
1860
1861	PR libstdc++/21193 (string & wstring)
1862	* include/tr1/functional (hash<string>, hash<wstring>):
1863	Reimplement using the FNV hash.
1864
1865	* include/tr1/functional: Trivial formatting fixes.
1866
18672005-07-11  Paolo Carlini  <pcarlini@suse.de>
1868
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
1877	sign.
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:
1883	Likewise.
1884	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/7.cc:
1885	Likewise.
1886
18872005-07-07  David Edelsohn  <edelsohn@gnu.org>
1888
1889	* testsuite/ext/pb_assoc/example/tree_order_statistics_join.cc:
1890	Change map_t to map_type.
1891
18922005-07-05  Paolo Carlini  <pcarlini@suse.de>
1893
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
1899	short strings.
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.
1912
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.
1921
19222005-07-01  Paolo Carlini  <pcarlini@suse.de>
1923
1924        Port from libstdcxx_so_7-branch:
1925	2004-10-28  Chris Jefferson  <chris@bubblescope.net>
1926
1927	PR libstdc++/17441
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.
1934
19352005-06-30  Ulrich Weigand  <uweigand@de.ibm.com>
1936
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.
1940
19412005-06-29  Paolo Carlini  <pcarlini@suse.de>
1942
1943	PR libstdc++/21244 (cont^2)
1944	* include/ext/bitmap_allocator.h: Convert everywhere
1945	bits_per_block to size_t.
1946
19472005-06-29  Jonathan Wakely  <redi@gcc.gnu.org>
1948
1949	* include/bits/basic_string.h, include/bits/locale_facets.h: Fix
1950	Doxygen comments that use wrong parameter and function names.
1951
19522005-06-29  Paolo Carlini  <pcarlini@suse.de>
1953
1954	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 37.
1955	* docs/html/ext/howto.html: Adjust.
1956
19572005-06-29  Paolo Carlini  <pcarlini@suse.de>
1958
1959	PR libstdc++/22131
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:
1975	Likewise.
1976	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc:
1977	Likewise.
1978
19792005-06-28  Paul Brook  <paul@codesourcery.com>
1980
1981	* acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Check for
1982	__cxa_end_cleanup.
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
1992	using the ARM EABI.
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
1998	unwinding libary.
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
2004	EABI semantics.
2005	(struct __cxa_eh_globals): Ditto.
2006	(__cxa_call_terminate): Add prototype.
2007	(__cxa_type_match, __cxa_begin_cleanup, __cxa_end_cleanup): Add
2008	prototypes.
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.
2022
20232005-06-27  Paolo Carlini  <pcarlini@suse.de>
2024
2025	PR libstdc++/22102
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
2029	ISO paper N1780.
2030
20312005-06-27  Benjamin Kosnik  <bkoz@redhat.com>
2032	    Ami Tavory  <pbassoc@gmail.com>
2033
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,
2186	assoc_headers.
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.
2527
25282005-06-23  Jakub Jelinek  <jakub@redhat.com>
2529
2530	PR libstdc++/22109
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
2535	variants.
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
2545	change.
2546	* acinclude.m4: Decrease glibcxx_min_gnu_ld_version back to 21400.
2547	* configure: Rebuilt.
2548
25492005-06-19  Benjamin Kosnik  <bkoz@redhat.com>
2550
2551	PR libstdc++/22111
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
2561	if _GLIBCXX_SYMVER.
2562
25632005-06-17  Paolo Carlini  <pcarlini@suse.de>
2564
2565        Port from libstdcxx_so_7-branch:
2566	2005-01-12  Christopher Jefferson <chris@bubblescope.net>
2567
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.
2575
25762005-06-17  Jonathan Wakely  <redi@gcc.gnu.org>
2577
2578	* docs/html/21_strings/gotw29a.txt: Update code to corrected version.
2579
25802005-06-17  Jakub Jelinek  <jakub@redhat.com>
2581            Benjamin Kosnik  <bkoz@redhat.com>
2582
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.
2587
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.
2592
2593	* config/abi/arm-linux-gnu/baseline_symbols.txt: Remove.
2594	* config/abi/m68k-linux-gnu/baseline_symbols.txt: Same.
2595
25962005-06-17  Jakub Jelinek  <jakub@redhat.com>
2597
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.
2608
26092005-06-16  Jakub Jelinek  <jakub@redhat.com>
2610
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.
2616
26172005-06-16  Jakub Jelinek  <jakub@redhat.com>
2618
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.
2628
26292005-06-16  Jakub Jelinek  <jakub@redhat.com>
2630
2631	* config/linker-map.gnu: Also export
2632	_ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[il][il].
2633
26342005-06-15  Benjamin Kosnik  <bkoz@redhat.com>
2635
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
2642	appropriate.
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
2655	version checking.
2656
26572005-06-15  Paolo Carlini  <pcarlini@suse.de>
2658
2659	* include/tr1/hashtable: Trivial formatting fixes.
2660	* include/tr1/unordered_map: Likewise.
2661	* include/tr1/unordered_set: Likewise.
2662
26632005-06-14  Tom Tromey  <tromey@redhat.com>
2664
2665	PR libgcj/19877:
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.
2670
26712005-06-08  Benjamin Kosnik  <bkoz@redhat.com>
2672
2673	PR libstdc++/21955
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
2682	filebuf behavior.
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.
2688
26892005-06-07  Benjamin Kosnik  <bkoz@redhat.com>
2690
2691	* acinclude.m4 (GLIBCXX_ENABLE_C99): Use C++ compiler for complex
2692	tests.
2693	* configure: Regenerated.
2694
26952005-06-07  Adrian Straetling  <straetling@de.ibm.com>
2696
2697	* config/cpu/s390/atomicity.h: (__exchange_and_add,
2698	__atomic_add): Use the builtins for atomic memory operations.
2699
27002005-06-06  Paolo Carlini  <pcarlini@suse.de>
2701
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.
2706
27072005-06-06  Paolo Carlini  <pcarlini@suse.de>
2708
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.
2718
27192005-06-06  Paolo Carlini  <pcarlini@suse.de>
2720
2721        Port from libstdcxx_so_7-branch:
2722	2004-09-24  Paolo Carlini  <pcarlini@suse.de>
2723		    Jonathan Wakely  <redi@gcc.gnu.org>
2724
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.
2748
2749	* include/bits/deque.tcc: Minor formatting fix.
2750
27512005-06-06  Peter Doerfler  <doerfler@techinfo.rwth-aachen.de>
2752
2753	* include/bits/stl_function.h: ... and another one.
2754
27552005-06-06  Peter Doerfler  <doerfler@techinfo.rwth-aachen.de>
2756
2757	* include/bits/stl_function.h: Fix typo in comment.
2758
27592005-06-05  Paolo Carlini  <pcarlini@suse.de>
2760
2761	* acinclude.m4 ([GLIBCXX_ENABLE_C99]): Check clog, clogf, clogl
2762	too for ac_c99_complex.
2763	* configure: Regenerate.
2764
27652005-06-03  Paolo Carlini  <pcarlini@suse.de>
2766
2767	PR libstdc++/21770
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
2777	get_allocator().
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.
2814
28152005-06-02  Nathan Sidwell  <nathan@codesourcery.com>
2816
2817	PR c++/21280
2818	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust expected errors.
2819	* testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
2820
28212005-05-31  Paolo Carlini  <pcarlini@suse.de>
2822
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
2828	assert.
2829	* config/linker-map.gnu (__gnu_debug::__fancy_abort): Add.
2830
28312005-05-30  Paolo Carlini  <pcarlini@suse.de>
2832
2833	* include/std/std_complex.h (log(const complex<_Tp>&)): When
2834	_GLIBCXX_USE_C99_COMPLEX, forward to __builtin_clog/clogf/clogl.
2835
28362005-05-28  Paolo Carlini  <pcarlini@suse.de>
2837
2838	Revert:
2839	2005-05-18  Paolo Carlini  <pcarlini@suse.de>
2840		    Nathan Myers  <ncm@cantrip.org>
2841
2842	PR libstdc++/19495
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):
2846	Use the above.
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.
2855
28562005-05-27  Paolo Carlini  <pcarlini@suse.de>
2857
2858	* docs/html/abi.html: Mention 3.4.0 as the current baseline; add
2859	a notice about the configure options.
2860
28612005-05-27  Mark Mitchell  <mark@codesourcery.com>
2862
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.
2867
28682005-05-27  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>
2869
2870	* src/misc-inst.cc: Remove unnecessary included files.
2871
28722005-05-27  Benjamin Kosnik  <bkoz@redhat.com>
2873
2874	PR libstdc++/21674
2875	* include/bits/c++config: Remove extern template use when in debug
2876	mode, disable for non-weak systems.
2877
28782005-05-27  Benjamin Kosnik  <bkoz@redhat.com>
2879
2880	PR libstdc++/20534
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.
2891
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.
2896
28972005-05-26  Paolo Carlini  <pcarlini@suse.de>
2898
2899	PR libstdc++/13943
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.
2903
2904	* acinclude.m4 ([GLIBCXX_ENABLE_C99]): For completeness, check
2905	also strtoll and strtoull for ac_c99_stdlib.
2906	* configure: Regenerate.
2907
29082005-05-25  Benjamin Kosnik  <bkoz@redhat.com>
2909
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.
2918
29192005-05-25  Paolo Carlini  <pcarlini@suse.de>
2920
2921	* include/bits/basic_string.h (_Rep::_M_set_length_and_sharable):
2922	Use, consistently, traits_type::assign.
2923
29242005-05-25  Paolo Carlini  <pcarlini@suse.de>
2925
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.
2930
29312005-05-24  Paolo Carlini  <pcarlini@suse.de>
2932
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.
2937
29382005-05-24  Paolo Carlini  <pcarlini@suse.de>
2939
2940        Port from libstdcxx_so_7-branch:
2941	2005-20-05  Chris Jefferson  <chris@bubblescope.net>
2942
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.
2947
2948	2005-03-29  Christopher Jefferson  <chris@bubblescope.net>
2949
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.
2960
2961	2005-03-14  Christopher Jefferson  <chris@bubblescope.net>
2962
2963	* include/bits/stl_algo.h (replace_copy, replace_copy_if):
2964	Don't assume that __new_value and *__first are convertible to
2965	each other.
2966
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.
2987
2988	2005-02-27  Christopher Jefferson  <chris@bubblescope.net>
2989        	    Paolo Carlini  <pcarlini@suse.de>
2990
2991	* testsuite/ext/is_heap/check_type.cc: New.
2992
2993	2005-02-27  Paolo Carlini  <pcarlini@suse.de>
2994
2995	* testsuite/ext/is_heap/1.cc: New.
2996
2997	2005-02-01  Christopher Jefferson  <chris@bubblescope.net>
2998
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:
3050	Likewise.
3051
3052	2005-01-10  Christopher Jefferson <chris@bubblescope.net>
3053
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.
3060
30612005-05-24  Benjamin Kosnik  <bkoz@redhat.com>
3062
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.
3070
30712005-05-24  Jonathan Wakely  <redi@gcc.gnu.org>
3072
3073	* include/debug/string (class basic_string): Add missing
3074	default template arguments; provide typedefs for char
3075	and wchar_t.
3076	(operator[]): Allow s[s.size()] in debug mode, but not
3077	pedantic mode.
3078
30792005-05-24  Paolo Carlini  <pcarlini@suse.de>
3080
3081	Port from libstdcxx_so_7-branch:
3082	2005-04-25  Christopher Jefferson  <chris@bubblescope.net>
3083
3084	* include/bits/stl_algo.h (count): Correct concept checks.
3085	(search_n) : Likewise.
3086	* testsuite/25_algorithms/search_n/check_type.cc: New.
3087
3088	* testsuite/testsuite_iterators.h
3089	(random_access_iterator_wrapper::operator+): Move out of
3090	class to external function, and add symmetric version.
3091
3092	2005-03-14  Christopher Jefferson  <chris@bubblescope.net>
3093
3094	* testsuite/testsuite_iterators.h (WritableObject::WritableObject):
3095	Add const.
3096
3097	2005-02-01  Christopher Jefferson  <chris@bubblescope.net>
3098
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.
3110
31112005-05-23  Jonathan Wakely  <redi@gcc.gnu.org>
3112
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.
3115
31162005-05-20  Jan Beulich  <jbeulich@novell.com>
3117
3118	* libmath/stubs.c: Also implement fabsf/fabsl if not present in the
3119	system libraries.
3120
31212005-05-20  Paolo Carlini  <pcarlini@suse.de>
3122
3123	* include/bits/stl_algo.h (__rotate<_RandomAccessIterator>):
3124	Don't qualify __tmp as const, _ValueType is not necessarily
3125	Assignable.
3126	* include/bits/stl_algobase.h (swap, __iter_swap<false>):
3127	Likewise, as an harmless extension.
3128
31292005-05-19  Richard Henderson  <rth@redhat.com>
3130
3131	* libsupc++/unwind-cxx.h: Revert gcc_unreachable change.
3132
31332005-05-19  Jonathan Wakely  <redi@gcc.gnu.org>
3134
3135	* include/bits/basic_string.h (operator[]): Allow s[s.size()] in
3136	debug mode, but not pedantic mode.
3137
31382005-05-19  Jan Beulich  <jbeulich@novell.com>
3139
3140	* libsupc++/unwind-cxx.h: Include cstdlib.
3141	(gcc_unreachable): #define.
3142	* libsupc++/eh_personality.cc (gcc_unreachable): Remove #define.
3143
31442005-05-18  Paolo Carlini  <pcarlini@suse.de>
3145	    Nathan Myers  <ncm@cantrip.org>
3146
3147	PR libstdc++/19495
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):
3151	Use the above.
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.
3160
31612005-05-18  Paolo Carlini  <pcarlini@suse.de>
3162
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:
3168	Likewise.
3169	* testsuite/22_locale/time_get/get_year/wchar_t/wrapped_env.cc:
3170	Likewise.
3171	* testsuite/22_locale/time_get/get_year/wchar_t/wrapped_locale.cc:
3172	Likewise.
3173
31742005-05-18  Paolo Carlini  <pcarlini@suse.de>
3175
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
3180	the above.
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:
3184	Likewise.
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:
3189	Likewise.
3190	* testsuite/22_locale/codecvt/always_noconv/wchar_t/wrapped_locale.cc:
3191	Likewise.
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.
3197	* testsuite/22_locale/codecvt/encoding/wchar_t/wrapped_env.cc: Likewise.
3198	* testsuite/22_locale/codecvt/encoding/wchar_t/wrapped_locale.cc:
3199	Likewise.
3200	* testsuite/22_locale/codecvt/in/char/wrapped_env.cc: Likewise.
3201	* testsuite/22_locale/codecvt/in/char/wrapped_locale.cc: Likewise.
3202	* testsuite/22_locale/codecvt/in/wchar_t/2.cc: Likewise.
3203	* testsuite/22_locale/codecvt/in/wchar_t/3.cc: Likewise.
3204	* testsuite/22_locale/codecvt/in/wchar_t/4.cc: Likewise.
3205	* testsuite/22_locale/codecvt/in/wchar_t/7.cc: Likewise.
3206	* testsuite/22_locale/codecvt/in/wchar_t/8.cc: Likewise.
3207	* testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
3208	* testsuite/22_locale/codecvt/in/wchar_t/wrapped_env.cc: Likewise.
3209	* testsuite/22_locale/codecvt/in/wchar_t/wrapped_locale.cc: Likewise.
3210	* testsuite/22_locale/codecvt/length/char/wrapped_env.cc: Likewise.
3211	* testsuite/22_locale/codecvt/length/char/wrapped_locale.cc: Likewise.
3212	* testsuite/22_locale/codecvt/length/wchar_t/2.cc: Likewise.
3213	* testsuite/22_locale/codecvt/length/wchar_t/3.cc: Likewise.
3214	* testsuite/22_locale/codecvt/length/wchar_t/4.cc: Likewise.
3215	* testsuite/22_locale/codecvt/length/wchar_t/7.cc: Likewise.
3216	* testsuite/22_locale/codecvt/length/wchar_t/wrapped_env.cc: Likewise.
3217	* testsuite/22_locale/codecvt/length/wchar_t/wrapped_locale.cc:
3218	Likewise.
3219	* testsuite/22_locale/codecvt/max_length/char/wrapped_env.cc: Likewise.
3220	* testsuite/22_locale/codecvt/max_length/char/wrapped_locale.cc:
3221	Likewise.
3222	* testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Likewise.
3223	* testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Likewise.
3224	* testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Likewise.
3225	* testsuite/22_locale/codecvt/max_length/wchar_t/wrapped_env.cc:
3226	Likewise.
3227	* testsuite/22_locale/codecvt/max_length/wchar_t/wrapped_locale.cc:
3228	Likewise.
3229	* testsuite/22_locale/codecvt/out/char/wrapped_env.cc: Likewise.
3230	* testsuite/22_locale/codecvt/out/char/wrapped_locale.cc: Likewise.
3231	* testsuite/22_locale/codecvt/out/wchar_t/2.cc: Likewise.
3232	* testsuite/22_locale/codecvt/out/wchar_t/3.cc: Likewise.
3233	* testsuite/22_locale/codecvt/out/wchar_t/4.cc: Likewise.
3234	* testsuite/22_locale/codecvt/out/wchar_t/7.cc: Likewise.
3235	* testsuite/22_locale/codecvt/out/wchar_t/wrapped_env.cc: Likewise.
3236	* testsuite/22_locale/codecvt/out/wchar_t/wrapped_locale.cc: Likewise.
3237	* testsuite/22_locale/codecvt/unshift/char/wrapped_env.cc: Likewise.
3238	* testsuite/22_locale/codecvt/unshift/char/wrapped_locale.cc: Likewise.
3239	* testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
3240	* testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
3241	* testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
3242	* testsuite/22_locale/codecvt/unshift/wchar_t/wrapped_env.cc: Likewise.
3243	* testsuite/22_locale/codecvt/unshift/wchar_t/wrapped_locale.cc:
3244	Likewise.
3245	* testsuite/22_locale/collate/compare/char/1.cc: Likewise.
3246	* testsuite/22_locale/collate/compare/char/2.cc: Likewise.
3247	* testsuite/22_locale/collate/compare/char/3.cc: Likewise.
3248	* testsuite/22_locale/collate/compare/char/wrapped_env.cc: Likewise.
3249	* testsuite/22_locale/collate/compare/char/wrapped_locale.cc: Likewise.
3250	* testsuite/22_locale/collate/compare/wchar_t/1.cc: Likewise.
3251	* testsuite/22_locale/collate/compare/wchar_t/2.cc: Likewise.
3252	* testsuite/22_locale/collate/compare/wchar_t/3.cc: Likewise.
3253	* testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Likewise.
3254	* testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc:
3255	Likewise.
3256	* testsuite/22_locale/collate/hash/char/2.cc: Likewise.
3257	* testsuite/22_locale/collate/hash/char/wrapped_env.cc: Likewise.
3258	* testsuite/22_locale/collate/hash/char/wrapped_locale.cc: Likewise.
3259	* testsuite/22_locale/collate/hash/wchar_t/2.cc: Likewise.
3260	* testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Likewise.
3261	* testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Likewise.
3262	* testsuite/22_locale/collate/transform/char/2.cc: Likewise.
3263	* testsuite/22_locale/collate/transform/char/3.cc: Likewise.
3264	* testsuite/22_locale/collate/transform/char/wrapped_env.cc: Likewise.
3265	* testsuite/22_locale/collate/transform/char/wrapped_locale.cc:
3266	Likewise.
3267	* testsuite/22_locale/collate/transform/wchar_t/2.cc: Likewise.
3268	* testsuite/22_locale/collate/transform/wchar_t/3.cc: Likewise.
3269	* testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc:
3270	Likewise.
3271	* testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
3272	Likewise.
3273	* testsuite/22_locale/collate_byname/named_equivalence.cc: Likewise.
3274	* testsuite/22_locale/ctype/cons/char/wrapped_env.cc: Likewise.
3275	* testsuite/22_locale/ctype/cons/char/wrapped_locale.cc: Likewise.
3276	* testsuite/22_locale/ctype/is/char/2.cc: Likewise.
3277	* testsuite/22_locale/ctype/is/char/wrapped_env.cc: Likewise.
3278	* testsuite/22_locale/ctype/is/char/wrapped_locale.cc: Likewise.
3279	* testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
3280	* testsuite/22_locale/ctype/is/wchar_t/wrapped_env.cc: Likewise.
3281	* testsuite/22_locale/ctype/is/wchar_t/wrapped_locale.cc: Likewise.
3282	* testsuite/22_locale/ctype/narrow/char/wrapped_env.cc: Likewise.
3283	* testsuite/22_locale/ctype/narrow/char/wrapped_locale.cc: Likewise.
3284	* testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Likewise.
3285	* testsuite/22_locale/ctype/narrow/wchar_t/wrapped_env.cc: Likewise.
3286	* testsuite/22_locale/ctype/narrow/wchar_t/wrapped_locale.cc: Likewise.
3287	* testsuite/22_locale/ctype/scan/char/wrapped_env.cc: Likewise.
3288	* testsuite/22_locale/ctype/scan/char/wrapped_locale.cc: Likewise.
3289	* testsuite/22_locale/ctype/scan/wchar_t/wrapped_env.cc: Likewise.
3290	* testsuite/22_locale/ctype/scan/wchar_t/wrapped_locale.cc: Likewise.
3291	* testsuite/22_locale/ctype/to/char/wrapped_env.cc: Likewise.
3292	* testsuite/22_locale/ctype/to/char/wrapped_locale.cc: Likewise.
3293	* testsuite/22_locale/ctype/to/wchar_t/wrapped_env.cc: Likewise.
3294	* testsuite/22_locale/ctype/to/wchar_t/wrapped_locale.cc: Likewise.
3295	* testsuite/22_locale/ctype/widen/char/wrapped_env.cc: Likewise.
3296	* testsuite/22_locale/ctype/widen/char/wrapped_locale.cc: Likewise.
3297	* testsuite/22_locale/ctype/widen/wchar_t/2.cc: Likewise.
3298	* testsuite/22_locale/ctype/widen/wchar_t/3.cc: Likewise.
3299	* testsuite/22_locale/ctype/widen/wchar_t/wrapped_env.cc: Likewise.
3300	* testsuite/22_locale/ctype/widen/wchar_t/wrapped_locale.cc: Likewise.
3301	* testsuite/22_locale/facet/2.cc: Likewise.
3302	* testsuite/22_locale/locale/cons/12352.cc: Likewise.
3303	* testsuite/22_locale/locale/cons/12438.cc: Likewise.
3304	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
3305	* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
3306	* testsuite/22_locale/locale/cons/2.cc: Likewise.
3307	* testsuite/22_locale/locale/cons/4.cc: Likewise.
3308	* testsuite/22_locale/locale/cons/5.cc: Likewise.
3309	* testsuite/22_locale/locale/cons/7.cc: Likewise.
3310	* testsuite/22_locale/locale/cons/7222-env.cc: Likewise.
3311	* testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.
3312	* testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
3313	* testsuite/22_locale/messages/members/char/1.cc: Likewise.
3314	* testsuite/22_locale/messages/members/char/2.cc: Likewise.
3315	* testsuite/22_locale/messages/members/char/3.cc: Likewise.
3316	* testsuite/22_locale/messages/members/char/wrapped_env.cc: Likewise.
3317	* testsuite/22_locale/messages/members/char/wrapped_locale.cc: Likewise.
3318	* testsuite/22_locale/messages_byname/named_equivalence.cc: Likewise.
3319	* testsuite/22_locale/money_get/get/char/1.cc: Likewise.
3320	* testsuite/22_locale/money_get/get/char/10.cc: Likewise.
3321	* testsuite/22_locale/money_get/get/char/11.cc: Likewise.
3322	* testsuite/22_locale/money_get/get/char/11528.cc: Likewise.
3323	* testsuite/22_locale/money_get/get/char/12.cc: Likewise.
3324	* testsuite/22_locale/money_get/get/char/13.cc: Likewise.
3325	* testsuite/22_locale/money_get/get/char/15.cc: Likewise.
3326	* testsuite/22_locale/money_get/get/char/16.cc: Likewise.
3327	* testsuite/22_locale/money_get/get/char/17.cc: Likewise.
3328	* testsuite/22_locale/money_get/get/char/18.cc: Likewise.
3329	* testsuite/22_locale/money_get/get/char/2.cc: Likewise.
3330	* testsuite/22_locale/money_get/get/char/3.cc: Likewise.
3331	* testsuite/22_locale/money_get/get/char/4.cc: Likewise.
3332	* testsuite/22_locale/money_get/get/char/wrapped_env.cc: Likewise.
3333	* testsuite/22_locale/money_get/get/char/wrapped_locale.cc: Likewise.
3334	* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
3335	* testsuite/22_locale/money_get/get/wchar_t/10.cc: Likewise.
3336	* testsuite/22_locale/money_get/get/wchar_t/11.cc: Likewise.
3337	* testsuite/22_locale/money_get/get/wchar_t/11528.cc: Likewise.
3338	* testsuite/22_locale/money_get/get/wchar_t/12.cc: Likewise.
3339	* testsuite/22_locale/money_get/get/wchar_t/13.cc: Likewise.
3340	* testsuite/22_locale/money_get/get/wchar_t/15.cc: Likewise.
3341	* testsuite/22_locale/money_get/get/wchar_t/16.cc: Likewise.
3342	* testsuite/22_locale/money_get/get/wchar_t/17.cc: Likewise.
3343	* testsuite/22_locale/money_get/get/wchar_t/18.cc: Likewise.
3344	* testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
3345	* testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
3346	* testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
3347	* testsuite/22_locale/money_get/get/wchar_t/wrapped_env.cc: Likewise.
3348	* testsuite/22_locale/money_get/get/wchar_t/wrapped_locale.cc: Likewise.
3349	* testsuite/22_locale/money_put/put/char/1.cc: Likewise.
3350	* testsuite/22_locale/money_put/put/char/2.cc: Likewise.
3351	* testsuite/22_locale/money_put/put/char/3.cc: Likewise.
3352	* testsuite/22_locale/money_put/put/char/9780-3.cc: Likewise.
3353	* testsuite/22_locale/money_put/put/char/wrapped_env.cc: Likewise.
3354	* testsuite/22_locale/money_put/put/char/wrapped_locale.cc: Likewise.
3355	* testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
3356	* testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
3357	* testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
3358	* testsuite/22_locale/money_put/put/wchar_t/wrapped_env.cc: Likewise.
3359	* testsuite/22_locale/money_put/put/wchar_t/wrapped_locale.cc: Likewise.
3360	* testsuite/22_locale/moneypunct/members/char/2.cc: Likewise.
3361	* testsuite/22_locale/moneypunct/members/char/wrapped_env.cc: Likewise.
3362	* testsuite/22_locale/moneypunct/members/char/wrapped_locale.cc:
3363	Likewise.
3364	* testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Likewise.
3365	* testsuite/22_locale/moneypunct/members/wchar_t/wrapped_env.cc:
3366	Likewise.
3367	* testsuite/22_locale/moneypunct/members/wchar_t/wrapped_locale.cc:
3368	Likewise.
3369	* testsuite/22_locale/moneypunct_byname/named_equivalence.cc: Likewise.
3370	* testsuite/22_locale/num_get/get/char/1.cc: Likewise.
3371	* testsuite/22_locale/num_get/get/char/3.cc: Likewise.
3372	* testsuite/22_locale/num_get/get/char/5.cc: Likewise.
3373	* testsuite/22_locale/num_get/get/char/6.cc: Likewise.
3374	* testsuite/22_locale/num_get/get/char/9.cc: Likewise.
3375	* testsuite/22_locale/num_get/get/char/wrapped_env.cc: Likewise.
3376	* testsuite/22_locale/num_get/get/char/wrapped_locale.cc: Likewise.
3377	* testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
3378	* testsuite/22_locale/num_get/get/wchar_t/3.cc: Likewise.
3379	* testsuite/22_locale/num_get/get/wchar_t/5.cc: Likewise.
3380	* testsuite/22_locale/num_get/get/wchar_t/6.cc: Likewise.
3381	* testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
3382	* testsuite/22_locale/num_get/get/wchar_t/wrapped_env.cc: Likewise.
3383	* testsuite/22_locale/num_get/get/wchar_t/wrapped_locale.cc: Likewise.
3384	* testsuite/22_locale/num_put/put/char/1.cc: Likewise.
3385	* testsuite/22_locale/num_put/put/char/20909.cc: Likewise.
3386	* testsuite/22_locale/num_put/put/char/20914.cc: Likewise.
3387	* testsuite/22_locale/num_put/put/char/3.cc: Likewise.
3388	* testsuite/22_locale/num_put/put/char/5.cc: Likewise.
3389	* testsuite/22_locale/num_put/put/char/9780-2.cc: Likewise.
3390	* testsuite/22_locale/num_put/put/char/wrapped_env.cc: Likewise.
3391	* testsuite/22_locale/num_put/put/char/wrapped_locale.cc: Likewise.
3392	* testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
3393	* testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.
3394	* testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.
3395	* testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
3396	* testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
3397	* testsuite/22_locale/num_put/put/wchar_t/wrapped_env.cc: Likewise.
3398	* testsuite/22_locale/num_put/put/wchar_t/wrapped_locale.cc: Likewise.
3399	* testsuite/22_locale/numpunct/members/char/2.cc: Likewise.
3400	* testsuite/22_locale/numpunct/members/char/3.cc: Likewise.
3401	* testsuite/22_locale/numpunct/members/char/wrapped_env.cc: Likewise.
3402	* testsuite/22_locale/numpunct/members/char/wrapped_locale.cc: Likewise.
3403	* testsuite/22_locale/numpunct/members/wchar_t/2.cc: Likewise.
3404	* testsuite/22_locale/numpunct/members/wchar_t/wrapped_env.cc: Likewise.
3405	* testsuite/22_locale/numpunct/members/wchar_t/wrapped_locale.cc:
3406	Likewise.
3407	* testsuite/22_locale/numpunct_byname/named_equivalence.cc: Likewise.
3408	* testsuite/22_locale/time_get/date_order/char/wrapped_env.cc: Likewise.
3409	* testsuite/22_locale/time_get/date_order/char/wrapped_locale.cc:
3410	Likewise.
3411	* testsuite/22_locale/time_get/date_order/wchar_t/wrapped_env.cc:
3412	Likewise.
3413	* testsuite/22_locale/time_get/date_order/wchar_t/wrapped_locale.cc:
3414	Likewise.
3415	* testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
3416	* testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
3417	* testsuite/22_locale/time_get/get_date/char/wrapped_env.cc: Likewise.
3418	* testsuite/22_locale/time_get/get_date/char/wrapped_locale.cc:
3419	Likewise.
3420	* testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
3421	* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
3422	* testsuite/22_locale/time_get/get_date/wchar_t/4.cc: Likewise.
3423	* testsuite/22_locale/time_get/get_date/wchar_t/wrapped_env.cc:
3424	Likewise.
3425	* testsuite/22_locale/time_get/get_date/wchar_t/wrapped_locale.cc:
3426	Likewise.
3427	* testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
3428	* testsuite/22_locale/time_get/get_monthname/char/wrapped_env.cc:
3429	Likewise.
3430	* testsuite/22_locale/time_get/get_monthname/char/wrapped_locale.cc:
3431	Likewise.
3432	* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
3433	* testsuite/22_locale/time_get/get_monthname/wchar_t/wrapped_env.cc:
3434	Likewise.
3435	* testsuite/22_locale/time_get/get_monthname/wchar_t/wrapped_locale.cc:
3436	Likewise.
3437	* testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
3438	* testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
3439	* testsuite/22_locale/time_get/get_time/char/wrapped_env.cc: Likewise.
3440	* testsuite/22_locale/time_get/get_time/char/wrapped_locale.cc:
3441	Likewise.
3442	* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
3443	* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
3444	* testsuite/22_locale/time_get/get_time/wchar_t/wrapped_env.cc:
3445	Likewise.
3446	* testsuite/22_locale/time_get/get_time/wchar_t/wrapped_locale.cc:
3447	Likewise.
3448	* testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
3449	* testsuite/22_locale/time_get/get_weekday/char/wrapped_env.cc:
3450	Likewise.
3451	* testsuite/22_locale/time_get/get_weekday/char/wrapped_locale.cc:
3452	Likewise.
3453	* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
3454	* testsuite/22_locale/time_get/get_weekday/wchar_t/wrapped_env.cc:
3455	Likewise.
3456	* testsuite/22_locale/time_get/get_weekday/wchar_t/wrapped_locale.cc:
3457	Likewise.
3458	* testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
3459	* testsuite/22_locale/time_put/put/char/2.cc: Likewise.
3460	* testsuite/22_locale/time_put/put/char/3.cc: Likewise.
3461	* testsuite/22_locale/time_put/put/char/4.cc: Likewise.
3462	* testsuite/22_locale/time_put/put/char/6.cc: Likewise.
3463	* testsuite/22_locale/time_put/put/char/7.cc: Likewise.
3464	* testsuite/22_locale/time_put/put/char/8.cc: Likewise.
3465	* testsuite/22_locale/time_put/put/char/9780-1.cc: Likewise.
3466	* testsuite/22_locale/time_put/put/char/wrapped_env.cc: Likewise.
3467	* testsuite/22_locale/time_put/put/char/wrapped_locale.cc: Likewise.
3468	* testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
3469	* testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
3470	* testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
3471	* testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
3472	* testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
3473	* testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
3474	* testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
3475	* testsuite/22_locale/time_put/put/wchar_t/wrapped_env.cc: Likewise.
3476	* testsuite/22_locale/time_put/put/wchar_t/wrapped_locale.cc: Likewise.
3477	* testsuite/27_io/basic_filebuf/imbue/char/13007.cc: Likewise.
3478	* testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: Likewise.
3479	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
3480	* testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Likewise.
3481	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
3482	* testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: Likewise.
3483	* testsuite/27_io/basic_filebuf/imbue/char/2.cc: Likewise.
3484	* testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Likewise.
3485	* testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: Likewise.
3486	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: Likewise.
3487	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: Likewise.
3488	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Likewise.
3489	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Likewise.
3490	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
3491	* testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
3492	* testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: Likewise.
3493	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc: Likewise.
3494	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc: Likewise.
3495	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc: Likewise.
3496	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc: Likewise.
3497	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: Likewise.
3498	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: Likewise.
3499	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
3500	* testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: Likewise.
3501	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: Likewise.
3502	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: Likewise.
3503	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: Likewise.
3504	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: Likewise.
3505	* testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: Likewise.
3506	* testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: Likewise.
3507	* testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: Likewise.
3508	* testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: Likewise.
3509	* testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: Likewise.
3510	* testsuite/27_io/basic_ios/copyfmt/char/2.cc: Likewise.
3511	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
3512	Likewise.
3513	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/2.cc:
3514	Likewise.
3515	* testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: Likewise.
3516	* testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: Likewise.
3517	* testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Likewise.
3518	* testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: Likewise.
3519	* testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: Likewise.
3520	* testsuite/27_io/basic_streambuf/imbue/wchar_t/9322.cc: Likewise.
3521	* testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Likewise.
3522	* testsuite/27_io/basic_stringbuf/imbue/wchar_t/9322.cc: Likewise.
3523	* testsuite/27_io/objects/wchar_t/10.cc: Likewise.
3524	* testsuite/27_io/objects/wchar_t/11.cc: Likewise.
3525	* testsuite/27_io/objects/wchar_t/12.cc: Likewise.
3526	* testsuite/27_io/objects/wchar_t/13.cc: Likewise.
3527	* testsuite/27_io/objects/wchar_t/9520.cc: Likewise.
3528	* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
3529
35302005-05-17  Nathan Sidwell  <nathan@codesourcery.com>
3531
3532	* libsupc++/eh_personality.cc (gcc_unreachable): Define.
3533
35342005-05-16  Paolo Carlini  <pcarlini@suse.de>
3535
3536	* docs/html/install.html: Update list of required named
3537	locales, add "es_ES".
3538
35392005-05-13  Magnus Fromreide  <magfr@lysator.liu.se>
3540
3541	* testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Use
3542	initialization instead of copying as the string is used only once.
3543	* testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
3544	* testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
3545	* testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
3546
35472005-05-12  Benjamin Kosnik  <bkoz@redhat.com>
3548
3549	* scripts/create_testsuite_files: Fix.
3550
35512005-05-12  Kaz Kojima  <kkojima@gcc.gnu.org>
3552
3553	* testsuite/18_support/numeric_limits.cc (dg-options): Add
3554	-mieee to options on sh*-*-*.
3555
35562005-05-10  Jonathan Wakely  <redi@gcc.gnu.org>
3557
3558	* include/debug/debug.h: Fix typo in macro name.
3559
35602005-05-09  Paolo Carlini  <pcarlini@suse.de>
3561	    Giovanni Bajo  <giovannibajo@gcc.gnu.org>
3562
3563	PR libstdc++/18604
3564	* include/bits/deque.tcc: Fully qualify names from namespace std.
3565	* include/bits/stl_bvector.h: Likewise.
3566	* include/bits/stl_deque.h: Likewise.
3567	* include/bits/stl_list.h: Likewise.
3568	* include/bits/stl_map.h: Likewise.
3569	* include/bits/stl_multimap.h: Likewise.
3570	* include/bits/stl_multiset.h: Likewise.
3571	* include/bits/stl_set.h: Likewise.
3572	* include/bits/stl_vector.h: Likewise.
3573	* include/bits/vector.tcc: Likewise.
3574	* include/std/std_bitset.h: Likewise.
3575	* testsuite/23_containers/bitset/18604.cc: New.
3576	* testsuite/23_containers/deque/18604.cc: Likewise.
3577	* testsuite/23_containers/list/18604.cc: Likewise.
3578	* testsuite/23_containers/map/18604.cc: Likewise.
3579	* testsuite/23_containers/set/18604.cc: Likewise.
3580	* testsuite/23_containers/vector/18604.cc: Likewise.
3581
35822005-05-09  Mike Stump  <mrs@apple.com>
3583
3584	* configure: Regenerate.
3585
35862005-05-09  Jonathan Wakely  <redi@gcc.gnu.org>
3587
3588	DR 434. bitset::to_string() hard to use [Ready]
3589	* include/debug/bitset (to_string): Add three overloads, taking
3590	fewer template arguments.
3591
35922005-05-06  Mark Mitchell  <mark@codesourcery.com>
3593
3594	* testsuite/testsuite_hooks.cc (try_mkfifo): Remove.
3595	* testsuite/testsuite_hooks.h (try_mkfifo): Likewise.
3596	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
3597	dg-require-fork and dg-require-mkfifo.  Replace try_mkfifo with
3598	mkfifo.
3599	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
3600	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
3601	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
3602	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
3603	Likewise.
3604	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
3605	Likewise.
3606	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
3607	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
3608	Likewise.
3609	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
3610	* testsuite/27_io/objects/char/7.cc: Likewise.
3611	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
3612	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
3613	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
3614
36152005-05-04  Benjamin Kosnik  <bkoz@redhat.com>
3616
3617	* acinclude.m4: Remove testsuite_wchar_t and testsuite_thread.
3618	* testsuite/Makefile.am: Same.
3619	* scripts/create_testsuite_files: Same.
3620	* Makefile.in: Regenerate.
3621	* configure: Same.
3622	* include/Makefile.in: Same.
3623	* libmath/Makefile.in: Same.
3624	* libsupc++/Makefile.in: Same.
3625	* po/Makefile.in: Same.
3626	* src/Makefile.in: Same.
3627
36282005-05-04  Mark Mitchell  <mark@codesourcery.com>
3629
3630	* testsuite/lib/libstdc++.exp (v3-build_support): Look for
3631	__GTHREADS, rather than _GLIBCXX_HAVE_GTHR_DEFAULT, to determine
3632	whether or not thread support is available.
3633
3634	* docs/html/test.html: Explain how to run the testsuite on an
3635	installed directory.
3636
36372005-05-01  Paolo Carlini  <pcarlini@suse.de>
3638
3639	* config/os/aix/os_defines.h: Remove obsolete __off_t,
3640	__off64_t, __ssize_t defines.
3641	* config/os/djgpp/os_defines.h: Likewise.
3642	* config/os/hpux/os_defines.h: Likewise.
3643	* config/os/irix/irix5.2/os_defines.h: Likewise.
3644	* config/os/irix/irix6.5/os_defines.h: Likewise.
3645	* config/os/solaris/solaris2.5/os_defines.h: Likewise.
3646	* config/os/solaris/solaris2.6/os_defines.h: Likewise.
3647	* config/os/solaris/solaris2.7/os_defines.h: Likewise.
3648	* docs/html/17_intro/porting.html: Don't discuss the defines.
3649	* docs/html/17_intro/porting.texi: Likewise.
3650
36512005-04-29  Paolo Carlini  <pcarlini@suse.de>
3652	    Nathan Myers  <ncm@cantrip.org>
3653
3654	PR libstdc++/21286
3655	* include/bits/fstream.tcc (basic_filebuf<>::xsgetn):
3656	Loop on short reads; remove the work-around for
3657	libstdc++/20806, not needed anymore.
3658
36592005-04-29  Paolo Carlini  <pcarlini@suse.de>
3660
3661	PR libstdc++/21238
3662	* include/bits/locale_facets.tcc (num_get::_M_extract_float,
3663	num_get::_M_extract_int, num_get::do_get(bool&),
3664	num_put::_M_insert_int, num_put::_M_insert_float,
3665	num_put::do_put(bool), money_get::_M_extract,
3666	money_put::_M_insert): Adjust the __cache_type typedef not to
3667	forward to a numpunct/moneypunct typedef.
3668	* testsuite/testsuite_character.h: Add pod_uint and its numpunct
3669	and moneypunct specializations.
3670	* testsuite/testsuite_character.cc: Add numpunct<pod_uint>::id
3671	and moneypunct<pod_uint>::id.
3672	* testsuite/22_locale/num_get/3.cc: New.
3673	* testsuite/22_locale/num_put/3.cc: Likewise.
3674	* testsuite/22_locale/money_get/3.cc: Likewise.
3675	* testsuite/22_locale/money_put/3.cc: Likewise.
3676
3677	* include/bits/locale_facets.tcc (money_put::_M_insert,
3678	time_get::_M_extract_name): Prefer operator== to operator!=
3679	on char_types.
3680
36812005-04-29  Paolo Carlini  <pcarlini@suse.de>
3682
3683	* include/tr1/type_traits (is_convertible): Adjust according
3684	to the resolution of TR1 issue 3.20.
3685	* testsuite/tr1/4_metaprogramming/relationships_between_types/
3686	is_convertible/is_convertible.cc: Add tests.
3687
36882005-04-28  Paolo Carlini  <pcarlini@suse.de>
3689	    Gabriel Dos Reis  <gdr@integrable-solutions.net>
3690
3691	PR libstdc++/21244 (cont)
3692	* include/bits/cpp_type_traits.h (struct __traitor): Convert
3693	to bool the values.
3694	* include/bits/stl_algo.h: Convert _S_threshold to int.
3695	* include/bits/stl_bvector.h: Revert previous change, convert
3696	_S_word_bit to int.
3697	* include/debug/formatter.h: Convert __max_parameters to
3698	size_t.
3699	* include/ext/mt_allocator.h: Likewise for _S_chunk_size.
3700	* include/ext/pool_allocator.h: Likewise for _S_max_bytes and
3701	_S_align.
3702	* include/ext/rope: Likewise for _S_alloc_granularity; convert
3703	_S_max_rope_depth to int.
3704	* include/ext/ropeimpl.h: Convert _S_path_cache_len to int;
3705	_S_max_rope_depth to int; _S_copy_max to size_t.
3706
37072005-04-27  Benjamin Kosnik  <bkoz@redhat.com>
3708
3709	* docs/doxygen/user.cfg.in: Update to doxygen-1.4.2.
3710	* docs/doxygen/doxygroups.cc: Update namespace comments.
3711
37122005-04-27  Dominik Strasser  <dominik.strasser@infineon.com>
3713	    Paolo Carlini  <pcarlini@suse.de>
3714
3715	PR libstdc++/21244
3716	* include/bits/stl_bvector.h: Change the anonymous enum
3717	at namespace scope to _S_word_bit_enum.
3718	* testsuite/23_containers/vector/bool/21244.cc: New.
3719
37202005-04-27  Paolo Carlini  <pcarlini@suse.de>
3721
3722	* include/tr1/type_traits (has_trivial_copy, has_trivial_assign,
3723	has_nothrow_copy, has_nothrow_assign): Adjust according to the
3724	resolution of TR1 issue 3.21.
3725	* testsuite/testsuite_tr1.h (test_copy_property,
3726	test_assign_property): Remove.
3727	* testsuite/tr1/4_metaprogramming/type_properties/
3728	has_nothrow_assign/has_nothrow_assign.cc: Adjust.
3729	* testsuite/tr1/4_metaprogramming/type_properties/
3730	has_nothrow_copy/has_nothrow_copy.cc: Likewise.
3731	* testsuite/tr1/4_metaprogramming/type_properties/
3732	has_trivial_assign/has_trivial_assign.cc: Likewise.
3733	* testsuite/tr1/4_metaprogramming/type_properties/
3734	has_trivial_copy/has_trivial_copy.cc: Likewise.
3735
37362005-04-26  Jones Desougi  <jones@ingate.com>
3737
3738	PR libstdc++/21131
3739	* linkage.m4: Fix comments.
3740
37412005-04-26  Paolo Carlini  <pcarlini@suse.de>
3742
3743	PR libstdc++/21209
3744	* include/bits/locale_facets.tcc (_M_extract_int): Avoid signed
3745	integer overflow, always use a suited unsigned type in the main
3746	parsing loop.
3747	(struct __to_unsigned_type): New.
3748	* testsuite/22_locale/num_get/get/char/16.cc: New.
3749	* testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
3750
37512005-04-25  Paolo Carlini  <pcarlini@suse.de>
3752
3753	PR libstdc++/21035
3754	* include/bits/basic_string.h (compare): Adjust the documentation
3755	to match the implementation and the standard.
3756
37572005-04-24  Paolo Carlini  <pcarlini@suse.de>
3758
3759	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 35.
3760
37612005-04-20  Mark Mitchell  <mark@codesourcery.com>
3762
3763	* testsuite/ext/bitmap_allocator/check_allocate_max_size.cpp: Add
3764	explicit instantiations for systems without weak symbols.
3765	* testsuite/ext/bitmap_allocator/check_deallocate_null.cc:
3766	Likewise.
3767
37682005-04-18  Jonathan Wakely  <redi@gcc.gnu.org>
3769
3770	* include/bits/stl_algo.h (rotate_copy): Add missing std qualification.
3771
37722005-04-17  Paolo Carlini  <pcarlini@suse.de>
3773
3774	PR libstdc++/20914
3775	* include/bits/locale_facets.tcc (__int_to_char(_CharT*, _ValueT,
3776	const _CharT*, ios_base::fmtflags, bool)): Don't deal with numeric
3777	base or sign here, instead...
3778	(_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT)): ... here,
3779	after adding the grouping. This fixes the bug and also allows to
3780	clean-up the code dealing with integer types.
3781	(_M_group_int(const char*, size_t, _CharT, ios_base&, _CharT*,
3782	_CharT*, int&)): Simplify, remove bits dealing with numeric base.
3783	(__int_to_char(_CharT*, unsigned long, const _CharT*,
3784	ios_base::fmtflags), __int_to_char(_CharT*, unsigned long long,
3785	const _CharT*, ios_base::fmtflags)): Remove hackish fix for
3786	libstdc++/15565.
3787	(__int_to_char(_CharT*, long, const _CharT*, ios_base::fmtflags),
3788	__int_to_char(_CharT*, long long, const _CharT*, ios_base::fmtflags)):
3789	Simplify, don't pass the sign.
3790	(_M_insert_float(_OutIter, ios_base&, _CharT, char, _ValueT)):
3791	Deal with a sign at the beginning of __cs; robustify the grouping
3792	check.
3793	* testsuite/22_locale/num_put/put/char/20914.cc: New.
3794	* testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.
3795
37962005-04-14  Benjamin Kosnik  <bkoz@redhat.com>
3797
3798	* include/ext/bitmap_allocator.h
3799	(__gnu_cxx::free_list::_M_get_mutex): New.
3800	(__gnu_cxx::free_list::_M_get_free_list): New.
3801	(__gnu_cxx::free_list::_S_bfl_mutex): Remove.
3802	(__gnu_cxx::free_list::_S_free_list): Remove.
3803	* src/bitmap_allocator.cc: Same.
3804	* config/linker-map.gnu: Remove free_list and mutex export.
3805
38062005-04-14  Benjamin Kosnik  <bkoz@redhat.com>
3807
3808	*  include/ext/pod_char_traits.h (__gnu_cxx::character): Add char_type.
3809	(character::to): New.
3810	(character::from): New.
3811	(operator==): Add state parameter.
3812	(operator<): Same.
3813	(char_traits::copy): Use std::copy.
3814	(char_traits::assign): Use std::fill_n.
3815	(char_traits::to_char_type): Use character::from.
3816	(char_traits::to_int_type): Use character::to.
3817	*  testsuite/testsuite_character.h (__gnu_test::character): Remove.
3818	(__gnu_test::conversion_state): Remove.
3819	(__gnu_test::pod_char): Remove.
3820	(pod_char): New typedef.
3821	(pod_uchar): New typedef.
3822	(pod_ushort): New typedef.
3823	*  testsuite/testsuite_character.cc: Fixups.
3824	*  testsuite/21_strings/basic_string/inserters_extractors/pod/
3825	10081-in.cc: Same.
3826	*  testsuite/21_strings/basic_string/inserters_extractors/pod/
3827	10081-out.cc: Same.
3828	*  testsuite/22_locale/numpunct/members/pod/1.cc: Same.
3829	*  testsuite/22_locale/numpunct/members/pod/2.cc: Same.
3830	*  testsuite/27_io/basic_filebuf/close/12790-1.cc: Same.
3831	*  testsuite/27_io/basic_filebuf/open/12790-1.cc: Same.
3832	*  testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Same.
3833	*  testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Same.
3834	*  testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Same.
3835	*  testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Same.
3836	*  testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Same.
3837	*  testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Same.
3838	*  testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Same.
3839	*  testsuite/27_io/basic_ios/imbue/14072.cc: Same.
3840	*  testsuite/27_io/basic_istream/extractors_arithmetic/pod/
3841	3983-1.cc: Same.
3842	*  testsuite/27_io/basic_istream/extractors_character/pod/
3843	3983-2.cc: Same.
3844	*  testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc: Same.
3845	*  testsuite/27_io/basic_istream/sentry/pod/1.cc: Same.
3846	*  testsuite/27_io/basic_ostream/sentry/pod/1.cc: Same.
3847
38482005-04-12  Mike Stump  <mrs@apple.com>
3849
3850	* configure: Regenerate.
3851
38522005-04-08  Benjamin Kosnik  <bkoz@redhat.com>
3853
3854	* testsuite/Makefile.am: Remove libv3test.a.
3855	* testsuite/Makefile.in: Regenerate.
3856	* testsuite/lib/libstdc++.exp (v3_target_compile): Fix comments.
3857
38582005-04-08  Paolo Carlini  <pcarlini@suse.de>
3859
3860	PR libstdc++/20909
3861	* include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
3862	Don't even try to group numbers like 2e20, i.e., no decimal
3863	point, scientific notation.
3864	* testsuite/22_locale/num_put/put/char/20909.cc: New.
3865	* testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.
3866
38672005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
3868
3869	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Define _GLIBCXX_ASM_SYMVER.
3870	* acconfig.h: Delete file.
3871	* Makefile.in, acinclude.m4, configure: Regenerate.
3872
38732005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
3874
3875	* linkage.m4 (GLIBCXX_MAYBE_UNDERSCORED_FUNCS): New macro.
3876	(GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_1,
3877	GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_2,
3878	GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_3,
3879	GLIBCXX_CHECK_MATH_DECLS_AND_LINKAGES_1,
3880	GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_2): Use it.
3881	(GLIBCXX_CHECK_MATH_SUPPORT): Delete obsolete comment.
3882	* acconfig.h: Delete redundant macros.
3883	* config.h.in, configure: Regenerate.
3884
38852005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
3886
3887	* linkage.m4 (GLIBCXX_CHECK_MATH_DECLS_AND_LINKAGES_1): Eliminate
3888	a subshell and if test fails, test for same functions with
3889	leading underscore.
3890	(GLIBCXX_CHECK_MATH_SUPPORT): Eliminate seperate checks for _funcs.
3891	* configure: Regenerate.
3892
38932005-04-08  Danny Smith  <dannysmith@users.sourceforge.net>
3894	    Paolo Carlini  <pcarlini@suse.de>
3895
3896	PR libstdc++/20806
3897	* config/os/mingw32/os_defines.h: Define
3898	_GLIBCXX_HAVE_DOS_BASED_FILESYSTEM.
3899	* config/os/newlib/os_defines.h: Likewise, for __CYGWIN__.
3900	* include/bits/fstream.tcc (basic_filebuf<>::showmanyc()):
3901	Use it.
3902	(basic_filebuf<>::xsgetn(_CharT*, streamsize)): Likewise.
3903
39042005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
3905
3906	* acconfig.h: Sort the bottom section.
3907	* config.h.in: Regenerate.
3908
39092005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
3910
3911	* acconfig.h: Remove redundant HAVE_FLOAT_H.
3912	* config.h.in: Regenerate.
3913
39142005-04-08  Kelley Cook  <kcook@gcc.gnu.org>
3915
3916	* configure.ac: Create template for PACKAGE and VERSION.
3917	Update comment on how to regenerate file.  Update minimum
3918	automake version to 1.9.3.
3919	* acconfig.h: Remove PACKAGE and VERSION.
3920	* aclocal.m4, configure, Makefile.in, po/Makefile.in,
3921	src/Makefile.in, include/Makefile.in, libmath/Makefile.in,
3922	testsuite/Makefile.in, config.h.in: Regenerate.
3923
39242005-04-06  Benjamin Kosnik  <bkoz@redhat.com>
3925
3926	* docs/html/test.html: Update.
3927	* testsuite/printnow.c: Remove.
3928	* scripts/check_survey.in: Remove.
3929
3930	* testsuite/abi_check.cc: To...
3931	* testuite/testsuite_abi_check.cc: ...here.
3932	* testsuite/libstdc++-abi/abi.exp: Change abi_check.cc to
3933	testsuite_abi_check.cc.
3934
3935	* testsuite/testsuite_hooks.h: Move character related bits to...
3936	* testsuite/testsuite_character.h: ...here.
3937	* testsuite/testsuite_character.cc: ... and here.
3938	* testsuite/21_strings/basic_string/inserters_extractors/pod/
3939	10081-in.cc: Use testsuite_character.h.
3940	* testsuite/21_strings/basic_string/inserters_extractors/pod/
3941	10081-out.cc: Same.
3942	* testsuite/22_locale/numpunct/members/pod/1.cc: Same.
3943	* testsuite/22_locale/numpunct/members/pod/2.cc: Same.
3944	* testsuite/27_io/basic_filebuf/2.cc: Same.
3945	* testsuite/27_io/basic_fstream/2.cc: Same.
3946	* testsuite/27_io/basic_istream/2.cc: Same.
3947	* testsuite/27_io/basic_istream/extractors_arithmetic/pod/
3948	3983-1.cc: Same.
3949	* testsuite/27_io/basic_istream/extractors_character/char/
3950	9826.cc: Same.
3951	* testsuite/27_io/basic_istream/extractors_character/pod/
3952	3983-2.cc: Same.
3953	* testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc: Same.
3954	* testsuite/27_io/basic_istream/sentry/pod/1.cc: Same.
3955	* testsuite/27_io/basic_ostream/2.cc: Same.
3956	* testsuite/27_io/basic_ostream/sentry/pod/1.cc: Same.
3957	* testsuite/27_io/basic_streambuf/2.cc: Same.
3958	* testsuite/27_io/basic_stringbuf/2.cc: Same.
3959	* testsuite/27_io/basic_stringbuf/4.cc: Same.
3960	* testsuite/27_io/basic_stringstream/2.cc: Same.
3961	* testsuite/27_io/fpos/1.cc: Same.
3962	* testsuite/ext/mt_allocator/tune-1.cc: Same.
3963	* testsuite/ext/mt_allocator/tune-2.cc: Same.
3964	* testsuite/ext/stdio_filebuf/char/1.cc: Same.
3965	* testsuite/lib/libstdc++.exp (v3-build_support): Add
3966	testsuite_character.cc.
3967	* testsuite/Makefile.am (libv3test_a_SOURCES): Add
3968	testsuite_character.cc.
3969	* testsuite/Makefile.in: Regenerate.
3970
3971	* configure.ac: Remove use of check_survey.
3972	* configure: Regenerate.
3973	* testsuite/Makefile.am: Remove check-script and
3974	check-script-install rules.
3975	* testsuite/Makefile.in: Regenerate.
3976
39772005-04-06  Ulrich Weigand  <uweigand@de.ibm.com>
3978
3979	* config/cpu/s390/atomicity.h (__exchange_and_add): Add "memory"
3980	clobber to inline assembly statement.
3981
39822005-04-06  Kelley Cook  <kcook@gcc.gnu.org>
3983
3984	* acinclude.m4 (_GLIBCXX_USE_LONG_LONG,
3985	_GLIBCXX_USE_WCHAR_T, _GLIBCXX_USE_C99, _GLIBCXX_USE_C99_MATH,
3986	_GLIBCXX_USE_C99_COMPLEX, _GLIBCXX_RES_LIMITS, _GLIBCXX_CONCEPT_CHECKS,
3987	_GLIBCXX_SYMVER, _GLIBCXX_USE_LFS, _GLIBCXX_FULLY_DYNAMIC_STRING,
3988	_GLIBCXX_USE_NLS, HAVE_GTHR_DEFAULT, HAVE_MBSTATE_T, HAVE_POLL,
3989	HAVE_S_ISREG, HAVE_S_IFREG, HAVE_WRITEV, HAVE_INT64_T,
3990	HAVE_LC_MESSAGES): Use long form of AC_DEFINE ...
3991	* acconfig.h: ... to eliminate them from here.
3992	(_GLIBCXX_ASM_SYMVER): Move definition below @BOTTOM@.
3993	* config.h.in, configure: Regenerate.
3994
39952005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
3996
3997	* Makefile.am (ACLOCAL_AMFLAGS): Define.
3998	* crossconfig.m4: Wrap file into new GLIBCXX_CROSSCONFIG macro.
3999	* configure.ac: Use it.
4000	* acinclude.m4: Delete explicit m4_includes and sincludes.
4001	* aclocal.m4, configure, Makefile.in, po/Makefile.in,
4002	src/Makefile.in, include/Makefile.in, libmath/Makefile.in,
4003	testsuite/Makefile.in: Regenerate.
4004
40052005-04-05  Jonathan Wakely  <redi@gcc.gnu.org>
4006
4007	* include/tr1/memory, include/tr1/boost_shared_ptr.h: Use mutex
4008	to make _Sp_counted_base::add_ref_lock() thread-safe. Check whether
4009	to destroy resources by testing for equality, not inequality. Add
4010	empty critical sections to solve memory visibility issues.
4011	* testsuite/tr1/2_general_utilities/memory/
4012	shared_ptr/cons/auto_ptr_neg.cc: Use dg-excess-errors instead of
4013	explicitly listing line numbers which need to be kept in sync.
4014	* testsuite/tr1/2_general_utilities/memory/
4015	shared_ptr/assign/auto_ptr_neg.cc: Same.
4016	* testsuite/tr1/2_general_utilities/memory/
4017	shared_ptr/assign/auto_ptr_rvalue_neg.cc: Same.
4018	* testsuite/tr1/2_general_utilities/memory/
4019	shared_ptr/cons/weak_ptr_expired.cc: Make XFAIL for consistency when
4020	-fno-exceptions.
4021	* testsuite/tr1/2_general_utilities/memory/
4022	enable_shared_from_this/not_shared.cc: Add explanatory comments.
4023	* testsuite/tr1/2_general_utilities/memory/
4024	enable_shared_from_this/not_shared2.cc: Same.
4025	* testsuite/tr1/2_general_utilities/memory/
4026	enable_shared_from_this/not_shared3.cc: Same.
4027
40282005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
4029
4030	* acconfig.h: Delete macros already AC_DEFINED.
4031	* config.h.in: Regenerate.
4032
40332005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
4034
4035	* acconfig.h (HAVE_MODF): Remove.
4036	* linkage.m4: Check for modf.
4037	* config.h.in, configure: Regenerate.
4038
40392005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
4040
4041	* acconfig.h (ENABLE_NLS, HAVE_CATGETS): Remove.
4042	(HAVE_GETTEXT, HAVE_STPCPY): Likewise.
4043	* config.h.in: Regenerate.
4044
40452005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
4046
4047	* linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Use m4 translit macro
4048	to convert to uppercase instead of shelling out to tr.
4049	* acconfig.h: Remove now redundant HAVE__BUILTINS_*.
4050	* configure, config.h.in: Regenerate.
4051
40522005-04-05  Kelley Cook  <kcook@gcc.gnu.org>
4053
4054	* acconfig.h (HAVE_TANL): Correct cut-and-paste typo.
4055	* config.h.in: Regenerate.
4056
40572005-04-04  Mark Mitchell  <mark@codesourcery.com>
4058
4059	* testsuite/Makefile.am (check-local): Remove.
4060	(curent_symbols.txt): Likewise.
4061	(check-abi): Do not depend on current_symbols.txt.
4062	* testsuite/Makefile.in: Regenerated.
4063	* testsuite/libstdc++-abi/abi.exp: Build current_symbols.txt.
4064
40652005-04-02  Douglas Gregor  <doug.gregor@gmail.com>
4066
4067	* include/tr1/tuple_iterate.h (tuple_element): Use new macro
4068	_GLIBCXX_T_NUM_ARGS_PLUS_1 because _T is a macro on Darwin.
4069	* include/tr1/repeat.h (_GLIBCXX_T_NUM_ARGS_PLUS_1): Define for
4070	each iteration.
4071	* scripts/gen_includers.h: Define _GLIBCXX_T_NUM_ARGS_PLUS_1 for
4072	each iteration.
4073
40742005-04-01  Douglas Gregor  <doug.gregor@gmail.com>
4075
4076	* include/tr1/functional (_Maybe_wrap_member_pointer): Wrap up
4077	member pointers in _Mem_fn but let other function objects pass
4078	through unchanged.
4079	* include/tr1/functional_iterator (bind): Reduce number of bind()
4080	overloads to two to eliminate ambiguities. Use
4081	_Maybe_wrap_member_pointer to handle member pointers gracefully.
4082
40832005-04-01  Mark Mitchell  <mark@codesourcery.com>
4084
4085	* testsuite/Makefile.am (noinst_PROGRAMS): Remove.
4086	(site.exp): Write out the path to the baseline file.
4087	(check-abi): Use DejaGNU.
4088	(check-abi-verbose): Remove.
4089	* testsuite/Makefile.in: Regenerated.
4090	* testsuite/abi_check.cc (main): Check the return value from
4091	compare_symbols.
4092	* testsuite/testsuite_abi.cc (compare_symbols): Return a value.
4093	* testsuite/testsuite_abi.h (compare_symbols): Adjust prototype.
4094	* testsuite/libstdc++-abi/abi.exp: New file.
4095
40962005-03-31  Chris Jefferson  <chris@bubblescope.net>
4097
4098        * include/tr1/tuple: Support iteration via tuple_iterate.h.
4099        * include/tr1/tuple_iterate.h: Iteration file for tuple.
4100
41012005-03-31  Douglas Gregor  <doug.gregor@gmail.com>
4102
4103        * include/Makefile.am (tr1_headers): Add bind and mu repetition
4104        headers and reference_wrapper<> forwarding header.
4105        * include/Makefile.in: Regenerate.
4106        * include/tr1/bind_iterate.h: Implementation of function call
4107        operators for the function object returned from tr1::bind().
4108        * include/tr1/bind_repeat.h: Bind-specific repetition header,
4109        akin to include/tr1/repeat.h.
4110        * include/tr1/functional (_Mem_fn): Bug fix: declare result member
4111        template for use with result_of.
4112        (is_bind_expression): New.
4113        (is_placeholder): New.
4114        (_Placeholder): New. Placeholder type for bind.
4115        (_Mu): New. Implementation detail of bind.
4116        (_Bind, _Bind_result): New. Function objects returned by bind.
4117        (_GLIBCXX_JOIN): New. Required to create bind placeholders.
4118        * include/tr1/functional_iterate.h (_Bind, _Bind_result, bind):
4119        New. Implementation of tr1::bind.
4120        * include/tr1/mu_iterate.h (_Mu): result template and operator()
4121        for the _Mu helper to bind.
4122        * include/tr1/ref_fwd.h (reference_wrapper): Forward declaration
4123        used by tuple header.
4124        (ref): Ditto.
4125        (cref): Ditto.
4126        * include/tr1/repeat.h: Add bind-specific repetition macros.
4127        * include/tr1/tuple: Use reference_wrapper forwarding header for
4128        initial definitions, then include <tr1/functional> at the end, to
4129        make the circular dependencies work.
4130        (tie): Support zero-argument tie() function.
4131        * testsuite/tr1/3_function_objects/bind/all_bound.cc: New test of
4132        bind() functionality with parameters bound.
4133        * testsuite/tr1/3_function_objects/bind/nested.cc: New test of
4134        nested bind() expressions.
4135        * testsuite/tr1/3_function_objects/bind/placeholders.cc: New test
4136        of bind() placeholders.
4137        * testsuite/tr1/3_function_objects/bind/ref.cc: New test of bind()
4138        with arguments bound via reference_wrapper<>.
4139        * scripts/gen_includers.pl: Generate the repetitive part of
4140	include/tr1/repeat.h.
4141	* scripts/gen_bind_includers.pl: Generate the repetitive part of
4142	include/tr1/bind_repeat.h.
4143
41442005-03-30  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
4145
4146	* testsuite/Makefile.am (CXX): Use ${SHELL}.
4147	(GLIBCXX_INCLUDES): Same.
4148	(AM_CXXFLAGS): Same.
4149	* testsuite/Makefile.in: Regenerate.
4150
41512005-03-25  Mark Mitchell  <mark@codesourcery.com>
4152
4153	* testsuite/lib/libstdc++.exp (libstdc++_init): Define LOCALEDIR
4154	when testing an installed compiler.
4155
4156	* testsuite/lib/libstdc++.exp (v3-build_support): Pass -w when
4157	compiling support objects.
4158
41592005-03-24  Benjamin Kosnik  <bkoz@redhat.com>
4160
4161	* include/tr1/memory: Forward to...
4162	* include/tr1/boost_shared_ptr.h: ...here. Add Boost Software License.
4163	* include/Makefile.am (tr1_headers): Add boost_shared_ptr.h.
4164	* include/Makefile.in: Regenerate.
4165	* testsuite/tr1/2_general_utilities/memory/shared_ptr/cons/
4166	auto_ptr_neg.cc: Adjust line numbers.
4167
41682005-03-23  Mark Mitchell  <mark@codesourcery.com>
4169
4170	* testsuite/Makefile.am (all-local): Do not build testsuite_files.
4171	* testsuite/Makefile.in: Regenerated.
4172
41732005-03-23  Benjamin Kosnik  <bkoz@redhat.com>
4174
4175	* acinclude.m4: Adjust so that _GLIBCXX_USE_C99 implies
4176	using _GLIBCXX_USE_C99_COMPLEX, _GLIBCXX_USE_C99_MATH, and
4177	_GLIBCXX_USE_C99_WCHAR.
4178	Remove GLIBCXX_ENABLE_C_MBCHAR, consolidate in GLIBCXX_ENABLE_C99
4179	and GLIBCXX_ENABLE_WCHAR_T.
4180	Take C99 bits from GLIBCXX_CHECK_WCHAR_T_SUPPORT and put in
4181	GLIBCXX_ENABLE_C99.
4182	Change remaining parts of GLIBCXX_CHECK_WCHAR_T_SUPPORT to
4183	GLIBCXX_CHECK_ICONV_SUPPORT.
4184	* configure.ac: Remove GLIBCXX_ENABLE_C_MBCHAR, use
4185	GLIBCXX_CHECK_ICONV_SUPPORT and GLIBCXX_ENABLE_WCHAR_T.
4186	* crossconfig.m4: Same.
4187	* acconfig.h: Same, adjust comments.
4188	* config.h.in: Regenerate.
4189	* configure: Regenerate.
4190	* docs/html/configopts.html: Change --enable-c-mbchar to
4191	--enable-wchar_t.
4192
4193	* config/locale/gnu/c++locale_internal.h: Guard wide functions
4194	with _GLIBCXX_USE_WCHAR_T.
4195	* include/c_std/std_cwctype.h: Alphabetize, remove duplicates.
4196	* include/c_std/std_cstdio.h: Spacing.
4197
4198	* config/locale/gnu/c_locale.h: Tweaks for unused warnings.
4199	* src/debug.cc: Same.
4200
42012005-03-23  Mark Mitchell  <mark@codesourcery.com>
4202
4203	* testsuite/libstdc++-dg/normal.exp: Read testsuite_files, if it
4204	exists.
4205
4206	* testsuite/lib/libstdc++.exp (libstdc++_wchar_t): Rename to ...
4207	(v3-wchar_t): ... this.
4208	(libstdc++_threads): Rename to ...
4209	(v3-threads): ... this.
4210	(libstdc++_test_objs): Rename to ...
4211	(v3-test_objs): ... this.
4212	(libstdc++_build_support): Rename to ...
4213	(v3-build_support): ... this.
4214	* testsuite/libstdc++-dg/normal.exp: Adjust to use new names.
4215
4216	* testsuite/lib/libstdc++.exp (libstdc++_init): Improve handling
4217	of compilers not in the build directory.
4218	(libstdc++_wchar_t): New variable.
4219	(libstdc++_threads): Likewise.
4220	(libstdc++_test_objs): Likewise.
4221	(v3_target_compile): Use libstdc++_test_objs.
4222	(v3-list-tests): Remove.
4223	(listdc++_build_support): New function.
4224	* testsuite/libstdc++-dg/normal.exp: Rework to dynamically
4225	generate list of tests.
4226
42272005-03-21  Chris Jefferson  <chris@bubblescope.net>
4228
4229	PR libstdc++/20577
4230	* include/bits/stl_algobase.h (iter_swap): Only delegate iter_swap
4231	to swap when the iterator's reference_type is a reference to its
4232	value_type.
4233	* testsuite/25_algorithms/iter_swap/20577.cc: New.
4234
42352005-03-21  Zack Weinberg  <zack@codesourcery.com>
4236
4237	* acinclude.m4 (GLIBCXX_CONFIGURE): Delete gcc_version logic.
4238	(GLIBCXX_EXPORT_INSTALL_INFO): Adjust quotation so ${gcc_version}
4239	is expanded by the Makefiles, not by configure.
4240	* fragment.am: Set gcc_version.
4241	* libmath/Makefile.am: Likewise.
4242	* configure, Makefile.in, include/Makefile.in, libmath/Makefile.in
4243	* libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in
4244	* testsuite/Makefile.in: Regenerate.
4245
42462005-03-16  Paolo Carlini  <pcarlini@suse.de>
4247
4248	* testsuite/20_util/functional/binders.cc: Remove explicit
4249	instantiations for non-weak systems.
4250	* testsuite/20_util/memory/allocator/1.cc: Likewise.
4251	* testsuite/20_util/memory/allocator/10378.cc: Likewise.
4252	* testsuite/20_util/memory/allocator/10416.cc: Likewise.
4253	* testsuite/20_util/memory/allocator/8230.cc: Likewise.
4254	* testsuite/20_util/utility/rel_ops.cc: Likewise.
4255	* testsuite/22_locale/ctype/is/char/2.cc: Likewise.
4256	* testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
4257	* testsuite/23_containers/deque/cons/1.cc: Likewise.
4258	* testsuite/23_containers/deque/cons/2.cc: Likewise.
4259	* testsuite/23_containers/deque/invalidation/1.cc: Likewise.
4260	* testsuite/23_containers/deque/invalidation/2.cc: Likewise.
4261	* testsuite/23_containers/deque/invalidation/3.cc: Likewise.
4262	* testsuite/23_containers/deque/invalidation/4.cc: Likewise.
4263	* testsuite/23_containers/deque/modifiers/swap.cc: Likewise.
4264	* testsuite/23_containers/deque/operators/1.cc: Likewise.
4265	* testsuite/23_containers/list/capacity/1.cc: Likewise.
4266	* testsuite/23_containers/list/cons/1.cc: Likewise.
4267	* testsuite/23_containers/list/cons/2.cc: Likewise.
4268	* testsuite/23_containers/list/cons/3.cc: Likewise.
4269	* testsuite/23_containers/list/cons/4.cc: Likewise.
4270	* testsuite/23_containers/list/cons/5.cc: Likewise.
4271	* testsuite/23_containers/list/cons/6.cc: Likewise.
4272	* testsuite/23_containers/list/cons/7.cc: Likewise.
4273	* testsuite/23_containers/list/cons/8.cc: Likewise.
4274	* testsuite/23_containers/list/cons/9.cc: Likewise.
4275	* testsuite/23_containers/list/invalidation/1.cc: Likewise.
4276	* testsuite/23_containers/list/invalidation/2.cc: Likewise.
4277	* testsuite/23_containers/list/invalidation/3.cc: Likewise.
4278	* testsuite/23_containers/list/invalidation/4.cc: Likewise.
4279	* testsuite/23_containers/list/modifiers/1.cc: Likewise.
4280	* testsuite/23_containers/list/modifiers/2.cc: Likewise.
4281	* testsuite/23_containers/list/modifiers/3.cc: Likewise.
4282	* testsuite/23_containers/list/operators/1.cc: Likewise.
4283	* testsuite/23_containers/list/operators/2.cc: Likewise.
4284	* testsuite/23_containers/list/operators/3.cc: Likewise.
4285	* testsuite/23_containers/list/operators/4.cc: Likewise.
4286	* testsuite/23_containers/map/insert/1.cc: Likewise.
4287	* testsuite/23_containers/map/invalidation/1.cc: Likewise.
4288	* testsuite/23_containers/map/invalidation/2.cc: Likewise.
4289	* testsuite/23_containers/map/modifiers/swap.cc: Likewise.
4290	* testsuite/23_containers/map/operators/1.cc: Likewise.
4291	* testsuite/23_containers/multimap/invalidation/1.cc: Likewise.
4292	* testsuite/23_containers/multimap/invalidation/2.cc: Likewise.
4293	* testsuite/23_containers/multimap/modifiers/swap.cc: Likewise.
4294	* testsuite/23_containers/multiset/insert/1.cc: Likewise.
4295	* testsuite/23_containers/multiset/insert/2.cc: Likewise.
4296	* testsuite/23_containers/multiset/invalidation/1.cc: Likewise.
4297	* testsuite/23_containers/multiset/invalidation/2.cc: Likewise.
4298	* testsuite/23_containers/multiset/modifiers/swap.cc: Likewise.
4299	* testsuite/23_containers/priority_queue/members/7161.cc: Likewise.
4300	* testsuite/23_containers/queue/members/7157.cc: Likewise.
4301	* testsuite/23_containers/set/insert/1.cc: Likewise.
4302	* testsuite/23_containers/set/invalidation/1.cc: Likewise.
4303	* testsuite/23_containers/set/invalidation/2.cc: Likewise.
4304	* testsuite/23_containers/set/modifiers/swap.cc: Likewise.
4305	* testsuite/23_containers/stack/members/7158.cc: Likewise.
4306	* testsuite/23_containers/vector/bool/6886.cc: Likewise.
4307	* testsuite/23_containers/vector/capacity/1.cc: Likewise.
4308	* testsuite/23_containers/vector/capacity/8230.cc: Likewise.
4309	* testsuite/23_containers/vector/cons/1.cc: Likewise.
4310	* testsuite/23_containers/vector/cons/2.cc: Likewise.
4311	* testsuite/23_containers/vector/cons/3.cc: Likewise.
4312	* testsuite/23_containers/vector/cons/6513.cc: Likewise.
4313	* testsuite/23_containers/vector/element_access/1.cc: Likewise.
4314	* testsuite/23_containers/vector/invalidation/1.cc: Likewise.
4315	* testsuite/23_containers/vector/invalidation/2.cc: Likewise.
4316	* testsuite/23_containers/vector/invalidation/3.cc: Likewise.
4317	* testsuite/23_containers/vector/invalidation/4.cc: Likewise.
4318	* testsuite/23_containers/vector/modifiers/1.cc: Likewise.
4319	* testsuite/23_containers/vector/modifiers/2.cc: Likewise.
4320	* testsuite/23_containers/vector/modifiers/swap.cc: Likewise.
4321	* testsuite/23_containers/vector/resize/1.cc: Likewise.
4322	* testsuite/24_iterators/back_insert_iterator.cc: Likewise.
4323	* testsuite/24_iterators/front_insert_iterator.cc: Likewise.
4324	* testsuite/24_iterators/insert_iterator.cc: Likewise.
4325	* testsuite/24_iterators/iterator.cc: Likewise.
4326	* testsuite/25_algorithms/copy/1.cc: Likewise.
4327	* testsuite/25_algorithms/copy/2.cc: Likewise.
4328	* testsuite/25_algorithms/copy/3.cc: Likewise.
4329	* testsuite/25_algorithms/copy/4.cc: Likewise.
4330	* testsuite/25_algorithms/equal.cc: Likewise.
4331	* testsuite/25_algorithms/fill/1.cc: Likewise.
4332	* testsuite/25_algorithms/fill/2.cc: Likewise.
4333	* testsuite/25_algorithms/min_max.cc: Likewise.
4334	* testsuite/25_algorithms/rotate.cc: Likewise.
4335	* testsuite/25_algorithms/unique/1.cc: Likewise.
4336	* testsuite/25_algorithms/unique/2.cc: Likewise.
4337	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
4338	* testsuite/ext/concept_checks.cc: Likewise.
4339	* testsuite/ext/hash_map/1.cc: Likewise.
4340	* testsuite/ext/hash_set/1.cc: Likewise.
4341	* testsuite/ext/rope/1.cc: Likewise.
4342	* testsuite/ext/rope/2.cc: Likewise.
4343	* testsuite/ext/rope/3.cc: Likewise.
4344	* testsuite/thread/pthread1.cc: Likewise.
4345	* testsuite/thread/pthread4.cc: Likewise.
4346	* testsuite/thread/pthread5.cc: Likewise.
4347	* testsuite/thread/pthread6.cc: Likewise.
4348	* testsuite/thread/pthread7-rope.cc: Likewise.
4349
43502005-03-15  Zack Weinberg  <zack@codesourcery.com>
4351
4352	* include/Makefile.am (c++config.h): Depend on DATESTAMP from gcc
4353	subdirectory.  Generate #define of __GLIBCXX__ from contents of
4354	that file.
4355	* include/Makefile.in: Regenerate.
4356	* include/bits/c++config: Do not define __GLIBCXX__.
4357
43582005-03-15  Paolo Carlini  <pcarlini@suse.de>
4359
4360	PR libstdc++/20352
4361	* include/std/std_complex.h (pow(const complex<_Tp>&,
4362	const _Tp&)): On non-c99 platforms, don't try to compute
4363	log of complex zero.
4364
43652005-03-10  Ben Elliston  <bje@au.ibm.com>
4366
4367	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Don't XFAIL
4368	on GNU/Linux.
4369
43702005-03-07  Paolo Carlini  <pcarlini@suse.de>
4371
4372	* include/tr1/type_traits (is_polymorphic): Don't forget
4373	the virtual destructor, thus avoiding warnings.
4374	* testsuite/testsuite_tr1.h (class AbstractClass,
4375	class PolymorphicClass): Likewise.
4376
43772005-03-07  Paolo Carlini  <pcarlini@suse.de>
4378
4379	* include/std/std_complex.h (pow(const complex<_Tp>&,
4380	const complex<_Tp>&)): Dispatch to either __complex_pow(__x.__rep(),
4381	__y.__rep()) or __complex_pow(__x, __y) depending on the macro
4382	_GLIBCXX_USE_C99_COMPLEX.
4383
43842005-03-07  Paolo Carlini  <pcarlini@suse.de>
4385
4386	* include/std/std_fstream.h (basic_fstream<>::open,
4387	basic_ifstream<>::open, basic_ofstream<>::open): Implement the
4388	resolution of DR 409 [Ready], call clear() on success.
4389	* docs/html/ext/howto.html: Add an entry for DR 409.
4390	* docs/html/faq/index.html (4_4): Clarify the new behavior.
4391	* testsuite/27_io/basic_ifstream/open/char/1.cc: Adjust.
4392	* testsuite/27_io/basic_ofstream/open/char/1.cc: Likewise.
4393
43942005-03-05  Joseph S. Myers  <joseph@codesourcery.com>
4395
4396	* testsuite/22_locale/collate/compare/wchar_t/2.cc,
4397	testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc,
4398	testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc,
4399	testsuite/22_locale/collate/hash/wchar_t/2.cc,
4400	testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc,
4401	testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc,
4402	testsuite/22_locale/collate/transform/wchar_t/2.cc,
4403	testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc,
4404	testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
4405	XFAIL on *-*-hpux11.23.
4406
44072005-03-04  Paolo Carlini  <pcarlini@suse.de>
4408
4409	* include/tr1/type_traits: Add is_base_of.
4410	* testsuite/tr1/4_metaprogramming/relationships_between_types/
4411	is_base_of/is_base_of.cc: New.
4412	* testsuite/tr1/4_metaprogramming/relationships_between_types/
4413	is_base_of/typedefs.cc: Likewise.
4414
44152005-03-03  Benjamin Kosnik  <bkoz@redhat.com>
4416
4417	* include/tr1/functional: Convert relative path.
4418
4419	* docs/doxygen/user.cfg.in: Add tr1 includes.
4420
44212005-03-03  Paolo Carlini  <pcarlini@suse.de>
4422
4423	* include/tr1/type_traits: Implemenet is_polymorphic.
4424	(is_empty): Minor tweaks.
4425	* testsuite/testsuite_tr1.h: Add test types.
4426	* testsuite/tr1/4_metaprogramming/type_properties/
4427	is_polymorphic/is_polymorphic.cc: New.
4428	* testsuite/tr1/4_metaprogramming/type_properties/
4429	is_polymorphic/typedefs.cc: Likewise.
4430	* testsuite/tr1/4_metaprogramming/composite_type_traits/
4431	is_union_or_class/is_union_or_class.cc: Add tests.
4432
44332005-03-02  Douglas Gregor  <doug.gregor@gmail.com>
4434
4435	* include/tr1/functional (_Has_result_type): Cleanup.
4436	(_Result_of_impl): Handle member data pointers correctly.
4437	(reference_wrapper): Support invocation.
4438	Move repetition code into new file include/tr1/repeat.h.
4439	* include/tr1/functional_iterate.h (reference_wrapper): Support
4440	invocation.  Cleanup long lines.
4441	* include/tr1/ref_wrap_iterate.h (reference_wrapper): Declare
4442	invocation operators.
4443	* include/tr1/repeat.h: Code repetition header.
4444	* include/Makefile.am: Add ref_wrap_iterate.h, repeat.h.
4445	* include/Makefile.in: Add ref_wrap_iterate.h, repeat.h.
4446	* testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
4447	New test of reference_wrapper invocation.
4448	* testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
4449	New test of reference_wrapper typedefs and base classes.
4450	* testsuite/tr1/3_function_objects/result_of.cc: Trivial cleanup
4451	(e-mail address).
4452
44532005-03-02  Douglas Gregor  <doug.gregor@gmail.com>
4454
4455	* include/tr1/function (result_of): New class template.
4456	* include/tr1/functional/iterator.h: Implementation of TR1
4457	result_of.
4458	* testsuite/tr1/3_function_objects/result_of.cc: New test
4459
44602005-03-01  Vladimir Merzliakov  <wanderer@rsu.ru>
4461
4462	* testsuite/26_numerics/cmath/c99_classification_macros_c.cc: Tweak.
4463
44642005-02-28  Benjamin Kosnik  <bkoz@redhat.com>
4465
4466	* testsuite/tr1/2_general_utilities/memory/shared_ptr/
4467	cons/auto_ptr_neg.cc: Correct line numbers.
4468
4469	* testsuite/testsuite_abi.cc: Add CXXABI_1.3.1.
4470
44712005-02-28  Jonathan Wakely  <redi@gcc.gnu.org>
4472
4473	* include/tr1/memory: Replace checked_deleter with (unchecked)
4474	_Sp_deleter as GCC warns about delete on incomplete types anyway.
4475
44762005-02-28  Jonathan Wakely  <redi@gcc.gnu.org>
4477
4478	* include/tr1/memory: Add missing "inline" to __throw_bad_weak_ptr.
4479
44802005-02-28  Hans-Peter Nilsson  <hp@axis.com>
4481
4482	PR target/19065
4483	* config/cpu/cris/atomicity.h (__exchange_and_add): In asm, use
4484	'Q' constraint, not 'm'.
4485
44862005-02-26  Earl Chew  <earl_chew@agilent.com>
4487	    Christopher Jefferson  <chris@bubblescope.net>
4488
4489	* include/bits/stl_tree.h (_Rb_tree<>::_M_insert): Don't leak
4490	memory if _M_key_compare throws.
4491
44922005-02-25  Paolo Carlini  <pcarlini@suse.de>
4493
4494	* include/tr1/type_traits: Add the trivial is_union and is_class;
4495	add the __is_union_or_class extension.
4496	(is_enum, is_empty): Use the latter.
4497	* include/tr1/type_traits_fwd.h: Add __is_union_or_class.
4498	* testsuite/testsuite_tr1.h: Add UnionType; trivial formatting
4499	fixes.
4500	* testsuite/tr1/4_metaprogramming/composite_type_traits/
4501	is_union_or_class/is_union_or_class.cc: New.
4502	* testsuite/tr1/4_metaprogramming/composite_type_traits/
4503	is_union_or_class/typedefs.cc: Likewise.
4504
45052005-02-24  Benjamin Kosnik  <bkoz@redhat.com>
4506
4507	* testsuite/tr1/6_containers/unordered/instantiate/hash.cc: Guard
4508	wchar_t use with _GLIBCXX_USE_WCHAR_T.
4509
45102005-02-24  Benjamin Kosnik  <bkoz@redhat.com>
4511
4512	* include/std/std_complex.h: _GLIBCXX_USE_C99_COMPLEX_MATH to
4513	_GLIBCXX_USE_C99_COMPLEX.
4514	* acinclude.m4: Same.
4515	* acconfig.h: Same.
4516	* configure: Regenerate.
4517	* config.h.in: Same.
4518
45192005-02-24  Paolo Carlini  <pcarlini@suse.de>
4520
4521	* include/tr1/functional (mem_fn): Avoid _T, badname on
4522	Darwin.
4523
45242005-02-23  Douglas Gregor  <doug.gregor@gmail.com>
4525
4526	* include/tr1/functional (function): New class template.
4527	(mem_fn): New function template.
4528	Implementations of TR1 function and mem_fn facilities.
4529	* include/tr1/functional_iterate.h: Implementations of TR1
4530	function and mem_fn facilities.
4531	* testsuite/tr1/3_function_objects/function/1.cc: New
4532	test of std::tr1::function.
4533	* testsuite/tr1/3_function_objects/function/2.cc: New
4534	test of std::tr1::function.
4535	* testsuite/tr1/3_function_objects/function/3.cc: New
4536	test of std::tr1::function.
4537	* testsuite/tr1/3_function_objects/function/4.cc: New
4538	test of std::tr1::function.
4539	* testsuite/tr1/3_function_objects/function/5.cc: New
4540	test of std::tr1::function.
4541	* testsuite/tr1/3_function_objects/function/6.cc: New
4542	test of std::tr1::function.
4543	* testsuite/tr1/3_function_objects/function/7.cc: New
4544	test of std::tr1::function.
4545	* testsuite/tr1/3_function_objects/function/8.cc: New
4546	test of std::tr1::function.
4547	* testsuite/tr1/3_function_objects/function/9.cc: New
4548	test of std::tr1::function.
4549	* testsuite/tr1/3_function_objects/mem_fn.cc: New test of
4550	std::tr1::mem_fn.
4551
45522005-02-23  Paolo Carlini  <pcarlini@suse.de>
4553
4554	* include/tr1/type_traits: Implement is_convertible.
4555	* testsuite/tr1/4_metaprogramming/relationships_between_types/
4556	is_convertible/is_convertible.cc: New.
4557	* testsuite/tr1/4_metaprogramming/relationships_between_types/
4558	is_convertible/typedefs.cc: Likewise.
4559	* testsuite/testsuite_tr1.h: Add class DerivedType.
4560
4561	* include/tr1/type_traits (is_function): Don't mistake references
4562	to function types for function types.
4563	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4564	is_function/is_function.cc: Add testcase.
4565
45662005-02-22  Benjamin Kosnik  <bkoz@redhat.com>
4567
4568	* scripts/check_performance: Tweaks.
4569
4570	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/2.cc: Name
4571	output file with extension that clean rules can find.
4572
45732005-02-22  Richard Henderson  <rth@redhat.com>
4574
4575	PR libstdc++/20091
4576	* libsupc++/eh_catch.cc (__cxa_begin_catch): Don't special case
4577	decrement of uncaughtExceptions for rethrow.
4578
45792005-02-22  Paolo Carlini  <pcarlini@suse.de>
4580
4581	* include/tr1/functional: Fix License to GPL with exception.
4582	* include/tr1/hashtable: Likewise.
4583	* include/tr1/tuple: Likewise.
4584	* include/tr1/type_traits: Likewise.
4585	* include/tr1/type_traits_fwd.h: Likewise.
4586	* include/tr1/unordered_map: Likewise.
4587	* include/tr1/unordered_set: Likewise.
4588	* include/tr1/utility: Likewise.
4589
45902005-02-22  Paolo Carlini  <pcarlini@suse.de>
4591
4592	* testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
4593	auto_ptr_neg.cc: Add missing dg-do compile directive.
4594	* testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
4595	auto_ptr_rvalue_neg.cc: Likewise.
4596	* testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
4597	shared_ptr_neg.cc: Likewise.
4598	* testsuite/tr1/2_general_utilities/memory/shared_ptr/cons/
4599	auto_ptr_neg.cc: Likewise.
4600	* testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
4601	reset_neg.cc: Likewise.
4602	* testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
4603	swap_neg.cc: Likewise.
4604
46052005-02-22  Jonathan Wakely  <redi@gcc.gnu.org>
4606
4607	* include/Makefile.am, include/Makefile.in: Fix accidental extra
4608	change from previous commit.
4609
46102005-02-21  Jonathan Wakely  <redi@gcc.gnu.org>
4611
4612	* include/tr1/memory: New file.
4613	* include/Makefile.am, include/Makefile.in: Add new TR1 header.
4614	* testsuite/tr1/2_general_utilities/memory/
4615	enable_shared_from_this/not_shared.cc: New test.
4616	* testsuite/tr1/2_general_utilities/memory/
4617	enable_shared_from_this/not_shared2.cc: New test.
4618	* testsuite/tr1/2_general_utilities/memory/
4619	enable_shared_from_this/not_shared3.cc: New test.
4620	* testsuite/tr1/2_general_utilities/memory/
4621	enable_shared_from_this/shared.cc: New test.
4622	* testsuite/tr1/2_general_utilities/memory/
4623	enable_shared_from_this/still_shared.cc: New test.
4624	* testsuite/tr1/2_general_utilities/memory/
4625	shared_ptr/assign/assign.cc: New test.
4626	* testsuite/tr1/2_general_utilities/memory/
4627	shared_ptr/assign/auto_ptr.cc: New test.
4628	* testsuite/tr1/2_general_utilities/memory/
4629	shared_ptr/assign/auto_ptr_neg.cc: New test.
4630	* testsuite/tr1/2_general_utilities/memory/
4631	shared_ptr/assign/auto_ptr_rvalue_neg.cc: New test.
4632	* testsuite/tr1/2_general_utilities/memory/
4633	shared_ptr/assign/shared_ptr.cc: New test.
4634	* testsuite/tr1/2_general_utilities/memory/
4635	shared_ptr/assign/shared_ptr_neg.cc: New test.
4636	* testsuite/tr1/2_general_utilities/memory/
4637	shared_ptr/comparison/cmp.cc: New test.
4638	* testsuite/tr1/2_general_utilities/memory/
4639	shared_ptr/cons/auto_ptr.cc: New test.
4640	* testsuite/tr1/2_general_utilities/memory/
4641	shared_ptr/cons/auto_ptr_neg.cc: New test.
4642	* testsuite/tr1/2_general_utilities/memory/
4643	shared_ptr/cons/copy.cc: New test.
4644	* testsuite/tr1/2_general_utilities/memory/
4645	shared_ptr/cons/default.cc: New test.
4646	* testsuite/tr1/2_general_utilities/memory/
4647	shared_ptr/cons/pointer.cc: New test.
4648	* testsuite/tr1/2_general_utilities/memory/
4649	shared_ptr/cons/weak_ptr.cc: New test.
4650	* testsuite/tr1/2_general_utilities/memory/
4651	shared_ptr/cons/weak_ptr_expired.cc: New test.
4652	* testsuite/tr1/2_general_utilities/memory/
4653	shared_ptr/dest/dest.cc: New test.
4654	* testsuite/tr1/2_general_utilities/memory/
4655	shared_ptr/misc/io.cc: New test.
4656	* testsuite/tr1/2_general_utilities/memory/
4657	shared_ptr/misc/swap.cc: New test.
4658	* testsuite/tr1/2_general_utilities/memory/
4659	shared_ptr/modifiers/reset.cc: New test.
4660	* testsuite/tr1/2_general_utilities/memory/
4661	shared_ptr/modifiers/reset_neg.cc: New test.
4662	* testsuite/tr1/2_general_utilities/memory/
4663	shared_ptr/modifiers/swap.cc: New test.
4664	* testsuite/tr1/2_general_utilities/memory/
4665	shared_ptr/modifiers/swap_neg.cc: New test.
4666	* testsuite/tr1/2_general_utilities/memory/
4667	shared_ptr/observers/bool_conv.cc: New test.
4668	* testsuite/tr1/2_general_utilities/memory/
4669	shared_ptr/observers/get.cc: New test.
4670	* testsuite/tr1/2_general_utilities/memory/
4671	shared_ptr/observers/unique.cc: New test.
4672	* testsuite/tr1/2_general_utilities/memory/
4673	shared_ptr/observers/use_count.cc: New test.
4674
46752005-02-21  Paolo Carlini  <pcarlini@suse.de>
4676
4677	* include/tr1/type_traits (is_member_function_pointer):
4678	Remove ugly workaround for c++/19076.
4679
46802005-02-21  Paolo Carlini  <pcarlini@suse.de>
4681
4682	* include/bits/basic_string.tcc (_Rep::_M_destroy): Don't
4683	check for this == &_S_empty_rep, it's always false, here.
4684
46852005-02-19  Matt Austern  <austern@gmail.com>
4686
4687	* include/tr1/functional (tr1_hashtable_define_trivial_hash): Make
4688	hash<T>::operator() a const member function for T a fundamental type
4689	* include/tr1/hashtable (extract1st::operator()): Declare const.
4690	(hash_code_base): Declare all member functions const
4691	(hashtable::find): fix call to this->bucket_count()
4692	(hashtable::count): Likewise.
4693	(hashtable::equal_range): m_incr_bucket applies to iterator, not node.
4694	* testsuite/tr1/6_containers/unordered/find/set1.cc: New test.
4695	* testsuite/tr1/6_containers/unordered/find/map1.cc: New test.
4696	* testsuite/tr1/6_containers/unordered/find/multimap1.cc: New test.
4697	* testsuite/tr1/6_containers/unordered/find/multiset1.cc: New test.
4698
46992005-02-19  Hans-Peter Nilsson  <hp@axis.com>
4700
4701	PR libstdc++/20071
4702	* include/tr1/functional (hash<std::wstring>): Wrap in #ifdef
4703	_GLIBCXX_USE_WCHAR_T.
4704
47052005-02-18  Richard Henderson  <rth@redhat.com>
4706
4707	PR libstdc++/10606
4708	* config/linker-map.gnu (CXXABI_1.3.1): Add __cxa_get_exception_ptr.
4709	* libsupc++/eh_alloc.cc (__cxa_allocate_exception): Increment
4710	uncaughtExceptions here instead of ...
4711	* libsupc++/eh_throw.cc (__cxa_throw) ... here.
4712	(__cxa_rethrow): Increment uncaughtExceptions here instead of ...
4713	* libsupc++/eh_catch.cc (__cxa_end_catch): ... here.
4714	(__cxa_get_exception_ptr): New.
4715	* libsupc++/unwind-cxx.h (__cxa_get_exception_ptr): Declare.
4716
47172005-02-18  Matt Austern  <austern@apple.com>
4718
4719	* testsuite/tr1/6_containers/unordered/insert/array_syntax.cc: Fix
4720	test case to use assignment instead of ==
4721	* testsuite/tr1/6_containers/unordered/insert/map_range.cc: New test.
4722	* testsuite/tr1/6_containers/unordered/insert/multimap_range.cc: New test.
4723	* testsuite/tr1/6_containers/unordered/insert/multiset_range.cc: New test.
4724	* testsuite/tr1/6_containers/unordered/insert/set_range.cc: New test.
4725
47262005-02-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
4727
4728	* testsuite/thread/pthread1.cc: Do not invoke pthread_setconcurrency
4729	on Solaris 2.6 and below.
4730	* testsuite/thread/pthread2.cc: Likewise.
4731	* testsuite/thread/pthread3.cc: Likewise.
4732	* testsuite/thread/pthread4.cc: Likewise.
4733	* testsuite/thread/pthread5.cc: Likewise.
4734	* testsuite/thread/pthread6.cc: Likewise.
4735	* testsuite/thread/pthread7-rope.cc: Likewise.
4736
47372005-02-17  Matt Austern  <austern@apple.com>
4738
4739	* include/tr1/functional (hash): New function object.
4740	* include/tr1/hashtable: New file.
4741	* include/tr1/unordered_set: New file.
4742	* include/tr1/unordered_map: New file.
4743	* include/Makefile.am: Add three new TR1 headers.
4744	* include/Makefile.in: Likewise.
4745	* testsuite/tr1/6_containers/unordered/insert/array_syntax.cc: New test.
4746	* testsuite/tr1/6_containers/unordered/insert/map_single.cc: New test.
4747	* testsuite/tr1/6_containers/unordered/insert/multimap_single.cc: New test.
4748	* testsuite/tr1/6_containers/unordered/insert/multiset_single.cc: New test.
4749	* testsuite/tr1/6_containers/unordered/insert/set_single.cc: New test.
4750	* testsuite/tr1/6_containers/unordered/instantiate/hash.cc: New test.
4751	* testsuite/tr1/6_containers/unordered/instantiate/map.cc: New test.
4752	* testsuite/tr1/6_containers/unordered/instantiate/multimap.cc: New test.
4753	* testsuite/tr1/6_containers/unordered/instantiate/multiset.cc: New test.
4754	* testsuite/tr1/6_containers/unordered/instantiate/set.cc: New test.
4755
47562005-02-16  Paolo Carlini  <pcarlini@suse.de>
4757
4758	* testsuite/23_containers/set/modifiers/16728.cc:
4759	Remove redundant include <testsuite_performance.h>.
4760
47612005-02-16  Paolo Carlini  <pcarlini@suse.de>
4762
4763	PR libstdc++/19829
4764	* testsuite/21_strings/basic_string/find/char/3.cc: Fix the test
4765	at line #66 to not access str_lit01 beyond its end.
4766	* testsuite/21_strings/basic_string/find/wchar_t/3.cc: Likewise.
4767
47682005-02-15  Paolo Carlini  <pcarlini@suse.de>
4769	    Jon Grimm  <jgrimm2@us.ibm.com>
4770
4771	PR libstdc++/19955
4772	* include/bits/locale_facets.h (ctype<char>::_M_narrow_init()):
4773	Fix the logic setting _M_narrow_ok: first check whether the
4774	transformation is trivial with a dflt == 0, then deal with the
4775	special case of zero.
4776	* testsuite/22_locale/ctype/narrow/char/19955.cc: New.
4777
4778	* include/bits/locale_facets.h (ctype<char>::_M_widen_init()):
4779	Tweak consistently to use memcmp; minor formatting fixes.
4780
47812005-02-15  Jakub Jelinek  <jakub@redhat.com>
4782
4783	PR libstdc++/19946
4784	* testsuite/demangle/abi_examples/01.cc (main): Adjust for 2005-02-13
4785	demangler change.
4786	* testsuite/demangle/abi_examples/02.cc (main): Likewise.
4787
47882005-02-13  Richard Guenther  <rguenth@gcc.gnu.org>
4789	    Paolo Carlini  <pcarlini@suse.de>
4790
4791	PR libstdc++/11706
4792	* include/c_std/std_cmath.h (pow): Use __builtin_powi[lf]
4793	for integer overloads.
4794
4795	* testsuite/26_numerics/cmath/powi.cc: New.
4796
47972005-02-11  Janis Johnson  <janis187@us.ibm.com>
4798
4799	* testsuite/26_numerics/complex/13450.cc: Fix XFAIL selector.
4800	* testsuite/26_numerics/complex/complex_value.cc: Ditto.
4801	* testsuite/26_numerics/complex/pow.cc: Ditto.
4802
4803	* testsuite/lib/libstdc++.exp: Load target-supports-dg.exp.
4804	* testsuite/26_numerics/complex/13450.cc: XFAIL for broken_cplxf_arg.
4805	* testsuite/26_numerics/complex/complex_value.cc: Ditto.
4806	* testsuite/26_numerics/complex/pow.cc: Ditto.
4807
48082005-02-09  Mike Stump  <mrs@apple.com>
4809
4810	* libsupc++/del_op.cc: Don't include cstdlib when !_GLIBCXX_HOSTED.
4811
48122005-02-09  Janis Johnson  <janis187@us.ibm.com>
4813
4814	* testsuite/ext/array_allocator/2.cc: XFAIL for powerpc*-*-linux*.
4815
48162005-02-08  Mark Mitchell  <mark@codesourcery.com>
4817
4818	* config/linker-map.gnu (GLIBCXX_3.4): Add _ZNSdC* and _ZNSdD*.
4819
48202005-02-07  Loren J. Rittle  <ljrittle@acm.org>
4821
4822	* testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Make buf static.
4823	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Make ref and
4824	src static.
4825
48262005-02-02  Brad Spencer  <spencer@infointeractive.com>
4827
4828	* debug.html: Fix broken tags.
4829	* documentation.html: Same.
4830
48312005-02-02  Andreas Jaeger  <aj@suse.de>
4832
4833	* testsuite/lib/libstdc++.exp: Revert Geoffrey Keating's patch
4834	from 2005-01-28.
4835	* testsuite/Makefile.am: Likewise.
4836	* testsuite/Makefile.in: Likewise.
4837
48382005-02-01  Paolo Carlini  <pcarlini@suse.de>
4839
4840	* include/bits/cpp_type_traits.h: Rename _M_type fields to
4841	__value, except for __enable_if, _M_type -> __type, consistently
4842	with the other traits.
4843	* include/bits/stl_algobase.h: Tweak consistently.
4844	* include/bits/stl_tree.h: Likewise.
4845	* include/bits/valarray_array.h: Likewise.
4846	* include/c_std/std_cmath.h: Likewise.
4847	* include/debug/safe_iterator.h: Likewise.
4848	* include/std/std_complex.h: Likewise.
4849
48502005-01-31  Brad Spencer  <spencer@infointeractive.com>
4851
4852	* crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
4853	* configure: Regenerated.
4854
48552005-01-31  Mark Mitchell  <mark@codesourcery.com>
4856
4857	* include/std/std_limits.h (numeric_limits<float>::has_denorm):
4858	Add required cast.
4859	(numeric_limits<double>::has_denorm): Likewise.
4860	(numeric_limits<long double>::has_denorm): Likewise.
4861
48622005-01-31  Paolo Carlini  <pcarlini@suse.de>
4863	    Gabriel Dos Reis  <gdr@integrable-solutions.net>
4864
4865	* include/bits/cpp_type_traits.h: Add types to the structs thus
4866	making type_traits.h redundant; exploit new __truth_type and
4867	__traitor helpers.
4868	* include/bits/type_traits.h: Remove.
4869	* include/Makefile.am: Update.
4870	* include/Makefile.in: Regenerate.
4871	* include/backward/tempbuf.h: Include cpp_type_traits.h instead.
4872	* include/bits/basic_string.h (replace(iterator, iterator,
4873	_InputIterator, _InputIterator), _S_construct(_InIterator,
4874	_InIterator, const _Alloc&)): Use __is_integer instead.
4875	* include/bits/stl_bvector.h (vector(_InputIterator,
4876	_InputIterator, const allocator_type&), assign(_InputIterator,
4877	_InputIterator), insert(iterator, _InputIterator, _InputIterator)):
4878	Likewise.
4879	* include/bits/stl_construct.h (_Destroy(_ForwardIterator,
4880	_ForwardIterator)): Use __is_scalar.
4881	* include/bits/stl_deque.h (deque(_InputIterator, _InputIterator,
4882	const allocator_type&), assign(_InputIterator, _InputIterator),
4883	insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
4884	* include/bits/stl_list.h (assign(_InputIterator, _InputIterator),
4885	insert(iterator, _InputIterator, _InputIterator)): Likewise.
4886	* include/bits/stl_tempbuf.h (_Temporary_buffer(_ForwardIterator,
4887	_ForwardIterator)): Use __is_scalar.
4888	* include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
4889	_InputIterator, _ForwardIterator), uninitialized_fill(_ForwardIterator,
4890	_ForwardIterator, const _Tp&), uninitialized_fill_n(_ForwardIterator,
4891	_Size, const _Tp&)): Likewise.
4892	* include/bits/stl_vector.h (vector(_InputIterator, _InputIterator,
4893	const allocator_type&), assign(_InputIterator, _InputIterator),
4894	insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
4895	* include/debug/debug.h (__valid_range(const _InputIterator&,
4896	const _InputIterator&)): Use __is_integer.
4897	* include/ext/slist (assign(_InputIterator, _InputIterator)): Likewise.
4898	* include/std/std_string.h: Include cpp_type_traits.h instead.
4899
49002005-01-30  Paolo Carlini  <pcarlini@suse.de>
4901
4902	PR libstdc++/19642
4903	* config/locale/generic/c_locale.h (__convert_from_v): Switch only
4904	LC_NUMERIC, and only when actually != "C".
4905
49062005-01-28  Paolo Carlini  <pcarlini@suse.de>
4907
4908	* include/tr1/type_traits (is_function): Minor consistency tweaks.
4909
49102005-01-28  Geoffrey Keating  <geoffk@apple.com>
4911
4912	* testsuite/lib/libstdc++.exp (libstdc++_init): Search the path
4913	for the compiler.  Don't set cxxflags.
4914	(v3_target_compile): Search for libv3test.a relative to $objdir.
4915	(lsearch_all_inline): New.
4916	(lsearch_all_inline_not): New.
4917	(v3-list-tests): Rewrite to not need generated files.
4918	* testsuite/Makefile.am (IGNORE_WCHAR_T): New.
4919	(IGNORE_THREAD): New.
4920	(TESTS_TO_IGNORE): New.
4921	(site.exp): Set tests_to_ignore, cxxflags.
4922	* aclocal.m4: Regenerate.
4923	* Makefile.in: Regenerate.
4924	* libmath/Makefile.in: Likewise.
4925	* libsupc++/Makefile.in: Likewise.
4926	* po/Makefile.in: Likewise.
4927	* src/Makefile.in: Likewise.
4928	* testsuite/Makefile.in: Likewise.
4929
49302005-01-28  Paolo Carlini  <pcarlini@suse.de>
4931
4932	* include/tr1/type_traits: Implement is_empty.
4933	* testsuite/tr1/4_metaprogramming/type_properties/is_empty/
4934	is_empty.cc: New.
4935	* testsuite/tr1/4_metaprogramming/type_properties/is_empty/
4936	typedefs.cc: Likewise.
4937
4938	* include/tr1/type_traits (__is_abstract_helper): Simplify a bit.
4939
49402005-01-28  Paolo Carlini  <pcarlini@suse.de>
4941
4942	* include/tr1/type_traits: Implement is_abstract, by exploiting the
4943	resolution of DR core/337.
4944	* testsuite/testsuite_tr1.h: Add AbstractClass.
4945	* testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
4946	is_abstract.cc: New.
4947	* testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
4948	typedefs.cc: Likewise.
4949
4950	* include/tr1/type_traits (is_function): Rewrite, use the conversion
4951	F& -> F* instead, thus avoiding problems with abstract classes.
4952	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4953	is_function/is_function.cc: Add a test for tricky AbstractClass.
4954
49552005-01-26  Paolo Carlini  <pcarlini@suse.de>
4956
4957	* include/ext/mt_allocator.h
4958	(struct __per_type_pool_policy<,, false>::_S_get_pool,
4959	struct __per_type_pool_policy<,, true>::_S_get_pool): Scale
4960	_M_chunk_size too with sizeof(_Tp), otherwise the allocator
4961	breaks down as soon as sizeof(_Tp) >~ _S_chunk_size / 128;
4962	reduce to 64 the multiplier for _M_max_bytes (safer wrt
4963	_Binmap_type being a short); trivial reformattings.
4964	* testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: New.
4965
49662005-01-26  Paolo Carlini  <pcarlini@suse.de>
4967
4968	* acinclude.m4 ([GLIBCXX_ENABLE_C99]): Add ac_c99_complex
4969	to the final test for enable_c99, thus robustifying it; remove
4970	duplicate final test on ac_99_math.
4971	* configure: Regenerate.
4972
4973	* include/std/std_complex.h: Remove usages of the dead
4974	_GLIBCXX_BUGGY_COMPLEX macro.
4975
4976	* testsuite/26_numerics/cmath/19322.cc: Protect with
4977	_GLIBCXX_USE_C99_MATH instead of the stronger _GLIBCXX_USE_C99,
4978	since only C99 math facilities are involved.
4979	* testsuite/26_numerics/cmath/c99_classification_macros_c++.cc:
4980	Likewise.
4981
49822005-01-25  Loren J. Rittle  <ljrittle@acm.org>
4983
4984	* acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Map FreeBSD to darwin
4985	instead of generic.  Change autoconf report to "darwin or freebsd".
4986	* configure: Regenerate.
4987	* config/os/bsd/freebsd/ctype_inline.h (ctype<wchar_t>::do_is): Add.
4988	(ctype<wchar_t>::do_scan_is): Likewise.
4989	(ctype<wchar_t>::do_scan_not): Likewise.
4990
49912005-01-25  Benjamin Kosnik  <bkoz@redhat.com>
4992
4993	* acinclude.m4 (GLIBCXX_ENABLE_C99): Test for complex math
4994	functions, and enable _GLIBCXX_USE_C99_COMPLEX_MATH if they exist.
4995	* acconfig.h: Add _GLIBCXX_USE_C99_COMPLEX_MATH.
4996	* config.h.in: Regenerate.
4997	* configure: Regenerate.
4998	* include/std/std_complex.h: Protect complex builtins with
4999	_GLIBCXX_USE_C99_COMPLEX_MATH.
5000
50012005-01-24  Paolo Carlini  <pcarlini@suse.de>
5002
5003	* include/tr1/type_traits: Implement is_signed and is_unsigned.
5004	* testsuite/tr1/4_metaprogramming/type_properties/
5005	is_signed/is_signed.cc: New.
5006	* testsuite/tr1/4_metaprogramming/type_properties/
5007	is_signed/typedefs.cc: Likewise.
5008	* testsuite/tr1/4_metaprogramming/type_properties/
5009	is_unsigned/is_unsigned.cc: Likewise.
5010	* testsuite/tr1/4_metaprogramming/type_properties/
5011	is_unsigned/typedefs.cc: Likewise.
5012
50132005-01-23  Paolo Carlini  <pcarlini@suse.de>
5014
5015	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 34.
5016
50172005-01-23  Paolo Carlini  <pcarlini@suse.de>
5018
5019	* testsuite/27_io/basic_ostream/cons/wchar_t/9827.cc: New.
5020	* testsuite/27_io/basic_ostream/endl/wchar_t/1.cc: Likewise.
5021	* testsuite/27_io/basic_ostream/ends/wchar_t/1.cc: Likewise.
5022	* testsuite/27_io/basic_ostream/ends/wchar_t/2.cc: Likewise.
5023	* testsuite/27_io/basic_ostream/exceptions/wchar_t/9561.cc: Likewise.
5024	* testsuite/27_io/basic_ostream/flush/wchar_t/1.cc: Likewise.
5025	* testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise.
5026	* testsuite/27_io/basic_ostream/flush/wchar_t/
5027	exceptions_badbit_throw.cc: Likewise.
5028	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5029	wchar_t/2.cc: Likewise.
5030	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5031	wchar_t/3.cc: Likewise.
5032	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5033	wchar_t/4.cc: Likewise.
5034	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5035	wchar_t/4402.cc: Likewise.
5036	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5037	wchar_t/5.cc: Likewise.
5038	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5039	wchar_t/6.cc: Likewise.
5040	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5041	wchar_t/9555-oa.cc: Likewise.
5042	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5043	wchar_t/exceptions_badbit_throw.cc: Likewise.
5044	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5045	wchar_t/exceptions_failbit_throw.cc: Likewise.
5046	* testsuite/27_io/basic_ostream/inserters_character/
5047	wchar_t/1.cc: Likewise.
5048	* testsuite/27_io/basic_ostream/inserters_character/
5049	wchar_t/2.cc: Likewise.
5050	* testsuite/27_io/basic_ostream/inserters_character/
5051	wchar_t/3.cc: Likewise.
5052	* testsuite/27_io/basic_ostream/inserters_character/
5053	wchar_t/4.cc: Likewise.
5054	* testsuite/27_io/basic_ostream/inserters_character/
5055	wchar_t/5.cc: Likewise.
5056	* testsuite/27_io/basic_ostream/inserters_character/
5057	wchar_t/6.cc: Likewise.
5058	* testsuite/27_io/basic_ostream/inserters_character/
5059	wchar_t/9555-oc.cc: Likewise.
5060	* testsuite/27_io/basic_ostream/inserters_other/
5061	wchar_t/1.cc: Likewise.
5062	* testsuite/27_io/basic_ostream/inserters_other/
5063	wchar_t/2.cc: Likewise.
5064	* testsuite/27_io/basic_ostream/inserters_other/
5065	wchar_t/3.cc: Likewise.
5066	* testsuite/27_io/basic_ostream/inserters_other/
5067	wchar_t/4.cc: Likewise.
5068	* testsuite/27_io/basic_ostream/inserters_other/
5069	wchar_t/5.cc: Likewise.
5070	* testsuite/27_io/basic_ostream/inserters_other/
5071	wchar_t/9318-out.cc: Likewise.
5072	* testsuite/27_io/basic_ostream/inserters_other/
5073	wchar_t/9424-out.cc: Likewise.
5074	* testsuite/27_io/basic_ostream/inserters_other/
5075	wchar_t/9555-oo.cc: Likewise.
5076	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
5077	error_failbit.cc: Likewise.
5078	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
5079	exceptions_badbit_throw.cc: Likewise.
5080	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
5081	exceptions_failbit_throw.cc: Likewise.
5082	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
5083	exceptions_null.cc: Likewise.
5084	* testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
5085	* testsuite/27_io/basic_ostream/put/wchar_t/1.cc: Likewise.
5086	* testsuite/27_io/basic_ostream/seekp/char/
5087	exceptions_badbit_throw.cc: Likewise.
5088	* testsuite/27_io/basic_ostream/seekp/wchar_t/
5089	2346-fstream.cc: Likewise.
5090	* testsuite/27_io/basic_ostream/seekp/wchar_t/
5091	2346-sstream.cc: Likewise.
5092	* testsuite/27_io/basic_ostream/seekp/wchar_t/
5093	exceptions_badbit_throw.cc: Likewise.
5094	* testsuite/27_io/basic_ostream/sentry/wchar_t/1.cc: Likewise.
5095	* testsuite/27_io/basic_ostream/sentry/wchar_t/2.cc: Likewise.
5096	* testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
5097	* testsuite/27_io/basic_ostream/tellp/wchar_t/2.cc: Likewise.
5098	* testsuite/27_io/basic_ostream/tellp/wchar_t/
5099	exceptions_badbit_throw.cc: Likewise.
5100	* testsuite/27_io/basic_ostream/write/wchar_t/1.cc: Likewise.
5101
5102	* testsuite/data/wostream_inserter_char-1.tst: Likewise.
5103	* testsuite/data/wostream_inserter_char-1.txt: Likewise.
5104	* testsuite/data/wostream_inserter_other-1.tst: Likewise.
5105	* testsuite/data/wostream_inserter_other-2.tst: Likewise.
5106	* testsuite/data/wostream_seeks-1.tst: Likewise.
5107
5108	* testsuite/27_io/basic_ostream/endl/char/1.cc: Minor tweaks.
5109	* testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise.
5110	* testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise.
5111	* testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
5112	* testsuite/27_io/basic_ostream/flush/char/2.cc: Likewise.
5113	* testsuite/27_io/basic_ostream/flush/char/
5114	exceptions_badbit_throw.cc: Likewise.
5115	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5116	char/2.cc: Likewise.
5117	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5118	char/3.cc: Likewise.
5119	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5120	char/4.cc: Likewise.
5121	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5122	char/4402.cc: Likewise.
5123	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5124	char/5.cc: Likewise.
5125	* testsuite/27_io/basic_ostream/inserters_arithmetic/
5126	char/6.cc: Likewise.
5127	* testsuite/27_io/basic_ostream/inserters_character/
5128	char/4.cc: Likewise.
5129	* testsuite/27_io/basic_ostream/inserters_other/char/
5130	2.cc: Likewise.
5131	* testsuite/27_io/basic_ostream/inserters_other/char/
5132	5.cc: Likewise.
5133	* testsuite/27_io/basic_ostream/inserters_other/char/
5134	error_failbit.cc: Likewise.
5135	* testsuite/27_io/basic_ostream/inserters_other/char/
5136	exceptions_badbit_throw.cc: Likewise.
5137	* testsuite/27_io/basic_ostream/inserters_other/char/
5138	exceptions_failbit_throw.cc: Likewise.
5139	* testsuite/27_io/basic_ostream/inserters_other/char/
5140	exceptions_null.cc: Likewise.
5141	* testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
5142	* testsuite/27_io/basic_ostream/seekp/char/
5143	exceptions_badbit_throw.cc: Likewise.
5144	* testsuite/27_io/basic_ostream/sentry/char/2.cc: Likewise.
5145	* testsuite/27_io/basic_ostream/write/char/1.cc: Likewise.
5146
51472005-01-23  Paolo Carlini  <pcarlini@suse.de>
5148
5149	* include/tr1/type_traits (aligned_storage): Use __aligned__ instead
5150	of aligned.
5151
51522005-01-23  Paolo Carlini  <pcarlini@suse.de>
5153	    Andreas Jaeger  <aj@suse.de>
5154
5155	PR libstdc++/19343
5156	* include/bits/functexcept.h: Mark the helpers as 'noreturn'.
5157
51582005-01-21  Loren J. Rittle  <ljrittle@acm.org>
5159
5160	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Allow
5161	lseek on fifo to succeed.  Thus, check for consistent report.
5162
51632005-01-21  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
5164
5165	PR libstdc++/19510
5166	* include/bits/stl_list.h (_List_iterator): Initialize _M_node
5167	in constructor.
5168	(_List_const_iterator): Likewise.
5169	* include/bits/stl_tree.h (_Rb_tree_iterator): Likewise.
5170	(_Rb_tree_const_iterator): Likewise.
5171
5172	* testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
5173	* testsuite/23_containers/set/operators/1_neg.cc: Likewise.
5174
51752005-01-20  Benjamin Kosnik  <bkoz@redhat.com>
5176
5177	* testsuite/Makefile.am (check-compile): New.
5178	* testsuite/Makefile.in: Regenerate.
5179	* scripts/check_compile_time: New.
5180	* scripts/check_performance: Tweaks.
5181
51822005-01-19  Paolo Carlini  <pcarlini@suse.de>
5183
5184	PR libstdc++/19535
5185	* include/tr1/utility (struct __pair_get<1>::__get, __const_get):
5186	Fix typo in the return type.
5187	* testsuite/tr1/6_containers/utility/19535.cc: New.
5188
51892005-01-19  Loren J. Rittle  <ljrittle@acm.org>
5190
5191	* include/ext/array_allocator.h (array_allocator<>::allocate):
5192	Avoid __used.  Use __array_used instead.
5193	* docs/html/17_intro/BADNAMES: Add list for FreeBSD.
5194
51952005-01-18  David Edelsohn  <edelsohn@gnu.org>
5196
5197	* config/os/aix/os_defines.h (_XOPEN_SOURCE): Delete.
5198	(_XOPEN_SOURCE_EXTENDED): Delete.
5199
52002005-01-18  Benjamin Kosnik  <bkoz@redhat.com>
5201
5202	* testsuite/testsuite_performance.h (time_counter::start):
5203	Clear. Tweaks.
5204	(clear_counters): Inline.
5205	(start_counters): Inline.
5206	(stop_counters): Inline.
5207	* testsuite/performance/20_util/allocator/map_thread.cc: Return.
5208	* testsuite/performance/20_util/allocator/insert.cc: Remove bogus
5209	return, add return.
5210	* testsuite/performance/20_util/allocator/map_thread.cc: Same.
5211
52122005-01-17  Paolo Carlini  <pcarlini@suse.de>
5213
5214	PR libstdc++/19433
5215	* include/bits/stl_tree.h (_Rb_tree<>::insert_unique(iterator,
5216	const _Val&), _Rb_tree<>::insert_equal(iterator, const _Val&)):
5217	Obtain amortized constant complexity if t is inserted right after
5218	p - not before p - as per Table 69.
5219	* testsuite/performance/23_containers/set_insert_from_sorted.cc: New.
5220
5221	* testsuite/23_containers/multiset/insert/2.cc: New.
5222	* testsuite/23_containers/set/insert/1.cc: Likewise.
5223
5224	* testsuite/performance/23_containers/set_create_from_sorted.cc:
5225	Simplify.
5226
5227	* include/bits/stl_tree.h: Add a few missing std:: qualifications.
5228
52292005-01-16  Jonathan Wakely  <redi@gcc.gnu.org>
5230
5231	* include/ext/rope: Qualify calls to std::copy() by sequence_buffer.
5232	* testsuite/ext/rope/4.cc: Add.
5233
52342005-01-16  Lorenz Minder  <lminder@gmx.net>
5235	    Paolo Carlini  <pcarlini@suse.de>
5236
5237	PR libstdc++/19322
5238	* include/c_std/std_cmath.h: Define the C99 classification facilities
5239	directly inside namespace std:.
5240	* testsuite/26_numerics/cmath/19322.cc: New.
5241
52422005-01-15  David Edelsohn  <edelsohn@gnu.org>
5243
5244	* config/os/aix/os_defines.h (_G_USING_THUNKS): Delete.
5245
52462005-01-14  Paolo Carlini  <pcarlini@suse.de>
5247
5248	PR libstdc++/19422
5249	* include/bits/stl_tree.h (_Rb_tree<>::insert_equal(_II, _II),
5250	_Rb_tree<>::insert_unique(_II, _II)): Use insert_equal (insert_unique,
5251	respectively) with hint (end()).
5252	* testsuite/performance/23_containers/set_create_from_sorted.cc: New.
5253
52542005-01-13  Geoffrey Keating  <geoffk@apple.com>
5255
5256	* configure.host (darwin): On darwin8 or later, no need to build
5257	libstdc++ with -flat_namespace.
5258
52592005-01-13  Jonathan Wakely  <redi@gcc.gnu.org>
5260
5261	* docs/doxygen/user.cfg.in: Set HAVE_DOT back to YES.
5262
52632005-01-13  Paolo Carlini  <pcarlini@suse.de>
5264
5265	* testsuite/26_numerics/cmath/c99_classification_macros_c++.cc:
5266	Re-enable commented-out test for double type.
5267
52682005-01-11  Paolo Carlini  <pcarlini@suse.de>
5269	    Benjamin Kosnik  <bkoz@redhat.com>
5270
5271	* src/istream.cc (basic_istream<char>::ignore(streamsize),
5272	basic_istream<char>::ignore(streamsize, int_type),
5273	basic_istream<wchar_t>::ignore(streamsize),
5274	basic_istream<wchar_t>::ignore(streamsize, int_type)): In case
5275	more than numeric_limits<streamsize>::max() chars are skipped,
5276	set _M_gcount = max().
5277	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
5278	int_type)): Likewise; keep simple, don't forward.
5279
52802005-01-11  Paolo Carlini  <pcarlini@suse.de>
5281
5282	* src/istream.cc (basic_istream<char>::ignore(streamsize),
5283	basic_istream<char>::ignore(streamsize, int_type),
5284	basic_istream<wchar_t>::ignore(streamsize),
5285	basic_istream<wchar_t>::ignore(streamsize, int_type)): Revert
5286	2005-01-05 change: actually, the previous behavior is conforming
5287	and consistent with that of get(char_type*, streamsize, char_type),
5288	albeit slightly different from that of 3.3/3.4 in a corner case
5289	due to the use of snextc.
5290	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
5291	int_type)): Likewise.
5292	* testsuite/27_io/basic_istream/ignore/char/4.cc: Remove.
5293	* testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.
5294
52952005-01-11  Paolo Carlini  <pcarlini@suse.de>
5296
5297	* include/tr1/type_traits: Implement alignment_of and aligned_storage.
5298	* testsuite/tr1/4_metaprogramming/other_transformations/
5299	aligned_storage/aligned_storage.cc: New.
5300	* testsuite/tr1/4_metaprogramming/other_transformations/
5301	aligned_storage/typedefs.cc: Likewise.
5302	* testsuite/tr1/4_metaprogramming/type_properties/
5303	alignment_of/alignment_of.cc: Likewise.
5304	* testsuite/tr1/4_metaprogramming/type_properties/
5305	alignment_of/typedefs.cc: Likewise.
5306
53072005-01-10  Paolo Carlini  <pcarlini@suse.de>
5308
5309	* Makefile.in: Regenerate.
5310	* libmath/Makefile.in: Likewise.
5311	* libsupc++/Makefile.in: Likewise.
5312	* po/Makefile.in: Likewise.
5313	* src/Makefile.in: Likewise.
5314	* testsuite/Makefile.in: Likewise.
5315
53162005-01-10  Paolo Carlini  <pcarlini@suse.de>
5317
5318	* include/bits/stl_algobase.h (lexicographical_compare):
5319	Fix concept check.
5320
53212005-01-07  Benjamin Kosnik  <bkoz@redhat.com>
5322
5323	* acinclude.m4: Remove CCODECVT_H.
5324	* configure: Regenerate.
5325	* include/Makefile.am (host_headers_extra): Move to...
5326	(ext_headers): ...here.
5327	* include/Makefile.in: Regenerate.
5328	* include/ext/enc_filebuf: Remove enc_filebuf, consolidate
5329	enc_traits to...
5330	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Move...
5331	* include/ext/codecvt_specializations.h: ...here. Remove
5332	_GLIBCXX_USE___ENC_TRAITS.
5333	(__enc_traits): To __encoding_state, put in __gnu_cxx namespace.
5334	(enc_char_traits): To __encoding_char_traits, put in __gnu_cxx
5335	namespace.
5336	* config/locale/generic/codecvt_specializations.h: Remove.
5337	* include/bits/codecvt.h: Remove codecvt_specializations.h include.
5338	* src/codecvt.cc: Remove __enc_traits::_S_max_size.
5339
53402005-01-06  Benjamin Kosnik  <bkoz@redhat.com>
5341
5342	* include/bits/fstream.tcc: Remove unnecessary qualifications for
5343	uglified data members of basic_filebuf, including _M_buf,
5344	_M_buf_size, _M_mode, _M_pback_init.
5345	* include/std/std_fstream.h: Same.
5346
53472005-01-05  Benjamin Kosnik  <bkoz@redhat.com>
5348
5349	* testsuite/testsuite_hooks.h:
5350	(copy_constructor::mark_call):  Use __throw_runtime_error.
5351	(assignment_operator::mark_call): Same.
5352	* testsuite/testsuite_hooks.cc (verify_demangle): Same.
5353	(locale_data): Remove, just use runtime_error directly.
5354	(environment_variable): Same.
5355	(not_found): Same.
5356	(run_tests_wrapped_locale): Use __throw_runtime_error.
5357	(run_tests_wrapped_env): Same.
5358	(semaphore::semaphore): Same.
5359	(semaphore::signal): Same.
5360	(semaphore::wait): Same.
5361	* testsuite/testsuite_abi.h (symbol_error): Remove, use logic_error.
5362	* testsuite/testsuite_abi.cc (get_symbol): Use __throw_logic_error.
5363	(create_symbols): Use __throw_runtime_error.
5364	* src/bitmap_allocator.cc: Use __throw_bad_alloc.
5365
53662005-01-05  Mark Mitchell  <mark@codesourcery.com>
5367
5368	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Remove child
5369	process.
5370
53712005-01-05  Paolo Carlini  <pcarlini@suse.de>
5372
5373	* src/istream.cc (basic_istream<char>::ignore(streamsize),
5374	basic_istream<char>::ignore(streamsize, int_type),
5375	basic_istream<wchar_t>::ignore(streamsize),
5376	basic_istream<wchar_t>::ignore(streamsize, int_type)): At the end,
5377	first check _M_gcount vs __n.
5378	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
5379	int_type)): Likewise.
5380	* testsuite/27_io/basic_istream/ignore/char/4.cc: New.
5381	* testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.
5382
53832005-01-03  Mark Mitchell  <mark@codesourcery.com>
5384
5385	* testsuite/testsuite_hooks.cc: Use __throw_exception_again
5386	instead of just throw.
5387
5388	* testsuite/testsuite_hooks.cc: Update coypright and follow style
5389	guidelines.
5390	* testsuite/testsuite_hooks.h: Likewise.
5391	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
5392	semaphores, not sleep.
5393	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
5394	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
5395	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
5396	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
5397	Likewise.
5398	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
5399	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
5400	* testsuite/27_io/objects/char/7.cc: Likewise.
5401	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
5402	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
5403	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
5404
5405	* configure.ac: Check for sys/ipc.h and sys/sem.h.
5406	* config.h.in: Regenerated.
5407	* configure: Likewise.
5408	* testsuite/testsuite_hooks.cc (_GLIBCXX_SYSV_SEM): Conditionally
5409	define.
5410	(sys/types.h): Include.
5411	(sys/ipc.h): Likewise.
5412	(sys/sem.h): Likewise.
5413	(__gnu_test::semun): New type.
5414	(__gnu_test::semaphore::sempaphore): New function.
5415	(__gnu_test::semaphore::~semaphore): Likewise.
5416	(__gnu_test::semaphore::wait): Likewise.
5417	(__gnu_test::semaphore::signal): Likewise.
5418	* testsuite/testsuite_hooks.h (__gnu_test::semaphore): New class.
5419	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
5420	semaphores, not sleep.
5421	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
5422	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
5423	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
5424	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
5425	Likewise.
5426	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
5427	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
5428	* testsuite/27_io/objects/char/7.cc: Likewise.
5429	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
5430	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
5431	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
5432
54332005-01-03  Paolo Carlini  <pcarlini@suse.de>
5434
5435	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
5436	int_type)): Reset _M_gcount to numeric_limits<streamsize>::min().
5437	* src/istream.cc (basic_istream<char>::ignore(streamsize, int_type),
5438	basic_istream<wchar_t>::ignore(streamsize, int_type)): Likewise.
5439	* src/istream.cc (basic_istream<char>::ignore(streamsize),
5440	basic_istream<wchar_t>::ignore(streamsize)): Likewise; fix a typo.
5441
54422005-01-02  Paolo Carlini  <pcarlini@suse.de>
5443
5444	* src/istream.cc (basic_istream<char>::ignore(streamsize),
5445	basic_istream<char>::ignore(streamsize, int_type),
5446	basic_istream<wchar_t>::ignore(streamsize),
5447	basic_istream<wchar_t>::ignore(streamsize, int_type)): Avoid
5448	_M_gcount overflows.
5449	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
5450	int_type)): Likewise; use snextc in the main loop, consistently
5451	with the specializations above.
5452
54532005-01-02  Chris Jefferson  <chris@bubblescope.net>
5454
5455	* include/bits/stl_algobase.h (mismatch): Correct concept check.
5456
54572005-01-01  Paolo Carlini  <pcarlini@suse.de>
5458
5459	* testsuite/ext/enc_filebuf/char/13189.cc: Fix, first include
5460	testsuite_hooks.h, to know whether including ext/enc_filebuf.h.
5461	* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
5462
54632005-01-01  Paolo Carlini  <pcarlini@suse.de>
5464
5465	* testsuite/27_io/basic_istream/extractors_character/char/1.cc: Fix,
5466	null-terminate array1 at the outset.
5467	* testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc:
5468	Likewise.
5469
5470Copyright (C) 2005 Free Software Foundation, Inc.
5471
5472Copying and distribution of this file, with or without modification,
5473are permitted in any medium without royalty provided the copyright
5474notice and this notice are preserved.
5475