Daily bump.
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob6d3ed26b1390ff413033dfac06e450b308aa1067
1 2007-10-18  Kaz Kojima  <kkojima@gcc.gnu.org>
3         * testsuite/tr1/5_numerical_facilities/special_functions/
4         05_comp_ellint_2/check_nan.cc: Add -mieee for sh.
6 2007-10-18  Paolo Carlini  <pcarlini@suse.de>
8         * include/bits/allocator.h (struct __alloc_neq): Add.
9         * include/bits/stl_list.h (list<>::_M_check_equal_allocators): Use it.
11 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
13         * include/ext/hash_map: To...
14         * include/backward/hash_map: ...here. Remove debug mode.
15         * include/ext/hash_set: To...
16         * include/backward/hash_set: ...here. Remove debug mode.
17         * include/ext/hash_fun.h: To...
18         * include/backward/hash_fun.h: ...here.
19         * include/ext/hashtable.h: To...
20         * include/backward/hashtable.h: ...here.
21         
22         * include/bits/c++config: Remove __gnu_cxx namespace from debug mode.
23         * include/debug/debug.h: Same.
24                 
25         * include/debug/hash_map: Remove.
26         * include/debug/hash_multimap.h: Remove.
27         * include/debug/hash_set.h: Remove.
28         * include/debug/hash_set: Remove.
29         * include/debug/hash_multiset.h: Remove.
30         * include/debug/hash_map.h: Remove.
31         
32         * include/Makefile.am (ext_headers): Move hash_set, hash_map to
33         backward.
34         (debug_headers): Remove hash_map, hash_set, hash_map.h,
35         hash_map.h, hash_multiset.h, hash_multimap.h.   
36         * include/Makefile.in: Regenerate.
38         * docs/html/debug.html: Update.
39         * docs/html/ext/howto.html: Same.
40         * docs/html/faq/index.html: Same.
41         * docs/doxygen/Intro.3: Same.
42         * docs/doxygen/user.cfg.in: Adjust includes.
43         * testsuite/ext/hash_map: Move to...
44         * testsuite/backward/hash_map: ...here.
45         * testsuite/ext/hash_set: Move to...
46         * testsuite/backward/hash_set: ...here.
47         
48 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
49         
50         Removal of pre-ISO C++ items from include/backwards.
51         * include/Makefile.am (backward_headers): Remove all but strstream,
52         backward_warning.h.
53         * include/Makefile.in: Regenerate.
54         * include/backward/new.h: Remove.
55         * include/backward/iterator.h: Same.
56         * include/backward/alloc.h: Same.
57         * include/backward/set.h: Same.
58         * include/backward/hashtable.h: Same.
59         * include/backward/hash_set.h: Same.
60         * include/backward/fstream.h: Same.
61         * include/backward/tempbuf.h: Same.
62         * include/backward/istream.h: Same.
63         * include/backward/bvector.h: Same.
64         * include/backward/stack.h: Same.
65         * include/backward/rope.h: Same.
66         * include/backward/complex.h: Same.
67         * include/backward/ostream.h: Same.
68         * include/backward/heap.h: Same.
69         * include/backward/iostream.h: Same.
70         * include/backward/function.h: Same.
71         * include/backward/multimap.h: Same.
72         * include/backward/pair.h: Same.
73         * include/backward/stream.h: Same.
74         * include/backward/iomanip.h: Same.
75         * include/backward/slist.h: Same.
76         * include/backward/tree.h: Same.
77         * include/backward/vector.h: Same.
78         * include/backward/deque.h: Same.
79         * include/backward/multiset.h: Same.
80         * include/backward/defalloc.h: Same.
81         * include/backward/list.h: Same.
82         * include/backward/map.h: Same.
83         * include/backward/algobase.h: Same.
84         * include/backward/hash_map.h: Same.
85         * include/backward/algo.h: Same.
86         * include/backward/queue.h: Same.
87         * include/backward/streambuf.h: Same.
88         * testsuite/backward/header_hash_set_h.cc: Same.
89         * testsuite/backward/header_slist_h.cc: Same.
90         * testsuite/backward/header_hash_map_h.cc: Same.
91         * testsuite/backward/header_tempbuf_h.cc: Same.
92         * testsuite/backward/header_deque_h.cc: Same.
93         * testsuite/backward/header_rope_h.cc: Same.
94         * testsuite/backward/header_iterator_h.cc: Same.
95         * testsuite/backward/header_hashtable_h.cc: Same.
97 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
99         PR libstdc++/30085
100         * include/debug/unordered_map: New.
101         * include/debug/unordered_set: New.
102         * include/debug/safe_association.h: New.        
103         * include/std/unordered_map: Include debug header if _GLIBCXX_DEBUG.
104         * include/std/unordered_set: Same.
105         * include/Makefile.am (debug_headers): Add unordered_map,
106         unordered_set, safe_association.h.
107         * include/Makefile.in: Regenerate.
108         * testsuite/23_containers/unordered_map/requirements/debug.cc: New.
109         * testsuite/23_containers/unordered_multimap/requirements/
110         debug.cc: New.
111         * testsuite/23_containers/unordered_set/requirements/debug.cc: New.
112         * testsuite/23_containers/unordered_multiset/requirements/
113         debug.cc: New.
115 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
116         
117         * testsuite/util/native_type/assoc/native_hash_multimap.hpp: Remove
118         hash_map include.
120 2007-10-18  Paolo Carlini  <pcarlini@suse.de>
122         PR libstdc++/33807
123         * include/bits/allocator.h (operator==(const allocator<_Tp>&,
124         const allocator<_Tp>&), operator!=(const allocator<_Tp>&,
125         const allocator<_Tp>&)): Add.
126         * testsuite/20_util/allocator/33807.cc: New.
128 2007-10-17  Paolo Carlini  <pcarlini@suse.de>
130         * include/bits/cpp_type_traits.h (__is_byte): Add.
131         * include/bits/stl_algobase.h (struct __fill, struct __fill_n,
132         __fill_aux, __fill_n_aux): Remove.
133         (__fill_a, __fill_n_a): Add.
134         (fill, fill_n): Adjust.
136 2007-10-17  Paolo Carlini  <pcarlini@suse.de>
138         * include/bits/stl_iterator.h (back_insert_iterator<>::operator=
139         (typename _Container::value_type&&), front_insert_iterator<>::
140         operator=(typename _Container::value_type&&), insert_iterator<>::
141         operator=(typename _Container::value_type&&)): Add.
143         * include/bits/stl_iterator.h (insert_iterator<>::operator=
144         (typename _Container::const_reference)): Fix typo in signature.
146 2007-10-17  Paolo Carlini  <pcarlini@suse.de>
148         * include/tr1_impl/array: Correct macro guarding cbegin, cend,
149         crbegin, crend.
150         * include/tr1_impl/hashtable: Likewise.
152 2007-10-16  Paolo Carlini  <pcarlini@suse.de>
154         * include/ext/vstring.h (__versa_string<>::front, 
155         __versa_string<>::back): Add.
156         * testsuite/ext/vstring/element_access/char/front_back.cc: New.
157         * testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
159 2007-10-16  Paolo Carlini  <pcarlini@suse.de>
161         * include/bits/stl_queue.h (queue<>::queue(_Sequence&&),
162         queue<>::queue(queue&&), queue<>::operator=(queue&&),
163         queue<>::push(value_type&&), queue<>::swap(queue&&),
164         swap(queue<>&, queue<>&), swap(queue<>&&, queue<>&),
165         swap(queue<>&, queue<>&&), priority_queue<>::
166         priority_queue(const _Compare&, _Sequence&&),
167         priority_queue<>::priority_queue(_InputIterator, _InputIterator,
168         const _Compare&, _Sequence&&),
169         priority_queue<>::priority_queue(priority_queue&&),
170         priority_queue<>::operator=(priority_queue&&),
171         priority_queue<>::push(value_type&&),
172         priority_queue<>::swap(priority_queue&&),
173         swap(priority_queue<>&, priority_queue<>&),
174         swap(priority_queue<>&&, priority_queue<>&),
175         swap(priority_queue<>&, priority_queue<>&&)): Add.
176         * include/bits/stl_stack.h (stack<>::stack(_Sequence&&),
177         stack<>::push(value_type&&), stack<>::swap(stack&&),
178         swap(stack<>&, stack<>&), swap(stack<>&&, stack<>&),
179         swap(stack<>&, stack<>&&)): Add.
180         * testsuite/23_containers/queue/moveable.cc: New.
181         * testsuite/23_containers/priority_queue/moveable.cc: Likewise.
183 2007-10-16  Paolo Carlini  <pcarlini@suse.de>
185         * include/ext/vstring.h (__versa_string<>::
186         __versa_string(__versa_string&&),
187         __versa_string<>::operator=(__versa_string&&,
188         swap(__versa_string<>&&, __versa_string<>&),
189         swap(__versa_string<>(&, __versa_string<>&&)): Add.
190         (__versa_string<>::swap(__versa_string&&)): Adjust for C++0x.
191         * include/ext/sso_string_base.h
192         (__sso_string_base(__sso_string_base&&)): Add.
193         (__sso_string_base()): Use _Alloc_hider(_CharT*).
194         * include/ext/rc_string_base.h (__rc_string_base(__rc_string_base&&)):
195         Add.
196         (__rc_string_base()): Use _Alloc_hider(_CharT*).
197         * include/ext/vstring_util.h (_Alloc_hider::_Alloc_hider(_CharT*)):
198         Add.
199         * testsuite/ext/vstring/moveable.cc: Add.
201         * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Add.
202         * include/bits/stl_map.h (map<>::map(map&&)): Forward to the latter.
203         * include/bits/stl_set.h (set<>::set(set&&)): Likewise.
204         * include/bits/stl_multimap.h (multimap<>::multimap(multimap&&)):
205         Likewise.
206         * include/bits/stl_multiset.h (multiset<>::multiset(multiset&&)):
207         Likewise.
208         * include/bits/stl_deque.h (_Deque_base<>::_Deque_base(_Deque_base&&)):
209         Add.
210         (deque<>::deque(deque&&)): Forward to the latter.
211         * include/bits/stl_list.h (_List_base<>::_List_base(_List_base&&)):
212         Add.
213         (list<>::list(list&&)): Forward to the latter.
214         * include/bits/stl_vector.h
215         (_Vector_base<>::_Vector_base(_Vector_base&&)): Add.
216         (vector<>::vector(vector&&)): Forward to the latter.
217         * include/bits/stl_bvector.h
218         (_Bvector_base<>::_Bvector_base(_Bvector_base&&)): Add.
219         (vector<bool>::vector(vector&&)): Forward to the latter.
221         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
222         Adjust dg-error lines.
223         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
224         Likewise.
225         * testsuite/23_containers/vector/requirements/dr438/
226         constructor_1_neg.cc: Likewise.
227         * testsuite/23_containers/vector/requirements/dr438/
228         constructor_2_neg.cc: Likewise.
229         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
230         Likewise.
231         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
232         Likewise.
233         * testsuite/23_containers/deque/requirements/dr438/
234         constructor_1_neg.cc: Likewise.
235         * testsuite/23_containers/deque/requirements/dr438/
236         constructor_2_neg.cc: Likewise.
237         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
238         Likewise.
239         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
240         Likewise.
241         * testsuite/23_containers/list/requirements/dr438/
242         constructor_1_neg.cc: Likewise.
243         * testsuite/23_containers/list/requirements/dr438/
244         constructor_2_neg.cc: Likewise.
246 2007-10-15  Paolo Carlini  <pcarlini@suse.de>
248         * include/debug/set.h (set<>::cbegin, cend, crbegin, crend): Add.
249         * include/debug/multiset.h (set<>::cbegin, cend, crbegin, crend):
250         Likewise.
251         * include/debug/vector (vector<>::cbegin, cend, crbegin, crend):
252         Likewise.
253         * include/debug/map.h (map<>::cbegin, cend, crbegin, crend):
254         Likewise.
255         * include/debug/deque (deque<>::cbegin, cend, crbegin, crend): 
256         Likewise.
257         * include/debug/list (list<>::cbegin, cend, crbegin, crend):
258         Likewise.
259         * include/debug/multimap.h (multimap<>::cbegin, cend, crbegin,
260         crend): Likewise.
261         * include/tr1_impl/array (array<>::cbegin, cend, crbegin, crend):
262         Likewise.
263         * include/ext/vstring.h (__versa_string<>::cbegin, cend, crbegin,
264         crend): Likewise.
265         * include/bits/stl_list.h (list<>::cbegin, cend, crbegin, crend):
266         Likewise.
267         * include/bits/stl_map.h (map<>::cbegin, cend, crbegin, crend):
268         Likewise.
269         * include/bits/stl_set.h (set<>::cbegin, cend, crbegin, crend):
270         Likewise.
271         * include/bits/stl_multimap.h (multimap<>::cbegin, cend, crbegin,
272         crend): Likewise.
273         * include/bits/stl_vector.h (vector<>::cbegin, cend, crbegin, crend):
274         Likewise.
275         * include/bits/stl_deque.h (deque<>::cbegin, cend, crbegin, crend):
276         Likewise.
277         * include/bits/stl_multiset.h (multiset<>::cbegin, cend, crbegin,
278         crend): Likewise.
279         * include/bits/stl_bvector.h (vector<bool>::cbegin, cend, crbegin,
280         crend): Likewise.
281         * include/tr1_impl/hashtable (_Hashtable<>::cbegin, cend): Add. 
283         * testsuite/ext/vstring/requirements/citerators.cc: Add.
284         * testsuite/23_containers/unordered_map/requirements/citerators.cc:
285         Likewise.
286         * testsuite/23_containers/multimap/requirements/citerators.cc:
287         Likewise.
288         * testsuite/23_containers/set/requirements/citerators.cc: Likewise.
289         * testsuite/23_containers/unordered_multimap/requirements/
290         citerators.cc: Likewise.
291         * testsuite/23_containers/unordered_set/requirements/citerators.cc:
292         Likewise.
293         * testsuite/23_containers/vector/requirements/citerators.cc: Likewise.
294         * testsuite/23_containers/vector/bool/requirements/citerators.cc:
295         Likewise.
296         * testsuite/23_containers/deque/requirements/citerators.cc: Likewise.
297         * testsuite/23_containers/multiset/requirements/citerators.cc:
298         Likewise.
299         * testsuite/23_containers/list/requirements/citerators.cc: Likewise.
300         * testsuite/23_containers/unordered_multiset/requirements/
301         citerators.cc: Likewise.
302         * testsuite/23_containers/map/requirements/citerators.cc: Likewise.
303         * testsuite/23_containers/array/requirements/citerators.cc: Likewise.
305         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
306         Adjust dg-error lines.
307         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
308         Likewise.
309         * testsuite/23_containers/vector/requirements/dr438/
310         constructor_1_neg.cc: Likewise.
311         * testsuite/23_containers/vector/requirements/dr438/
312         constructor_2_neg.cc: Likewise.
313         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
314         Likewise.
315         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
316         Likewise.
317         * testsuite/23_containers/deque/requirements/dr438/
318         constructor_1_neg.cc: Likewise.
319         * testsuite/23_containers/deque/requirements/dr438/
320         constructor_2_neg.cc: Likewise.
321         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
322         Likewise.
323         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
324         Likewise.
325         * testsuite/23_containers/list/requirements/dr438/
326         constructor_1_neg.cc: Likewise.
327         * testsuite/23_containers/list/requirements/dr438/
328         constructor_2_neg.cc: Likewise.
330 2007-10-15  Paolo Carlini  <pcarlini@suse.de>
332         PR libstdc++/33773 (cont)
333         * testsuite/21_strings/headers/cwchar/macros.cc: Guard with
334         _GLIBCXX_USE_WCHAR_T, instead.
336 2007-10-15  Paolo Carlini  <pcarlini@suse.de>
338         PR libstdc++/33771
339         PR libstdc++/33773
340         * testsuite/21_strings/headers/cwchar/macros.cc: Guard test with
341         _GLIBCXX_HAVE_WCHAR_H.
342         * testsuite/21_strings/headers/cwctype/macros.cc: Likewise with
343         _GLIBCXX_HAVE_WCTYPE_H.
344         * testsuite/17_intro/headers/c++200x/all.cc: Guard inclusions
345         of <wchar.h> and <wctype.h>.
346         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc:
347         Likewise.
348         * testsuite/17_intro/headers/c++1998/all.cc: Likewise.
349         * testsuite/17_intro/headers/c++1998/all_multiple_inclusion.cc:
350         Likewise.
352 2007-10-14  Paolo Carlini  <pcarlini@suse.de>
354         * include/bits/stl_algo.h (is_sorted, is_sorted_until): Add.
355         * include/bits/algorithmfwd.h: Add.
356         * include/ext/algorithm: Adjust.
357         * testsuite/25_algorithms/is_sorted/requirements/
358         explicit_instantiation/2.cc: New.
359         * testsuite/25_algorithms/is_sorted/requirements/
360         explicit_instantiation/pod.cc: Likewise.
361         * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
362         * testsuite/25_algorithms/is_sorted_until/requirements/
363         explicit_instantiation/2.cc: Likewise.
364         * testsuite/25_algorithms/is_sorted_until/requirements/
365         explicit_instantiation/pod.cc: Likewise.
366         * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
367         * testsuite/25_algorithms/headers/algorithm/synopsis.cc:
368         Add is_sorted and is_sorted_until.
370         * include/bits/stl_heap.h (is_heap_until): Add concept and
371         debug-mode checks.
373 2007-10-12  Paolo Carlini  <pcarlini@suse.de>
375         * include/bits/stl_heap.h (__is_heap_until): Add.
376         (__is_heap(_RandomAccessIterator, _Distance),
377         __is_heap(_RandomAccessIterator, _Compare, _Distance)):
378         Adjust, call the latter.
379         (is_heap, is_heap_until): Add, call the above.
380         * include/bits/algorithmfwd.h: Add.
381         * testsuite/25_algorithms/is_heap/requirements/
382         explicit_instantiation/2.cc: New.
383         * testsuite/25_algorithms/is_heap/requirements/
384         explicit_instantiation/pod.cc: Likewise.
385         * testsuite/25_algorithms/is_heap/1.cc: Likewise.
386         * testsuite/25_algorithms/is_heap_until/requirements/
387         explicit_instantiation/2.cc: Likewise.
388         * testsuite/25_algorithms/is_heap_until/requirements/
389         explicit_instantiation/pod.cc: Likewise.
390         * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
391         * testsuite/25_algorithms/headers/algorithm/synopsis.cc:
392         Add is_heap and is_heap_until.
394 2007-10-12  Benjamin Kosnik  <bkoz@redhat.com>
396         * docs/doxygen/user.cfg.in: Scan tr1_impl/hashtable.
397         * include/tr1_impl/hashtable: Correct comment.
399         * include/ext/hash_map: Remove extraneous public markers.
400         * include/ext/hash_set: Same.
402         * testsuite/25_algorithms/headers/parallel_algorithm.cc: Move
403         inside algorithm directory.     
404         * testsuite/25_algorithms/headers/algorithm_parallel_mode.cc: Same.
405         * testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc: Same.
406         * testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc: Same.
407         * testsuite/25_algorithms/headers/algorithm/parallel_algorithm.cc:
408         To this.        
409         * testsuite/25_algorithms/headers/algorithm/
410         algorithm_parallel_mode.cc: Same.
411         * testsuite/25_algorithms/headers/algorithm/
412         parallel_algorithm_mixed1.cc: Same.
413         * testsuite/25_algorithms/headers/algorithm/
414         parallel_algorithm_mixed2.cc: Same.
416         * testsuite/21_strings/basic_string/requirements/
417         explicit_instantiation/debug.cc: Remove exception text.
418         
419         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
420         Fix for debug mode testing.     
421         * testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
422         
423 2007-10-12  Jesper Nilsson  <jesper.nilsson@axis.com>
425        * testsuite/tr1/5_numerical_facilities/special_functions/
426        20_riemann_zeta/check_value_neg.c (MAX_ITERATIONS): Add limit
427        when target is simulator.
428        * testsuite/tr1/5_numerical_facilities/special_functions/
429        20_riemann_zeta/check_value_pos.c (MAX_ITERATIONS): Likewise.
431 2007-10-11  Roger Sayle  <roger@eyesopen.com>
433         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EOVERFLOW for Tru64.
434         * configure: Regenerate.
435         * config/os/generic/error_constants.h: Guard.
436         * testsuite/19_diagnostics/headers/system_error/
437         types_std_c++0x.cc: Same.
439 2007-10-11  Benjamin Kosnik  <bkoz@redhat.com>
441         Convert ext/hash_map, set to tr1/functional, tr1/unordered_map, set.
442         * include/ext/rope: Use tr1/functional hash instead of ext/hash_fun.h.
443         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
444         * include/precompiled/extc++.h: Remove hash_map, hash_set.
445         * testsuite/util/testsuite_abi.h (__gnu_cxx): Use unordered_map
446         instead of hash_map. Remove hash specialization for string.
447         * testsuite/util/testsuite_abi.cc: Include <vector>.
448         * testsuite/util/native_type/assoc/native_hash_set.hpp: Remove
449         hash_set code.
450         * testsuite/util/native_type/assoc/native_hash_map.hpp: Remove
451         hash_map code.
452         * testsuite/util/native_type/assoc/native_hash_multimap.hpp:
453         Change hash_multimap to unordered_multimap.
454         * testsuite/util/testsuite_common_types.h: Remove hash_map, hash_set.
455         * testsuite/ext/headers.cc: Same.
456         * testsuite/17_intro/headers/all_c++200x_compatibility.cc: Remove
457         hash_map.h, hash_set.h.
458         * testsuite/17_intro/headers/all.cc: Same.
459         * testsuite/17_intro/headers/all_pedantic_errors.cc: Same.
461         * include/ext/pb_ds/detail/standard_policies.hpp: Format.
462         * testsuite/util/native_type/assoc/native_set.hpp: Same, 
463         update comment.
464         * testsuite/util/native_type/assoc/native_map.hpp: Same.
465         * testsuite/util/native_type/assoc/native_multimap.hpp: Same.
466         * testsuite/util/performance/assoc/timing/
467         multimap_insert_test.hpp: Same.
468         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
470 2007-10-11  Chris Jefferson  <chris@bubblescope.net>
471             Paolo Carlini  <pcarlini@suse.de>
473         * include/bits/stl_heap.h (__push_heap, push_heap, __adjust_heap,
474         make_heap): Use _GLIBCXX_MOVE.
475         (__pop_heap): Likewise, adjust signature.
476         (pop_heap): Adjust __pop_heap call.
477         * include/bits/stl_algo.h (__heap_select): Likewise.
478         * testsuite/25_algorithms/heap/moveable.cc: Remove dg-require-rvalref.
479         * testsuite/25_algorithms/partial_sort/moveable.cc: Likewise.
481 2007-10-11  Paolo Carlini  <pcarlini@suse.de>
483         PR libstdc++/33734
484         * include/ext/codecvt_specializations.h (encoding_state::good,
485         init, destroy): Use cast notation instead of reinterpret_cast.
487 2007-10-11  Paolo Carlini  <pcarlini@suse.de>
489         * testsuite/25_algorithms/heap/moveable.cc: Fix and extend.
491 2007-10-11  Danny Smith  <dannysmith@users.sourceforge.net>
493         PR libstdc++/33578
494         * include/parallel/compatibility.h.  Use POSIX sched_yield on
495         __CYGWIN__ 
496         (Sleep): Add prototype for __MINGW32__.
498 2007-10-10  Jason Merrill  <jason@redhat.com>
500         * libsupc++/guard.cc (struct mutex_wrapper): Move into
501         anonymous namespace.
503 2007-10-10  Paolo Carlini  <pcarlini@suse.de>
505         * include/debug/list (list<>::list(list&&)): Fix.
506         * include/debug/vector (vector<>::vector(vector&&)): Likewise.
507         * include/debug/deque (deque<>::deque(deque&&)): Likewise.
508         * include/debug/set.h (set<>::set(set&&)): Likewise.
509         * include/debug/map.h (map<>::map(map&&)): Likewise.
510         * include/debug/multiset.h (multiset<>::multiset(multiset&&)):Likewise.
511         * include/debug/multimap.h (multimap<>::multimap(multimap&&)):Likewise.
513 2007-10-10  Benjamin Kosnik  <bkoz@redhat.com>
515         PR libstdc++/33633
516         * include/debug/hash_multimap.h: Change _GLIBCXX_EXT to _GLIBCXX_EXT_D.
517         * include/debug/hash_set.h: Same.
518         * include/debug/hash_multiset.h: Same.
519         * include/debug/hash_map.h: Same.
521 2007-10-10  Benjamin Kosnik  <bkoz@redhat.com>
523         * include/parallel/losertree.h (loser_tree_traits_unguarded): To 
524         loser_tree_unguarded_traits.
525         * include/parallel/multiway_merge.h (__gnu_parallel): Same.
527 2007-10-10  Paolo Carlini  <pcarlini@suse.de>
528             Chris Fairles  <chris.fairles@gmail.com>
530         * include/bits/stl_algobase.h (swap): Move...
531         * include/bits/stl_move.h: ... here.
532         * include/bits/stl_pair.h (pair<>::pair(_U1&&, _U2&&),
533         pair<>::pair(pair<>&&), pair<>::operator=(pair<>&&),
534         pair<>::swap(pair&&), swap(&, &), swap(&&, &), swap(&, &&),
535         make_pair(_T1&&, _T2&&)): Add.
536         * testsuite/20_util/pair/swap.cc: Add.
538 2007-10-09  Wolfgang Bangerth  <bangerth@dealii.org>
540         PR libstdc++/33485 continued.
541         * include/parallel/multiway_mergesort.h: Use __builtin_alloca.
542         
543 2007-10-09  Zhou Drangon  <drangon.mail@gmail.com>
545         PR libstdc++/33682
546         * libsupc++/guard.cc: Make single conditional variable
547         implementation dependent to __GTHREAD_HAS_COND.
549 2007-10-09  Benjamin Kosnik  <bkoz@redhat.com>
551         PR libstdc++/33489 continued.           
552         * include/parallel/features.h (_GLIBCXX_LOSER_TREE): Set to zero.
553         (_GLIBCXX_LOSER_TREE_POINTER): Set to one.
554         (_GLIBCXX_LOSER_TREE_UNGUARDED): Set to zero.
555         (_GLIBCXX_LOSER_TREE_POINTER_UNGUARDED): Set to one.
556         * include/parallel/multiway_merge.h (parallel_multiway_merge):
557         Change array of value_type to array of value_type pointers.
558         (multiway_merge_bubble): Same.
559         (multiway_merge_loser_tree): Same.
560         * include/parallel/merge.h (merge_advance_movc): Change to avoid
561         default construction.
562         * include/parallel/multiseq_selection.h (multiseq_partition):
563         Replace value_type, bool pair with value_type*, null-initialized.
564         * include/parallel/multiway_mergesort.h (parallel_sort_mwms):
565         Don't use array form of operator new for value_types.
566         (parallel_sort_mwms_pu): Same.
567         * include/parallel/quicksort.h (parallel_sort_qs_divide): Don't
568         use array form to construct pointer to value_type on stack,
569         instead use __builtin_alloca.   
570         * include/parallel/random_shuffle.h (sequential_random_shuffle): Same,
571         but use operator new.
572         (parallel_random_shuffle_drs_pu): Same.
573         * include/parallel/partial_sum.h ( parallel_partial_sum_linear): Same.
575         * include/parallel/losertree.h: Format.
576         * include/parallel/settings.h: Format.
578         * include/parallel/multiway_merge.h: Move traits to....
579         * include/parallel/losertree.h: ... here.       
580         
581 2007-10-09  Paolo Carlini  <pcarlini@suse.de>
583         * include/tr1_impl/type_traitsfwd.h (add_reference): Remove.
584         * include/tr1/type_traits (add_reference): Add forward declaration.
585         * include/tr1_impl/functional (class _Mu<>): Fix.
587 2007-10-09  Paolo Carlini  <pcarlini@suse.de>
589         * include/bits/boost_concept_check.h (*AssociativeContainerConcept):
590         Remove, unused.
592 2007-10-08  Johannes Singler  <singler@ira.uka.de>
594         * include/parallel/base.h: Added plus and multiplies functor
595        for differently typed objects.
596         * include/parallel/numeric: Use it.
597         * include/parallel/for_each_selectors.h: Allowed different types.
598         * include/parallel/partial_sum.h: Fixed return value.
599         * testsuite/26_numerics/accumulate/1.cc: Tests for accumulate.
600         * testsuite/26_numerics/inner_product/1.cc: Tests for inner_product.
602 2007-10-08  Paolo Carlini  <pcarlini@suse.de>
604         * include/bits/stl_move.h (_GLIBCXX_MOVE): Add.
605         * include/bits/stl_algobase.h: Adjust.
606         * include/bits/stl_pair.h: Likewise.
608         * include/bits/stl_algo.h: Minor formatting fixes.
610 2007-10-08  Benjamin Kosnik  <bkoz@redhat.com>
612         PR libstdc++/33489      
613         * include/parallel/multiseq_selection.h: Remove default constructed
614         value_type.
615         * include/parallel/partition.h: 
616         * include/parallel/partial_sum.h: Format.
618 2007-10-08  Johannes Singler  <singler@ira.uka.de>
620         * include/parallel/multiway_merge.h: Added reference to paper.
621         * include/parallel/multiseq_selection.h: Added reference to paper.
622         * include/parallel/workstealing.h: Added reference to paper.
623         * include/parallel/balanced_quicksort.h: Added reference to paper.
624         * include/parallel/tree.h: Added reference to paper.
625         * docs/html/parallel_mode.html: Added reference to MCSTL.
626         More documentation on compile-time settings and tuning.
628 2007-10-08  Paolo Carlini  <pcarlini@suse.de>
630         * include/std/utility (identity, move, forward): Move to...
631         * include/bits/stl_move.h: ... here.
632         * include/Makefile.am: Add.
633         * include/bits/stl_algobase.h: Include the latter.
634         * include/Makefile.in: Regenerate.
635         * testsuite/20_util/pair/moveable.cc: Remove dg-require-rvalref.
637 2007-10-08  Chris Jefferson  <chris@bubblescope.net>
638             Paolo Carlini  <pcarlini@suse.de>
640         * include/bits/stl_pair.h (pair<>:pair(pair&&),
641         pair<>::operator=(pair&&)): Add.
643 2007-10-07  Chris Jefferson  <chris@bubblescope.net>
644             Paolo Carlini  <pcarlini@suse.de>
646         * include/debug/list (list<>::list(list&&),
647         list<>::operator=(list&&)): Add.
648         (list<>::swap): Adjust.
649         (swap(list&&, list& __y), swap(list&, list&& __y)): Add.
650         * include/debug/vector (vector<>::vector(vector&&),
651         vector<>::operator=(vector&&)): Add.
652         (vector<>::swap): Adjust.
653         (swap(vector&&, vector& __y), swap(vector&, vector&& __y)): Add.
654         * include/debug/deque (deque<>::deque(deque&&),
655         deque<>::operator=(deque&&)): Add.
656         (deque<>::swap): Adjust.
657         (swap(deque&&, deque& __y), swap(deque&, deque&& __y)): Add.
658         * include/debug/set.h (set<>::set(set&&),
659         set<>::operator=(set&&)): Add.
660         (set<>::swap): Adjust.
661         (swap(set&&, set& __y), swap(set&, set&& __y)): Add.
662         * include/debug/map.h (map<>::map(map&&),
663         map<>::operator=(map&&)): Add.
664         (map<>::swap): Adjust.
665         (swap(map&&, map& __y), swap(map&, map&& __y)): Add.
666         * include/debug/multiset.h (multiset<>::multiset(multiset&&),
667         multiset<>::operator=(multiset&&)): Add.
668         (smultiet<>::swap): Adjust.
669         (swap(multiset&&, multiset& __y),
670         swap(multiset&, multiset&& __y)): Add.
671         * include/debug/multimap.h (multimap<>::multimap(multimap&&),
672         multimap<>::operator=(multimap&&)): Add.
673         (multimap<>::swap): Adjust.
674         (swap(multimap&&, multimap& __y),
675         swap(multimap&, multimap&& __y)): Add.
677 2007-10-07  Paolo Carlini  <pcarlini@suse.de>
679         * include/bits/stl_algobase.h (_GLIBCXX_MOVE): Add.
680         (swap, __iter_swap): Use it.
681         * testsuite/25_algorithms/rotate/moveable.cc: Remove 
682         dg-require-rvalref.
683         * testsuite/25_algorithms/remove/moveable.cc: Likewise.
684         * testsuite/25_algorithms/partition/moveable.cc: Likewise. 
685         * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
686         * testsuite/25_algorithms/reverse/moveable.cc: Likewise. 
687         * testsuite/25_algorithms/unique/moveable.cc: Likewise. 
688         * testsuite/25_algorithms/remove_if/moveable.cc: Likewise. 
690         * include/bits/stl_algobase.h (lexicographical_compare):
691         Clean up.
693 2007-10-07  Chris Jefferson  <chris@bubblescope.net>
694             Paolo Carlini  <pcarlini@suse.de>
696         * include/bits/stl_algo.h (remove, remove_if, unique,
697         __rotate(_RandomAccessIterator, _RandomAccessIterator,
698         _RandomAccessIterator, random_access_iterator_tag)): Use _GLIBCXX_MOVE.
699         (__rotate(_ForwardIterator, _ForwardIterator, _ForwardIterator,
700         forward_iterator_tag), __rotate(_BidirectionalIterator,
701         _BidirectionalIterator, _BidirectionalIterator,
702         bidirectional_iterator_tag), __partition(_ForwardIterator,
703         _ForwardIterator, _Predicate, forward_iterator_tag)): Use iter_swap.
705 2007-10-06  Benjamin Kosnik  <bkoz@redhat.com>
707         PR libstdc++/33678      
708         * libsupc++/typeinfo (typeinfo): Revert ordering of virtual components.
710 2007-10-06  Benjamin Kosnik  <bkoz@redhat.com>
712         PR libstdc++/33487
713         * include/parallel/algorithmfwd.h (for_each, generate, generate_n,
714         transform, replace, replace_if, max_element, min_element, count,
715         count_if): Consistently construct overloads.
716         * include/parallel/numericfwd.h (accumulate, adjacent_difference,
717         inner_product): Same.
718         * include/parallel/algobase.h: Same.
719         * include/parallel/algo.h: Same.
720         * include/parallel/numeric: Same.
722         * include/bits/algorithmfwd.h: Correct find_end placement.
724         * docs/html/parallel_mode.html: Document some of the interface
725         conventions.
727         * include/parallel/search.h (calc_borders): Only use operator ==.
728         
729         * include/parallel/algorithmfwd.h: Move __gnu_sequential bits to...
730         * include/parallel/tags.h: ...here, and use a using directive.
732         * include/parallel/random_shuffle.h: Include stl_numeric. Qualify
733         uses of partial_num with __gnu_sequential.
735         * include/parallel/tree.h: Formatting.
736         
737 2007-10-05  Benjamin Kosnik  <bkoz@redhat.com>
739         Fixes for --disable-libstdcxx-pch.
740         * include/ext/rc_string_base.h: Include stl_iterator_base_funcs.h.
741         * include/ext/vstring_util.h: Include stl_iterator.h and
742         numeric_traits.h.
743         * include/tr1/functional: Include new.
744         * testsuite/util/testsuite_api.h: Include exception.
745         * testsuite/lib/libstdc++.exp (libstdc++_init): Set
746         PCH_CXXFLAGS via cxxpchflags.
748         * testsuite/25_algorithms/binary_search/requirements/
749         explicit_instantiation/2.cc: Same.: Fix includes.
750         * testsuite/25_algorithms/count_if/requirements/
751         explicit_instantiation/2.cc: Same.
752         * testsuite/25_algorithms/equal_range/requirements/
753         explicit_instantiation/2.cc: Same.
754         * testsuite/25_algorithms/find_end/requirements/
755         explicit_instantiation/2.cc: Same.
756         * testsuite/25_algorithms/find_first_of/requirements/
757         explicit_instantiation/2.cc: Same.
758         * testsuite/25_algorithms/find_if/requirements/
759         explicit_instantiation/2.cc: Same.
760         * testsuite/25_algorithms/for_each/requirements/
761         explicit_instantiation/2.cc: Same.
762         * testsuite/25_algorithms/includes/requirements/
763         explicit_instantiation/2.cc: Same.
764         * testsuite/25_algorithms/inplace_merge/requirements/
765         explicit_instantiation/2.cc: Same.
766         * testsuite/25_algorithms/lexicographical_compare/
767         requirements/explicit_instantiation/2.cc: Same.
768         * testsuite/25_algorithms/lower_bound/requirements/
769         explicit_instantiation/2.cc: Same.
770         * testsuite/25_algorithms/make_heap/requirements/
771         explicit_instantiation/2.cc: Same.
772         * testsuite/25_algorithms/max_element/requirements/
773         explicit_instantiation/2.cc: Same.
774         * testsuite/25_algorithms/max/requirements/
775         explicit_instantiation/2.cc: Same.
776         * testsuite/25_algorithms/merge/requirements/
777         explicit_instantiation/2.cc: Same.
778         * testsuite/25_algorithms/min_element/requirements/
779         explicit_instantiation/2.cc: Same.
780         * testsuite/25_algorithms/min/requirements/
781         explicit_instantiation/2.cc: Same.
782         * testsuite/25_algorithms/next_permutation/
783         requirements/explicit_instantiation/2.cc: Same.
784         * testsuite/25_algorithms/nth_element/requirements/
785         explicit_instantiation/2.cc: Same.
786         * testsuite/25_algorithms/partial_sort_copy/
787         requirements/explicit_instantiation/2.cc: Same.
788         * testsuite/25_algorithms/partial_sort/requirements/
789         explicit_instantiation/2.cc: Same.
790         * testsuite/25_algorithms/partition/requirements/
791         explicit_instantiation/2.cc: Same.
792         * testsuite/25_algorithms/pop_heap/requirements/
793         explicit_instantiation/2.cc: Same.
794         * testsuite/25_algorithms/prev_permutation/requirements/
795         explicit_instantiation/2.cc: Same.
796         * testsuite/25_algorithms/push_heap/requirements/
797         explicit_instantiation/2.cc: Same.
798         * testsuite/25_algorithms/random_shuffle/requirements/
799         explicit_instantiation/2.cc: Same.
800         * testsuite/25_algorithms/remove_copy_if/requirements/
801         explicit_instantiation/2.cc: Same.
802         * testsuite/25_algorithms/remove_if/requirements/
803         explicit_instantiation/2.cc: Same.
804         * testsuite/25_algorithms/replace_copy_if/requirements/
805         explicit_instantiation/2.cc: Same.
806         * testsuite/25_algorithms/replace_if/requirements/
807         explicit_instantiation/2.cc: Same.
808         * testsuite/25_algorithms/search_n/requirements/
809         explicit_instantiation/2.cc: Same.
810         * testsuite/25_algorithms/search/requirements/
811         explicit_instantiation/2.cc: Same.
812         * testsuite/25_algorithms/set_difference/requirements/
813         explicit_instantiation/2.cc: Same.
814         * testsuite/25_algorithms/set_intersection/requirements/
815         explicit_instantiation/2.cc: Same.
816         * testsuite/25_algorithms/set_symmetric_difference/requirements/
817         explicit_instantiation/2.cc: Same.
818         * testsuite/25_algorithms/set_union/requirements/
819         explicit_instantiation/2.cc: Same.
820         * testsuite/25_algorithms/sort_heap/requirements/
821         explicit_instantiation/2.cc: Same.
822         * testsuite/25_algorithms/sort/requirements/
823         explicit_instantiation/2.cc: Same.
824         * testsuite/25_algorithms/stable_partition/requirements/
825         explicit_instantiation/2.cc: Same.
826         * testsuite/25_algorithms/stable_sort/requirements/
827         explicit_instantiation/2.cc: Same.
828         * testsuite/25_algorithms/transform/requirements/
829         explicit_instantiation/2.cc: Same.
830         * testsuite/25_algorithms/unique_copy/requirements/
831         explicit_instantiation/2.cc: Same.
832         * testsuite/25_algorithms/unique/requirements/
833         explicit_instantiation/2.cc: Same.
834         * testsuite/25_algorithms/upper_bound/requirements/
835         explicit_instantiation/2.cc: Same.
837         * testsuite/25_algorithms/remove/requirements/
838         explicit_instantiation/pod.cc: Provide a hint to the compiler.
840 2007-10-05  Paolo Carlini  <pcarlini@suse.de>
842         * testsuite/23_containers/map/moveable.cc: Remove dg-require-rvalref.
843         * testsuite/23_containers/multimap/moveable.cc: Likewise.
844         * testsuite/23_containers/set/moveable.cc: Likewise. 
845         * testsuite/23_containers/multiset/moveable.cc: Likewise.
846         * testsuite/23_containers/deque/moveable.cc: Likewise. 
847         * testsuite/23_containers/list/moveable.cc: Likewise. 
848         * testsuite/23_containers/vector/moveable.cc: Likewise. 
849         * include/std/utility: Use _GLIBCXX_BEGIN_NAMESPACE.
851 2007-10-05  Paolo Carlini  <pcarlini@suse.de>
852             Chris Jefferson  <chris@bubblescope.net>
854         * include/bits/stl_iterator.h (class move_iterator,
855         make_move_iterator): Add.
857 2007-10-04  Doug Kwan  <dougkwan@google.com>
859         * include/ext/concurrent.h (class __mutex,
860         class __recursive_mutex): Add new method gthread_mutex to access
861         inner gthread mutex.
862         [__GTHREAD_HAS_COND] (class __concurrence_broadcast_error,
863         class __concurrence_wait_error, class __cond): Add.
864         * libsupc++/guard.cc (recursive_push, recursive_pop): Delete.
865         (init_in_progress_flag, set_init_in_progress_flag): Add to
866         replace recursive_push and recursive_pop.
867         (throw_recursive_init_exception): Add.
868         (acquire, __cxa_guard_acquire, __cxa_guard_abort and
869         __cxa_guard_release): [__GTHREAD_HAS_COND] Use a conditional
870         for synchronization of static variable initialization.
871         The global mutex is only held briefly when guards are
872         accessed. [!__GTHREAD_HAS_COND] Fall back to the old code,
873         which deadlocks.
874         * testsuite/thread/guard.cc: Add new test. It deadlocks with the
875         old locking code in libstdc++-v3/libsup++/guard.cc.
877 2007-10-04  Paolo Carlini  <pcarlini@suse.de>
879         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
880         Adjust dg-error line number.
881         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
882         Likewise.
883         * testsuite/23_containers/vector/requirements/dr438/
884         constructor_1_neg.cc: Likewise.
885         * testsuite/23_containers/vector/requirements/dr438/
886         constructor_2_neg.cc: Likewise.
887         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
888         Adjust dg-error line number.
889         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
890         Likewise.
891         * testsuite/23_containers/deque/requirements/dr438/
892         constructor_1_neg.cc: Likewise.
893         * testsuite/23_containers/deque/requirements/dr438/
894         constructor_2_neg.cc: Likewise.
895         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
896         Adjust dg-error line number.
897         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
898         Likewise.
899         * testsuite/23_containers/list/requirements/dr438/
900         constructor_1_neg.cc: Likewise.
901         * testsuite/23_containers/list/requirements/dr438/
902         constructor_2_neg.cc: Likewise.
904 2007-10-04  Chris Jefferson  <chris@bubblescope.net>
905             Paolo Carlini  <pcarlini@suse.de>
907         * include/bits/stl_list.h (list<>::list(list&&),
908         list<>::operator=(list&&)): Add.
909         (list<>::swap): Adjust.
910         (swap(list&&, list& __y), swap(list&, list&& __y)): Add.
911         * include/bits/stl_vector.h (vector<>::vector(vector&&),
912         vector<>::operator=(vector&&)): Add.
913         (vector<>::swap): Adjust.
914         (swap(vector&&, vector& __y), swap(vector&, vector&& __y)): Add.
915         * include/bits/stl_bvector.h (vector<>::vector(vector&&),
916         vector<>::operator=(vector&&)): Add.
917         (vector<>::swap): Adjust.
918         * include/bits/stl_deque.h (deque<>::deque(deque&&),
919         deque<>::operator=(deque&&)): Add.
920         (deque<>::swap): Adjust.
921         (swap(deque&&, deque& __y), swap(deque&, deque&& __y)): Add.
922         * include/bits/stl_set.h (set<>::set(set&&),
923         set<>::operator=(set&&)): Add.
924         (set<>::swap): Adjust.
925         (swap(set&&, set& __y), swap(set&, set&& __y)): Add.
926         * include/bits/stl_map.h (map<>::map(map&&),
927         map<>::operator=(map&&)): Add.
928         (map<>::swap): Adjust.
929         (swap(map&&, map& __y), swap(map&, map&& __y)): Add.
930         * include/bits/stl_multiset.h (multiset<>::multiset(multiset&&),
931         multiset<>::operator=(multiset&&)): Add.
932         (smultiet<>::swap): Adjust.
933         (swap(multiset&&, multiset& __y),
934         swap(multiset&, multiset&& __y)): Add.
935         * include/bits/stl_multimap.h (multimap<>::multimap(multimap&&),
936         multimap<>::operator=(multimap&&)): Add.
937         (multimap<>::swap): Adjust.
938         (swap(multimap&&, multimap& __y),
939         swap(multimap&, multimap&& __y)): Add.
941 2007-10-04  Paolo Carlini  <pcarlini@suse.de>
943         Avoid copying some allocator objects.
944         * include/bits/stl_list.h (_List_impl::_List_impl(),
945         _List_base::_List_base(), list<>::list()): Add.
946         * include/bits/stl_vector.h  (_Vector_impl::_Vector_impl(),
947         _Vector_base::_Vector_base(), vector<>::vector()): Add.
948         * include/bits/stl_bvector.h (_Bvector_impl::_Bvector_impl(),
949         _Bvector_base::_Bvector_base(), vector<>::vector()): Add.
950         * include/bits/stl_deque.h  (_Deque_impl::_Deque_impl(),
951         _Deque_base::_Deque_base(), deque<>::deque()): Add.
952         * include/bits/stl_tree.h (_Rb_tree_impl<>::_Rb_tree_impl(),
953         _Rb_tree_impl<>::_M_initialize): Add.
954         (_Rb_tree<>::_Rb_tree(const _Compare&, const allocator_type&),
955         _Rb_tree(const _Rb_tree&)): Adjust.
956         * include/bits/stl_set.h (set<>::set(),
957         set(_InputIterator, _InputIterator)): Use _M_t default constructor. 
958         * include/bits/stl_map.h (map<>::map(), set(_InputIterator,
959         _InputIterator)): Use _M_t default constructor. 
960         * include/bits/stl_multiset.h (multiset<>::multiset(),
961         multiset(_InputIterator, _InputIterator)): Use _M_t default
962         constructor. 
963         * include/bits/stl_multimap.h (multimap<>::multimap(),
964         multimap(_InputIterator, _InputIterator)): Use _M_t default
965         constructor.
967 2007-10-03  Chris Jefferson  <chris@bubblescope.net>
968             Benjamin Kosnik  <bkoz@redhat.com>
970         * testsuite/20_util/pair/moveable.cc: New. Merge from 
971         libstdcxx_so_7-branch.
972         * testsuite/23_containers/deque/capacity/moveable.cc: Same.
973         * testsuite/23_containers/deque/cons/moveable.cc: Same.
974         * testsuite/23_containers/deque/modifiers/moveable.cc: Same.
975         * testsuite/23_containers/deque/moveable.cc: Same.
976         * testsuite/23_containers/list/moveable.cc: Same.
977         * testsuite/23_containers/map/moveable.cc: Same.
978         * testsuite/23_containers/multimap/moveable.cc: Same.
979         * testsuite/23_containers/multiset/moveable.cc: Same.
980         * testsuite/23_containers/set/moveable.cc: Same.
981         * testsuite/23_containers/vector/cons/moveable.cc: Same.
982         * testsuite/23_containers/vector/modifiers/moveable.cc: Same.
983         * testsuite/23_containers/vector/moveable.cc: Same.
984         * testsuite/23_containers/vector/resize/moveable.cc: Same.
985         * testsuite/25_algorithms/heap/moveable.cc: Same.
986         * testsuite/25_algorithms/nth_element/moveable.cc: Same.
987         * testsuite/25_algorithms/partial_sort/moveable.cc: Same.
988         * testsuite/25_algorithms/partition/moveable.cc: Same.
989         * testsuite/25_algorithms/remove_if/moveable.cc: Same.
990         * testsuite/25_algorithms/remove/moveable.cc: Same.
991         * testsuite/25_algorithms/reverse/moveable.cc: Same.
992         * testsuite/25_algorithms/rotate/moveable.cc: Same.
993         * testsuite/25_algorithms/sort/moveable.cc: Same.
994         * testsuite/25_algorithms/swap_ranges/moveable.cc: Same.
995         * testsuite/25_algorithms/unique/moveable.cc: Same.
996         * testsuite/util/testsuite_rvalref.h: New.
998         * testsuite/25_algorithms/equal/equal.cc: Move to...
999         * testsuite/25_algorithms/equal/no_operator_ne.cc: ...this.
1000         * testsuite/25_algorithms/heap/heap.cc: Move to...
1001         * testsuite/25_algorithms/heap/1.cc: ...this.
1002         * testsuite/25_algorithms/lower_bound/lower_bound.cc: Move to...
1003         * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: ...this.
1004         * testsuite/25_algorithms/partition/partition.cc: Move to...
1005         * testsuite/25_algorithms/partition/1.cc: ...this.
1006         * testsuite/25_algorithms/stable_partition/1.cc: ... and this.
1007         
1008         * testsuite/25_algorithms/search/1.cc: Update from merge.
1009         * testsuite/25_algorithms/search/check_type.cc: Same.
1011         * testsuite/lib/dg-options.exp (dg-require-rvalref): New.
1012         * testsuite/lib/libstdc++.exp (check_v3_target_rvalref): New.
1013         
1014 2007-10-03  Richard Sandiford  <richard@codesourcery.com>
1016         * acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
1017         -fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
1018         Make the tests assign results to volatile variables.  Use -lm
1019         for link tests in GCC_TRY_COMPILE_OR_LINK.  Fall back to
1020         compile-only tests if -lm is not available.
1021         * configure: Regenerate.
1023 2007-10-03  Paolo Carlini  <pcarlini@suse.de>
1025         PR libstdc++/33613
1026         * include/debug/functions.h (__check_partitioned): Rename to...
1027         (__check_partioned_lower): ... this.
1028         (__check_partioned_upper): Add.
1029         * include/debug/macros.h (__glibcxx_check_partitioned): Rename to...
1030         (__glibcxx_check_partitioned_lower): ... this, adjust.
1031         (__glibcxx_check_partitioned_upper): Add.
1032         * include/debug/debug.h (__glibcxx_requires_partitioned): Rename to...
1033         (__glibcxx_requires_partitioned_lower): ... this, adjust.
1034         (__glibcxx_requires_partitioned_upper): Add.
1035         * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
1036         binary search): Use the above.
1037         * testsuite/25_algorithms/lower_bound/33613.cc: New.
1038         * testsuite/25_algorithms/upper_bound/33613.cc: Likewise.
1040 2007-10-03  Kazu Hirata  <kazu@codesourcery.com>
1042         Revert:
1043         2007-10-02  Richard Sandiford  <richard@codesourcery.com>
1044         * acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
1045         -fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
1046         Make the tests assign results to volatile variables.
1047         * configure: Regenerate.
1049 2007-10-02  Richard Sandiford  <richard@codesourcery.com>
1051         * acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
1052         -fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
1053         Make the tests assign results to volatile variables.
1054         * configure: Regenerate.
1056 2007-10-02  Benjamin Kosnik  <bkoz@redhat.com>
1058         * testsuite/25_algorithms/binary_search/2.cc: Split into...
1059         * testsuite/25_algorithms/upper_bound/2.cc: ... this.
1060         * testsuite/25_algorithms/lower_bound/2.cc: ... this.
1061         * testsuite/25_algorithms/equal_range/2.cc: ... and this.
1063 2007-10-02  Chris Jefferson  <chris@bubblescope.net>
1065         * testsuite/25_algorithms/search/1.cc: Merge from 
1066         libstdcxx_so_7-branch.
1067         * testsuite/25_algorithms/search/check_type.cc: Same.
1068         * testsuite/25_algorithms/sort/vectorbool.cc: Same.
1070 2007-09-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
1072         * src/valarray-inst.cc, include/ext/atomicity.h,
1073         include/ext/concurrence.h, include/bits/basic_string.h,
1074         include/bits/fstream.tcc, include/ext/vstring.h: Fix comment typos.
1076 2007-09-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
1078         * docs/html/test.html, docs/html/ext/mt_allocator.html,
1079         docs/html/ext/tr1.html, docs/html/17_intro/contribute.html,
1080         docs/html/documentation.html, docs/html/20_util/allocator.html:
1081         Update docs to refer to Subversion not CVS. Fix markup.
1083 2007-09-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
1085         * docs/html/Makefile: Follow up to libstdc++/14991, remove target.
1087 2007-09-28  Benjamin Kosnik  <bkoz@redhat.com>
1089         * include/parallel/algorithmfwd.h: Spacing.
1090         * include/parallel/tags.h: Correct comment.
1091         
1092         * testsuite/Makefile.am (AM_MAKEFLAGS, AM_RUNTESTFLAGS): Remove.
1093         * testsuite/Makefile.in: Regenerate.
1094         
1095 2007-09-27  Benjamin Kosnik  <bkoz@redhat.com>
1097         * testsuite/util/testsuite_hooks.cc (set_memory_limits): Adjust
1098         x86_64 virtual memory setting for libgomp.
1099         
1100 2007-09-26  Benjamin Kosnik  <bkoz@redhat.com>
1102         * include/bits/stl_algo.h: Add return type information to comments.
1103         * include/bits/algorithmfwd.h: Formatting.
1104         * testsuite/util/testsuite_hooks.h (NonDefaultConstructible): Move..
1105         * testsuite/util/testsuite_api.h: ...here. Add necessary operators
1106         for use in testing chapters 25 and 26.
1107         * testsuite/util/testsuite_character.h: Same.
1109         * testsuite/25_algorithms/*/requirements/explicit_instantiation/
1110         2.cc, pod.cc: New.
1112         * testsuite/26_numerics/accumulate, adjacent_difference, inner_product,
1113         partial_sum/requirements/explicit_instantiation/2.cc, pod.cc: New.
1114         
1115         * testsuite/26_numerics/numeric_arrays/*: Move contents into
1116         testsuite/26_numerics.
1118         * testsuite/26_numerics/numeric_operations: Same.
1119         
1120         * testsuite/23_containers/*/requirements/explicit_instantiation/2.cc:
1121         Adjust includes from testsuite_eh.h to testsuite_api.h.
1123 2007-09-25  Richard Sandiford  <rsandifo@nildram.co.uk>
1125         * testsuite/lib/libstdc++.exp (check_v3_target_fileio): Test lseek.
1127 2007-09-18  Benjamin Kosnik  <bkoz@redhat.com>
1128             Chalathip Thumkanon  <chalathip@gmail.com>
1130         PR libstdc++/32819
1131         PR libstdc++/32822
1132         * docs/html/ext/pb_ds/hash_based_containers.html: Correct.
1133         
1134 2007-09-17  Benjamin Kosnik  <bkoz@redhat.com>
1136         * configure.host: Set atomic_flags on i486.
1138         * include/Makefile.am: Remove parallel-mode pch.        
1139         * include/Makefile.in: Regenerate.
1141         * testsuite/lib/libstdc++.exp: Set ld_library_flags for libgomp if
1142         present.
1144         * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Comment.
1145         * configure: Regenerate.
1147 2007-09-17  Johannes Singler  <singler@ira.uka.de>
1149         * include/parallel/for_each.h: Fixed comment/doxygen markup typos.
1150         * include/parallel/base.h: Same.
1151         * include/parallel/numeric: Same.
1152         * include/parallel/quicksort.h: Same.
1153         * include/parallel/compiletime_settings.h: Same.
1154         * include/parallel/random_shuffle.h: Same.
1155         * include/parallel/balanced_quicksort.h: Same.
1156         * include/parallel/tree.h: Same.
1157         * include/parallel/settings.h: Same.
1158         * include/parallel/search.h: Same.
1159         * include/parallel/partition.h: Same.
1160         * include/parallel/partial_sum.h: Same.
1162 2007-09-17  Paolo Carlini  <pcarlini@suse.de>
1164         * include/tr1_impl/type_traitsfwd.h (aligned_storage): Remove
1165         declaration.
1166         * include/tr1_impl/type_traits (aligned_storage): Remove.
1167         * include/std/type_traits (aligned_storage, __aligned_storage_msa):
1168         Add.
1169         * include/tr1/type_traits (aligned_storage): Add.
1170         * testsuite/20_util/aligned_storage/value.cc: New.
1171         * testsuite/20_util/aligned_storage/requirements/
1172         explicit_instantiation.cc: Likewise.
1173         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
1174         dg-error lines.
1175         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1176         Likewise.
1178 2007-09-16  Paolo Carlini  <pcarlini@suse.de>
1179             Douglas Gregor  <doug.gregor@gmail.com>
1181         * include/tr1_impl/type_traits (aligned_storage): Implement
1182         in the neat and general way.
1184 2007-09-14  Benjamin Kosnik  <bkoz@redhat.com>
1185         
1186         * include/parallel/base.h (__gnu_parallel::less<Tp>): Add partial
1187         specialization for one argument. 
1188         (__gnu_parallel::less): Add operator.
1190         * include/parallel/multiway_merge.h: Use __builtin_alloca. 
1191         * include/parallel/partial_sum.h: Same.
1192         * include/parallel/find.h: Same.        
1193         
1194 2007-09-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1196         * include/tr1_impl/boost_shared_ptr.h: (__weak_ptr::lock()): Add
1197         missing template argument.
1198         * testsuite/tr1/2_general_utilities/shared_ptr/requirements/
1199         explicit_instantiation/2.cc: New.
1200         * testsuite/tr1/2_general_utilities/weak_ptr/requirements/
1201         explicit_instantiation/2.cc: New.
1203 2007-09-14  Benjamin Kosnik  <bkoz@redhat.com>
1205         * testsuite/17_intro/headers/all_pedantic_errors.cc: New.
1206         * include/tr1_impl/cinttypes: Add pragma GCC system_header.
1207         * include/tr1_impl/cfenv: Same.
1208         * include/tr1_impl/cstdint: Same.
1209         * include/tr1/cstdbool: Same.
1210         * include/ext/pb_ds/detail/resize_policy/
1211         hash_prime_size_policy_imp.hpp: Same.
1212         * include/parallel/partial_sum.h: Avoid VLA error with
1213         __builtin_alloca.
1215 2007-09-14  Thiemo Seufer  <ths@mips.com>
1217         * crossconfig.m4 (mips*-sde-elf*): New stanza.
1218         * configure: Regenerate.
1220 2007-09-12  Benjamin Kosnik  <bkoz@redhat.com>
1222         * include/ext/pb_ds/*: Change namespace pb_ds to __gnu_pbds.
1223         * docs/html/ext/pb_ds/*: Same.
1224         * testsuite/ext/pb_ds/*: Same.
1225         * testsuite/performance/ext/pb_ds/*: Same.
1226         * testsuite/util/*: Same.
1227         
1228 2007-09-12  Benjamin Kosnik  <bkoz@redhat.com>
1230         * include/parallel/find.h: Doxygen fixups.
1231         * include/bits/hashtable.h: Same.
1233 2007-09-11  Johannes Singler  <singler@ira.uka.de>
1234             Leonor Frias Moya  <lfrias@lsi.upc.edu>
1235             Felix Putze  <kontakt@felix-putze.de>
1236             Marius Elvert  <marius.elvert@ira.uka.de>
1237             Felix Bondarenko  <f.bondarenko@web.de>
1238             Robert Geisberger  <robert.geisberger@stud.uni-karlsruhe.de>
1239             Robin Dapp  <r.dapp@freenet.de>
1240             Benjamin Kosnik  <bkoz@redhat.com>
1242         Add parallel mode.
1243         * include/parallel: New.
1244         * include/parallel/iterator.h: New.
1245         * include/parallel/multiway_merge.h: New.
1246         * include/parallel/parallel.h: New.
1247         * include/parallel/algorithm
1248         * include/parallel/find_selectors.h: New.
1249         * include/parallel/losertree.h: New.
1250         * include/parallel/list_partition.h: New.
1251         * include/parallel/types.h: New.
1252         * include/parallel/for_each.h: New.
1253         * include/parallel/multiseq_selection.h: New.
1254         * include/parallel/workstealing.h: New.
1255         * include/parallel/base.h: New.
1256         * include/parallel/par_loop.h: New.
1257         * include/parallel/numeric
1258         * include/parallel/features.h: New.
1259         * include/parallel/quicksort.h: New.
1260         * include/parallel/algorithmfwd.h: New.
1261         * include/parallel/equally_split.h: New.
1262         * include/parallel/compiletime_settings.h: New.
1263         * include/parallel/for_each_selectors.h: New.
1264         * include/parallel/basic_iterator.h: New.
1265         * include/parallel/omp_loop_static.h: New.
1266         * include/parallel/random_shuffle.h: New.
1267         * include/parallel/balanced_quicksort.h: New.
1268         * include/parallel/set_operations.h: New.
1269         * include/parallel/tags.h: New.
1270         * include/parallel/merge.h: New.
1271         * include/parallel/tree.h: New.
1272         * include/parallel/settings.h: New.
1273         * include/parallel/unique_copy.h: New.
1274         * include/parallel/multiway_mergesort.h: New.
1275         * include/parallel/numericfwd.h: New.
1276         * include/parallel/search.h: New.
1277         * include/parallel/partition.h: New.
1278         * include/parallel/compatibility.h: New.
1279         * include/parallel/algobase.h: New.
1280         * include/parallel/find.h: New.
1281         * include/parallel/partial_sum.h: New.
1282         * include/parallel/algo.h: New.
1283         * include/parallel/omp_loop.h: New.
1284         * include/parallel/queue.h: New.
1285         * include/parallel/timing.h: New.
1286         * include/parallel/sort.h: New.
1287         * include/parallel/checkers.h: New.
1288         * include/parallel/random_number.h: New.
1289         * include/bits/algorithmfwd.h: New.
1291         * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): New.
1292         * configure.host: Add atomic_flags.
1293         * configure.ac: Export ATOMIC_FLAGS, call GLIBCXX_ENABLE_PARALLEL.
1294         * src/Makefile.am: Add parallel_list rules.
1295         * include/Makefile.am: Add parallel files.
1296         * testsuite/Makefile.am (check-parallel): Add.
1297         (check-performance-parallel): Add.
1298         * config.h.in: Regenerate.
1299         * configure: Same.
1300         * libsupc++/Makefile.in: Same.
1301         * testsuite/Makefile.in: Same.
1302         * Makefile.in: Same.
1303         * libmath/Makefile.in: Same.
1304         * include/Makefile.in: Same.
1305         * src/Makefile.in: Same.
1306         * po/Makefile.in: Same.
1307         
1308         * config/abi/pre/gnu.ver: Export parallel list bits.
1310         * docs/html/parallel_mode.html: New.
1311         * docs/html/documentation.html: Add link.
1312         * docs/doxygen/user.cfg.in: Adjust for new files and directory.
1313         * docs/doxygen/doxygroups.cc: Adjust namespace markup.
1315         * include/debug/set.h: Adjust for _GLIBCXX_STD_D or _P change.
1316         * include/debug/bitset: Same.
1317         * include/debug/multiset.h: Same.
1318         * include/debug/vector: Same.
1319         * include/debug/map.h: Same.
1320         * include/debug/deque: Same.
1321         * include/debug/list: Same.
1322         * include/debug/debug.h: Same.
1323         * include/debug/multimap.h: Same.
1324         * include/std/algorithm: Same.
1325         * include/std/numeric: Same.
1326         * include/std/bitset: Same.
1327         * include/std/string: Same.
1328         * include/ext/hash_map: Same.
1329         * include/ext/hash_set: Same.
1330         * include/bits/stl_list.h: Same.
1331         * include/bits/stl_map.h: Same.
1332         * include/bits/stl_algobase.h: Same.
1333         * include/bits/stl_set.h: Same.
1334         * include/bits/stl_multimap.h: Same.
1335         * include/bits/stl_vector.h: Same.
1336         * include/bits/stl_numeric.h: Same.
1337         * include/bits/stl_deque.h: Same.
1338         * include/bits/stl_multiset.h: Same.
1339         * include/bits/char_traits.h: Same.
1340         * include/bits/stl_algo.h: Same.
1341         * include/bits/c++config: Same.
1342         * include/bits/vector.tcc: Same.
1343         * include/bits/deque.tcc: Same.
1344         * include/bits/stl_bvector.h: Same.
1345         * include/bits/list.tcc: Same.
1346         * src/list.cc: Same.
1347         * src/parallel_list.cc: New.
1349         * testsuite/lib/libstdc++.exp (check_v3_target_parallel_mode): New.
1350         * testsuite/lib/dg-options.exp (dg-require-parallel-mode): New.
1351         * scripts/testsuite_flags.in (--cxxparallelflags): New.
1352         * scripts/check_performance: Adjust.
1353         * testsuite/25_algorithms/headers/parallel_algorithm.cc: New.
1354         * testsuite/25_algorithms/headers/algorithm_parallel_mode.cc: New.
1355         * testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc: New.
1356         * testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc: New.
1357         * testsuite/26_numerics/headers/numeric/parallel_numeric.cc: New.
1358         * testsuite/26_numerics/headers/numeric/numeric_parallel_mode.cc: New.
1359         * testsuite/26_numerics/headers/numeric/
1360         parallel_numeric_mixed1.cc: New.
1361         * testsuite/26_numerics/headers/numeric/
1362         parallel_numeric_mixed2.cc: New.
1363         
1364 2007-09-11  Daniel Jacobowitz  <dan@codesourcery.com>
1366         * testsuite/lib/libstdc++.exp (libstdc++_init): Revert part of
1367         2007-09-06 change.
1369 2007-09-09  Roger Sayle  <roger@eyesopen.com>
1371         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ECANCELED for cygwin.
1372         * configure: Regenerate.
1373         * config/os/generic/error_constants.h: Guard.
1374         * testsuite/19_diagnostics/headers/system_error/
1375         types_std_c++0x.cc: Same.
1377 2007-09-09  Benjamin Kosnik  <bkoz@redhat.com>
1378         
1379         * testsuite/25_algorithms/binary_search.cc: Move...
1380         * testsuite/25_algorithms/binary_search/2.cc: ...here.
1382         * testsuite/25_algorithms/sort.cc: Move...      
1383         * testsuite/25_algorithms/sort/1.cc: ...here.
1384         * testsuite/25_algorithms/partial_sort_copy/2.cc: ...here.
1385         * testsuite/25_algorithms/nth_element/3.cc: ...here.
1386         * testsuite/25_algorithms/partial_sort/2.cc: ...here.
1387         * testsuite/25_algorithms/stable_sort/2.cc: ...here.
1389         * testsuite/25_algorithms/min_max.cc: Move...
1390         * testsuite/25_algorithms/min/1.cc: ...here.
1391         * testsuite/25_algorithms/min/2.cc: ...here.
1392         * testsuite/25_algorithms/max/1.cc: ...here.
1393         * testsuite/25_algorithms/max/2.cc: ...here.
1395 2007-09-09  Joseph Myers  <joseph@codesourcery.com>
1397         * testsuite/lib/libstdc++.exp (v3-build-support): Specify output
1398         file for preprocessing.  Use remote_exec to call ar and ranlib.
1400 2007-09-08  Benjamin Kosnik  <bkoz@redhat.com>
1402         * include/bits/functional_hash.h: Add ext/numeric_traits.h.
1403         * include/tr1/functional_hash.h Same.
1404         * include/tr1/functional: Remove string, ext/type_traits.h includes.
1405         * include/tr1_impl/functional_hash.h: Move string, wstring
1406         definitions for std::<hash>::operator into separate file.
1407         * include/std/functional
1408         * src/hash.cc: New, move definitions here.
1409         * src/hash_c++0x.cc: Same.
1410         * src/Makefile.am: Add new source files.
1411         * configure: Regenerate.
1412         * Makefile.in: Same.
1413         * src/Makefile.in: Same.
1414         * po/Makefile.in: Same.
1415         * libmath/Makefile.in: Same.
1416         * libsupc++/Makefile.in: Same.
1417         * testsuite/Makefile.in: Same.
1418         * config/abi/pre/gnu.ver: Add symbols.
1419         * config/abi/pre/gnu-versioned-namespace.ver: Same, fix.
1420         
1421 2007-09-07  Benjamin Kosnik  <bkoz@redhat.com>
1423         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc:
1424         Correct line number.
1426 2007-09-07  Danny Smith  <dannysmith@users.sourceforge.net>
1428         PR libstdc++/33203
1429         * configure.host (error_constants_dir):  New variable,
1430         defaulting to os/generic.
1431         ( mingw32*): Overide default.
1432         * configure.ac (ERROR_CONSTANTS_SRCDIR): New.
1433         * configure: Regenerate.
1434         * include/Makefile.am (host_headers): Add
1435         $(ERROR_CONSTANTS_SRCDIR)/error_constants.h .
1436         * include/Makefile.in: Regenerate.
1437         * include/std/system_error (enum posix_errno): Remove.
1438         Include <bits/error_constants.h> instead.
1439         * config/os/mingw32/error_constants.h: New.
1440         * config/os/generic/error_constants.h: New.
1442 2007-09-06  Benjamin Kosnik  <bkoz@redhat.com>
1444         * testsuite/lib/libstdc++.exp: Check CXXFLAGS.
1445         * scripts/testsuite_flags.in: CXXFLAGS_default, matching dejagnu.
1447         * include/std/ostream: Spacing tweak.
1448         * include/ext/hashtable.h: Use <algorithm>.
1449         * include/ext/slist: Same.
1450         * include/ext/rope: Same.
1451         * include/bits/stl_function.h: Format.
1452         * include/tr1_impl/array: Remove section number in doxygen markup.
1453         * src/list.cc: Comment tweak.   
1454         
1455         * docs/doxygen/user.cfg.in: Update for include/tr1_impl.
1456         
1457         * testsuite/25_algorithms/search_n/iterator.cc: Add using declaration.
1458         * testsuite/25_algorithms/nth_element/1.cc:  Same.
1459         * testsuite/21_strings/char_traits/requirements/short/1.cc: Use
1460         char_type typedef to the underlying character type.     
1461         * testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc:
1462         Remove -ansi -pedantic-errors.
1463         * testsuite/21_strings/char_traits/requirements/char/typedefs.cc: Same.
1464         * testsuite/tr1/6_containers/headers/functional/synopsis.cc:
1465         Remove specializations.
1466         
1467 2007-09-06  Paolo Carlini  <pcarlini@suse.de>
1469         * include/bits/stl_vector.h (_Vector_base<>::_M_allocate):
1470         Do not call _M_impl.allocate when __n == 0.
1471         * testsuite/23_containers/vector/zero_sized_allocations.cc: New.
1473 2007-09-06  Benjamin Kosnik  <bkoz@redhat.com>
1474         
1475         PR libstdc++/29367
1476         * include/ext/pb_ds/detail/map_debug_base.hpp: From this..
1477         * include/ext/pb_ds/detail/debug_map_base.hpp: ...to this.
1478         Rename map_debug_base to debug_map_base, add std::pair output
1479         extractors, change duplicate map_debug_base typedef in containers
1480         to debug_base. Use m_store_extra_indicator for m_store_hash_indicator.
1481         * include/ext/pb_ds/*: Likewise.
1482         * include/Makefile.am: Same.
1483         * include/Makefile.in: Regenerate.
1484         
1485 2007-09-06  Matthias Klose  <doko@debian.org>
1487         * testsuite/27_io/headers/cstdlib: Remove empty directory.
1489 2007-09-05  Roger Sayle  <roger@eyesopen.com>
1491         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EBADMSG for darwin.
1492         * configure: Regenerate.
1493         * include/std/system_error: Guard.
1494         * testsuite/19_diagnostics/headers/system_error/
1495         types_std_c++0x.cc: Same.
1496         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
1497         line numbers.
1499 2007-09-03  Paolo Carlini  <pcarlini@suse.de>
1501         PR libstdc++/33293
1502         * include/bits/stl_numeric.h (accumulate, inner_product):
1503         Add inline function-specifier.
1505 2007-08-31  Douglas Gregor  <doug.gregor@gmail.com>
1507         * testsuite/abi/demangle/cxx0x/rref.cc: New.
1509 2007-08-29  Benjamin Kosnik  <bkoz@redhat.com>
1511         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENODATA, ENOSR,
1512         ENOSTR, ETIME for freebsd.      
1513         * configure: Regenerate.
1514         * include/std/system_error: Guard.      
1515         * testsuite/19_diagnostics/headers/system_error/
1516         types_std_c++0x.cc: Same.
1517         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
1518         line numbers.
1520 2007-08-28  Paolo Carlini  <pcarlini@suse.de>
1522         PR libstdc++/33128
1523         * include/tr1_impl/random (uniform_int<>::_M_call): Deal with
1524         __urng() returning negative values.
1525         * testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
1526         New.
1528 2007-08-24  Benjamin Kosnik  <bkoz@redhat.com>
1530         * acinclude.m4: Fix duplicate variable names.
1531         * configure: Regenerate.
1533 2007-08-24  Benjamin Kosnik  <bkoz@redhat.com>
1535         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENOLINK, EPROTO
1536         for netbsd.
1537         * configure: Regenerate.
1538         * include/std/system_error: Guard.      
1539         * testsuite/19_diagnostics/headers/system_error/
1540         types_std_c++0x.cc: Same.
1541         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
1542         line numbers.
1544 2007-08-23  Benjamin Kosnik  <bkoz@redhat.com>
1546         * include/std/system_error: New file.
1547         * src/system_error.cc: New file.
1548         * src/Makefile.am (sources): Add.
1549         * src/Makefile.in: Regenerate.  
1550         * include/Makefile.am (std_headers): Add system_error.
1551         * include/Makefile.in: Regenerate.
1552         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): New.
1553         * configure.ac: Call it.
1554         * config.h.in: Regenerate.
1555         * include/bits/functional_hash.h: Add hash<error_code>.
1556         * include/std/ostream: Add inserters for error_code.
1557         
1558         * docs/doxygen/user.cfg.in: Add system_error.
1560         * config/abi/pre/gnu.ver(GLIBCXX_3.4.10): Add new symbols.
1562         * testsuite/19_diagnostics/error_code: New.
1563         * testsuite/19_diagnostics/error_code/cons: Same.
1564         * testsuite/19_diagnostics/error_code/cons/1.cc: Same.
1565         * testsuite/19_diagnostics/error_code/operators: Same.
1566         * testsuite/19_diagnostics/error_code/operators/bool.cc: Same.
1567         * testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Same.
1568         * testsuite/19_diagnostics/error_code/operators/equal.cc: Same.
1569         * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Same.
1570         * testsuite/19_diagnostics/error_category: Same.
1571         * testsuite/19_diagnostics/error_category/cons: Same.
1572         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Same.
1573         * testsuite/19_diagnostics/error_category/cons/default.cc: Same.
1574         * testsuite/19_diagnostics/error_category/operators: Same.
1575         * testsuite/19_diagnostics/error_category/operators/equal.cc: Same.
1576         * testsuite/19_diagnostics/error_category/operators/not_equal.cc: Same.
1577         * testsuite/19_diagnostics/headers/system_error: Same.
1578         * testsuite/19_diagnostics/headers/system_error/
1579         types_std_c++0x.cc: Same.
1580         * testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc: Same.
1581         * testsuite/19_diagnostics/system_error: Same.
1582         * testsuite/19_diagnostics/system_error/
1583         cons_virtual_derivation.cc: Same.
1584         * testsuite/19_diagnostics/system_error/cons-1.cc: Same.
1585         * testsuite/19_diagnostics/system_error/what-1.cc: Same.
1586         * testsuite/19_diagnostics/system_error/what-2.cc: Same.
1587         * testsuite/19_diagnostics/system_error/what-big.cc: Same.
1588         * testsuite/19_diagnostics/system_error/what-3.cc: Same.
1589         * testsuite/19_diagnostics/system_error/what-4.cc: Same.
1590         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1591         error_code.cc: Same.
1592         * testsuite/27_io/basic_ostream/inserters_other/char/
1593         error_code.cc: Same.
1594         * testsuite/tr1/6_containers/hash/operators: New.
1595         * testsuite/tr1/6_containers/hash/operators/size_t.cc: Same.
1596         
1597         * testsuite/23_containers/hash: Move...
1598         * testsuite/20_util/hash: ... here.
1599         * testsuite/20_util/hash/operators: New.
1600         * testsuite/20_util/hash/operators/size_t.cc: New.
1602         * testsuite/20_util/function_objects/bad_function_call: Move...
1603         * testsuite/20_util/bad_function_call: ...here.
1604         
1605 2007-08-21  Benjamin Kosnik  <bkoz@montsouris.artheist.org>
1607         * include/Makefile.am (install-data-local): Remove pch-install rules.
1608         (host_headers): Add stdc++.h, stdtr1c++.h, extc++.h.
1609         * include/Makefile.in: Regenerate.
1610         * config.h.in: Same.
1612         * scripts/check_compile: Remove space between outputs.  
1613         * include/ext/throw_allocator.h: Correct doxygen markup.        
1614         * include/bits/char_traits.h: Correct spacing.
1615         * include/bits/stl_function.h: Same, for 80 column.
1616         * include/std/valarray: Same.
1617         * testsuite/util/testsuite_iterators.h: Same.   
1618         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Format.
1619         
1620 2007-08-17  Daniel Jacobowitz  <dan@codesourcery.com>
1622         PR testsuite/31884
1623         * testsuite/ext/pb_ds/example/priority_queue_dijkstra.cc (main): Do
1624         not access deleted nodes.
1626         * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc,
1627         testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc,
1628         testsuite/27_io/basic_filebuf/open/char/4.cc,
1629         testsuite/27_io/objects/char/9.cc: Use dg-require-fileio.
1630         * testsuite/ext/forced_exception_error/cons_virtual_derivation.cc,
1631         testsuite/ext/pb_ds/regression/hash_data_map_rand.cc,
1632         testsuite/ext/pb_ds/regression/trie_data_map_rand.cc,
1633         testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc,
1634         testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc,
1635         testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc,
1636         testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc,
1637         testsuite/ext/pb_ds/regression/priority_queue_rand.cc,
1638         testsuite/ext/pb_ds/regression/tree_data_map_rand.cc,
1639         testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc,
1640         testsuite/ext/throw_allocator/deallocate_global.cc,
1641         testsuite/ext/throw_allocator/check_delete.cc,
1642         testsuite/ext/throw_allocator/check_allocate_max_size.cc,
1643         testsuite/ext/throw_allocator/check_deallocate_null.cc,
1644         testsuite/ext/throw_allocator/check_new.cc,
1645         testsuite/ext/throw_allocator/deallocate_local.cc,
1646         testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
1647         cons/gen1.cc,
1648         testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/cons/
1649         gen1.cc,
1650         testsuite/tr1/5_numerical_facilities/random/linear_congruential/cons/
1651         gen1.cc,
1652         testsuite/tr1/5_numerical_facilities/random/mersenne_twister/cons/
1653         gen1.cc,
1654         testsuite/23_containers/list/modifiers/insert/25288.cc: Use
1655         dg-require-time.
1657 2007-08-17  Paolo Carlini  <pcarlini@suse.de>
1659         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
1660         dg-error lines.
1661         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Ditto.
1663 2007-08-17  Chris Fairles  <chris.fairles@gmail.com>
1665         PR libstdc++/33098
1666         * include/std/type_traits (__is_convertible_helper):
1667         Use add_lvalue_reference.
1669 2007-08-17  Johannes Willkomm  <willkomm@sc.rwth-aachen.de>
1671         PR libstdc++/33084
1672         * include/std/valarray (operator _Op(const _Tp&,
1673         const valarray<>&)): Fix typo.
1674         * testsuite/26_numerics/numeric_arrays/valarray/33084.cc: New.
1676 2007-08-07  Jim Blandy  <jimb@codesourcery.com>
1678         * src/Makefile.am (libstdc++-symbol.ver): Make
1679         sure the build tree copy of libstdc++-symbol.ver is writeable.
1680         * src/Makefile.in: Regenerated.
1682 2007-08-02  Paolo Carlini  <pcarlini@suse.de>
1684         DR 660, [Ready] in Toronto.
1685         * include/bits/stl_function.h (bit_and, bit_or, bit_xor): Add.
1686         * testsuite/20_util/function_objects/dr660.cc: New.
1687         * docs/html/ext/howto.html: Add an entry for DR 660, update.
1689         * docs/html/ext/lwg-closed.html, docs/html/ext/lwg-active.html,
1690         docs/html/ext/lwg-defects.html: Import Revision 49.
1692 2007-07-30  Paolo Carlini  <pcarlini@suse.de>
1694         PR libstdc++/32908
1695         * include/bits/stl_algobase.h (struct __lc_rai): New.
1696         (lexicographical_compare(_II1, _II1, _II2, _II2),
1697         lexicographical_compare(_II1, _II1, _II2, _II2, _Compare)): Use it.
1698         * testsuite/performance/25_algorithms/lexicographical_compare.cc: New.
1700 2007-07-27  Paolo Carlini  <pcarlini@suse.de>
1702         PR libstdc++/32907
1703         * include/bits/basic_string.h (operator==(const basic_string<_CharT>&,
1704         const basic_string<_CharT>&)): Add.
1705         (operator!=): Forward to operator==.
1706         * include/ext/vstring.h(operator==(const __versa_string<_CharT,
1707         std::char_traits<_CharT>, std::allocator<_CharT>, _Base>&,
1708         const __versa_string<_CharT, std::char_traits<_CharT>,
1709         std::allocator<_CharT>, _Base>&)): Add.
1710         (operator!=): Forward to operator==.
1712         * include/ext/sso_string_base.h (_M_compare): Remove.
1714 2007-07-25  Stephen M. Webb  <stephenw@xandros.com>
1716         Fixed abi_check for missing symbol size changes.
1717         * testsuite/util/testsuite_abi.cc: Changed local variable name to
1718         prevent member variable hiding.
1720 2007-07-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1722         PR libstdc++/31836
1723         * config/locale/generic/c_locale.cc (__convert_to_v): Don't use
1724         strtold if _GLIBCXX_HAVE_BROKEN_STRTOLD is defined.
1725         * config/os/hpux/os_defines.h (_GLIBCXX_HAVE_BROKEN_STRTOLD): Define
1726         if __hppa__ is defined.
1728 2007-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1730         PR bootstrap/3456
1731         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Enable on
1732         mips-sgi-irix6*.
1733         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
1734         * testsuite/thread/18185.cc: Likewise.
1735         * testsuite/thread/pthread1.cc: Likewise.
1736         * testsuite/thread/pthread2.cc: Likewise.
1737         * testsuite/thread/pthread3.cc: Likewise.
1738         * testsuite/thread/pthread4.cc: Likewise.
1739         * testsuite/thread/pthread5.cc: Likewise.
1740         * testsuite/thread/pthread6.cc: Likewise.
1741         * testsuite/thread/pthread7-rope.cc: Likewise.
1742         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
1743         default_weaktoshared.cc: Likewise.
1744         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
1745         mutex_weaktoshared.cc: Likewise.
1747 2007-07-16  Danny Smith  <dannysmith@users.sourceforge.net>
1749         * config/os/mingw32/ctype_base.h: Use the generic libstdc++ masks
1750         rather than MSVCRT defines.
1751         * config/os/mingw32/ctype_noninline.h (classic_table): Construct
1752         and return a static classic table based on generic libstdc++ masks.
1754 2007-07-12  Douglas Gregor  <doug.gregor@gmail.com>
1756         * testsuite/tr1/3_function_objects/bind/all_bound.cc: Disambiguate
1757         uses of TR1/C++0x facilities.
1758         * testsuite/tr1/3_function_objects/bind/nested.cc: Ditto.
1759         * testsuite/tr1/3_function_objects/bind/placeholders.cc: Ditto.
1760         * testsuite/tr1/6_containers/unordered_multimap/requirements/
1761         explicit_instantiation.cc: Ditto. 
1762         * testsuite/tr1/6_containers/unordered_multimap/swap/1.cc: Ditto.
1763         * testsuite/tr1/6_containers/unordered_multimap/swap/2.cc: Ditto.
1764         * testsuite/tr1/6_containers/unordered_set/requirements/
1765         explicit_instantiation.cc: Ditto.
1766         * testsuite/tr1/6_containers/unordered_set/swap/1.cc: Ditto.
1767         * testsuite/tr1/6_containers/unordered_set/swap/2.cc: Ditto.
1768         * testsuite/tr1/6_containers/utility/pair.cc: Ditto.
1769         * testsuite/tr1/6_containers/unordered_map/requirements/
1770         explicit_instantiation.cc: Ditto. 
1771         * testsuite/tr1/6_containers/unordered_map/24064.cc: Ditto.
1772         * testsuite/tr1/6_containers/unordered_map/swap/1.cc: Ditto.
1773         * testsuite/tr1/6_containers/unordered_map/swap/2.cc: Ditto.
1774         * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Ditto.
1775         * testsuite/tr1/6_containers/tuple/cons/constructor.cc: Ditto.
1776         * testsuite/tr1/6_containers/tuple/cons/assignment.cc: Ditto.
1777         * testsuite/tr1/6_containers/tuple/tuple_element.cc: Ditto.
1778         * testsuite/tr1/6_containers/tuple/tuple_size.cc: Ditto.
1779         * testsuite/tr1/6_containers/tuple/comparison_operators/
1780         comparisons.cc: Ditto. 
1781         * testsuite/tr1/6_containers/tuple/element_access/get.cc: Ditto.
1782         * testsuite/tr1/6_containers/tuple/creation_functions/23978.cc: Ditto.
1783         * testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: Ditto.
1784         * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
1785         Ditto.
1786         * testsuite/tr1/6_containers/unordered_multiset/requirements/
1787         explicit_instantiation.cc: Ditto.
1788         * testsuite/tr1/6_containers/unordered_multiset/swap/1.cc: Ditto.
1789         * testsuite/tr1/6_containers/unordered_multiset/swap/2.cc: Ditto.
1791 2007-07-10  Bob Wilson  <bob.wilson@acm.org>
1792         
1793         * configure.ac: Check if $atomicity_dir is cpu/generic/atomicity_mutex
1794         instead of the non-existent cpu/generic/atomic_mutex.
1795         * configure: Regenerate.
1796         
1797 2007-07-10  Paolo Carlini  <pcarlini@suse.de>
1799         * include/std/utility (identity, move, forward): Add.
1800         * testsuite/20_util/move/requirements/explicit_instantiation.cc: New.
1801         * testsuite/20_util/move/1.cc: New.
1802         * testsuite/20_util/identity/value.cc: New.
1803         * testsuite/20_util/identity/requirements/typedefs.cc: New.
1804         * testsuite/20_util/identity/requirements/explicit_instantiation.cc:
1805         New.
1806         * testsuite/20_util/forward/requirements/explicit_instantiation.cc:
1807         New.
1808         * testsuite/20_util/forward/1.cc: New.
1809         * testsuite/20_util/forward/1_neg.cc: New.
1810         
1811 2007-07-09  Paolo Carlini  <pcarlini@suse.de>
1813         * testsuite/27_io/ios_base/failure/what-1.cc: Include <stdexcept>.
1815 2007-07-09  Jim Xochellis  <jimxoch@yahoo.gr>
1816             Paolo Carlini  <pcarlini@suse.de>
1818         * include/bits/stl_algo.h (search(_ForwardIterator1,
1819         _ForwardIterator1, _ForwardIterator2, _ForwardIterator2)): Tidy.
1820         (search(_ForwardIterator1, _ForwardIterator1, _ForwardIterator2,
1821         _ForwardIterator2, _BinaryPredicate)): Likewise.
1823 2007-07-06  Hans-Peter Nilsson  <hp@axis.com>
1825         * testsuite/lib/libstdc++.exp (v3-build_support): Use env(AR)
1826         and env(RANLIB), not env(AR_FOR_TARGET) and env(RANLIB_FOR_TARGET).
1828 2007-07-05  Joerg Richter  <joerg.richter@pdv-fs.de>
1830         PR libstdc++/31957
1831         * include/Makefile.am: Work around an AIX sed oddity.
1832         * include/Makefile.in: Regenerate.
1833         
1834 2007-07-04  Jim Xochellis  <jimxoch@yahoo.gr>
1836         * include/bits/stl_algo.h (search(_ForwardIterator1,
1837         _ForwardIterator1, _ForwardIterator2, _ForwardIterator2)): Simplify
1838         general case loop to a for(;;).
1839         (search(_ForwardIterator1, _ForwardIterator1, _ForwardIterator2,
1840         _ForwardIterator2, _BinaryPredicate)): Likewise; remove redundant
1841         inner loop.
1842         
1843 2007-07-03  Paolo Carlini  <pcarlini@suse.de>
1845         PR libstdc++/31518
1846         * include/debug/formatter.h (_Error_formatter::_M_get_max_length): New.
1847         (_Error_formatter::_Error_formatter): Use it.
1848         * src/debug.cc: Define.
1849         (_Error_formatter::_M_error): Tweak.
1850         * configure.ac: Adjust version to 6:10:0.
1851         * config/abi/pre/gnu.ver: Export _Error_formatter::_M_get_max_length
1852         at GLIBCXX_3.4.10.
1853         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.10.
1854         * docs/html/debug.html: Document.
1855         * configure: Regenerate.
1857 2007-07-02  Douglas Gregor  <doug.gregor@gmail.com>
1859         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1860         Tweak line numbers.
1861         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1862         Ditto.
1863         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
1864         Don't try to create an unsigned wchar_t.
1865         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1866         Don't try to create an unsigned wchar_t.
1867         * testsuite/util/testsuite_hooks.h: Remove a stray semicolon.
1869 2007-07-01  Douglas Gregor  <doug.gregor@gmail.com>
1871         * include/std/type_traits (__make_unsigned): Remove invalid
1872         wchar_t specialization.
1873         (__make_signed): Remove invalid wchar_t specialization.
1874         
1875 2007-06-29  Douglas Gregor  <doug.gregor@gmail.com>
1877         * testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc: Force
1878         C++98 mode.  
1879         * testsuite/18_support/headers/cstdint/std_c++0x_neg.cc: Ditto.
1880         * testsuite/20_util/headers/type_traits/std_c++0x_neg.cc: Ditto.
1881         * testsuite/23_containers/headers/array/std_c++0x_neg.cc: Ditto.
1882         * testsuite/23_containers/headers/tuple/std_c++0x_neg.cc: Ditto.
1883         * testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc:
1884         Ditto. 
1885         * testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc:
1886         Ditto. 
1887         * testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc: Ditto.
1888         * testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc: Ditto.
1889         * testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc: Ditto.
1890         * testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Ditto.
1891         * testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Ditto.
1892         * testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Ditto.
1894 2007-06-28  Paolo Carlini  <pcarlini@suse.de>
1896         PR libstdc++/32509
1897         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Carry out the checks
1898         involving the de_DE locale only if an auto locale config is
1899         used for a target suitable for the gnu locale model.
1900         * docs/html/install.html: Update.
1901         * configure: Regenerated.
1903 2007-06-26  Benjamin Kosnik  <bkoz@redhat.com>
1905         * testsuite/util/testsuite_api.h: New.
1906         * testsuite/27_io/ios_base/failure: Add.
1907         * testsuite/27_io/ios_base/failure/cons_virtual_derivation.cc: New.
1908         * testsuite/27_io/ios_base/failure/what-1.cc: Same.
1909         * testsuite/27_io/ios_base/failure/what-2.cc: Same.
1910         * testsuite/27_io/ios_base/failure/what-big.cc: Same.
1911         * testsuite/27_io/ios_base/failure/what-3.cc: Same.
1912         * testsuite/19_diagnostics/logic_error/
1913         cons_virtual_derivation.cc: Same.
1914         * testsuite/19_diagnostics/runtime_error/
1915         cons_virtual_derivation.cc: Same.
1916         * testsuite/18_support/bad_alloc/cons_virtual_derivation.cc: Same.
1917         * testsuite/18_support/bad_cast/cons_virtual_derivation.cc: Same.
1918         * testsuite/18_support/bad_exception/cons_virtual_derivation.cc: Same.
1919         * testsuite/18_support/bad_typeid/cons_virtual_derivation.cc: Same.
1920         * testsuite/ext/concurrence_lock_error: New.
1921         * testsuite/ext/concurrence_lock_error/
1922         cons_virtual_derivation.cc: Same.
1923         * testsuite/ext/forced_exception_error: New.
1924         * testsuite/ext/forced_exception_error/
1925         cons_virtual_derivation.cc: Same.
1926         * testsuite/ext/concurrence_unlock_error: New.
1927         * testsuite/ext/concurrence_unlock_error/
1928         cons_virtual_derivation.cc: Same.
1929         * testsuite/20_util/function_objects/bad_function_call: New.
1930         * testsuite/20_util/function_objects/bad_function_call/
1931         cons_virtual_derivation.cc: Same.
1932         
1933 2007-06-26  Benjamin Kosnik  <bkoz@redhat.com>  
1935         * include/ext/throw_allocator.h: Fixes for -fno-exceptions.
1936         * testsuite/util/testsuite_shared.cc: Same.
1937         * testsuite/util/io/illegal_input_error.hpp: Same.
1938         * testsuite/util/io/verified_cmd_line_input.cc: Same.
1940         * libsupc++/typeinfo (type_info): Correct comment formatting,
1941         clarify member access and public interface.
1942         * libsupc++/exception: Less compressed comments.
1943         * libsupc++/new: Same.
1944         
1945 2007-06-18  Paolo Carlini  <pcarlini@suse.de>
1947         * include/bits/stl_list.h: Rename guard macro consistently with
1948         file name.
1949         * include/bits/stl_algobase.h: Likewise.
1950         * include/bits/stl_map.h: Likewise.
1951         * include/bits/stl_queue.h: Likewise.
1952         * include/bits/stl_set.h: Likewise.
1953         * include/bits/stl_stack.h: Likewise.
1954         * include/bits/stl_iterator_base_types.h: Likewise.
1955         * include/bits/stl_multimap.h: Likewise.
1956         * include/bits/stl_pair.h: Likewise.
1957         * include/bits/stl_vector.h: Likewise.
1958         * include/bits/stl_deque.h: Likewise.
1959         * include/bits/stl_multiset.h: Likewise.
1960         * include/bits/stl_iterator_base_funcs.h: Likewise.
1961         * include/bits/stl_algo.h: Likewise.
1962         * include/bits/stl_iterator.h: Likewise.
1963         * include/bits/stl_tempbuf.h: Likewise.
1964         * include/bits/stl_bvector.h: Likewise.
1965         * include/bits/stl_function.h: Likewise.
1966         * include/bits/stl_tree.h: Likewise.
1968 2007-06-17  Nathan Sidwell  <nathan@codesourcery.com>
1970         * config/cpu/m68k/atomicity.h: Use __mcfisaa__, __mcfisaaplus__,
1971         __mcfisab__ & __mcfisac__ instead of obsolete cpu #defines.
1973 2007-06-13  Richard Earnshaw  <rearnsha@arm.com>
1975         * libsupc++/eh_arm.cc (__cxa_type_match): Handle foreign
1976         exceptions.
1977         * libsubpc++/eh_personality.cc: Don't try to set up foreign or
1978         forced unwind types here when using the ARM EABI unwinder.
1980 2007-06-13  Paolo Carlini  <pcarlini@suse.de>
1982         * include/c_global/cmath: Tweak includes.
1983         * include/std/memory: Likewise.
1984         * include/std/complex: Likewise.
1985         * include/tr1/memory: Likewise.
1986         * include/tr1/complex: Likewise.
1987         * include/tr1/cmath: Likewise; do not wrap special functions
1988         in #ifndef __GXX_EXPERIMENTAL_CXX0X__.
1990 2007-06-10  Benjamin Kosnik  <bkoz@redhat.com>
1992         * testsuite/util/testsuite_performance.h: Add cstring include for
1993         memset.
1995 2007-06-08  Paolo Carlini  <pcarlini@suse.de>
1997         * docs/html/install.html: Adjust consistently with libstdc++/31717.
1999 2007-06-08  Francesco Palagi  <palagi@arcetri.astro.it>
2001         * include/std/fstream: Add Table 92 in comment.
2003 2007-06-06  Paolo Carlini  <pcarlini@suse.de>
2005         PR libstdc++/32233
2006         * include/bits/stl_vector.h (_M_fill_initialize): Fix return type.
2007         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2008         Adjust dg-error line.
2009         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2010         Likewise.
2012 2007-06-06  Benjamin Kosnik  <bkoz@redhat.com>
2013             Frank Mori Hess  <frank.hess@nist.gov>
2014         
2015         * docs/html/debug.html: Correct link.
2017 2007-06-02  Paolo Carlini  <pcarlini@suse.de>
2019         * include/tr1_impl/type_traits (is_reference, add_reference,
2020         remove_reference): Remove.
2021         * include/tr1/type_traits (is_reference, add_reference,
2022         remove_reference): Add.
2023         * include/std/type_traits (is_lvalue_reference, is_rvalue_reference,
2024         is_reference, remove_reference, add_lvalue_reference,
2025         add_rvalue_reference): Add.
2026         * include/tr1_impl/boost_shared_ptr.h (operator*): Adjust.
2027         * testsuite/20_util/add_lvalue_reference/requirements/
2028         explicit_instantiation.cc: New.
2029         * testsuite/20_util/add_lvalue_reference/value.cc: Likewise.
2030         * testsuite/20_util/add_rvalue_reference/requirements/
2031         explicit_instantiation.cc: Likewise.
2032         * testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
2033         * testsuite/20_util/is_lvalue_reference/requirements/
2034         explicit_instantiation.cc: Likewise.
2035         * testsuite/20_util/is_lvalue_reference/requirements/
2036         typedefs.cc: Likewise.
2037         * testsuite/20_util/is_lvalue_reference/value.cc: Likewise.
2038         * testsuite/20_util/is_rvalue_reference/requirements/
2039         explicit_instantiation.cc: Likewise.
2040         * testsuite/20_util/is_rvalue_reference/requirements/
2041         typedefs.cc: Likewise.
2042         * testsuite/20_util/is_rvalue_reference/value.cc: Likewise.
2043         * testsuite/20_util/is_reference/requirements/
2044         explicit_instantiation.cc: Likewise.
2045         * testsuite/20_util/is_reference/requirements/typedefs.cc: Likewise.
2046         * testsuite/20_util/is_reference/value.cc: Likewise.
2047         * testsuite/20_util/remove_reference/requirements/
2048         explicit_instantiation.cc: New.
2049         * testsuite/20_util/remove_reference/value.cc: Likewise.
2051         * testsuite/tr1/4_metaprogramming/add_const/requirements/
2052         typedefs.cc: Move...
2053         * testsuite/tr1/4_metaprogramming/add_const/value.cc: ... here.
2054         * testsuite/tr1/4_metaprogramming/add_cv/requirements/
2055         typedefs.cc: Move...
2056         * testsuite/tr1/4_metaprogramming/add_cv/value.cc: ... here.
2057         * testsuite/tr1/4_metaprogramming/add_pointer/requirements/
2058         typedefs.cc: Move...
2059         * testsuite/tr1/4_metaprogramming/add_pointer/value.cc: ... here.
2060         * testsuite/tr1/4_metaprogramming/add_reference/requirements/
2061         typedefs.cc: Move...
2062         * testsuite/tr1/4_metaprogramming/add_reference/value.cc: ... here.
2063         * testsuite/tr1/4_metaprogramming/add_volatile/requirements/
2064         typedefs.cc: Move...
2065         * testsuite/tr1/4_metaprogramming/add_volatile/value.cc: ... here.
2066         * testsuite/tr1/4_metaprogramming/aligned_storage/requirements/
2067         typedefs.cc: Move...
2068         * testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: ... here.
2070 2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
2072         * configure: Regenerate.
2074 2007-06-01  Benjamin Kosnik  <bkoz@redhat.com>
2075         
2076         * testsuite/19_diagnostics/logic_error/what-big.cc: New.
2077         * testsuite/19_diagnostics/logic_error/what-3.cc: Same.
2078         * testsuite/19_diagnostics/runtime_error/what-big.cc: Same.
2079         * testsuite/19_diagnostics/runtime_error/what-3.cc: Same.
2081         * testsuite/18_support/14493.cc: Break into...
2082         * testsuite/18_support/exception/what.cc: ...this.
2083         * testsuite/18_support/bad_cast/what.cc: ...this.
2084         * testsuite/18_support/bad_alloc/what.cc: ...this.
2085         * testsuite/18_support/bad_typeid/what.cc: ...this.
2086         * testsuite/18_support/bad_exception/what.cc: ...this.
2088         * testsuite/19_diagnostics/bad_exception/23591_thread-1.c: Move...
2089         * testsuite/18_support/bad_exception/23591_thread-1.c: ...here.
2091         * testsuite/18_support/14026.cc: Move...
2092         * testsuite/18_support/uncaught_exception/14026.cc: ...here.
2094 2007-06-01  Benjamin Kosnik  <bkoz@redhat.com>
2096         * include/ext/throw_allocator.h (__throw_allocator::allocate):
2097         Throw bad_alloc for out of memory conditions.   
2098         * testsuite/ext/throw_allocator/deallocate_global.cc: New.
2099         * testsuite/ext/throw_allocator/check_delete.cc: Same.
2100         * testsuite/ext/throw_allocator/check_allocate_max_size.cc: Same.
2101         * testsuite/ext/throw_allocator/check_deallocate_null.cc: Same.
2102         * testsuite/ext/throw_allocator/explicit_instantiation.cc: Same.
2103         * testsuite/ext/throw_allocator/check_new.cc: Same.
2104         * testsuite/ext/throw_allocator/deallocate_local.cc: Same.
2106 2007-05-31  Paolo Carlini  <pcarlini@suse.de>
2108         PR libstdc++/31426
2109         * include/bits/c++config: Remove namespace association bits
2110         from tr1 to std.
2112         * include/ext/type_traits.h (__promote, __promote2,
2113         __promote3, __promote4): Add.
2115         * include/bits/hashtable.h: New.
2116         * include/bits/functional_hash.h: Likewise.
2117         * include/tr1/hashtable.h: Likewise.
2119         * include/tr1_impl/random: New.
2120         * include/tr1_impl/cinttypes: Likewise.
2121         * include/tr1_impl/cstdlib: Likewise.
2122         * include/tr1_impl/unordered_map: Likewise.
2123         * include/tr1_impl/cstdio: Likewise.
2124         * include/tr1_impl/boost_shared_ptr.h: Likewise.
2125         * include/tr1_impl/cctype: Likewise.
2126         * include/tr1_impl/random.tcc: Likewise.
2127         * include/tr1_impl/tuple: Likewise.
2128         * include/tr1_impl/functional_hash.h: Likewise.
2129         * include/tr1_impl/hashtable: Likewise.
2130         * include/tr1_impl/cmath: Likewise.
2131         * include/tr1_impl/type_traitsfwd.h: Likewise.
2132         * include/tr1_impl/hashtable_policy.h: Likewise.
2133         * include/tr1_impl/cfenv: Likewise.
2134         * include/tr1_impl/unordered_set: Likewise.
2135         * include/tr1_impl/functional: Likewise.
2136         * include/tr1_impl/utility: Likewise.
2137         * include/tr1_impl/complex: Likewise.
2138         * include/tr1_impl/type_traits: Likewise.
2139         * include/tr1_impl/cwchar: Likewise.
2140         * include/tr1_impl/cstdint: Likewise.
2141         * include/tr1_impl/regex: Likewise.
2142         * include/tr1_impl/array: Likewise.
2143         * include/tr1_impl/cwctype: Likewise.
2145         * include/tr1/type_traitsfwd.h: Remove.
2146         * include/tr1/boost_shared_ptr.h: Likewise.
2147         * include/tr1/common.h: Likewise.
2148         * include/tr1/hashtable: Likewise.
2149         * include/tr1/hashtable_policy.h: Likewise.
2150         * include/tr1/random.tcc: Likewise.
2152         * include/c_global/cinttypes: Include tr1_impl/cinttypes.
2153         * include/c_global/cstdlib: Likewise for cstdlib.
2154         * include/c_global/cstdio: Likewise for cstdio.
2155         * include/c_global/cctype: Likewise for cctype.
2156         * include/c_global/cmath: Likewise for cmath.
2157         * include/c_global/cfenv: Likewise for cfenv.
2158         * include/c_global/cwchar: Likewise for cwchar.
2159         * include/c_global/cstdint: Likewise for cstdint.
2160         * include/c_global/cwctype: Likewise for cwctype.
2161         * include/tr1/cinttypes: Likewise for cinttypes.
2162         * include/tr1/cstdlib: Likewise for cstdlib.
2163         * include/tr1/cstdio: Likewise for cstdio.
2164         * include/tr1/cctype: Likewise for cctype.
2165         * include/tr1/cmath: Likewise for cmath.
2166         * include/tr1/cfenv: Likewise for cfenv.
2167         * include/tr1/cwchar: Likewise for cwchar.
2168         * include/tr1/cstdint: Likewise for cstdint.
2169         * include/tr1/cwctype: Likewise for cwctype.
2170         * include/tr1/functional_hash.h: Likewise for functional_hash.
2172         * include/std/tuple: Include tr1_impl/tuple.
2173         * include/std/utility: Likewise for utility.
2174         * include/std/type_traits: Likewise for type_traits.
2175         (is_pod): Just forward to __is_pod.
2176         (has_trivial_default_constructor): Just forward to
2177         __has_trivial_constructor.
2178         (has_trivial_copy_constructor): Just forward to __has_trivial_copy.
2179         (has_trivial_assign): Just forward to __has_trivial_assign.
2180         (has_trivial_destructor): Just forward to __has_trivial_destructor.
2181         (has_nothrow_default_constructor): Just forward to
2182         __has_nothrow_constructor.
2183         (has_nothrow_copy_constructor): Just forward to __has_nothrow_copy.
2184         (has_nothrow_assign): Just forward to __has_nothrow_assign.
2185         (is_base_of): Just forward to __is_base_of.
2186         (is_signed, is_unsigned): Implement according to the C++0x
2187         specifications.
2188         * include/std/memory: Likewise for memory.
2189         * include/std/regex: Likewise for regex.
2190         * include/std/random: Likewise for random.
2191         * include/std/unordered_map: Likewise for unordered_map.
2192         * include/std/unordered_set: Likewise for unordered_set.
2193         * include/std/functional: Likewise for functional.
2194         * include/std/complex: Likewise for complex.
2195         * include/std/array: Likewise for array.
2196         * include/tr1/tuple: Likewise for tuple.
2197         * include/tr1/utility: Likewise for utility.
2198         * include/tr1/type_traits: Likewise for type_traits
2199         * include/tr1/memory: Likewise for memory.
2200         * include/tr1/regex: Likewise for regex.
2201         * include/tr1/random: Likewise for random.
2202         * include/tr1/unordered_map: Likewise for unordered_map.
2203         * include/tr1/unordered_set: Likewise for unordered_set.
2204         * include/tr1/functional: Likewise for functional.
2205         * include/tr1/complex: Likewise for complex.
2206         * include/tr1/array: Likewise for array.
2208         * include/c_global/ctgmath: Tweak.
2209         * include/c_global/cstdarg: Likewise.
2210         * include/c_global/ctime: Likewise.
2211         * include/c_global/climits: Likewise.
2212         * include/c_global/cfloat: Likewise.    
2213         * include/c_global/ccomplex: Likewise.
2214         * include/c_global/cstdbool: Likewise.
2216         * include/tr1/poly_laguerre.tcc: Tweak, don't use _GLIBCXX_TR1.
2217         * include/tr1/riemann_zeta.tcc: Likewise.
2218         * include/tr1/beta_function.tcc: Likewise.
2219         * include/tr1/exp_integral.tcc: Likewise.
2220         * include/tr1/hypergeometric.tcc: Likewise.
2221         * include/tr1/modified_bessel_func.tcc: Likewise.
2222         * include/tr1/legendre_function.tcc: Likewise.
2223         * include/tr1/special_function_util.h: Likewise.
2224         * include/tr1/bessel_function.tcc: Likewise.
2225         * include/tr1/poly_hermite.tcc: Likewise.
2226         * include/tr1/ell_integral.tcc: Likewise.
2227         * include/tr1/gamma.tcc: Likewise.
2228         * include/tr1/stdlib.h: Likewise.
2229         * include/tr1/math.h: Likewise.
2231         * include/tr1/complex.h: Minor tweaks.
2232         * include/tr1/wctype.h: Likewise.
2233         * include/tr1/wchar.h: Likewise.
2234         * include/tr1/inttypes.h: Likewise.
2235         * include/tr1/tgmath.h: Likewise.
2236         * include/tr1/cstdbool: Likewise.
2237         * include/tr1/cfloat: Likewise.
2238         * include/tr1/ccomplex: Likewise.
2239         * include/tr1/ctime: Likewise.
2240         * include/tr1/climits: Likewise.
2241         * include/tr1/ctgmath: Likewise.
2242         * include/tr1/cstdarg: Likewise.
2244         * testsuite/tr1/headers.cc: Move...
2245         * testsuite/tr1/headers/all.cc: ... here.
2246         * testsuite/tr1/using_namespace_std_tr1.cc: Move...
2247         * testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: ... here.
2248         * testsuite/tr1/headers/using_namespace_std_tr1.cc ... here.
2249         * testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: New.
2251         * testsuite/20_util/tuple/requirements/explicit_instantiation.cc:
2252         Adjust namespace.
2253         * testsuite/20_util/has_nothrow_copy_constructor/value.cc: Adjust to
2254         the C++0x requirements.
2255         * testsuite/20_util/has_nothrow_default_constructor/value.cc: Likewise.
2256         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
2257         * testsuite/20_util/has_trivial_default_constructor/value.cc: Likewise.
2259         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
2260         dg-error lines.
2261         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2262         Likewise.
2263         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
2264         Un-xfail.
2266         * testsuite/20_util/is_signed/value.cc: New.
2267         * testsuite/20_util/is_signed/requirements/typedefs.cc: Likewise.
2268         * testsuite/20_util/is_signed/requirements/explicit_instantiation.cc:
2269         Likewise.
2270         * testsuite/20_util/is_unsigned/value.cc: Likewise..
2271         * testsuite/20_util/is_unsigned/requirements/typedefs.cc: Likewise.
2272         * testsuite/20_util/is_unsigned/requirements/explicit_instantiation.cc:
2273         Likewise.
2275         * include/Makefile.am: Adjust.  
2276         * include/Makefile.in: Regenerate.
2278 2007-05-31  Paolo Carlini  <pcarlini@suse.de>
2280         PR c++/32158 (libstdc++ bits)
2281         * include/bits/stl_uninitialized.h (__uninitialized_copy_aux,
2282         __uninitialized_fill_aux, __uninitialized_fill_n_aux):
2283         Remove.
2284         (struct __uninitialized_copy, struct __uninitialized_fill,
2285         struct __uninitialized_fill_n): Add.
2286         (uninitialized_copy, uninitialized_fill, uninitialized_fill_n):
2287         Adjust.
2288         * testsuite/20_util/specialized_algorithms/32158.cc: New.
2290         * include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
2291         _InputIterator, _ForwardIterator)): Robustify vs non-POD input.
2293         * include/bits/stl_vector.h (_M_fill_initialize): New.
2294         (vector(size_type, const value_type&, const allocator_type&),
2295         _M_initialize_dispatch(_Integer, _Integer, __true_type)): Use it.
2296         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2297         Adjust dg-error line.
2298         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2299         Likewise.
2300         * testsuite/23_containers/vector/requirements/dr438/
2301         constructor_1_neg.cc: Likewise.
2302         * testsuite/23_containers/vector/requirements/dr438/
2303         constructor_2_neg.cc: Likewise.
2305 2007-05-29  Paolo Carlini  <pcarlini@suse.de>
2307         * aclocal.m4: Regenerate.
2309         * testsuite/17_intro/headers/c++1998/c++_for_c.tar: Remove.
2310         * testsuite/17_intro/headers/c++1998/c++.tar: Likewise.
2312 2007-05-28  Benjamin Kosnik  <bkoz@redhat.com>
2314         PR libstdc++/31717 
2315         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Re-organize. Sanity check
2316         gnu locale model requests to make sure it will work for the requested
2317         target. Add checks for strxfrm_l, strerror_l when in gnu locale,
2318         and strerror_r everywhere.
2319         * aclocal.m4: Regenerated.
2320         * configure: Regenerated.
2321         * config.h.in: Regenerated.
2322         
2323 2007-05-27  Paolo Carlini  <pcarlini@suse.de>
2325         * include/tr1/boost_shared_ptr.h
2326         (_Sp_counted_base<_S_mutex>::_M_add_ref_lock()): Do not wrap in
2327         #ifdef __GTHREADS.
2329 2007-05-27  Paolo Carlini  <pcarlini@suse.de>
2331         * include/c_global/cwchar: Do not include <ctime>.
2332         * include/c_std/cwchar: Likewise.
2333         * include/ext/throw_allocator.h: Do it here.
2334         
2335 2007-05-25  Paolo Carlini  <pcarlini@suse.de>
2337         * config/locale/gnu/c_locale.h (__convert_from_v): Fix typo.
2339 2007-05-24  Paolo Carlini  <pcarlini@suse.de>
2341         * include/ext/concurrence.h: Use __GCC_HAVE_SYNC_COMPARE_AND_SWAP_*.
2343 2007-05-24  Steve Ellcey  <sje@cup.hp.com>
2345         * Makefile.in: Regenerate.
2346         * configure: Regenerate.
2347         * aclocal.m4: Regenerate.
2348         * include/Makefile.in: Regenerate.
2349         * libmath/Makefile.in: Regenerate.
2350         * libsupc++/Makefile.in: Regenerate.
2351         * po/Makefile.in: Regenerate.
2352         * src/Makefile.in: Regenerate.
2353         * testsuite/Makefile.in: Regenerate.
2355 2007-05-24  Paolo Carlini  <pcarlini@suse.de>
2357         * config/locale/gnu/c_locale.h (__convert_from_v): Only switch to the
2358         "C" locale if the current one isn't already "C" (for old glibcs).
2359         * config/os/gnu-linux/ctype_noninline.h (ctype<char>::classic_table,
2360         ctype<char>::ctype(__c_locale, const mask*, bool, size_t),
2361         ctype<char>::ctype(const mask*, bool, size_t)): Likewise, for generic
2362         locale model.
2363         * config/locale/gnu/messages_members.h
2364         (messages<>::messages(__c_locale, const char*, size_t),
2365         messages_byname<_CharT>::messages_byname(const char*, size_t)):
2366         Only dynamically allocate memory if __s != "C".
2367         * config/locale/gnu/time_members.h
2368         (__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)):
2369         Likewise.
2370         * config/locale/generic/time_members.h
2371         (__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)):
2372         Likewise.
2374         * testsuite/util/testsuite_allocator.h: Revert last change.
2376 2007-05-22  Paolo Carlini  <pcarlini@suse.de>
2378         * testsuite/util/testsuite_allocator.h (check_new): Assign false
2379         to new_called.
2380         (check_delete): Likewise for delete_called.
2382 2007-05-21  Paolo Carlini  <pcarlini@suse.de>
2384         * config/locale/gnu/c_locale.h: Do not include <cstdarg>, use builtins.
2385         * config/locale/generic/c_locale.h: Likewise.
2387 2007-05-21  Paolo Carlini  <pcarlini@suse.de>
2389         PR libstdc++/31621
2390         * acinclude.m4 ([GLIBCXX_CHECK_LINKER_FEATURES]): Use the C compiler.
2391         * configure: Regenerate.
2393 2007-05-20  Paolo Carlini  <pcarlini@suse.de>
2395         * include/bits/stl_algo.h: Shuffle the functions to better match the
2396         order in the standard.
2398 2007-05-17  Paolo Carlini  <pcarlini@suse.de>
2400         * config/locale/gnu/c_locale.h: Do not include <libintl.h>.
2401         * config/locale/gnu/messages_members.h: Do it here.
2402         
2403         * config/locale/gnu/c_locale.h: Do not include <cstdio>, use
2404         the builtins.
2405         * config/locale/generic/c_locale.h: Likewise.
2407 2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>
2409         * acinclude.m4 (GLIBCXX_CHECK_COMPILER_FEATURES): Add -g to
2410         compile flags, move code to test to global scope.
2411         * configure: Regenerate.
2412         
2413 2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>
2415         * testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc: 
2416         Fix dg bits.
2417         * testsuite/21_strings/char_traits/requirements/char/typedefs.cc: Same.
2419 2007-05-17  Paolo Carlini  <pcarlini@suse.de>
2421         * include/bits/stl_algobase.h (mismatch): Move...
2422         * include/bits/stl_algo.h: ... here.
2424 2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>
2426         * include/tr1/cmath: Guard special math with
2427         __GXX_EXPERIMENTAL_CXX0X__.
2428         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
2429         Remove xfail.
2431 2007-05-17  Paolo Carlini  <pcarlini@suse.de>
2433         * include/bits/locale_facets.tcc (__pad<>::_S_pad): Minor tweaks, avoid
2434         unnecessary casts, do widenings just in time.
2436 2007-05-16  Benjamin Kosnik  <bkoz@redhat.com>
2438         * acinclude.m4 (GLIBCXX_CHECK_COMPILER_FEATURES): Add a function
2439         to the test code compiled with -ffunction-sections -fdata-sections.
2440         * configure: Regenerate.
2442         * testsuite/22_locale/ctype/scan/wchar_t/1.cc: Remove
2443         _GLIBCXX_USE_WCHAR_T guards as superfluous.
2444         
2445         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Add
2446         _GLIBCXX_USE_WCHAR_T guards.    
2447         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
2448         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
2449         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.
2451         * testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc: 
2452         Add.
2453         * testsuite/21_strings/char_traits/typedefs/char/1.cc: Move...
2454         * testsuite/21_strings/char_traits/requirements/char/typedefs.cc: 
2455         ...here.
2456         * testsuite/21_strings/char_traits/typedefs: Remove.
2457         * testsuite/21_strings/char_traits/typedefs/char: Remove.
2458         
2459 2007-05-16  Benjamin Kosnik  <bkoz@redhat.com>  
2461         * docs/html/abi.html: Update for gcc-4.1.2 and gcc-4.2.0.
2462         
2463 2007-05-14  Kaz Kojima  <kkojima@gcc.gnu.org>
2465         * testsuite/tr1/5_numerical_facilities/special_functions/
2466         17_hyperg/check_nan.cc: Add -mieee for sh.
2468 2007-05-14  Paolo Carlini  <pcarlini@suse.de>
2470         * testsuite/util/testsuite_io.h: Only include <ios>.
2472 2007-05-14  Paolo Carlini  <pcarlini@suse.de>
2474         * include/bits/allocator.h: Do not include cpp_type_traits.h.
2476 2007-05-14  Paolo Carlini  <pcarlini@suse.de>
2478         * include/bits/postypes.h (class fpos<>): Remove redundant forward
2479         declaration.
2481 2007-05-13  Paolo Carlini  <pcarlini@suse.de>
2483         * include/bits/stl_tempbuf.h (return_temporary_buffer(_Tp*)): Inline.
2485 2007-05-13  Paolo Carlini  <pcarlini@suse.de>
2487         * include/tr1/type_traitsfwd.h: Fix include guard typo.
2489 2007-05-11  Paolo Carlini  <pcarlini@suse.de>
2491         * include/ext/pod_char_traits.h (char_traits<>::move):
2492         Use __builtin_memmove.
2493         * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name,
2494         collate_byname(const char*, size_t)): Use __builtin_strcmp.
2495         * include/bits/locale_facets.h: Use __builtin_mem* and
2496         __builtin_str* everywhere.
2497         * include/bits/codecvt.h (codecvt_byname(const char*, size_t)):
2498         Use __builtin_strcmp.
2499         * include/bits/char_traits.h: Use __builtin_mem* everywhere.
2500         * include/bits/fstream.tcc (basic_filebuf<>::underflow, imbue):
2501         Use __builtin_memcpy and __builtin_memmove.
2502         * include/bits/locale_facets_nonio.h (moneypunct_byname(const char*,
2503         size_t __refs)): Use __builtin_strcmp.
2504         * include/std/bitset (bitset<>::_M_do_reset): Use __builtin_memset.
2505         * config/locale/gnu/c_locale.h: Use __builtin_strlen, __builtin_strcmp,
2506         and __builtin_memcpy.
2507         * config/locale/gnu/messages_members.h: Likewise.
2508         * config/locale/gnu/time_members.h: Likewise.
2509         * config/locale/generic/c_locale.h: Likewise.
2510         * config/locale/generic/messages_members.h: Likewise.
2511         * config/locale/generic/time_members.h: Likewise.
2512         * config/os/gnu-linux/ctype_noninline.h: Likewise, avoid strdup.
2513         * config/os/tpf/ctype_noninline.h: Likewise.
2514         * config/locale/generic/codecvt_members.cc: Include <cstring>. 
2515         * config/locale/generic/ctype_members.cc: Likewise.
2516         * config/locale/generic/collate_members.cc: Likewise.
2517         * config/locale/gnu/c++locale_internal.h: Likewise.
2518         * config/locale/darwin/ctype_members.cc: Likewise.
2519         * src/ctype.cc: Likewise.
2520         * testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
2521         * testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
2522         * testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
2523         * testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
2524         * testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
2525         * config/locale/gnu/messages_members.cc: Avoid strdup.
2526         * config/locale/gnu/monetary_members.cc: Likewise.
2527         * config/locale/gnu/time_members.cc: Likewise.  
2528         * config/locale/gnu/time_members.cc: Likewise.
2529         * config/locale/generic/c_locale.cc: Likewise.
2531 2007-05-11  Benjamin Kosnik  <bkoz@redhat.com>
2533         * include/std/stdexcept: Remove extra spacing.
2535         * testsuite/19_diagnostics/stdexceptions.cc: Break into...
2536         * testsuite/19_diagnostics/bad_exception: ...this. Populate.
2537         * testsuite/19_diagnostics/logic_error: ... this.
2538         * testsuite/19_diagnostics/logic_error/what-1.cc: ...this.
2539         * testsuite/19_diagnostics/logic_error/what-2.cc: ...this.
2540         * testsuite/19_diagnostics/runtime_error: ...this.
2541         * testsuite/19_diagnostics/runtime_error/what-1.cc: ...this.
2542         * testsuite/19_diagnostics/runtime_error/what-2.cc: ...this.
2543         * testsuite/19_diagnostics/runtime_error/what-3.cc: ...this.
2544         * testsuite/19_diagnostics/23591_thread-1.c: Move...
2545         * testsuite/19_diagnostics/bad_exception/23591_thread-1.c: ...here.
2547 2007-05-10  Paolo Carlini  <pcarlini@suse.de>
2549         * 27_io/objects/wchar_t/11.cc: Include <cstring>.
2550         * 27_io/objects/wchar_t/10.cc: Likewise.
2551         * 27_io/objects/wchar_t/12.cc: Likewise.
2552         * 27_io/basic_streambuf/sputbackc/char/9538.cc: Likewise.
2553         * 27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
2554         * 27_io/basic_streambuf/overflow/char/1.cc: Likewise.
2555         * 27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
2556         * 27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
2557         * 27_io/basic_streambuf/sputn/char/1.cc: Likewise.
2558         * 27_io/basic_ios/cons/char/3.cc: Likewise.
2559         * 27_io/basic_stringbuf/setbuf/char/2.cc: Likewise.
2560         * 27_io/basic_stringbuf/setbuf/char/3.cc: Likewise.
2561         * 27_io/basic_stringbuf/setbuf/char/4.cc: Likewise.
2562         * 27_io/basic_istream/extractors_character/char/4.cc: Likewise.
2563         * 27_io/fpos/mbstate_t/1.cc: Likewise.
2564         * 27_io/basic_filebuf/setbuf/char/2.cc: Likewise.
2565         * 27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
2566         * 25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
2567         * 25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
2568         * 19_diagnostics/stdexceptions.cc: Likewise.
2569         * 21_strings/char_traits/requirements/short/1.cc: Likewise.
2570         * 21_strings/basic_string/compare/char/1.cc: Likewise.
2571         * 21_strings/basic_string/capacity/1.cc: Likewise.
2572         * ext/codecvt/char-1.cc: Likewise.
2573         * ext/codecvt/char-2.cc: Likewise.
2574         * ext/codecvt/1.cc: Likewise.
2575         * ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
2576         * ext/stdio_sync_filebuf/char/1.cc: Likewise.
2577         * ext/stdio_filebuf/char/2.cc: Likewise.
2578         * ext/stdio_filebuf/char/10063-1.cc: Likewise.
2579         * 22_locale/ctype/narrow/char/19955.cc: Likewise.
2580         * 22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
2581         * 22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
2582         * 22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
2583         * 22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
2584         * 22_locale/codecvt/unshift/char/1.cc: Likewise.
2585         * 22_locale/codecvt/length/wchar_t/1.cc: Likewise.
2586         * 22_locale/codecvt/length/wchar_t/2.cc: Likewise.
2587         * 22_locale/codecvt/length/wchar_t/3.cc: Likewise.
2588         * 22_locale/codecvt/length/wchar_t/4.cc: Likewise.
2589         * 22_locale/codecvt/length/wchar_t/5.cc: Likewise.
2590         * 22_locale/codecvt/length/wchar_t/6.cc: Likewise.
2591         * 22_locale/codecvt/length/wchar_t/7.cc: Likewise.
2592         * 22_locale/codecvt/always_noconv/char/1.cc: Likewise.
2593         * 22_locale/codecvt/encoding/char/1.cc: Likewise.
2594         * 22_locale/codecvt/in/wchar_t/1.cc: Likewise.
2595         * 22_locale/codecvt/in/wchar_t/2.cc: Likewise.
2596         * 22_locale/codecvt/in/wchar_t/3.cc: Likewise.
2597         * 22_locale/codecvt/in/wchar_t/4.cc: Likewise.
2598         * 22_locale/codecvt/in/wchar_t/5.cc: Likewise.
2599         * 22_locale/codecvt/in/wchar_t/6.cc: Likewise.
2600         * 22_locale/codecvt/in/wchar_t/7.cc: Likewise.
2601         * 22_locale/codecvt/in/wchar_t/8.cc: Likewise.
2602         * 22_locale/codecvt/in/wchar_t/9.cc: Likewise.
2603         * 22_locale/codecvt/in/char/1.cc: Likewise.
2604         * 22_locale/codecvt/max_length/char/1.cc: Likewise.
2605         * 22_locale/codecvt/out/wchar_t/1.cc: Likewise.
2606         * 22_locale/codecvt/out/wchar_t/2.cc: Likewise.
2607         * 22_locale/codecvt/out/wchar_t/3.cc: Likewise.
2608         * 22_locale/codecvt/out/wchar_t/4.cc: Likewise.
2609         * 22_locale/codecvt/out/wchar_t/5.cc: Likewise.
2610         * 22_locale/codecvt/out/wchar_t/6.cc: Likewise.
2611         * 22_locale/codecvt/out/wchar_t/7.cc: Likewise.
2612         * 22_locale/codecvt/out/char/1.cc: Likewise.
2613         * 22_locale/locale/cons/5.cc: Likewise.
2614         * 22_locale/collate_byname/named_equivalence.cc: Likewise.
2616 2007-05-07  Mark Mitchell  <mark@codesourcery.com>
2618         * libstdc++-v3/libsupc++/cxxabi.h (_GLIBCXX_NOTHROW): New macro.
2619         (__cxa_atexit): Use it.
2621         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): For
2622         installed-tree testing, search more include directories.
2624 2007-05-08  Benjamin Kosnik  <bkoz@redhat.com>
2626         * include/std/type_traits (make_signed): Remove specializations
2627         for floating point types.
2628         (make_unsigned): Same.
2629         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Fix.
2630         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Same.
2631         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
2632         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
2633         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
2634         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.
2635         
2636 2007-05-08  Benjamin Kosnik  <bkoz@redhat.com>
2638         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: New.
2640 2007-05-08  Jason Merrill  <jason@redhat.com>
2642         * libsupc++/cxxabi-internal.h: Remove, to be replaced by...
2643         * libsupc++/cxxabi-forced.h: ...this new file.
2644         * include/ext/vstring.tcc: Include cxxabi-forced.h instead.
2645         * include/bits/istream.tcc: Likewise.
2646         * include/bits/ostream.tcc: Likewise.
2647         * include/bits/basic_string.tcc: Likewise.
2648         * include/bits/ostream_insert.h: Likewise.
2649         * include/bits/fstream.tcc: Likewise.
2650         * include/std/bitset: Likewise.
2651         * libsupc++/cxxabi.h: Restore previous contents.
2652         * Makefile.am (headers): Add cxxabi-forced.h.
2653         * Makefile.in: Regenerate.
2655 2007-05-08  Benjamin Kosnik  <bkoz@redhat.com>
2657         * testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.2.
2659         * libsupc++/cxxabi-internal.h (__foreign_exception::__pure): To
2660         __pure_virtual.
2662 2007-05-07  Jason Merrill  <jason@redhat.com>
2664         * include/bits/ostream.tcc (operator<<(char*)): Add __s.
2666         * config/abi/pre/gnu.ver: Fix symbol versions.
2667         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
2669 2007-05-07  Danny Smith  <dannysmith@users.sourceforge.net>
2671         * config/os/mingw32/os_defines.h (NOMINMAX): Update comment.
2673 2007-05-07  Jason Merrill  <jason@redhat.com>
2675         PR c++/28145
2676         * libsupc++/cxxabi.h (__forced_unwind, __foreign_exception):
2677         New classes.
2678         * libsupc++/eh_exception.cc: Define their destructors.
2679         * config/abi/pre/gnu.ver: Export their type_infos.
2680         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
2681         * libsupc++/eh_personality.cc: A handler for abi::__forced_unwind
2682         matches a forced unwind, and a handler for abi::__foreign_exception
2683         matches a foreign exception.
2684         
2685         * include/bits/istream.tcc: Rethrow forced unwind.
2686         * include/bits/ostream.tcc: Likewise.
2687         * include/bits/ostream_insert.h: Likewise.
2688         * include/bits/basic_string.tcc (operator>>, getline): Likewise.
2689         * include/bits/fstream.tcc (basic_filebuf::close): Likewise.
2690         * include/ext/vstring.cc (operator>>, getline): Likewise.
2691         * src/istream.cc: Likewise.
2692         * src/compatibility.cc (basic_istream::ignore): Likewise.
2693         * include/std/bitset (operator>>): Likewise.
2694         * include/std/fstream (basic_filebuf::close): Remove throw() spec.
2695         * libsupc++/cxxabi-internal.h: Split out from...
2696         * libsupc++/cxxabi.h: ...here.
2698 2007-05-07  Paolo Carlini  <pcarlini@suse.de>
2700         * include/bits/stl_algobase.h: Do not include <cstring>.
2701         (copy(const _Tp*, const _Tp*, _Tp*), __copy_b(const _Tp*, const _Tp*,
2702         _Tp*)): Use __builtin_memmove.
2703         (__fill_aux): Use __builtin_memset.
2704         (equal(const _Tp*, const _Tp*, const _Tp*),
2705         lexicographical_compare(const unsigned char*, const unsigned char*,
2706         const unsigned char*, const unsigned char*)): Use __builtin_memcmp.
2707         * include/bits/valarray_array.h: Do not include <cstring>.
2708         (_Array_default_ctor<, true>::_S_do_it): Use __builtin_memset.
2709         (_Array_copy_ctor<, true>::_S_do_it, _Array_copier<, true>::_S_do_it):
2710         Use __builtin_memcpy.
2711         * include/ext/algorithm
2712         (__lexicographical_compare_3way(const unsigned char*,
2713         const unsigned char*, const unsigned char*, const unsigned char*)):
2714         Use __builtin_memcmp.
2715         * testsuite/23_containers/vector/requirements/dr438/
2716         constructor_1_neg.cc: Adjust dg-error line number.
2717         * testsuite/23_containers/vector/requirements/dr438/
2718         constructor_2_neg.cc: Likewise.
2720 2007-05-07  Mark Mitchell  <mark@codesourcery.com>
2722         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): For
2723         installed-tree testing, search more include directories.
2725         * testsuite/22_locale/num_put/put/char/14220.cc: XFAIL on Solaris
2726         2.10.
2727         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2729         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): In
2730         installed-tree testing, use "remote_exec host", not "remote_exec
2731         exec".  Trip trailing newlines from output of -dumpversion and
2732         -dumpmachine.
2734 2007-05-07  Benjamin Kosnik  <bkoz@redhat.com>
2735             Howard Hinnant  <hhinnant@apple.com>
2737         * include/std/type_traits: (make_signed, make_unsigned): Adjust
2738         for enum sizes. 
2739         * testsuite/20_util/make_unsigned/requirements/typedefs.cc: Move to...
2740         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: ...here.
2741         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Add,
2742         compile with -funsigned-char -fshort-enums.
2743         * testsuite/20_util/make_signed/requirements/typedefs.cc: Move to...
2744         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: ...here.
2745         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Add,
2746         compile with -funsigned-char -fshort-enums.
2748         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
2749         Add a temporary xfail to this test for all platforms.
2750         
2751 2007-05-06  Paolo Carlini  <pcarlini@suse.de>
2753         * include/std/complex: Add missing extern template declarations.
2754         * testsuite/26_numerics/complex/complex_inserters_extractors.cc:
2755         Move...
2756         * testsuite/26_numerics/complex/inserters_extractors/char/1.cc:
2757         ... here.
2758         * testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc:
2759         New.
2761 2007-05-06  Paolo Carlini  <pcarlini@suse.de>
2763         PR libstdc++/31834
2764         * testsuite/17_intro/headers/c++200x/all.cc: Protect inclusion
2765         of C99 headers.
2766         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc:
2767         Likewise.
2769 2007-05-06  Paolo Carlini  <pcarlini@suse.de>
2771         * config/locale/generic/c_locale.cc: Don't use __builtin_huge_val*
2772         when __*_HAS_INFINITY__ is false.
2774 2007-05-04  Paolo Carlini  <pcarlini@suse.de>
2776         * include/bits/stl_raw_storage_iter.h (class raw_storage_iterator):
2777         Adjust template parameter name.
2779 2007-05-04  Mark Mitchell  <mark@codesourcery.com>
2781         * libsupc++/cxxabi.h (__cxa_atexit): Conditionalize exception
2782         specification on #ifdef __cplusplus.
2783         
2784 2007-05-04  Paolo Carlini  <pcarlini@suse.de>
2786         * include/bits/stl_memory.h: Rename to stl_auto_ptr.h.
2787         (__get_temporary_buffer, get_temporary_buffer,
2788         return_temporary_buffer): Move...
2789         * include/bits/stl_tempbuf.h: ... here.
2790         * include/std/memory: Adjust includes.
2791         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust dg-error line
2792         numbers.
2793         * include/Makefile.am: Adjust.
2794         * include/Makefile.in: Regenerate.
2796         * testsuite/util/testsuite_iterators.h: Do not include the entire
2797         <iterator>.
2798         * include/bits/stl_iterator_base_types.h: Adjust includes.
2799         * testsuite/25_algorithms/unique_copy/2.cc: Include <functional>.
2801 2007-05-04  Mark Mitchell  <mark@codesourcery.com>
2803         * libsupc++/atexit_arm.cc: New file.
2804         * libsupc++/vec.cc (__aeabi_atexit): Remove.
2805         * libsupc++/cxxabi.h (__cxa_atexit): Add exception specification.
2807         * libsupc++/Makefile.am: Add atexit_arm.cc.
2808         * libsupc++/Makefile.in: Regenerated.
2810 2007-05-04  Paolo Carlini  <pcarlini@suse.de>
2812         * include/bits/stl_construct.h (_Destroy(_ForwardIterator,
2813         _ForwardIterator __last, _Allocator)): Change the last parameter
2814         to _Allocator&.
2815         * include/bits/stl_uninitialized.h (__uninitialized_copy_a,
2816         __uninitialized_fill_a, __uninitialized_fill_n_a,
2817         __uninitialized_fill_copy, __uninitialized_copy_fill,
2818         __uninitialized_copy_copy): Likewise.
2819         * include/ext/rope: Adjust everywhere.
2820         * include/ext/ropeimpl.h: Likewise.
2822 2007-05-03  Benjamin Kosnik  <bkoz@redhat.com>
2824         * include/std/type_traits (enable_if): New.
2825         (conditional): New.
2826         (__decay_selector, decay): New.
2827         (__cv_selector, __match_cv_qualifiers): New.
2828         (__make_unsigned, __make_unsigned_selector, make_unsigned): New.
2829         (__make_signed, __make_signed_selector, make_signed): New.
2830         (has_trivial_constructor): ... to has_trivial_default_constructor.
2831         (has_nothrow_constructor): ... to has_nothrow_default_constructor.
2832         (has_trivial_copy): ... to has_trivial_copy_constructor.
2833         (has_nothrow_copy): ... to has_nothrow_copy_constructor.
2835         * include/tr1/type_traits_fwd: Move to...
2836         * include/tr1/type_traitsfwd: ... this, consistency with
2837         ios/string/locale forward headers.
2838         * include/tr1/type_traits: Adjust include.      
2839         * include/Makefile.am (tr1_headers): Change type_traits_fwd.h to
2840         type_traitsfwd.h.
2841         * include/Makefile.in: Regenerate.
2843         * testsuite/23_containers/tuple: Move...
2844         * testsuite/20_util/tuple:... here.
2846         * testsuite/20_util/conditional: New.
2847         * testsuite/20_util/conditional/requirements: Same.
2848         * testsuite/20_util/conditional/requirements/
2849         explicit_instantiation.cc: Same.
2850         * testsuite/20_util/conditional/requirements/typedefs.cc: Same.
2851         * testsuite/20_util/decay: Same.
2852         * testsuite/20_util/decay/requirements: Same.
2853         * testsuite/20_util/decay/requirements/explicit_instantiation.cc: Same.
2854         * testsuite/20_util/decay/requirements/typedefs.cc: Same.
2855         * testsuite/20_util/enable_if: Same.
2856         * testsuite/20_util/enable_if/requirements: Same.
2857         * testsuite/20_util/enable_if/requirements/
2858         explicit_instantiation.cc: Same.
2859         * testsuite/20_util/enable_if/requirements/typedefs.cc: Same.
2860         * testsuite/20_util/enable_if/requirements/typedefs_neg.cc: Same.
2861         * testsuite/20_util/has_nothrow_copy_constructor: Same.
2862         * testsuite/20_util/has_nothrow_copy_constructor/requirements: Same.
2863         * testsuite/20_util/has_nothrow_copy_constructor/requirements/
2864         explicit_instantiation.cc: Same.
2865         * testsuite/20_util/has_nothrow_copy_constructor/requirements/
2866         typedefs.cc: Same.
2867         * testsuite/20_util/has_nothrow_copy_constructor/value.cc: Same.
2868         * testsuite/20_util/has_nothrow_default_constructor: Same.
2869         * testsuite/20_util/has_nothrow_default_constructor/requirements: Same.
2870         * testsuite/20_util/has_nothrow_default_constructor/requirements/
2871         explicit_instantiation.cc: Same.
2872         * testsuite/20_util/has_nothrow_default_constructor/requirements/
2873         typedefs.cc: Same.
2874         * testsuite/20_util/has_nothrow_default_constructor/value.cc: Same.
2875         * testsuite/20_util/has_trivial_copy_constructor: Same.
2876         * testsuite/20_util/has_trivial_copy_constructor/requirements: Same.
2877         * testsuite/20_util/has_trivial_copy_constructor/requirements/
2878         explicit_instantiation.cc: Same.
2879         * testsuite/20_util/has_trivial_copy_constructor/requirements/
2880         typedefs.cc: Same.
2881         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Same.
2882         * testsuite/20_util/has_trivial_default_constructor: Same.
2883         * testsuite/20_util/has_trivial_default_constructor/requirements: Same.
2884         * testsuite/20_util/has_trivial_default_constructor/requirements/
2885         explicit_instantiation.cc: Same.
2886         * testsuite/20_util/has_trivial_default_constructor/requirements/
2887         typedefs.cc: Same.
2888         * testsuite/20_util/has_trivial_default_constructor/value.cc: Same.
2889         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc: Same.
2890         * testsuite/20_util/make_signed: Same.
2891         * testsuite/20_util/make_signed/requirements: Same.
2892         * testsuite/20_util/make_signed/requirements/
2893         explicit_instantiation.cc: Same.
2894         * testsuite/20_util/make_signed/requirements/typedefs.cc: Same.
2895         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
2896         * testsuite/20_util/make_unsigned: Same.
2897         * testsuite/20_util/make_unsigned/requirements: Same.
2898         * testsuite/20_util/make_unsigned/requirements/
2899         explicit_instantiation.cc: Same.
2900         * testsuite/20_util/make_unsigned/requirements/typedefs.cc: Same.
2901         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
2902         
2903 2007-05-02  Paolo Carlini  <pcarlini@suse.de>
2905         PR libstdc++/31777
2906         * include/ext/pool_allocator.h (__pool_alloc<>::allocate,
2907         __pool_alloc<>::deallocate): Fix _S_force_new check.
2909 2007-05-01  Benjamin Kosnik  <bkoz@redhat.com>
2910         
2911         * 23_containers/requirements/sequences/dr438/deque/*: Move to...
2912         * 23_containers/deque/requirements/dr438: ...here.
2913         
2914         * 23_containers/requirements/sequences/dr438/list/*: Move to...
2915         * 23_containers/list/requirements/dr438: ...here.
2916         
2917         * 23_containers/requirements/sequences/dr438/vector/*: Move to...
2918         * 23_containers/vector/requirements/dr438: ...here.
2920 2007-05-01  Benjamin Kosnik  <bkoz@redhat.com>
2921         
2922         * testsuite/*/explicit_instantiations.cc: Change to...
2923         * testsuite/*/explicit_instantiation.cc: ... this.
2925 2007-05-01  Benjamin Kosnik  <bkoz@redhat.com>
2926         
2927         * testsuite/tr1/4_metaprogramming/*/explicit_instantiations.cc: Change
2928         "basic_ofstream" in comment to type_traits.
2930 2007-04-30  Benjamin Kosnik  <bkoz@redhat.com>
2932         Directory layout flattening.
2934         Added in testsuite:
2935         * tr1/4_metaprogramming/add_const
2936         * tr1/4_metaprogramming/add_const/requirements
2937         * tr1/4_metaprogramming/add_const/requirements/
2938         explicit_instantiations.cc
2939         * tr1/4_metaprogramming/add_const/requirements/typedefs.cc
2940         * tr1/4_metaprogramming/add_cv
2941         * tr1/4_metaprogramming/add_cv/requirements
2942         * tr1/4_metaprogramming/add_cv/requirements/explicit_instantiations.cc
2943         * tr1/4_metaprogramming/add_cv/requirements/typedefs.cc
2944         * tr1/4_metaprogramming/add_pointer
2945         * tr1/4_metaprogramming/add_pointer/requirements
2946         * tr1/4_metaprogramming/add_pointer/requirements/
2947         explicit_instantiations.cc
2948         * tr1/4_metaprogramming/add_pointer/requirements/typedefs.cc
2949         * tr1/4_metaprogramming/add_reference
2950         * tr1/4_metaprogramming/add_reference/requirements
2951         * tr1/4_metaprogramming/add_reference/requirements/
2952         explicit_instantiations.cc
2953         * tr1/4_metaprogramming/add_reference/requirements/typedefs.cc
2954         * tr1/4_metaprogramming/add_volatile
2955         * tr1/4_metaprogramming/add_volatile/requirements
2956         * tr1/4_metaprogramming/add_volatile/requirements/
2957         explicit_instantiations.cc
2958         * tr1/4_metaprogramming/add_volatile/requirements/typedefs.cc
2959         * tr1/4_metaprogramming/aligned_storage
2960         * tr1/4_metaprogramming/aligned_storage/requirements
2961         * tr1/4_metaprogramming/aligned_storage/requirements/
2962         explicit_instantiations.cc
2963         * tr1/4_metaprogramming/aligned_storage/requirements/typedefs.cc
2964         * tr1/4_metaprogramming/alignment_of
2965         * tr1/4_metaprogramming/alignment_of/requirements
2966         * tr1/4_metaprogramming/alignment_of/requirements/
2967         explicit_instantiations.cc
2968         * tr1/4_metaprogramming/alignment_of/requirements/typedefs.cc
2969         * tr1/4_metaprogramming/alignment_of/value.cc
2970         * tr1/4_metaprogramming/extent
2971         * tr1/4_metaprogramming/extent/requirements
2972         * tr1/4_metaprogramming/extent/requirements/explicit_instantiations.cc
2973         * tr1/4_metaprogramming/extent/requirements/typedefs.cc
2974         * tr1/4_metaprogramming/extent/value.cc
2975         * tr1/4_metaprogramming/has_nothrow_assign
2976         * tr1/4_metaprogramming/has_nothrow_assign/requirements
2977         * tr1/4_metaprogramming/has_nothrow_assign/requirements/
2978         explicit_instantiations.cc
2979         * tr1/4_metaprogramming/has_nothrow_assign/requirements/typedefs.cc
2980         * tr1/4_metaprogramming/has_nothrow_assign/value.cc
2981         * tr1/4_metaprogramming/has_nothrow_constructor
2982         * tr1/4_metaprogramming/has_nothrow_constructor/requirements
2983         * tr1/4_metaprogramming/has_nothrow_constructor/
2984         requirements/explicit_instantiations.cc
2985         * tr1/4_metaprogramming/has_nothrow_constructor/
2986         requirements/typedefs.cc
2987         * tr1/4_metaprogramming/has_nothrow_constructor/value.cc
2988         * tr1/4_metaprogramming/has_nothrow_copy
2989         * tr1/4_metaprogramming/has_nothrow_copy/requirements
2990         * tr1/4_metaprogramming/has_nothrow_copy/requirements/
2991         explicit_instantiations.cc
2992         * tr1/4_metaprogramming/has_nothrow_copy/requirements/typedefs.cc
2993         * tr1/4_metaprogramming/has_nothrow_copy/value.cc
2994         * tr1/4_metaprogramming/has_trivial_assign
2995         * tr1/4_metaprogramming/has_trivial_assign/requirements
2996         * tr1/4_metaprogramming/has_trivial_assign/requirements/
2997         explicit_instantiations.cc
2998         * tr1/4_metaprogramming/has_trivial_assign/requirements/typedefs.cc
2999         * tr1/4_metaprogramming/has_trivial_assign/value.cc
3000         * tr1/4_metaprogramming/has_trivial_constructor
3001         * tr1/4_metaprogramming/has_trivial_constructor/requirements
3002         * tr1/4_metaprogramming/has_trivial_constructor/
3003         requirements/explicit_instantiations.cc
3004         * tr1/4_metaprogramming/has_trivial_constructor/
3005         requirements/typedefs.cc
3006         * tr1/4_metaprogramming/has_trivial_constructor/value.cc
3007         * tr1/4_metaprogramming/has_trivial_copy
3008         * tr1/4_metaprogramming/has_trivial_copy/requirements
3009         * tr1/4_metaprogramming/has_trivial_copy/
3010         requirements/explicit_instantiations.cc
3011         * tr1/4_metaprogramming/has_trivial_copy/requirements/typedefs.cc
3012         * tr1/4_metaprogramming/has_trivial_copy/value.cc
3013         * tr1/4_metaprogramming/has_trivial_destructor
3014         * tr1/4_metaprogramming/has_trivial_destructor/requirements
3015         * tr1/4_metaprogramming/has_trivial_destructor/
3016         requirements/explicit_instantiations.cc
3017         * tr1/4_metaprogramming/has_trivial_destructor/requirements/typedefs.cc
3018         * tr1/4_metaprogramming/has_trivial_destructor/value.cc
3019         * tr1/4_metaprogramming/has_virtual_destructor
3020         * tr1/4_metaprogramming/has_virtual_destructor/requirements
3021         * tr1/4_metaprogramming/has_virtual_destructor/
3022         requirements/explicit_instantiations.cc
3023         * tr1/4_metaprogramming/has_virtual_destructor/requirements/typedefs.cc
3024         * tr1/4_metaprogramming/has_virtual_destructor/value.cc
3025         * tr1/4_metaprogramming/integral_constant
3026         * tr1/4_metaprogramming/integral_constant/requirements
3027         * tr1/4_metaprogramming/integral_constant/
3028         requirements/explicit_instantiations.cc
3029         * tr1/4_metaprogramming/integral_constant/requirements/typedefs.cc
3030         * tr1/4_metaprogramming/integral_constant/true_false_value.cc
3031         * tr1/4_metaprogramming/is_abstract
3032         * tr1/4_metaprogramming/is_abstract/requirements
3033         * tr1/4_metaprogramming/is_abstract/
3034         requirements/explicit_instantiations.cc
3035         * tr1/4_metaprogramming/is_abstract/requirements/typedefs.cc
3036         * tr1/4_metaprogramming/is_abstract/value.cc
3037         * tr1/4_metaprogramming/is_arithmetic
3038         * tr1/4_metaprogramming/is_arithmetic/requirements
3039         * tr1/4_metaprogramming/is_arithmetic/
3040         requirements/explicit_instantiations.cc
3041         * tr1/4_metaprogramming/is_arithmetic/requirements/typedefs.cc
3042         * tr1/4_metaprogramming/is_arithmetic/value.cc
3043         * tr1/4_metaprogramming/is_array
3044         * tr1/4_metaprogramming/is_array/requirements
3045         * tr1/4_metaprogramming/is_array/
3046         requirements/explicit_instantiations.cc
3047         * tr1/4_metaprogramming/is_array/requirements/typedefs.cc
3048         * tr1/4_metaprogramming/is_array/value.cc
3049         * tr1/4_metaprogramming/is_base_of
3050         * tr1/4_metaprogramming/is_base_of/requirements
3051         * tr1/4_metaprogramming/is_base_of/
3052         requirements/explicit_instantiations.cc
3053         * tr1/4_metaprogramming/is_base_of/requirements/typedefs.cc
3054         * tr1/4_metaprogramming/is_base_of/value.cc
3055         * tr1/4_metaprogramming/is_class
3056         * tr1/4_metaprogramming/is_class/requirements
3057         * tr1/4_metaprogramming/is_class/
3058         requirements/explicit_instantiations.cc
3059         * tr1/4_metaprogramming/is_class/requirements/typedefs.cc
3060         * tr1/4_metaprogramming/is_class/value.cc
3061         * tr1/4_metaprogramming/is_compound
3062         * tr1/4_metaprogramming/is_compound/requirements
3063         * tr1/4_metaprogramming/is_compound/
3064         requirements/explicit_instantiations.cc
3065         * tr1/4_metaprogramming/is_compound/requirements/typedefs.cc
3066         * tr1/4_metaprogramming/is_compound/value.cc
3067         * tr1/4_metaprogramming/is_const
3068         * tr1/4_metaprogramming/is_const/requirements
3069         * tr1/4_metaprogramming/is_const/
3070         requirements/explicit_instantiations.cc
3071         * tr1/4_metaprogramming/is_const/requirements/typedefs.cc
3072         * tr1/4_metaprogramming/is_const/value.cc
3073         * tr1/4_metaprogramming/is_convertible
3074         * tr1/4_metaprogramming/is_convertible/requirements
3075         * tr1/4_metaprogramming/is_convertible/
3076         requirements/explicit_instantiations.cc
3077         * tr1/4_metaprogramming/is_convertible/requirements/typedefs.cc
3078         * tr1/4_metaprogramming/is_convertible/value.cc
3079         * tr1/4_metaprogramming/is_empty
3080         * tr1/4_metaprogramming/is_empty/requirements
3081         * tr1/4_metaprogramming/is_empty/requirements/
3082         explicit_instantiations.cc
3083         * tr1/4_metaprogramming/is_empty/requirements/typedefs.cc
3084         * tr1/4_metaprogramming/is_empty/value.cc
3085         * tr1/4_metaprogramming/is_enum
3086         * tr1/4_metaprogramming/is_enum/requirements
3087         * tr1/4_metaprogramming/is_enum/requirements/explicit_instantiations.cc
3088         * tr1/4_metaprogramming/is_enum/requirements/typedefs.cc
3089         * tr1/4_metaprogramming/is_enum/value.cc
3090         * tr1/4_metaprogramming/is_floating_point
3091         * tr1/4_metaprogramming/is_floating_point/requirements
3092         * tr1/4_metaprogramming/is_floating_point/requirements/
3093         explicit_instantiations.cc
3094         * tr1/4_metaprogramming/is_floating_point/requirements/typedefs.cc
3095         * tr1/4_metaprogramming/is_floating_point/value.cc
3096         * tr1/4_metaprogramming/is_function
3097         * tr1/4_metaprogramming/is_function/requirements
3098         * tr1/4_metaprogramming/is_function/requirements/
3099         explicit_instantiations.cc
3100         * tr1/4_metaprogramming/is_function/requirements/typedefs.cc
3101         * tr1/4_metaprogramming/is_function/value.cc
3102         * tr1/4_metaprogramming/is_fundamental
3103         * tr1/4_metaprogramming/is_fundamental/requirements
3104         * tr1/4_metaprogramming/is_fundamental/requirements/
3105         explicit_instantiations.cc
3106         * tr1/4_metaprogramming/is_fundamental/requirements/typedefs.cc
3107         * tr1/4_metaprogramming/is_fundamental/value.cc
3108         * tr1/4_metaprogramming/is_integral
3109         * tr1/4_metaprogramming/is_integral/requirements
3110         * tr1/4_metaprogramming/is_integral/requirements/
3111         explicit_instantiations.cc
3112         * tr1/4_metaprogramming/is_integral/requirements/typedefs.cc
3113         * tr1/4_metaprogramming/is_integral/value.cc
3114         * tr1/4_metaprogramming/is_member_function_pointer
3115         * tr1/4_metaprogramming/is_member_function_pointer/requirements
3116         * tr1/4_metaprogramming/is_member_function_pointer/
3117         requirements/explicit_instantiations.cc
3118         * tr1/4_metaprogramming/is_member_function_pointer/
3119         requirements/typedefs.cc
3120         * tr1/4_metaprogramming/is_member_function_pointer/value.cc
3121         * tr1/4_metaprogramming/is_member_object_pointer
3122         * tr1/4_metaprogramming/is_member_object_pointer/requirements
3123         * tr1/4_metaprogramming/is_member_object_pointer/
3124         requirements/explicit_instantiations.cc
3125         * tr1/4_metaprogramming/is_member_object_pointer/
3126         requirements/typedefs.cc
3127         * tr1/4_metaprogramming/is_member_object_pointer/value.cc
3128         * tr1/4_metaprogramming/is_member_pointer
3129         * tr1/4_metaprogramming/is_member_pointer/requirements
3130         * tr1/4_metaprogramming/is_member_pointer/requirements/
3131         explicit_instantiations.cc
3132         * tr1/4_metaprogramming/is_member_pointer/requirements/typedefs.cc
3133         * tr1/4_metaprogramming/is_member_pointer/value.cc
3134         * tr1/4_metaprogramming/is_object
3135         * tr1/4_metaprogramming/is_object/requirements
3136         * tr1/4_metaprogramming/is_object/requirements/
3137         explicit_instantiations.cc
3138         * tr1/4_metaprogramming/is_object/requirements/typedefs.cc
3139         * tr1/4_metaprogramming/is_object/value.cc
3140         * tr1/4_metaprogramming/is_pod
3141         * tr1/4_metaprogramming/is_pod/requirements
3142         * tr1/4_metaprogramming/is_pod/requirements/explicit_instantiations.cc
3143         * tr1/4_metaprogramming/is_pod/requirements/typedefs.cc
3144         * tr1/4_metaprogramming/is_pod/value.cc
3145         * tr1/4_metaprogramming/is_pointer
3146         * tr1/4_metaprogramming/is_pointer/requirements
3147         * tr1/4_metaprogramming/is_pointer/requirements/
3148         explicit_instantiations.cc
3149         * tr1/4_metaprogramming/is_pointer/requirements/typedefs.cc
3150         * tr1/4_metaprogramming/is_pointer/value.cc
3151         * tr1/4_metaprogramming/is_polymorphic
3152         * tr1/4_metaprogramming/is_polymorphic/requirements
3153         * tr1/4_metaprogramming/is_polymorphic/requirements/
3154         explicit_instantiations.cc
3155         * tr1/4_metaprogramming/is_polymorphic/requirements/typedefs.cc
3156         * tr1/4_metaprogramming/is_polymorphic/value.cc
3157         * tr1/4_metaprogramming/is_reference
3158         * tr1/4_metaprogramming/is_reference/requirements
3159         * tr1/4_metaprogramming/is_reference/requirements/
3160         explicit_instantiations.cc
3161         * tr1/4_metaprogramming/is_reference/requirements/typedefs.cc
3162         * tr1/4_metaprogramming/is_reference/value.cc
3163         * tr1/4_metaprogramming/is_same
3164         * tr1/4_metaprogramming/is_same/requirements
3165         * tr1/4_metaprogramming/is_same/requirements/explicit_instantiations.cc
3166         * tr1/4_metaprogramming/is_same/requirements/typedefs.cc
3167         * tr1/4_metaprogramming/is_same/value.cc
3168         * tr1/4_metaprogramming/is_scalar
3169         * tr1/4_metaprogramming/is_scalar/requirements
3170         * tr1/4_metaprogramming/is_scalar/requirements/
3171         explicit_instantiations.cc
3172         * tr1/4_metaprogramming/is_scalar/requirements/typedefs.cc
3173         * tr1/4_metaprogramming/is_scalar/value.cc
3174         * tr1/4_metaprogramming/is_signed
3175         * tr1/4_metaprogramming/is_signed/requirements
3176         * tr1/4_metaprogramming/is_signed/requirements/
3177         explicit_instantiations.cc
3178         * tr1/4_metaprogramming/is_signed/requirements/typedefs.cc
3179         * tr1/4_metaprogramming/is_signed/value.cc
3180         * tr1/4_metaprogramming/is_union
3181         * tr1/4_metaprogramming/is_union/requirements
3182         * tr1/4_metaprogramming/is_union/requirements/
3183         explicit_instantiations.cc
3184         * tr1/4_metaprogramming/is_union/requirements/typedefs.cc
3185         * tr1/4_metaprogramming/is_union/value.cc
3186         * tr1/4_metaprogramming/is_unsigned
3187         * tr1/4_metaprogramming/is_unsigned/requirements
3188         * tr1/4_metaprogramming/is_unsigned/requirements/
3189         explicit_instantiations.cc
3190         * tr1/4_metaprogramming/is_unsigned/requirements/typedefs.cc
3191         * tr1/4_metaprogramming/is_unsigned/value.cc
3192         * tr1/4_metaprogramming/is_void
3193         * tr1/4_metaprogramming/is_void/requirements
3194         * tr1/4_metaprogramming/is_void/requirements/explicit_instantiations.cc
3195         * tr1/4_metaprogramming/is_void/requirements/typedefs.cc
3196         * tr1/4_metaprogramming/is_void/value.cc
3197         * tr1/4_metaprogramming/is_volatile
3198         * tr1/4_metaprogramming/is_volatile/requirements
3199         * tr1/4_metaprogramming/is_volatile/requirements/
3200         explicit_instantiations.cc
3201         * tr1/4_metaprogramming/is_volatile/requirements/typedefs.cc
3202         * tr1/4_metaprogramming/is_volatile/value.cc
3203         * tr1/4_metaprogramming/rank
3204         * tr1/4_metaprogramming/rank/requirements
3205         * tr1/4_metaprogramming/rank/requirements/explicit_instantiations.cc
3206         * tr1/4_metaprogramming/rank/requirements/typedefs.cc
3207         * tr1/4_metaprogramming/rank/value.cc
3208         * tr1/4_metaprogramming/remove_all_extents
3209         * tr1/4_metaprogramming/remove_all_extents/requirements
3210         * tr1/4_metaprogramming/remove_all_extents/requirements/
3211         explicit_instantiations.cc
3212         * tr1/4_metaprogramming/remove_all_extents/value.cc
3213         * tr1/4_metaprogramming/remove_const
3214         * tr1/4_metaprogramming/remove_const/requirements
3215         * tr1/4_metaprogramming/remove_const/requirements/
3216         explicit_instantiations.cc
3217         * tr1/4_metaprogramming/remove_const/value.cc
3218         * tr1/4_metaprogramming/remove_cv
3219         * tr1/4_metaprogramming/remove_cv/requirements
3220         * tr1/4_metaprogramming/remove_cv/requirements/
3221         explicit_instantiations.cc
3222         * tr1/4_metaprogramming/remove_cv/value.cc
3223         * tr1/4_metaprogramming/remove_extent
3224         * tr1/4_metaprogramming/remove_extent/requirements
3225         * tr1/4_metaprogramming/remove_extent/requirements/
3226         explicit_instantiations.cc
3227         * tr1/4_metaprogramming/remove_extent/value.cc
3228         * tr1/4_metaprogramming/remove_pointer
3229         * tr1/4_metaprogramming/remove_pointer/requirements
3230         * tr1/4_metaprogramming/remove_pointer/requirements/
3231         explicit_instantiations.cc
3232         * tr1/4_metaprogramming/remove_pointer/value.cc
3233         * tr1/4_metaprogramming/remove_reference
3234         * tr1/4_metaprogramming/remove_reference/requirements
3235         * tr1/4_metaprogramming/remove_reference/requirements/
3236         explicit_instantiations.cc
3237         * tr1/4_metaprogramming/remove_reference/value.cc
3238         * tr1/4_metaprogramming/remove_volatile
3239         * tr1/4_metaprogramming/remove_volatile/requirements
3240         * tr1/4_metaprogramming/remove_volatile/requirements/
3241         explicit_instantiations.cc
3242         * tr1/4_metaprogramming/remove_volatile/value.cc
3244         Deleted in testsuite:   
3245         * tr1/4_metaprogramming/alignment_of/alignment_of.cc
3246         * tr1/4_metaprogramming/alignment_of/typedefs.cc
3247         * tr1/4_metaprogramming/array_modifications
3248         * tr1/4_metaprogramming/array_modifications/remove_all_extents.cc
3249         * tr1/4_metaprogramming/array_modifications/remove_extent.cc
3250         * tr1/4_metaprogramming/composite_type_traits
3251         * tr1/4_metaprogramming/composite_type_traits/is_arithmetic
3252         * tr1/4_metaprogramming/composite_type_traits/is_arithmetic/
3253         is_arithmetic.cc
3254         * tr1/4_metaprogramming/composite_type_traits/is_arithmetic/typedefs.cc
3255         * tr1/4_metaprogramming/composite_type_traits/is_compound
3256         * tr1/4_metaprogramming/composite_type_traits/is_compound/
3257         is_compound.cc
3258         * tr1/4_metaprogramming/composite_type_traits/is_compound/typedefs.cc
3259         * tr1/4_metaprogramming/composite_type_traits/is_fundamental
3260         * tr1/4_metaprogramming/composite_type_traits/is_fundamental/
3261         is_fundamental.cc
3262         * tr1/4_metaprogramming/composite_type_traits/is_fundamental/
3263         typedefs.cc
3264         * tr1/4_metaprogramming/composite_type_traits/is_member_pointer
3265         * tr1/4_metaprogramming/composite_type_traits/is_member_pointer/
3266         is_member_pointer.cc
3267         * tr1/4_metaprogramming/composite_type_traits/is_member_pointer/
3268         typedefs.cc
3269         * tr1/4_metaprogramming/composite_type_traits/is_object
3270         * tr1/4_metaprogramming/composite_type_traits/is_object/24808.cc
3271         * tr1/4_metaprogramming/composite_type_traits/is_object/is_object.cc
3272         * tr1/4_metaprogramming/composite_type_traits/is_object/typedefs.cc
3273         * tr1/4_metaprogramming/composite_type_traits/is_scalar
3274         * tr1/4_metaprogramming/composite_type_traits/is_scalar/is_scalar.cc
3275         * tr1/4_metaprogramming/composite_type_traits/is_scalar/typedefs.cc
3276         * tr1/4_metaprogramming/const_volatile_modifications
3277         * tr1/4_metaprogramming/const_volatile_modifications/add_const.cc
3278         * tr1/4_metaprogramming/const_volatile_modifications/add_cv.cc
3279         * tr1/4_metaprogramming/const_volatile_modifications/add_volatile.cc
3280         * tr1/4_metaprogramming/const_volatile_modifications/remove_const.cc
3281         * tr1/4_metaprogramming/const_volatile_modifications/remove_cv.cc
3282         * tr1/4_metaprogramming/const_volatile_modifications/remove_volatile.cc
3283         * tr1/4_metaprogramming/extent/extent.cc
3284         * tr1/4_metaprogramming/extent/typedefs.cc
3285         * tr1/4_metaprogramming/has_nothrow_assign/has_nothrow_assign.cc
3286         * tr1/4_metaprogramming/has_nothrow_assign/typedefs.cc
3287         * tr1/4_metaprogramming/has_nothrow_constructor/
3288         has_nothrow_constructor.cc
3289         * tr1/4_metaprogramming/has_nothrow_constructor/typedefs.cc
3290         * tr1/4_metaprogramming/has_nothrow_copy/has_nothrow_copy.cc
3291         * tr1/4_metaprogramming/has_nothrow_copy/typedefs.cc
3292         * tr1/4_metaprogramming/has_trivial_assign/has_trivial_assign.cc
3293         * tr1/4_metaprogramming/has_trivial_assign/typedefs.cc
3294         * tr1/4_metaprogramming/has_trivial_constructor/
3295         has_trivial_constructor.cc
3296         * tr1/4_metaprogramming/has_trivial_constructor/typedefs.cc
3297         * tr1/4_metaprogramming/has_trivial_copy/has_trivial_copy.cc
3298         * tr1/4_metaprogramming/has_trivial_copy/typedefs.cc
3299         * tr1/4_metaprogramming/has_trivial_destructor/
3300         has_trivial_destructor.cc
3301         * tr1/4_metaprogramming/has_trivial_destructor/typedefs.cc
3302         * tr1/4_metaprogramming/has_virtual_destructor/
3303         has_virtual_destructor.cc
3304         * tr1/4_metaprogramming/has_virtual_destructor/typedefs.cc
3305         * tr1/4_metaprogramming/helper_classes
3306         * tr1/4_metaprogramming/helper_classes/static_definition.cc
3307         * tr1/4_metaprogramming/helper_classes/true_false_type.cc
3308         * tr1/4_metaprogramming/helper_classes/true_false_type_typedefs.cc
3309         * tr1/4_metaprogramming/helper_classes/typedefs.cc
3310         * tr1/4_metaprogramming/integral_constant/true_false_type.cc
3311         * tr1/4_metaprogramming/integral_constant/typedefs.cc
3312         * tr1/4_metaprogramming/is_abstract/is_abstract.cc
3313         * tr1/4_metaprogramming/is_abstract/typedefs.cc
3314         * tr1/4_metaprogramming/is_arithmetic/is_arithmetic.cc
3315         * tr1/4_metaprogramming/is_arithmetic/typedefs.cc
3316         * tr1/4_metaprogramming/is_array/is_array.cc
3317         * tr1/4_metaprogramming/is_array/typedefs.cc
3318         * tr1/4_metaprogramming/is_base_of/is_base_of.cc
3319         * tr1/4_metaprogramming/is_base_of/typedefs.cc
3320         * tr1/4_metaprogramming/is_class/is_class.cc
3321         * tr1/4_metaprogramming/is_class/typedefs.cc
3322         * tr1/4_metaprogramming/is_compound/is_compound.cc
3323         * tr1/4_metaprogramming/is_compound/typedefs.cc
3324         * tr1/4_metaprogramming/is_const/is_const.cc
3325         * tr1/4_metaprogramming/is_const/typedefs.cc
3326         * tr1/4_metaprogramming/is_convertible/is_convertible.cc
3327         * tr1/4_metaprogramming/is_convertible/typedefs.cc
3328         * tr1/4_metaprogramming/is_empty/is_empty.cc
3329         * tr1/4_metaprogramming/is_empty/typedefs.cc
3330         * tr1/4_metaprogramming/is_enum/is_enum.cc
3331         * tr1/4_metaprogramming/is_enum/typedefs.cc
3332         * tr1/4_metaprogramming/is_floating_point/is_floating_point.cc
3333         * tr1/4_metaprogramming/is_floating_point/typedefs.cc
3334         * tr1/4_metaprogramming/is_function/is_function.cc
3335         * tr1/4_metaprogramming/is_function/typedefs.cc
3336         * tr1/4_metaprogramming/is_fundamental/is_fundamental.cc
3337         * tr1/4_metaprogramming/is_fundamental/typedefs.cc
3338         * tr1/4_metaprogramming/is_integral/is_integral.cc
3339         * tr1/4_metaprogramming/is_integral/typedefs.cc
3340         * tr1/4_metaprogramming/is_member_function_pointer/
3341         is_member_function_pointer.cc
3342         * tr1/4_metaprogramming/is_member_function_pointer/typedefs.cc
3343         * tr1/4_metaprogramming/is_member_object_pointer/
3344         is_member_object_pointer.cc
3345         * tr1/4_metaprogramming/is_member_object_pointer/typedefs.cc
3346         * tr1/4_metaprogramming/is_member_pointer/is_member_pointer.cc
3347         * tr1/4_metaprogramming/is_member_pointer/typedefs.cc
3348         * tr1/4_metaprogramming/is_object/is_object.cc
3349         * tr1/4_metaprogramming/is_object/typedefs.cc
3350         * tr1/4_metaprogramming/is_pod/is_pod.cc
3351         * tr1/4_metaprogramming/is_pod/typedefs.cc
3352         * tr1/4_metaprogramming/is_pointer/is_pointer.cc
3353         * tr1/4_metaprogramming/is_pointer/typedefs.cc
3354         * tr1/4_metaprogramming/is_polymorphic/is_polymorphic.cc
3355         * tr1/4_metaprogramming/is_polymorphic/typedefs.cc
3356         * tr1/4_metaprogramming/is_reference/is_reference.cc
3357         * tr1/4_metaprogramming/is_reference/typedefs.cc
3358         * tr1/4_metaprogramming/is_same/is_same.cc
3359         * tr1/4_metaprogramming/is_same/typedefs.cc
3360         * tr1/4_metaprogramming/is_scalar/is_scalar.cc
3361         * tr1/4_metaprogramming/is_scalar/typedefs.cc
3362         * tr1/4_metaprogramming/is_signed/is_signed.cc
3363         * tr1/4_metaprogramming/is_signed/typedefs.cc
3364         * tr1/4_metaprogramming/is_union/is_union.cc
3365         * tr1/4_metaprogramming/is_union/typedefs.cc
3366         * tr1/4_metaprogramming/is_unsigned/is_unsigned.cc
3367         * tr1/4_metaprogramming/is_unsigned/typedefs.cc
3368         * tr1/4_metaprogramming/is_void/is_void.cc
3369         * tr1/4_metaprogramming/is_void/typedefs.cc
3370         * tr1/4_metaprogramming/is_volatile/is_volatile.cc
3371         * tr1/4_metaprogramming/is_volatile/typedefs.cc
3372         * tr1/4_metaprogramming/other_transformations
3373         * tr1/4_metaprogramming/other_transformations/aligned_storage
3374         * tr1/4_metaprogramming/other_transformations/aligned_storage/
3375         aligned_storage.cc
3376         * tr1/4_metaprogramming/other_transformations/aligned_storage/
3377         typedefs.cc
3378         * tr1/4_metaprogramming/pointer_modifications
3379         * tr1/4_metaprogramming/pointer_modifications/add_pointer.cc
3380         * tr1/4_metaprogramming/pointer_modifications/remove_pointer.cc
3381         * tr1/4_metaprogramming/primary_type_categories
3382         * tr1/4_metaprogramming/primary_type_categories/is_array
3383         * tr1/4_metaprogramming/primary_type_categories/is_array/is_array.cc
3384         * tr1/4_metaprogramming/primary_type_categories/is_array/typedefs.cc
3385         * tr1/4_metaprogramming/primary_type_categories/is_class
3386         * tr1/4_metaprogramming/primary_type_categories/is_class/is_class.cc
3387         * tr1/4_metaprogramming/primary_type_categories/is_class/typedefs.cc
3388         * tr1/4_metaprogramming/primary_type_categories/is_enum
3389         * tr1/4_metaprogramming/primary_type_categories/is_enum/24808.cc
3390         * tr1/4_metaprogramming/primary_type_categories/is_enum/is_enum.cc
3391         * tr1/4_metaprogramming/primary_type_categories/is_enum/typedefs.cc
3392         * tr1/4_metaprogramming/primary_type_categories/is_floating_point
3393         * tr1/4_metaprogramming/primary_type_categories/is_floating_point/
3394         is_floating_point.cc
3395         * tr1/4_metaprogramming/primary_type_categories/is_floating_point/
3396         typedefs.cc
3397         * tr1/4_metaprogramming/primary_type_categories/is_function
3398         * tr1/4_metaprogramming/primary_type_categories/is_function/24808.cc
3399         * tr1/4_metaprogramming/primary_type_categories/is_function/
3400         is_function.cc
3401         * tr1/4_metaprogramming/primary_type_categories/is_function/typedefs.cc
3402         * tr1/4_metaprogramming/primary_type_categories/is_integral
3403         * tr1/4_metaprogramming/primary_type_categories/is_integral/
3404         is_integral.cc
3405         * tr1/4_metaprogramming/primary_type_categories/is_integral/typedefs.cc
3406         * tr1/4_metaprogramming/primary_type_categories/
3407         is_member_function_pointer
3408         * tr1/4_metaprogramming/primary_type_categories/
3409         is_member_function_pointer/is_member_function_pointer.cc
3410         * tr1/4_metaprogramming/primary_type_categories/
3411         is_member_function_pointer/typedefs.cc
3412         * tr1/4_metaprogramming/primary_type_categories/
3413         is_member_object_pointer
3414         * tr1/4_metaprogramming/primary_type_categories/
3415         is_member_object_pointer/is_member_object_pointer.cc
3416         * tr1/4_metaprogramming/primary_type_categories/
3417         is_member_object_pointer/typedefs.cc
3418         * tr1/4_metaprogramming/primary_type_categories/is_pointer
3419         * tr1/4_metaprogramming/primary_type_categories/is_pointer/
3420         is_pointer.cc
3421         * tr1/4_metaprogramming/primary_type_categories/is_pointer/typedefs.cc
3422         * tr1/4_metaprogramming/primary_type_categories/is_reference
3423         * tr1/4_metaprogramming/primary_type_categories/is_reference/
3424         is_reference.cc
3425         * tr1/4_metaprogramming/primary_type_categories/is_reference/
3426         typedefs.cc
3427         * tr1/4_metaprogramming/primary_type_categories/is_union
3428         * tr1/4_metaprogramming/primary_type_categories/is_union/is_union.cc
3429         * tr1/4_metaprogramming/primary_type_categories/is_union/typedefs.cc
3430         * tr1/4_metaprogramming/primary_type_categories/is_void
3431         * tr1/4_metaprogramming/primary_type_categories/is_void/is_void.cc
3432         * tr1/4_metaprogramming/primary_type_categories/is_void/typedefs.cc
3433         * tr1/4_metaprogramming/rank/rank.cc
3434         * tr1/4_metaprogramming/rank/typedefs.cc
3435         * tr1/4_metaprogramming/reference_modifications/add_reference.cc
3436         * tr1/4_metaprogramming/reference_modifications/remove_reference.cc
3437         * tr1/4_metaprogramming/relationships_between_types
3438         * tr1/4_metaprogramming/relationships_between_types/is_base_of
3439         * tr1/4_metaprogramming/relationships_between_types/is_base_of/
3440         is_base_of.cc
3441         * tr1/4_metaprogramming/relationships_between_types/is_base_of/
3442         typedefs.cc
3443         * tr1/4_metaprogramming/relationships_between_types/is_convertible
3444         * tr1/4_metaprogramming/relationships_between_types/is_convertible/
3445         is_convertible.cc
3446         * tr1/4_metaprogramming/relationships_between_types/is_convertible/
3447         typedefs.cc
3448         * tr1/4_metaprogramming/relationships_between_types/is_same
3449         * tr1/4_metaprogramming/relationships_between_types/is_same/is_same.cc
3450         * tr1/4_metaprogramming/relationships_between_types/is_same/typedefs.cc
3451         * tr1/4_metaprogramming/type_properties
3452         * tr1/4_metaprogramming/type_properties/alignment_of
3453         * tr1/4_metaprogramming/type_properties/alignment_of/alignment_of.cc
3454         * tr1/4_metaprogramming/type_properties/alignment_of/typedefs.cc
3455         * tr1/4_metaprogramming/type_properties/extent
3456         * tr1/4_metaprogramming/type_properties/extent/extent.cc
3457         * tr1/4_metaprogramming/type_properties/extent/typedefs.cc
3458         * tr1/4_metaprogramming/type_properties/has_nothrow_assign
3459         * tr1/4_metaprogramming/type_properties/has_nothrow_assign/
3460         has_nothrow_assign.cc
3461         * tr1/4_metaprogramming/type_properties/has_nothrow_assign/typedefs.cc
3462         * tr1/4_metaprogramming/type_properties/has_nothrow_constructor
3463         * tr1/4_metaprogramming/type_properties/has_nothrow_constructor/
3464         has_nothrow_constructor.cc
3465         * tr1/4_metaprogramming/type_properties/has_nothrow_constructor/
3466         typedefs.cc
3467         * tr1/4_metaprogramming/type_properties/has_nothrow_copy
3468         * tr1/4_metaprogramming/type_properties/has_nothrow_copy/
3469         has_nothrow_copy.cc
3470         * tr1/4_metaprogramming/type_properties/has_nothrow_copy/typedefs.cc
3471         * tr1/4_metaprogramming/type_properties/has_trivial_assign
3472         * tr1/4_metaprogramming/type_properties/has_trivial_assign/
3473         has_trivial_assign.cc
3474         * tr1/4_metaprogramming/type_properties/has_trivial_assign/typedefs.cc
3475         * tr1/4_metaprogramming/type_properties/has_trivial_constructor
3476         * tr1/4_metaprogramming/type_properties/has_trivial_constructor/
3477         has_trivial_constructor.cc
3478         * tr1/4_metaprogramming/type_properties/has_trivial_constructor/
3479         typedefs.cc
3480         * tr1/4_metaprogramming/type_properties/has_trivial_copy
3481         * tr1/4_metaprogramming/type_properties/has_trivial_copy/
3482         has_trivial_copy.cc
3483         * tr1/4_metaprogramming/type_properties/has_trivial_copy/typedefs.cc
3484         * tr1/4_metaprogramming/type_properties/has_trivial_destructor
3485         * tr1/4_metaprogramming/type_properties/has_trivial_destructor/
3486         has_trivial_destructor.cc
3487         * tr1/4_metaprogramming/type_properties/has_trivial_destructor/
3488         typedefs.cc
3489         * tr1/4_metaprogramming/type_properties/has_virtual_destructor
3490         * tr1/4_metaprogramming/type_properties/has_virtual_destructor/
3491         has_virtual_destructor.cc
3492         * tr1/4_metaprogramming/type_properties/has_virtual_destructor/
3493         typedefs.cc
3494         * tr1/4_metaprogramming/type_properties/is_abstract
3495         * tr1/4_metaprogramming/type_properties/is_abstract/is_abstract.cc
3496         * tr1/4_metaprogramming/type_properties/is_abstract/typedefs.cc
3497         * tr1/4_metaprogramming/type_properties/is_const
3498         * tr1/4_metaprogramming/type_properties/is_const/is_const.cc
3499         * tr1/4_metaprogramming/type_properties/is_const/typedefs.cc
3500         * tr1/4_metaprogramming/type_properties/is_empty
3501         * tr1/4_metaprogramming/type_properties/is_empty/is_empty.cc
3502         * tr1/4_metaprogramming/type_properties/is_empty/typedefs.cc
3503         * tr1/4_metaprogramming/type_properties/is_pod
3504         * tr1/4_metaprogramming/type_properties/is_pod/is_pod.cc
3505         * tr1/4_metaprogramming/type_properties/is_pod/typedefs.cc
3506         * tr1/4_metaprogramming/type_properties/is_polymorphic
3507         * tr1/4_metaprogramming/type_properties/is_polymorphic/24809.cc
3508         * tr1/4_metaprogramming/type_properties/is_polymorphic/
3509         is_polymorphic.cc
3510         * tr1/4_metaprogramming/type_properties/is_polymorphic/typedefs.cc
3511         * tr1/4_metaprogramming/type_properties/is_signed
3512         * tr1/4_metaprogramming/type_properties/is_signed/is_signed.cc
3513         * tr1/4_metaprogramming/type_properties/is_signed/typedefs.cc
3514         * tr1/4_metaprogramming/type_properties/is_unsigned
3515         * tr1/4_metaprogramming/type_properties/is_unsigned/is_unsigned.cc
3516         * tr1/4_metaprogramming/type_properties/is_unsigned/typedefs.cc
3517         * tr1/4_metaprogramming/type_properties/is_volatile
3518         * tr1/4_metaprogramming/type_properties/is_volatile/is_volatile.cc
3519         * tr1/4_metaprogramming/type_properties/is_volatile/typedefs.cc
3520         * tr1/4_metaprogramming/type_properties/rank
3521         * tr1/4_metaprogramming/type_properties/rank/rank.cc
3522         * tr1/4_metaprogramming/type_properties/rank/typedefs.cc
3524 2007-04-30  Hans-Peter Nilsson  <hp@axis.com>
3526         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Correct
3527         regexp to filter out -nostdinc++.
3529 2007-04-30  Paolo Carlini  <pcarlini@suse.de>
3531         PR libstdc++/30449 (equal)
3532         * include/bits/stl_algobase.h (struct __niter_base): Add.
3533         (copy(_II, _II, _OI), copy_backward(_BI1, _BI1, _BI2),
3534         fill(_ForwardIterator, _ForwardIterator, const _Tp&),
3535         fill_n(_OI, _Size, const _Tp&), equal(_II1, _II1, _II2)):
3536         Use it.
3537         (struct __copy_normal, __copy_backward_normal,
3538         struct __fill_normal, struct __fill_n_normal): Remove.
3539         (struct __equal, struct __equal_aux): Add.
3540         * include/bits/stl_iterator.h: Add _Iterator_type typedef.
3542         * include/bits/stl_algobase.h (__fill_aux(wchar_t*,
3543         wchar_t*, wchar_t), __fill_n_aux(wchar_t*, _Size, wchar_t)):
3544         Remove.
3546         * testsuite/23_containers/requirements/sequences/dr438/vector/
3547         constructor_1_neg.cc: Adjust dg-error line number.
3548         * testsuite/23_containers/requirements/sequences/dr438/vector/
3549         constructor_2_neg.cc: Likewise.
3551 2007-04-30  Paolo Carlini  <pcarlini@suse.de>
3553         * include/tr1/type_traits (is_pod): Use __is_pod.
3554         * testsuite/tr1/4_metaprogramming/type_properties/
3555         has_trivial_destructor/has_trivial_destructor.cc: Adjust.
3556         * testsuite/tr1/4_metaprogramming/type_properties/
3557         has_nothrow_constructor/has_nothrow_constructor.cc: Likewise.
3558         * testsuite/tr1/4_metaprogramming/type_properties/
3559         has_trivial_constructor/has_trivial_constructor.cc: Likewise.
3560         * testsuite/tr1/4_metaprogramming/type_properties/
3561         is_pod/is_pod.cc: Likewise.
3563 2007-04-29  Paolo Carlini  <pcarlini@suse.de>
3565         * include/bits/localefwd.h: Remove redundant inline qualifiers.
3566         (__check_facet): Move...
3567         * include/bits/basic_ios.h: ... here.
3568         (widen(char), narrow(char_type, char)): Define inline.
3569         * include/bits/basic_ios.tcc (widen(char), narrow(char_type, char)):
3570         Remove.
3572 2007-04-27  Paolo Carlini  <pcarlini@suse.de>
3574         DR 438, [DR].
3575         * include/bits/basic_string.h (_S_construct_aux(_InIterator,
3576         _InIterator, const _Alloc&, __true_type)): Do not cast the
3577         second argument.
3578         * include/ext/rc_string_base.h (_S_construct_aux(_Integer,
3579         _Integer, const _Alloc&, std::__true_type)): Likewise.
3580         * include/ext/sso_string_base.h (_M_construct_aux(_InIterator,
3581         _InIterator, std::__true_type)): Likewise.
3582         * include/bits/stl_deque.h (_M_initialize_dispatch(_Integer,
3583         _Integer, __true_type)): Cast the first argument.
3584         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do
3585         not cast the arguments.
3586         (_M_insert_dispatch(iterator, _Integer, _Integer, __true_type)):
3587         Likewise.
3588         * include/bits/stl_list.h (_M_initialize_dispatch(_Integer,
3589         _Integer, __true_type)): Likewise.
3590         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do
3591         not cast both arguments.
3592         * include/bits/stl_bvector.h (_M_initialize_dispatch(_Integer,
3593         _Integer, __true_type)): Cast the first argument.
3594         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do not
3595         cast the arguments.
3596         * include/bits/stl_vector.h (_M_initialize_dispatch(_Integer,
3597         _Integer, __true_type)): Cast the first argument.
3598         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do not
3599         cast the arguments.
3600         (_M_insert_dispatch(iterator, _Integer, _Integer, __true_type)):
3601         Likewise.
3602         * testsuite/21_strings/basic_string/requirements/dr438/
3603         constructor.cc: New.
3604         * testsuite/ext/vstring/requirements/dr438/constructor.cc: Likewise.
3605         * testsuite/23_containers/requirements/sequences/dr438/deque/
3606         assign_neg.cc: Likewise.
3607         * testsuite/23_containers/requirements/sequences/dr438/deque/
3608         constructor.cc: Likewise.
3609         * testsuite/23_containers/requirements/sequences/dr438/deque/
3610         constructor_1_neg.cc: Likewise.
3611         * testsuite/23_containers/requirements/sequences/dr438/deque/
3612         constructor_1_neg.cc: Likewise.
3613         * testsuite/23_containers/requirements/sequences/dr438/deque/
3614         insert_neg.cc: Likewise.
3615         * testsuite/23_containers/requirements/sequences/dr438/list/
3616         assign_neg.cc: Likewise.
3617         * testsuite/23_containers/requirements/sequences/dr438/list/
3618         constructor.cc: Likewise.
3619         * testsuite/23_containers/requirements/sequences/dr438/list/
3620         constructor_1_neg.cc: Likewise.
3621         * testsuite/23_containers/requirements/sequences/dr438/list/
3622         constructor_1_neg.cc: Likewise.
3623         * testsuite/23_containers/requirements/sequences/dr438/list/
3624         insert_neg.cc: Likewise.
3625         * testsuite/23_containers/requirements/sequences/dr438/vector/
3626         assign_neg.cc: Likewise.
3627         * testsuite/23_containers/requirements/sequences/dr438/vector/
3628         constructor.cc: Likewise.
3629         * testsuite/23_containers/requirements/sequences/dr438/vector/
3630         constructor_1_neg.cc: Likewise.
3631         * testsuite/23_containers/requirements/sequences/dr438/vector/
3632         constructor_1_neg.cc: Likewise.
3633         * testsuite/23_containers/requirements/sequences/dr438/vector/
3634         insert_neg.cc: Likewise.
3635         * testsuite/23_containers/requirements/sequences/dr438/vector/
3636         bool/constructor.cc: Likewise.
3637         * docs/html/ext/howto.html: Add an entry for DR 438.
3639 2007-04-25  Paolo Carlini  <pcarlini@suse.de>
3641         * include/bits/locale_classes.h: Remove redundant inline specifiers.
3642         * include/bits/ios_base.h: Likewise.
3643         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust dg-error line
3644         numbers.
3645         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
3647 2007-04-24  Paolo Carlini  <pcarlini@suse.de>
3649         * include/bits/locale_facets.h (class collate, class collate_byname):
3650         Move...
3651         * include/bits/locale_classes.h: ... here.
3652         * include/bits/locale_facets.tcc (locale::combine, locale::operator(),
3653         has_facet, use_facet, collate::_M_compare, collate::_M_transform,
3654         collate::do_compare, collate::do_transform, collate::do_hash): Move...
3655         * include/bits/locale_classes.tcc: ... here, new.
3656         * include/Makefile.am: Add.
3657         * testsuite/util/testsuite_abi.h: Include <locale>.
3658         * include/std/locale: Tweak.
3659         * include/std/istream: Likewise.
3660         * include/std/ostream: Likewise.
3661         * include/bits/codecvt.h: Likewise.
3662         * include/Makefile.in: Regenerate.
3664         * include/bits/codecvt.h: Adjust extern template declarations.
3665         * include/bits/ostream_insert.h: Likewise.
3666         * include/bits/ostream.tcc: Likewise.
3668         * include/bits/locale_facets.h: Do not include <bits/codecvt.h>.
3669         * include/std/fstream: Do it here.
3670         * include/bits/locale_facets_nonio.h: Likewise.
3672 2007-04-23  Paolo Carlini  <pcarlini@suse.de>
3674         * include/bits/locale_facets.h (class time_base,
3675         struct __timepunct_cache, class __timepunct, class time_get,
3676         class time_get_byname, class time_put, class time_put_byname,
3677         class money_base, struct __moneypunct_cache, class moneypunct,
3678         class moneypunct_byname, class money_get, class money_put,
3679         struct messages_base, class messages, class messages_byname): Move...
3680         * include/bits/locale_facets_nonio.h: ... here.
3681         * include/bits/locale_facets.tcc
3682         (struct __use_cache<__moneypunct_cache<> >,
3683         __moneypunct_cache<>::_M_cache, money_get<>::_M_extract,
3684         money_get<>::__do_get, money_get<>::do_get, money_put<>::_M_insert,
3685         money_put<>::__do_put, money_put<>::do_put, time_get<>::do_date_order,
3686         time_get<>::_M_extract_via_format, time_get<>::_M_extract_num,
3687         time_get<>::_M_extract_name, time_get<>::do_get_time,
3688         time_get<>::do_get_date, time_get<>::do_get_weekday,
3689         time_get<>::do_get_monthname, time_get<>::do_get_year, time_put<>::put,
3690         time_put<>::do_put): Move...
3691         * include/bits/locale_facets_nonio.tcc: ... here.
3692         * include/Makefile.am: Add.
3693         * include/std/locale: Adjust includes.
3694         * include/std/fstream: Likewise.
3695         * include/std/istream: Likewise.
3696         * include/std/ostream: Likewise.
3697         * include/Makefile.in: Regenerate.
3699 2007-04-23  Nathan Sidwell  <nathan@codesourcery.com>
3701         * scripts/testsuite_flags.in: Add --build-cc option.
3702         * testsuite/lib/libstdc++.exp (libstdc++_init): Set cc.  Fix typo
3703         in previous change.
3704         (v3_target_compile_as_c): Use cc.
3706 2007-04-22  Mark Mitchell  <mark@codesourcery.com>
3708         * testsuite/lib/libstdc++.exp (libstdc++_init): Use the same flags
3709         for remote host testing we use for local host testing.  Copy all
3710         testsuite headers to the remote host
3711         (v3_target_compile_as_c): Use remote_exec, not just exec.
3713 2007-04-22  Paolo Carlini  <pcarlini@suse.de>
3715         * include/tr1/functional: Formatting fixes.
3717 2007-04-22  Paolo Carlini  <pcarlini@suse.de>
3719         * include/ext/concurrence.h: Do not include <cstdlib>, use
3720         __builtin_abort.
3721         * include/debug/debug.h: Likewise.
3722         * include/tr1/memory: Likewise.
3723         * include/tr1/boost_shared_ptr.h: Likewise.
3724         * include/tr1/functional: Likewise.
3726 2007-04-22  Paolo Carlini  <pcarlini@suse.de>
3728         * include/bits/locale_facets.tcc: Do not include <typeinfo>.
3729         * testsuite/27_io/basic_ios/imbue/14072.cc: Do it here.
3730         * testsuite/27_io/basic_ios/cons/char/3.cc: Likewise.
3731         * testsuite/27_io/basic_istream/sentry/pod/1.cc: Likewise.
3732         * testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
3733         * testsuite/21_strings/basic_string/inserters_extractors/
3734         pod/10081-in.cc: Likewise.
3735         * testsuite/21_strings/basic_string/inserters_extractors/
3736         pod/10081-out.cc: Likewise.
3737         * testsuite/22_locale/locale/cons/2.cc: Likewise.
3738         * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
3739         * testsuite/22_locale/numpunct/members/pod/2.cc: Likewise.
3740         * testsuite/22_locale/global_templates/1.cc: Likewise.
3742 2007-04-19  Joseph Myers  <joseph@codesourcery.com>
3744         * configure.ac: Allow both powerpc*-*-linux* and powerpc*-*-gnu*
3745         for long double compatibility.
3746         * configure: Regenerate.
3747         * src/complex_io.cc, src/istream-inst.cc, src/ostream-inst.cc:
3748         Condition some _GLIBCXX_LDBL_COMPAT calls on _GLIBCXX_USE_WCHAR_T.
3750 2007-04-14  Steve Ellcey  <sje@cup.hp.com>
3752         * configure.ac: Change how LIBSUPCXX_PICFLAGS is set.
3753         * configure: Regenerate.
3755 2007-04-14  Paolo Carlini  <pcarlini@suse.de>
3757         * config/locale/generic/c_locale.cc: Include <limits>.
3759 2007-04-13  Paolo Carlini  <pcarlini@suse.de>
3761         PR libstdc++/31556
3762         * include/bits/stl_algobase.h (equal(_InputIterator1, _InputIterator1,
3763         _InputIterator2, _BinaryPredicate), mismatch(_InputIterator1,
3764         _InputIterator1, _InputIterator2, _BinaryPredicate)): Convert
3765         predicate return to bool.
3766         * include/bits/stl_algo.h (__find_if(_InputIterator, _InputIterator,
3767         _Predicate, input_iterator_tag), search(_ForwardIterator1,
3768         _ForwardIterator1, _ForwardIterator2, _ForwardIterator2,
3769         _BinaryPredicate), __search_n(_ForwardIterator, _ForwardIterator,
3770         _Integer, const _Tp&, _BinaryPredicate, std::forward_iterator_tag),
3771         __search_n(_RandomAccessIter, _RandomAccessIter, _Integer, const _Tp&,
3772         _BinaryPredicate, std::random_access_iterator_tag),
3773         search_n(_ForwardIterator, _ForwardIterator, _Integer, const _Tp&,
3774         _BinaryPredicate), remove_copy_if(_InputIterator, _InputIterator,
3775         _OutputIterator, _Predicate), __unique_copy(_ForwardIterator,
3776         _ForwardIterator, _OutputIterator, _BinaryPredicate,
3777         forward_iterator_tag, output_iterator_tag),
3778         __unique_copy(_InputIterator, _InputIterator, _OutputIterator,
3779         _BinaryPredicate, input_iterator_tag, output_iterator_tag),
3780         __unique_copy(_InputIterator, _InputIterator, _OutputIterator,
3781         _BinaryPredicate, input_iterator_tag, output_iterator_tag),
3782         __unique_copy(_InputIterator, _InputIterator, _ForwardIterator,
3783         _BinaryPredicate, input_iterator_tag, forward_iterator_tag),
3784         unique(_ForwardIterator, _ForwardIterator, _BinaryPredicate),
3785         __partition(_BidirectionalIterator, _BidirectionalIterator, _Predicate,
3786         bidirectional_iterator_tag), binary_search(_ForwardIterator,
3787         _ForwardIterator, const _Tp&, _Compare),
3788         next_permutation(_BidirectionalIterator, _BidirectionalIterator,
3789         _Compare), prev_permutation(_BidirectionalIterator,
3790         _BidirectionalIterator, _Compare)): Likewise.
3792 2007-04-13  Paolo Carlini  <pcarlini@suse.de>
3794         PR libstdc++/31554
3795         * include/bits/stl_algo.h (stable_partition): Convert __buf.size()
3796         to _DistanceType.
3798 2007-04-13  Paolo Carlini  <pcarlini@suse.de>
3800         * include/ext/numeric_traits.h: Do not include <limits>.
3801         (__numeric_traits_integer::__is_signed, __digits): Add.
3802         (__numeric_traits_floating::__digits10, __max_exponent10): Add.
3803         * src/istream.cc (ignore<char>(streamsize, int_type), operator>>
3804         (basic_istream<char>&, char*), ignore<wchar_t>(streamsize,
3805         int_type)): Use the latter.
3806         * src/compatibility.cc (ignore<char>(streamsize),
3807         ignore<wchar_t>(streamsize)): Likewise.
3808         * include/ext/vstring_util.h (__vstring_utility<>::_S_compare):
3809         Likewise.
3810         * include/bits/stl_memory.h (__get_temporary_buffer): Likewise.
3811         * include/bits/stl_algobase.h (lexicographical_compare(const char*,
3812         const char*, const char*, const char*)): Likewise.
3813         * include/bits/locale_facets.tcc (num_get<>::_M_extract_int(_InIter,
3814         _InIter, ios_base&, ios_base::iostate&, _ValueT&),
3815         num_put<>::_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT),
3816         num_put<>::_M_insert_float(_OutIter, ios_base&, _CharT, char,
3817         _ValueT), collate<>::do_hash(const _CharT*, const _CharT*)): Likewise.
3818         * include/bits/basic_string.h (basic_string<>::_S_compare): Likewise.
3819         * include/bits/istream.tcc (operator>>(short&), operator>>(int&),
3820         ignore(streamsize), ignore(streamsize, int_type), operator>>
3821         (basic_istream<>&, _CharT*)): Likewise.
3822         * include/bits/stl_bvector.h (vector<bool>::max_size): Likewise.
3823         * include/tr1/functional_hash.h (struct hash<long double>): Likewise.
3824         * include/std/istream: Do not include <limits>.
3825         * include/tr1/cmath: Include <limits>.
3826         * testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
3827         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
3828         Likewise.
3829         * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
3830         Likewise.
3831         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
3832         Likewise.
3833         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
3834         Likewise.
3835         * testsuite/27_io/ios_base/storage/2.cc: Likewise.
3837         * include/tr1/hashtable: Do not include the whole <iterator>.
3839 2007-04-11  Paolo Carlini  <pcarlini@suse.de>
3841         * config/locale/gnu/c_locale.h: Do not include <langinfo.h>
3842         and <iconv.h>.
3843         * config/locale/gnu/c++locale_internal.h: Include <langinfo.h>.
3845 2007-04-11  Paolo Carlini  <pcarlini@suse.de>
3847         * include/std/istream (class basic_istream<>): Remove unneded friend
3848         declarations.
3850 2007-04-11  Paolo Carlini  <pcarlini@suse.de>
3852         * testsuite/22_locale/num_get/get/wchar_t/1.cc: Initialize v.
3854 2007-04-11  Paolo Carlini  <pcarlini@suse.de>
3856         * include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
3857         ios_base&, ios_base::iostate&, void*&)): Fix for sizeof(void*)
3858         > sizeof(unsigned long).
3860         * testsuite/22_locale/num_get/get/char/1.cc: Fix void* test.
3861         * testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
3863         * testsuite/22_locale/num_put/put/char/1.cc: Tweak comment.
3864         * testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
3866 2007-04-11  Zack Weinberg  <zackw@panix.com>
3868         * include/std/iosfwd: Do not include <bits/c++locale.h> and
3869         <bits/functexcept.h>.
3871 2007-04-10  Benjamin Kosnik  <bkoz@redhat.com>
3873         * include/ext/pb_ds/detail/resize_policy/
3874         cc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify
3875         namespace std members.  
3876         * include/ext/pb_ds/detail/list_update_policy/
3877         counter_lu_metadata.hpp: Same.
3878         * include/ext/throw_allocator.h: Same.
3879         * include/ext/pod_char_traits.h: Same.
3880         * include/ext/malloc_allocator.h: Same.
3881         * libsupc++/del_op.cc: Same, simplify.
3883         * include/bits/c++config: Adjust macro name.
3884         
3885         * include/c_global/cstring: Alphabetize.
3886         * include/c_global/cwctype: Same.
3887         
3888 2007-04-10  Paolo Carlini  <pcarlini@suse.de>
3890         * include/tr1/cmath: Include <bits/stl_algobase.h> instead of
3891         the whole <algorithm>.
3893 2007-04-10  Paolo Carlini  <pcarlini@suse.de>
3895         * include/tr1/type_traits (__is_function_helper): New, uses
3896         variadic templates.
3897         (is_function): Forward to the latter.
3898         * testsuite/tr1/4_metaprogramming/primary_type_categories/
3899         is_function/is_function.cc: Add test.
3901 2007-04-10  Paolo Carlini  <pcarlini@suse.de>
3903         PR libstdc++/28277 (partial: vstring bits)
3904         * include/bits/ostream_insert.h: New.
3905         * include/Makefile.am: Add.
3906         * include/ext/vstring.h (operator<<(basic_ostream<>&,
3907         const __versa_string<>&): Forward to __ostream_insert.
3908         * include/bits/basic_string.h (operator<<(basic_ostream<>&,
3909         const string<>&)): Likewise.
3910         * include/std/ostream (operator<<(basic_ostream<>&, _CharT),
3911         operator<<(basic_ostream<char,>&, char), operator<<(basic_ostream<>&,
3912         const _CharT*), operator<<(basic_ostream<char,>&, const char*)):
3913         Likewise.
3914         * include/ext/vstring.tcc (operator<<(basic_ostream<>&,
3915         const __versa_string<>&)): Remove.
3916         (class basic_ostream): Remove friend declarations.
3917         (basic_ostream<>::_M_write(char_type, streamsize),
3918         _M_insert(const char_type*, streamsize)): Remove.
3919         * include/bits/ostream.tcc (_M_insert(const char_type*, streamsize)):
3920         Remove definition.
3921         (operator<<(basic_ostream<>&, const char*)): Use __ostream_insert.
3922         * config/abi/pre/gnu.ver: Adjust.
3923         * src/ostream-inst.cc: Add __ostream_insert instantiations.
3924         * include/bits/locale_facets.h (__pad<>::_S_pad): Remove __num
3925         parameter.
3926         * include/bits/locale_facets.tcc (__pad<>::_S_pad): Adjust.
3927         (num_put<>::_M_pad(_CharT, streamsize, ios_base&, _CharT*,
3928         const _CharT*, int&)): Likewise.
3929         * include/Makefile.in: Rebuild.
3930         * testsuite/ext/vstring/inserters_extractors/char/28277.cc: New.
3931         * testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: New.
3933         * include/ext/vstring_util.h: Do not include the whole <locale>.
3934         * include/ext/vstring.tcc (operator>>(basic_istream<>&,
3935         __versa_string<>&, getline(basic_istream<>&, __versa_string<>&,
3936         _CharT)): Tweak to refer to ios_base as a base of istream; do not
3937         refer to non-standard types of istream.
3938         * include/bits/istream.tcc (operator>>(basic_istream<>&, _CharT*),
3939         ws(basic_istream<>&)): Do not refer to non-standard types of istream.
3940         * include/std/bitset (operator>>(std::basic_istream<>&, bitset<>&)):
3941         Avoid using basic_streambuf<>*.
3943         * include/bits/istream.tcc (operator>>(basic_istream<>&,
3944         basic_string<>&), getline(basic_istream<>&, basic_string<>&, _CharT)):
3945         Move...
3946         * include/bits/basic_string.tcc: ... here; tweak to refer to ios_base
3947         as a base of istream; do not refer to non-standard types of istream.
3948         * include/std/string: Tweak includes.
3950         * include/ext/type_traits.h (__is_null_pointer): Add.
3951         * include/ext/rc_string_base.h: Use it.
3952         * include/ext/sso_string_base.h: Likewise.
3953         * include/bits/basic_string.tcc (__is_null_pointer): Remove, use
3954         the above.
3955         * include/ext/vstring_util.h (__vstring_utility<>::_S_is_null_pointer):
3956         Remove.
3958 2007-04-09  Paolo Carlini  <pcarlini@suse.de>
3960         * include/tr1/type_traits_fwd.h (__is_union_or_class): Remove.
3961         * include/tr1/type_traits (struct __in_array,
3962         struct __is_union_or_class, struct __is_union_or_class_helper,
3963         struct __is_empty_helper, struct __is_polymorphic_helper):
3964         Remove.
3965         (struct is_enum): Use __is_enum.
3966         (struct is_union): Use __is_union.
3967         (struct is_class): Use __is_class.
3968         (struct is_function): Adjust.
3969         (struct is_empty): Use __is_empty.
3970         (struct is_polymorphic): Use __is_polymorphic.
3971         (struct is_abstract): Use __is_abstract.
3972         (struct has_virtual_destructor): Use __has_virtual_destructor.
3973         (struct __is_base_of_helper): Use __is_base_of.
3974         * testsuite/tr1/4_metaprogramming/composite_type_traits/
3975         is_union_or_class/typedefs.cc: Remove.
3976         * testsuite/tr1/4_metaprogramming/composite_type_traits/
3977         is_union_or_class/is_union_or_class.cc: Likewise.
3978         * testsuite/tr1/4_metaprogramming/primary_type_categories/
3979         is_class/typedefs.cc: New.
3980         * testsuite/tr1/4_metaprogramming/primary_type_categories/
3981         is_class/is_class.cc: Likewise.
3982         * testsuite/tr1/4_metaprogramming/primary_type_categories/
3983         is_union/typedefs.cc: Likewise.
3984         * testsuite/tr1/4_metaprogramming/primary_type_categories/
3985         is_union/is_union.cc: Likewise.
3986         * testsuite/tr1/4_metaprogramming/type_properties/
3987         has_virtual_destructor/typedefs.cc: Likewise.
3988         * testsuite/tr1/4_metaprogramming/type_properties/
3989         has_virtual_destructor/has_virtual_destructor.cc: Likewise.
3990         * testsuite/util/testsuite_tr1.h (class VirtualDestructorClass): Add.
3991         * testsuite/tr1/4_metaprogramming/type_properties/is_polymorphic/
3992         is_polymorphic.cc: Add test.
3994 2007-04-08  Alexey Beshenov  <bav.272304@gmail.com>
3996         PR libstdc++/31511
3997         * include/c_global/cmath.tcc (__cmath_power): Use _Tp(1).
3998         * include/c_std/cmath.tcc (__cmath_power): Likewise.
4000 2007-04-06  Paolo Carlini  <pcarlini@suse.de>
4002         PR libstdc++/31117
4003         * config/locale/gnu/c_locale.cc (__convert_to_v): Do not use errno,
4004         just check that the value is finite.
4005         * config/locale/generic/c_locale.cc (__convert_to_v): Likewise.
4007 2007-04-06  Paolo Carlini  <pcarlini@suse.de>
4009         * include/ext/type_traits.h (__numeric_traits): Move...
4010         * include/ext/numeric_traits.h: ... here.
4011         * include/Makefile.am: Add.
4012         * include/ext/pb_ds/detail/type_utils.hpp: Include 
4013         <ext/numeric_traits.h> too.
4014         * include/tr1/random: Likewise.
4015         * testsuite/ext/type_traits/numeric_traits.cc: Move...
4016         * testsuite/ext/numeric_traits/numeric_traits.cc: ... here.
4017         * include/Makefile.in: Regenerate.
4019 2007-04-04  Paolo Carlini  <pcarlini@suse.de>
4021         * include/bits/valarray_array.h (__valarray_default_construct(_Tp*,
4022         _Tp*)): Use __is_scalar instead of __is_pod.
4024 2007-04-03  Paolo Carlini  <pcarlini@suse.de>
4026         * include/bits/stl_algobase.h (__copy_aux(_II, _II, _OI),
4027         __copy_backward_aux(_BI1, _BI1, _BI2)): Use __is_pod.
4028         * include/bits/stl_deque.h (deque<>::_M_destroy_data(iterator,
4029         iterator, const std::allocator<>&)): Use __has_trivial_constructor.
4030         (deque<>::_M_destroy_data_dispatch): Remove.
4031         * include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
4032         _InputIterator, _ForwardIterator), uninitialized_fill(_ForwardIterator,
4033         _ForwardIterator, const _Tp&), uninitialized_fill_n(_ForwardIterator,
4034         _Size, const _Tp&)): Use __is_pod.
4035         * include/bits/stl_tempbuf.h (_Temporary_buffer::
4036         _Temporary_buffer(_ForwardIterator, _ForwardIterator)): Use __is_pod.
4037         (_Temporary_buffer::_M_initialize_buffer): Remove.
4038         * include/bits/stl_construct.h (_Destroy(_ForwardIterator,
4039         _ForwardIterator)): Use __has_trivial_destructor.
4040         (__destroy_aux): Remove.
4042 2007-04-03  Paolo Carlini  <pcarlini@suse.de>
4044         * include/bits/stl_map.h (map<>::insert(iterator, const value_type&):
4045         Uglify parameter.
4047 2007-04-03  Paolo Carlini  <pcarlini@suse.de>
4049         PR libstdc++/31440
4050         * include/bits/stl_tree.h (_M_lower_bound(_Link_type, _Link_type,
4051         const _Key&), _M_upper_bound(_Link_type, _Link_type, const _Key&)):
4052         Add.
4053         (_M_equal_range(const _Key&) const): Remove.
4054         (lower_bound(const key_type&), lower_bound(const key_type&) const,
4055         upper_bound(const key_type&), upper_bound(const key_type&) const,
4056         equal_range(const key_type&), equal_range(const key_type&) const):
4057         Adjust.
4058         (find(const _Key&), find(const _Key&) const): Tweak.
4059         * testsuite/23_containers/map/operations/31440.cc: New.
4061 2007-04-02  Matthew Levine  <gcc@severeweblint.org>
4062             Paolo Carlini  <pcarlini@suse.de>
4064         PR libstdc++/31370
4065         * include/bits/stl_bvector.h (vector<bool>::max_size): Fix.
4066         (vector<bool>::_M_check_len): Add.
4067         * include/bits/vector.tcc (_M_fill_insert(iterator, size_type, bool),
4068         _M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
4069         std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Use it.
4070         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: New.
4071         * testsuite/23_containers/vector/bool/capacity/29134.cc: Adjust.
4073         * include/bits/stl_vector.h (vector<>::_M_check_len): Add.
4074         * include/bits/vector.tcc (_M_insert_aux(iterator, const _Tp&),
4075         _M_fill_insert(iterator, size_type, const value_type&),
4076         _M_range_insert(iterator, _ForwardIterator, _ForwardIterator,
4077         std::forward_iterator_tag)): Use it.
4079 2007-04-02  Paolo Carlini  <pcarlini@suse.de>
4081         PR libstdc++/31401 (vstring bits)
4082         * include/ext/vstring.tcc (find(const _CharT*, size_type,
4083         size_type)): Avoid unsigned overflow.
4085 2007-04-02  Paolo Carlini  <pcarlini@suse.de>
4087         * include/bits/locale_facets.tcc (num_put<>::do_put(iter_type,
4088         ios_base&, char_type, const void*)): Fix for sizeof(const void*)
4089         > sizeof(unsigned long).
4091 2007-04-01  Andreas Tobler  <a.tobler@schweiz.org>
4093         * include/tr1/poly_laguerre.tcc: Missing s/__alpha/__alpha1, line 278.
4095 2007-04-01  Richard Henderson  <rth@redhat.com>
4097         * include/tr1/poly_laguerre.tcc: s/__alpha/__alpha1/g.
4098         * include/tr1/ell_integral.tcc: Likewise.
4100 2007-03-31  Paolo Carlini  <pcarlini@suse.de>
4102         * include/bits/stl_bvector.h (_M_fill_insert(iterator, size_type,
4103         bool), _M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
4104         std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Move
4105         out of line...
4106         * include/bits/vector.tcc: ... here.
4108 2007-03-30  Paolo Carlini  <pcarlini@suse.de>
4110         PR c++/26099
4111         * include/bits/cpp_type_traits.h (struct __is_pod, struct __is_empty):
4112         Remove.
4113         * include/bits/valarray_array.h: Adjust.
4114         * include/bits/allocator.h: Likewise.
4115         * include/bits/stl_tree.h: Likewise.
4117 2007-03-30  Paolo Carlini  <pcarlini@suse.de>
4119         PR libstdc++/31401
4120         * include/bits/basic_string.tcc (find(const _CharT*, size_type,
4121         size_type)): Avoid unsigned overflow.
4122         * testsuite/21_strings/basic_string/find/char/4.cc: New.
4123         * testsuite/21_strings/basic_string/find/wchar_t/4.cc: Likewise.
4125 2007-03-27  Paolo Carlini  <pcarlini@suse.de>
4127         * include/bits/fstream.tcc (basic_filebuf<>::underflow):
4128         Don't call codecvt::in at all if _M_ext_next >= _M_ext_end.
4129         * testsuite/27_io/basic_filebuf/underflow/char/3.cc: New.
4131 2007-03-26  Benjamin Kosnik  <bkoz@redhat.com>
4133         * include/c_compatibility/complex.h: Without
4134         __GXX_EXPERIMENTAL_CXX0X__ include_next complex.h.      
4135         * include/c_compatibility/fenv.h: Same.
4136         * include/c_compatibility/inttypes.h: Same.
4137         * include/c_compatibility/stdbool.h: Same.
4138         * include/c_compatibility/stdint.h: Same.
4139         * include/c_compatibility/tgmath.h: Same.
4141         * include/tr1/cinttypes: Use include_next.
4142         * include/tr1/cstdint: Same.
4143         * include/tr1/cstdbool: Same.
4145         * acinclude.m4 (GLIBCXX_ENABLE_C99): Add check for tgmath.h
4146         * configure: Regenerate.
4147         * config.h.in: Same.
4148         
4149 2007-03-25  Paolo Carlini  <pcarlini@suse.de>
4151         * include/tr1/functional: Formatting fixes.
4153 2007-03-23  Paolo Carlini  <pcarlini@suse.de>
4155         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc:
4156         Likewise use std::numeric_limits<>::max().
4157         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4402.cc:
4158         Minor tweaks.
4160 2007-03-23  Hans-Peter Nilsson  <hp@axis.com>
4162         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4402.cc
4163         (test02): Use std::numeric_limits<>::max() to get suitable large
4164         values.
4166 2007-03-22  Benjamin Kosnik  <bkoz@redhat.com>
4168         * testsuite/21_strings/headers/cstdlib/functions_std.cc: Without
4169         C99 support, _GLIBCXX_USE_WCHAR_T not defined, so
4170         dg-require-c-std.
4171         * testsuite/tr1/6_containers/headers/functional/synopsis.cc: Same.
4172         * testsuite/27_io/headers/iostream/synopsis.cc: Same.
4173         * testsuite/27_io/headers/streambuf/types_std.cc: Same.
4174         * testsuite/27_io/headers/sstream/types_std.cc: Same.
4175         * testsuite/27_io/headers/ostream/types_std.cc: Same.
4176         * testsuite/27_io/headers/istream/types_std.cc: Same.
4177         * testsuite/27_io/headers/iostream/types_std.cc: Same.
4178         * testsuite/27_io/headers/fstream/types_std.cc: Same.
4179         * testsuite/21_strings/headers/string/types_std.cc: Same.
4180         * testsuite/21_strings/headers/cwctype/functions_std.cc: Same.
4181         * testsuite/21_strings/headers/cwctype/types_std.cc: Same.
4182         * testsuite/21_strings/headers/cwchar/functions_std.cc: Same.
4183         * testsuite/21_strings/headers/cwchar/types_std.cc: Same.
4184         
4185         * include/Makefile.am (c_compatibility_headers): Add fenv.h.
4186         * include/Makefile.in: Regenerate.
4187         * configure.host: Update comment.
4189         * include/tr1/cfenv: Use include_next.
4191 2007-03-19  Paolo Carlini  <pcarlini@suse.de>
4193         * include/tr1/tuple (get(_Tuple_impl<>&, get(const _Tuple_impl<>&):
4194         Rename as __get_helper.
4195         (get(tuple<>&, get(const tuple<>&)): Forward to the latter.
4197 2007-03-19  Benjamin Kosnik  <bkoz@redhat.com>
4199         * docs/doxygen/user.cfg.in: Update for new includes, macros.
4200         
4201 2007-03-18  Mark Mitchell  <mark@codesourcery.com>
4203         * libsupc++/array_type_info.cc: Likewise.
4204         * libsupc++/bad_cast.cc: Likewise.
4205         * libsupc++/bad_typeid.cc: Likewise.
4206         * libsupc++/class_type_info.cc: Likewise.
4207         * libsupc++/dyncast.cc: Likewise.
4208         * libsupc++/enum_type_info.cc: Likewise.
4209         * libsupc++/function_type_info.cc: Likewise.
4210         * libsupc++/fundamental_type_info.cc: Likewise.
4211         * libsupc++/pbase_type_info.cc: Likewise.
4212         * libsupc++/pmem_type_info.cc: Likewise.
4213         * libsupc++/pointer_type_info.cc: Likewise.
4214         * libsupc++/si_class_type_info.cc: Likewise.
4215         * libsupc++/vmi_class_type_info.cc: Likewise.
4216         * libsupc++/tinfo.h: Move inline type_info functions here.
4217         * libsupc++/tinfo.cc: Separate type_info classes into their own
4218         files.
4219         * libsupc++/tinfo2.cc: Likewise.
4220         * Makefile.am (sources): Mention new files.
4221         * Makefile.in: Regenerated.
4223 2007-03-16  Benjamin Kosnik  <bkoz@redhat.com>
4225         * testsuite/27_io/headers/cinttypes/types_std_c++0x.cc: Use
4226         -std=gnu++0x instead of -std=c++0x for testing.
4227         * testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Same.
4228         * testsuite/26_numerics/headers/random/types_std_c++0x.cc: Same.
4229         * testsuite/26_numerics/headers/cfenv/types_std_c++0x.cc: Same.
4230         * testsuite/26_numerics/headers/cstdlib/types_std_c++0x.cc: Same.
4231         * testsuite/26_numerics/headers/cmath/types_std_c++0x.cc: Same.
4232         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Same.
4233         * testsuite/17_intro/headers/c++200x/all.cc: Same.
4234         * testsuite/17_intro/using_namespace_std_tr1_neg.cc: Same.
4235         * testsuite/23_containers/hash/requirements/
4236         explicit_instantiation.cc: Same.
4237         * testsuite/23_containers/unordered_map/requirements/
4238         explicit_instantiation.cc: Same.
4239         * testsuite/23_containers/tuple/requirements/
4240         explicit_instantiation.cc: Same.
4241         * testsuite/23_containers/unordered_multimap/requirements/
4242         explicit_instantiation.cc: Same.
4243         * testsuite/23_containers/unordered_set/requirements/
4244         explicit_instantiation.cc: Same.
4245         * testsuite/23_containers/headers/tuple/types_std_c++0x.cc: Same.
4246         * testsuite/23_containers/unordered_multiset/requirements/
4247         explicit_instantiation.cc: Same.
4248         * testsuite/23_containers/array/requirements/
4249         explicit_instantiation.cc: Same.
4250         * testsuite/20_util/enable_shared_from_this/requirements/
4251         explicit_instantiation.cc: Same.
4252         * testsuite/20_util/headers/functional/types_std_c++0x.cc: Same.
4253         * testsuite/20_util/headers/functional/
4254         using_namespace_std_placeholders.cc: Same.
4255         * testsuite/20_util/headers/type_traits/types_std_c++0x.cc: Same.
4256         * testsuite/20_util/headers/memory/types_std_c++0x.cc: Same.
4257         * testsuite/20_util/shared_ptr/requirements/
4258         explicit_instantiation.cc: Same.
4259         * testsuite/20_util/weak_ptr/requirements/
4260         explicit_instantiation.cc: Same.
4261         
4262 2007-03-16  Benjamin Kosnik  <bkoz@redhat.com>
4263         
4264         * testsuite/lib/dg-options.exp (dg-require-c-std): New.
4265         * testsuite/lib/libstdc++.exp (check_v3_target_c_std): New. Check to
4266         see if _GLIBCXX_USE_C99_MATH is active. 
4267         * testsuite/tr1/5_numerical_facilities/special_functions/
4268         08_cyl_bessel_i/check_nan.cc: Use dg-require-c-std.
4269         * testsuite/tr1/5_numerical_facilities/special_functions/
4270         17_hyperg/check_nan.cc: Same.
4271         * testsuite/tr1/5_numerical_facilities/special_functions/
4272         13_ellint_2/check_nan.cc: Same.
4273         * testsuite/tr1/5_numerical_facilities/special_functions/
4274         20_riemann_zeta/check_nan.cc: Same.
4275         * testsuite/tr1/5_numerical_facilities/special_functions/
4276         01_assoc_laguerre/check_nan.cc: Same.
4277         * testsuite/tr1/5_numerical_facilities/special_functions/
4278         02_assoc_legendre/check_nan.cc: Same.
4279         * testsuite/tr1/5_numerical_facilities/special_functions/
4280         22_sph_legendre/check_nan.cc: Same.
4281         * testsuite/tr1/5_numerical_facilities/special_functions/
4282         10_cyl_bessel_k/check_nan.cc: Same.
4283         * testsuite/tr1/5_numerical_facilities/special_functions/
4284         09_cyl_bessel_j/check_nan.cc: Same.
4285         * testsuite/tr1/5_numerical_facilities/special_functions/
4286         21_sph_bessel/check_nan.cc: Same.
4287         * testsuite/tr1/5_numerical_facilities/special_functions/
4288         07_conf_hyperg/check_nan.cc: Same.
4289         * testsuite/tr1/5_numerical_facilities/special_functions/
4290         16_hermite/check_nan.cc: Same.
4291         * testsuite/tr1/5_numerical_facilities/special_functions/
4292         12_ellint_1/check_nan.cc: Same.
4293         * testsuite/tr1/5_numerical_facilities/special_functions/
4294         05_comp_ellint_2/check_nan.cc: Same.
4295         * testsuite/tr1/5_numerical_facilities/special_functions/
4296         18_laguerre/check_nan.cc: Same.
4297         * testsuite/tr1/5_numerical_facilities/special_functions/
4298         14_ellint_3/check_nan.cc: Same.
4299         * testsuite/tr1/5_numerical_facilities/special_functions/
4300         04_comp_ellint_1/check_nan.cc: Same.
4301         * testsuite/tr1/5_numerical_facilities/special_functions/
4302         06_comp_ellint_3/check_nan.cc: Same.
4303         * testsuite/tr1/5_numerical_facilities/special_functions/
4304         19_legendre/check_nan.cc: Same.
4305         * testsuite/tr1/5_numerical_facilities/special_functions/
4306         03_beta/check_nan.cc: Same.
4307         * testsuite/tr1/5_numerical_facilities/special_functions/
4308         11_cyl_neumann/check_nan.cc: Same.
4309         * testsuite/tr1/5_numerical_facilities/special_functions/
4310         15_expint/check_nan.cc: Same.
4311         * testsuite/tr1/5_numerical_facilities/special_functions/
4312         23_sph_neumann/check_nan.cc: Same.
4314         * include/tr1/poly_laguerre.tcc (__poly_laguerre): Don't check if
4315         unsigned int can be a NaN.
4317 2007-03-16  Edward M. Smith-Rowland  <3dw4rd@verizon.net>
4319         * docs/html/ext/tr1.html : Marked tr1 math special functions done.
4320         * docs/html/faq/index.html : Ditto.
4321         * include/Makefile.in : Added new special function header files.
4322         * include/Makefile.am : Ditto.  
4323         * include/tr1/common.h : Added type promotion routines for three
4324         and four args.
4326         * include/tr1/special_function_util.h: New.
4327         * include/tr1/bessel_function.tcc: New.
4328         * include/tr1/beta_function.tcc: New.
4329         * include/tr1/ell_integral.tcc: New.
4330         * include/tr1/exp_integral.tcc: New.
4331         * include/tr1/gamma.tcc: New.
4332         * include/tr1/hypergeometric.tcc: New.
4333         * include/tr1/legendre_function.tcc: New.
4334         * include/tr1/modified_bessel_func.tcc: New.
4335         * include/tr1/poly_hermite.tcc: New.
4336         * include/tr1/poly_laguerre.tcc: New.
4337         * include/tr1/riemann_zeta.tcc: New.
4338         * include/tr1/cmath : Included tr1 math special functions.
4339         * include/tr1/math.h : Ditto.
4340         * testsuite/tr1/5_numerical_facilities/special_functions/
4341         testcase.h: New.
4342         * testsuite/tr1/5_numerical_facilities/special_functions/
4343         01_assoc_laguerre/compile.cc: New.
4344         * testsuite/tr1/5_numerical_facilities/special_functions/
4345         01_assoc_laguerre/check_nan.cc: New.
4346         * testsuite/tr1/5_numerical_facilities/special_functions/
4347         01_assoc_laguerre/check_value.cc: New.
4348         * testsuite/tr1/5_numerical_facilities/special_functions/
4349         01_assoc_laguerre/compile_2.cc: New.
4350         * testsuite/tr1/5_numerical_facilities/special_functions/
4351         02_assoc_legendre/compile.cc: New.
4352         * testsuite/tr1/5_numerical_facilities/special_functions/
4353         02_assoc_legendre/check_nan.cc: New.
4354         * testsuite/tr1/5_numerical_facilities/special_functions/
4355         02_assoc_legendre/check_value.cc: New.
4356         * testsuite/tr1/5_numerical_facilities/special_functions/
4357         02_assoc_legendre/compile_2.cc: New.
4358         * testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
4359         compile.cc: New.
4360         * testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
4361         check_nan.cc: New.
4362         * testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
4363         check_value.cc: New.
4364         * testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
4365         compile_2.cc: New.
4366         * testsuite/tr1/5_numerical_facilities/special_functions/
4367         04_comp_ellint_1/compile.cc: New.
4368         * testsuite/tr1/5_numerical_facilities/special_functions/
4369         04_comp_ellint_1/check_nan.cc: New.
4370         * testsuite/tr1/5_numerical_facilities/special_functions/
4371         04_comp_ellint_1/check_value.cc: New.
4372         * testsuite/tr1/5_numerical_facilities/special_functions/
4373         04_comp_ellint_1/compile_2.cc: New.
4374         * testsuite/tr1/5_numerical_facilities/special_functions/
4375         05_comp_ellint_2/compile.cc: New.
4376         * testsuite/tr1/5_numerical_facilities/special_functions/
4377         05_comp_ellint_2/check_nan.cc: New.
4378         * testsuite/tr1/5_numerical_facilities/special_functions/
4379         05_comp_ellint_2/check_value.cc: New.
4380         * testsuite/tr1/5_numerical_facilities/special_functions/
4381         05_comp_ellint_2/compile_2.cc: New.
4382         * testsuite/tr1/5_numerical_facilities/special_functions/
4383         06_comp_ellint_3/compile.cc: New.
4384         * testsuite/tr1/5_numerical_facilities/special_functions/
4385         06_comp_ellint_3/check_nan.cc: New.
4386         * testsuite/tr1/5_numerical_facilities/special_functions/
4387         06_comp_ellint_3/check_value.cc: New.
4388         * testsuite/tr1/5_numerical_facilities/special_functions/
4389         06_comp_ellint_3/compile_2.cc: New.
4390         * testsuite/tr1/5_numerical_facilities/special_functions/
4391         07_conf_hyperg/compile.cc: New.
4392         * testsuite/tr1/5_numerical_facilities/special_functions/
4393         07_conf_hyperg/check_nan.cc: New.
4394         * testsuite/tr1/5_numerical_facilities/special_functions/
4395         07_conf_hyperg/check_value.cc: New.
4396         * testsuite/tr1/5_numerical_facilities/special_functions/
4397         07_conf_hyperg/compile_2.cc: New.
4398         * testsuite/tr1/5_numerical_facilities/special_functions/
4399         08_cyl_bessel_i/compile.cc: New.
4400         * testsuite/tr1/5_numerical_facilities/special_functions/
4401         08_cyl_bessel_i/check_nan.cc: New.
4402         * testsuite/tr1/5_numerical_facilities/special_functions/
4403         08_cyl_bessel_i/check_value.cc: New.
4404         * testsuite/tr1/5_numerical_facilities/special_functions/
4405         08_cyl_bessel_i/compile_2.cc: New.
4406         * testsuite/tr1/5_numerical_facilities/special_functions/
4407         09_cyl_bessel_j/compile.cc: New.
4408         * testsuite/tr1/5_numerical_facilities/special_functions/
4409         09_cyl_bessel_j/check_nan.cc: New.
4410         * testsuite/tr1/5_numerical_facilities/special_functions/
4411         09_cyl_bessel_j/check_value.cc: New.
4412         * testsuite/tr1/5_numerical_facilities/special_functions/
4413         09_cyl_bessel_j/compile_2.cc: New.
4414         * testsuite/tr1/5_numerical_facilities/special_functions/
4415         10_cyl_bessel_k/compile.cc: New.
4416         * testsuite/tr1/5_numerical_facilities/special_functions/
4417         10_cyl_bessel_k/check_nan.cc: New.
4418         * testsuite/tr1/5_numerical_facilities/special_functions/
4419         10_cyl_bessel_k/check_value.cc: New.
4420         * testsuite/tr1/5_numerical_facilities/special_functions/
4421         10_cyl_bessel_k/compile_2.cc: New.
4422         * testsuite/tr1/5_numerical_facilities/special_functions/
4423         11_cyl_neumann/compile.cc: New.
4424         * testsuite/tr1/5_numerical_facilities/special_functions/
4425         11_cyl_neumann/check_nan.cc: New.
4426         * testsuite/tr1/5_numerical_facilities/special_functions/
4427         11_cyl_neumann/check_value.cc: New.
4428         * testsuite/tr1/5_numerical_facilities/special_functions/
4429         11_cyl_neumann/compile_2.cc: New.
4430         * testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
4431         compile.cc: New.
4432         * testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
4433         check_nan.cc: New.
4434         * testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
4435         check_value.cc: New.
4436         * testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
4437         compile_2.cc: New.
4438         * testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
4439         compile.cc: New.
4440         * testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
4441         check_nan.cc: New.
4442         * testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
4443         check_value.cc: New.
4444         * testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
4445         compile_2.cc: New.
4446         * testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
4447         compile.cc: New.
4448         * testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
4449         check_nan.cc: New.
4450         * testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
4451         check_value.cc: New.
4452         * testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
4453         compile_2.cc: New.
4454         * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
4455         check_value_neg.cc: New.
4456         * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
4457         compile.cc: New.
4458         * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
4459         check_nan.cc: New.
4460         * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
4461         compile_2.cc: New.
4462         * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
4463         check_value_pos.cc: New.
4464         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
4465         compile.cc: New.
4466         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
4467         check_nan.cc: New.
4468         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
4469         compile_2.cc: New.
4470         * testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
4471         compile.cc: New.
4472         * testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
4473         check_nan.cc: New.
4474         * testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
4475         check_value.cc: New.
4476         * testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
4477         compile_2.cc: New.
4478         * testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
4479         compile.cc: New.
4480         * testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
4481         check_nan.cc: New.
4482         * testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
4483         check_value.cc: New.
4484         * testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
4485         compile_2.cc: New.
4486         * testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
4487         compile.cc: New.
4488         * testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
4489         check_nan.cc: New.
4490         * testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
4491         check_value.cc: New.
4492         * testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
4493         compile_2.cc: New.
4494         * testsuite/tr1/5_numerical_facilities/special_functions/
4495         20_riemann_zeta/check_value_neg.cc: New.
4496         * testsuite/tr1/5_numerical_facilities/special_functions/
4497         20_riemann_zeta/compile.cc: New.
4498         * testsuite/tr1/5_numerical_facilities/special_functions/
4499         20_riemann_zeta/check_nan.cc: New.
4500         * testsuite/tr1/5_numerical_facilities/special_functions/
4501         20_riemann_zeta/compile_2.cc: New.
4502         * testsuite/tr1/5_numerical_facilities/special_functions/
4503         20_riemann_zeta/check_value_pos.cc: New.
4504         * testsuite/tr1/5_numerical_facilities/special_functions/
4505         21_sph_bessel/compile.cc: New.
4506         * testsuite/tr1/5_numerical_facilities/special_functions/
4507         21_sph_bessel/check_nan.cc: New.
4508         * testsuite/tr1/5_numerical_facilities/special_functions/
4509         21_sph_bessel/check_value.cc: New.
4510         * testsuite/tr1/5_numerical_facilities/special_functions/
4511         21_sph_bessel/compile_2.cc: New.
4512         * testsuite/tr1/5_numerical_facilities/special_functions/
4513         22_sph_legendre/compile.cc: New.
4514         * testsuite/tr1/5_numerical_facilities/special_functions/
4515         22_sph_legendre/check_nan.cc: New.
4516         * testsuite/tr1/5_numerical_facilities/special_functions/
4517         22_sph_legendre/check_value.cc: New.
4518         * testsuite/tr1/5_numerical_facilities/special_functions/
4519         22_sph_legendre/compile_2.cc: New.
4520         * testsuite/tr1/5_numerical_facilities/special_functions/
4521         23_sph_neumann/compile.cc: New.
4522         * testsuite/tr1/5_numerical_facilities/special_functions/
4523         23_sph_neumann/check_nan.cc: New.
4524         * testsuite/tr1/5_numerical_facilities/special_functions/
4525         23_sph_neumann/check_value.cc: New.
4526         * testsuite/tr1/5_numerical_facilities/special_functions/
4527         23_sph_neumann/ compile_2.cc: New.
4528         
4529 2007-03-15  Hans-Peter Nilsson  <hp@axis.com>
4531         * testsuite/lib/libstdc++.exp (v3-build_support) <ar>: If it
4532         exists, use env(AR_FOR_TARGET).  Log the command.
4533         <ranlib>: Similar.
4535 2007-03-14  Nathan Sidwell  <nathan@codesourcery.com>
4536             Joseph Myers  <joseph@codesourcery.com>::
4538         * testsuite/lib/libstdc++.exp (check_v3_target_fileio,
4539         check_v3_target_time): New.
4540         * testsuite/lib/dg-options.exp (dg-require-fileio,
4541         dg-require-time): New.
4542         * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: Use it.
4543         * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: Use it.
4544         * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: Use it.
4545         * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: Use it.
4546         * testsuite/ext/stdio_sync_filebuf/char/1.cc: Use it.
4547         * testsuite/ext/stdio_filebuf/char/2.cc: Use it.
4548         * testsuite/ext/stdio_filebuf/char/10063-1.cc: Use it.
4549         * testsuite/ext/stdio_filebuf/char/10063-2.cc: Use it.
4550         * testsuite/ext/stdio_filebuf/char/10063-3.cc: Use it.
4551         * testsuite/22_locale/time_put/put/char/12439_1.cc: Use it.
4552         * testsuite/22_locale/time_put/put/char/12439_3.cc: Use it.
4553         * testsuite/27_io/basic_ofstream/open/char/1.cc: Use it.
4554         * testsuite/27_io/basic_ofstream/cons/char/2.cc: Use it.
4555         * testsuite/27_io/objects/char/12048-2.cc: Use it.
4556         * testsuite/27_io/objects/char/12048-4.cc: Use it.
4557         * testsuite/27_io/objects/char/12048-1.cc: Use it.
4558         * testsuite/27_io/objects/char/12048-3.cc: Use it.
4559         * testsuite/27_io/objects/char/10.cc: Use it.
4560         * testsuite/27_io/objects/char/12048-5.cc: Use it.
4561         * testsuite/27_io/basic_istream/get/char/2.cc: Use it.
4562         * testsuite/27_io/basic_istream/ignore/char/2.cc: Use it.
4563         * testsuite/27_io/basic_istream/ignore/char/3.cc: Use it.
4564         * testsuite/27_io/basic_istream/getline/char/5.cc: Use it.
4565         * testsuite/27_io/basic_istream/seekg/char/sstream.cc: Use it.
4566         * testsuite/27_io/basic_istream/seekg/char/fstream.cc: Use it.
4567         * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Use it.
4568         * testsuite/27_io/basic_istream/extractors_other/char/2.cc: Use it.
4569         * testsuite/27_io/basic_istream/tellg/char/sstream.cc: Use it.
4570         * testsuite/27_io/basic_istream/tellg/char/1.cc: Use it.
4571         * testsuite/27_io/basic_istream/tellg/char/fstream.cc: Use it.
4572         * testsuite/27_io/basic_istream/extractors_character/char/4.cc: Use it.
4573         * testsuite/27_io/basic_ostream/inserters_other/char/1.cc: Use it.
4574         * testsuite/27_io/basic_ostream/tellp/char/1.cc: Use it.
4575         * testsuite/27_io/basic_ostream/seekp/char/2346-fstream.cc: Use it.
4576         * testsuite/27_io/basic_ifstream/open/char/1.cc: Use it.
4577         * testsuite/27_io/basic_ifstream/cons/char/1.cc: Use it.
4578         * testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: Use it.
4579         * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Use it.
4580         * testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: Use it.
4581         * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Use it.
4582         * testsuite/27_io/basic_filebuf/sgetn/char/3.cc: Use it.
4583         * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Use it.
4584         * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Use it.
4585         * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Use it.
4586         * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Use it.
4587         * testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Use it.
4588         * testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Use it.
4589         * testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Use it.
4590         * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Use it.
4591         * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Use it.
4592         * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Use it.
4593         * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Use it.
4594         * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Use it.
4595         * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Use it.
4596         * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Use it.
4597         * testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Use it.
4598         * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Use it.
4599         * testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Use it.
4600         * testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: Use it.
4601         * testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc: Use it.
4602         * testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc: Use it.
4603         * testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc: Use it.
4604         * testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc: Use it.
4605         * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Use it.
4606         * testsuite/27_io/basic_filebuf/in_avail/char/9701-3.cc: Use it.
4607         * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Use it.
4608         * testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Use it.
4609         * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Use it.
4610         * testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: Use it.
4611         * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Use it.
4612         * testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: Use it.
4613         * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Use it.
4614         * testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: Use it.
4615         * testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: Use it.
4616         * testsuite/27_io/basic_filebuf/sbumpc/char/9825.cc: Use it.
4617         * testsuite/27_io/basic_filebuf/is_open/char/1.cc: Use it.
4618         * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Use it.
4619         * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Use it.
4620         * testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: Use it.
4621         * testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: Use it.
4622         * testsuite/27_io/basic_filebuf/open/12790-1.cc: Use it.
4623         * testsuite/27_io/basic_filebuf/open/char/1.cc: Use it.
4624         * testsuite/27_io/basic_filebuf/open/char/2.cc: Use it.
4625         * testsuite/27_io/basic_filebuf/open/char/3.cc: Use it.
4626         * testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Use it.
4627         * testsuite/27_io/basic_filebuf/overflow/char/2.cc: Use it.
4628         * testsuite/27_io/basic_filebuf/overflow/char/9988.cc: Use it.
4629         * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Use it.
4630         * testsuite/27_io/basic_filebuf/overflow/char/9169.cc: Use it.
4631         * testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: Use it.
4632         * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Use it.
4633         * testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: Use it.
4634         * testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: Use it.
4635         * testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: Use it.
4636         * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Use it.
4637         * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Use it.
4638         * testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: Use it.
4639         * testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: Use it.
4640         * testsuite/27_io/basic_filebuf/close/12790-1.cc: Use it.
4641         * testsuite/27_io/basic_filebuf/close/char/1.cc: Use it.
4642         * testsuite/27_io/basic_filebuf/close/char/12790-1.cc: Use it.
4643         * testsuite/27_io/basic_filebuf/close/char/12790-2.cc: Use it.
4644         * testsuite/27_io/basic_filebuf/close/char/2.cc: Use it.
4645         * testsuite/27_io/basic_filebuf/close/char/12790-3.cc: Use it.
4646         * testsuite/27_io/basic_filebuf/close/char/12790-4.cc: Use it.
4647         * testsuite/27_io/basic_filebuf/close/char/4.cc: Use it.
4648         * testsuite/27_io/basic_filebuf/underflow/10096.cc: Use it.
4649         * testsuite/27_io/basic_filebuf/underflow/char/2.cc: Use it.
4650         * testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: Use it.
4651         * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Use it.
4652         * testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: Use it.
4653         * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: Use it.
4654         * testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Use it.
4655         * testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Use it.
4656         * testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Use it.
4657         * testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc: Use it.
4658         * testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc: Use it.
4659         * testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc: Use it.
4660         * testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Use it.
4661         * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Use it.
4662         * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Use it.
4663         * testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Use it.
4664         * testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Use it.
4665         * testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Use it.
4666         * testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Use it.
4667         * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Use it.
4668         * testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Use it.
4669         * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Use it.
4670         * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Use it.
4671         * testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: Use it.
4672         * testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: Use it.
4673         * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Use it.
4674         * testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: Use it.
4675         * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Use it.
4676         * testsuite/21_strings/basic_string/inserters_extractors/
4677         char/10.cc: Use it.
4678         * testsuite/21_strings/basic_string/inserters_extractors/
4679         char/11.cc: Use it.
4680         * testsuite/21_strings/basic_string/inserters_extractors/
4681         char/5.cc: Use it.
4683 2007-03-13  Paolo Carlini  <pcarlini@suse.de>
4685         * include/tr1/tuple: Only include <utility> for std::pair, and
4686         forward declare reference_wrapper; formatting fixes.
4687         * include/tr1/ref_fwd.h: Remove.
4688         * include/tr1/tuple_defs.h: Remove, unused.
4689         * include/Makefile.am: Update.
4690         * include/Makefile.in: Regenerate.
4691         * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
4692         Include <tr1/functional> too.
4694         * include/tr1/tuple: Define tuple_size<tuple<_Elements...> >::value.
4696 2007-03-12  Stephen M. Webb  <stephen.webb@bregmasoft.com>
4698         * include/tr1/regex: Add "boilerplate" implementations.
4699         * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/
4700         translate_nocase.cc: New.
4701         * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/
4702         ctor.cc: Likewise.
4703         * testsuite/tr1/7_regular_expressions/regex_traits/char/
4704         translate_nocase.cc: Likewise.
4705         * testsuite/tr1/7_regular_expressions/regex_traits/char/
4706         ctor.cc: Likewise.
4707         * testsuite/tr1/7_regular_expressions/regex/cons/char/
4708         c_string_ecma.cc: Likewise.
4709         * testsuite/tr1/7_regular_expressions/regex/cons/char/
4710         default.cc: Likewise.
4711         * testsuite/tr1/7_regular_expressions/regex/cons/char/
4712         c_string_grep.cc: Likewise.
4713         * testsuite/tr1/7_regular_expressions/regex/cons/char/
4714         c_string_extended.cc: Likewise.
4715         * testsuite/tr1/7_regular_expressions/regex/cons/char/
4716         c_string_basic.cc: Likewise.
4717         * testsuite/tr1/7_regular_expressions/regex/cons/char/
4718         c_string_awk.cc: Likewise.
4719         * testsuite/tr1/7_regular_expressions/regex/cons/char/
4720         c_string_egrep.cc: Likewise.
4721         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
4722         range.cc: Likewise.
4723         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
4724         string_op.cc: Likewise.
4725         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
4726         string.cc: Likewise.
4727         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
4728         pstring.cc: Likewise.
4729         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
4730         cstring_op.cc: Likewise.
4731         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
4732         cstring.cc: Likewise.
4733         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
4734         range.cc: Likewise.
4735         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
4736         string_op.cc: Likewise.
4737         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
4738         string.cc: Likewise.
4739         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
4740         pstring.cc: Likewise.
4741         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
4742         cstring_op.cc: Likewise.
4743         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
4744         cstring.cc: Likewise.
4745         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
4746         range.cc: Likewise.
4747         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
4748         default.cc: Likewise.
4749         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
4750         string.cc: Likewise.
4751         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
4752         pstring.cc: Likewise.
4753         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
4754         cstring.cc: Likewise.
4755         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
4756         range.cc: Likewise.
4757         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
4758         default.cc: Likewise.
4759         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
4760         string.cc: Likewise.
4761         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
4762         pstring.cc: Likewise.
4763         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
4764         cstring.cc: Likewise.
4765         * testsuite/tr1/7_regular_expressions/match_results/ctors/char/
4766         default.cc: Likewise.
4768 2007-03-12  Paolo Carlini  <pcarlini@suse.de>
4770         * include/bits/stl_algo.h (swap_ranges): Move...
4771         * include/bits/stl_algobase.h: ... here.
4772         * include/tr1/array: Trim includes, stl_algobase.h is enough.
4774 2007-03-11  Paolo Carlini  <pcarlini@suse.de>
4776         PR libstdc++/28080 (final)
4777         * include/std/iosfwd: Do not include <bits/c++io.h>.
4778         * config/io/basic_file_stdio.h: Do it here.
4779         * include/ext/stdio_sync_filebuf.h: Likewise.
4780         * include/ext/rope: Include <bits/gthr.h> unconditionally.
4781         * include/std/fstream: Do not include <bits/gthr.h>.
4782         
4783         * include/std/ios: Do not include <cstdio>.
4784         * include/bits/ios_base.h: Do it here.
4785         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust dg-error
4786         line numbers.
4787         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
4789 2007-03-10  Paolo Carlini  <pcarlini@suse.de>
4791         PR libstdc++/28080 (partial)
4792         * include/std/memory: Move C++03 implementation...
4793         * include/bits/stl_memory.h: ... here, new.
4794         * include/Makefile.am: Add.
4795         * include/bits/stl_tempbuf.h: Include the latter instead.
4796         * include/tr1/hashtable: Include allocator.h instead of
4797         the whole <memory>.
4798         * include/tr1/hashtable_policy.h: Include stl_function.h
4799         instead of <functional>.
4800         * include/Makefile.in: Regenerate.
4801         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust dg-error
4802         line numbers.
4804 2007-03-09  Douglas Gregor  <doug.gregor@gmail.com>
4806         * include/Makefile.in: Regenerate.
4807         * include/tr1/mu_iterate.h: Remove.
4808         * include/tr1/tuple (_Tuple_impl): New.
4809         (tuple): Make variadic, re-implement as shell over _Tuple_impl.
4810         (0-element tuple): Basis case.
4811         (2-element tuple): Handle pair methods.
4812         (__get_helper): Remove.
4813         (tuple_element): Reimplement with variadic templates.
4814         (tuple_size): Ditto.
4815         (get): Ditto.
4816         (operator==): Use variadic templates in the signature.
4817         (operator<): Ditto.
4818         (operator!=): Ditto.
4819         (operator>): Ditto.
4820         (operator<=): Ditto.
4821         (operator>=): Ditto.
4822         (__stripped_tuple_type): Remove; we've inlined its behavior.
4823         (make_tuple): Reimplement with variadic templates.
4824         (tie): Ditto.
4825         * include/tr1/tuple_iterate.h: Remove.
4826         * include/tr1/bind_repeat.h: Remove.
4827         * include/tr1/ref_wrap_iterate.h: Remove.
4828         * include/tr1/bind_iterate.h: Remove.
4829         * include/tr1/functional (_Weak_result_type): Add variadic
4830         partial specializations.
4831         (result_of): Ditto.
4832         (__invoke): Reimplement using variadic templates.
4833         (reference_wrapper): Reimplement operator() with variadic
4834         templates.
4835         (_Maybe_unary_or_binary_function): New.
4836         (_Mem_fn): Implement for member function pointers using variadic
4837         templates.
4838         (placeholders): Define 30 placeholders.
4839         (_Index_tuple): New.
4840         (_Build_index_tuple): New.
4841         (_No_tuple_element): New.
4842         (_Safe_tuple_element_impl): New.
4843         (_Safe_tuple_element): New.
4844         (_Mu): Reimplement with variadic templates, use
4845         _Safe_tuple_element instead of tuple_element.
4846         (_Bind): Reimplement with variadic templates and tuples.
4847         (_Bind_result): Ditto.
4848         (bind): Reimplement with variadic templates.
4849         (_Function_handler): Ditto.
4850         (function): Ditto.
4851         * include/tr1/functional_iterate.h: Remove.
4852         * include/tr1/repeat.h: Remove.
4853         * include/Makefile.am: Don't install removed headers.
4854         
4855 2007-03-06  Paolo Carlini  <pcarlini@suse.de>
4857         PR libstdc++/28080 (partial)
4858         * include/bits/stl_algobase.h: Do not include <cstdlib>.
4859         * src/localename.cc: Do it here.
4860         * src/ctype.cc: Likewise.
4861         * include/ext/pb_ds/detail/map_debug_base.hpp: Likewise.
4862         * include/ext/pb_ds/exception.hpp: Likewise.
4863         * include/ext/pb_ds/list_update_policy.hpp: Likewise.
4864         * include/bits/stl_algo.h: Likewise.
4865         * include/tr1/random: Likewise.
4866         * testsuite/util/testsuite_hooks.cc: Likewise.
4867         * testsuite/util/testsuite_abi_check.cc: Likewise.
4868         * testsuite/util/testsuite_abi.cc: Likewise.
4869         * testsuite/util/performance/assoc/timing/
4870         tree_order_statistics_test.hpp: Likewise.
4871         * config/locale/darwin/ctype_members.cc: Likewise.
4872         * config/locale/gnu/c++locale_internal.h: Likewise.
4873         * config/locale/generic/ctype_members.cc: Likewise.
4874         * config/locale/generic/time_members.cc: Likewise.
4876         * include/ext/pb_ds/detail/resize_policy/
4877         hash_load_check_resize_trigger_imp.hpp: Qualify abort.
4878         * testsuite/util/performance/assoc/timing/
4879         multimap_find_test.hpp: Likewise.
4880         * include/std/valarray: Do include <cstdlib>.
4881         * include/tr1/hashtable: Likewise.
4883 2007-03-05  Joseph Myers  <joseph@codesourcery.com>
4885         PR libstdc++/30675
4886         * testsuite/lib/libstdc++.exp (v3-build_support): Use [transform
4887         "ar"] and [transform "ranlib"].
4889 2007-03-04  Paolo Carlini  <pcarlini@suse.de>
4891         * testsuite/27_io/basic_ostream/inserters_arithmetic/
4892         char/31031.cc: Include the right header.
4894 2007-03-04  Benjamin Kosnik  <bkoz@redhat.com>
4896         * acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global.
4897         * configure.host (c_model): Set default to c_global.
4898         * configure: Regenerate.
4899         * include/Makefile.am (c_compatibility_headers_extra): Make
4900         conditional on GLIBCXX_C_HEADERS_COMPATIBILITY.
4901         (c_base_headers_extra): Make conditional on GLIBCXX_C_HEADERS_EXTRA.
4902         (c_compatibility_headers): Make conditional on c/c_std/c_global.
4903         * include/Makefile.in: Regenerate.
4904         * docs/html/configopts.html: Add c_global information to
4905         --enable-cheaders. Eventually, "c_std" should mean "C" includes
4906         that are in namespace std, with optional C++ "C" compatibility
4907         includes to inject into global scope. And "c_global" should mean
4908         "C" includes that are in the global namespace, with C++ includes
4909         injecting into namespace std and no C++ "C" compatibility
4910         includes.
4912 2007-03-04  Benjamin Kosnik  <bkoz@redhat.com>
4914         * include/bits/c++config: Add _GLIBCXX_NAMEPACE_C.
4915         Add _GLIBCXX_NAMESPACE_ASSOCIATION_CXX200x.
4916         Add _GLIBCXX_TR1 as namespace macro.
4917         Add namespace associations for std::__cxx200x conditionally.
4919         * include/c_compatibility/assert.h: Correct doxygen markup,
4920         conditionalize the global injections on _GLIBCXX_NAMESPACE_C.
4921         * include/c_compatibility/ctype.h: Same.
4922         * include/c_compatibility/errno.h: Same.
4923         * include/c_compatibility/float.h: Same.
4924         * include/c_compatibility/iso646.h: Same.
4925         * include/c_compatibility/limits.h: Same.
4926         * include/c_compatibility/locale.h: Same.
4927         * include/c_compatibility/math.h: Same.
4928         * include/c_compatibility/setjmp.h: Same.
4929         * include/c_compatibility/signal.h: Same.
4930         * include/c_compatibility/stdarg.h: Same.
4931         * include/c_compatibility/stddef.h: Same.
4932         * include/c_compatibility/stdio.h: Same.
4933         * include/c_compatibility/stdlib.h: Same.
4934         * include/c_compatibility/string.h: Same.
4935         * include/c_compatibility/time.h: Same.
4936         * include/c_compatibility/wchar.h: Same.
4937         * include/c_compatibility/wctype.h: Same.
4939         * include/c_compatibility/complex.h: Add.
4940         * include/c_compatibility/fenv.h: Same.
4941         * include/c_compatibility/inttypes.h: Same.
4942         * include/c_compatibility/stdbool.h: Same.
4943         * include/c_compatibility/stdint.h: Same.
4944         * include/c_compatibility/tgmath.h: Same.
4946         * include/c_global/cassert: Add, use include_next, use C++0x features
4947         if -std=c++0x.
4948         * include/c_global/cctype: Same.
4949         * include/c_global/cerrno: Same.
4950         * include/c_global/cfloat: Same.
4951         * include/c_global/ciso646: Same.
4952         * include/c_global/climits: Same.
4953         * include/c_global/clocale: Same.
4954         * include/c_global/cmath: Same.
4955         * include/c_global/cmath.tcc: Same.
4956         * include/c_global/csetjmp: Same.
4957         * include/c_global/csignal: Same.
4958         * include/c_global/cstdarg: Same.
4959         * include/c_global/cstddef: Same.
4960         * include/c_global/cstdio: Same.
4961         * include/c_global/cstdlib: Same.
4962         * include/c_global/cstring: Same.
4963         * include/c_global/ctime: Same.
4964         * include/c_global/cwchar: Same.
4965         * include/c_global/cwctype: Same.
4967         * include/c_global/ccomplex: Add.
4968         * include/c_global/cfenv: Add.
4969         * include/c_global/cinttypes: Add. 
4970         * include/c_global/cstdbool: Add.
4971         * include/c_global/cstdint: Add.
4972         * include/c_global/ctgmath: Add.
4974         * include/std/algorithm: Use C++0x features if -std=c++0x.      
4975         * include/std/bitset: Same.
4976         * include/std/complex: Same.
4977         * include/std/deque: Same.
4978         * include/std/fstream: Same.
4979         * include/std/functional: Same.
4980         * include/std/iomanip: Same.
4981         * include/std/ios: Same.
4982         * include/std/iosfwd: Same.
4983         * include/std/iostream: Same.
4984         * include/std/istream: Same.
4985         * include/std/iterator: Same.
4986         * include/std/limits: Same.
4987         * include/std/list: Same.
4988         * include/std/locale: Same.
4989         * include/std/map: Same.
4990         * include/std/memory: Same.
4991         * include/std/numeric: Same.
4992         * include/std/ostream: Same.
4993         * include/std/queue: Same.
4994         * include/std/set: Same.
4995         * include/std/sstream: Same.
4996         * include/std/stack: Same.
4997         * include/std/stdexcept: Same.
4998         * include/std/streambuf: Same.
4999         * include/std/string: Same.
5000         * include/std/utility: Same.
5001         * include/std/valarray: Same.
5002         * include/std/vector: Same.
5004         * include/std/array: Add.
5005         * include/std/random: Add.
5006         * include/std/regex: Add.
5007         * include/std/tuple: Add.
5008         * include/std/type_traits: Add.
5009         * include/std/unordered_map: Add.
5010         * include/std/unordered_set: Add.
5011         * include/std/c++0x_warning.h: Add.
5012         
5013         * include/tr1/array: Switch namespaces based on _GLIBCXX_TR1.
5014         * include/tr1/boost_shared_ptr.h: Same.
5015         * include/tr1/cctype: Same.
5016         * include/tr1/cfenv: Same.
5017         * include/tr1/cinttypes: Same.
5018         * include/tr1/cmath: Same.
5019         * include/tr1/common.h: Same.
5020         * include/tr1/complex: Same.
5021         * include/tr1/cstdint: Same.
5022         * include/tr1/cstdio: Same.
5023         * include/tr1/cstdlib: Same.
5024         * include/tr1/cwchar: Same.
5025         * include/tr1/cwctype: Same.
5026         * include/tr1/functional: Same.
5027         * include/tr1/functional_hash.h: Same.
5028         * include/tr1/functional_iterate.h: Same.
5029         * include/tr1/hashtable: Same.
5030         * include/tr1/hashtable_policy.h: Same.
5031         * include/tr1/math.h: Same.
5032         * include/tr1/memory: Same.
5033         * include/tr1/random: Same.
5034         * include/tr1/random.tcc: Same.
5035         * include/tr1/ref_fwd.h: Same.
5036         * include/tr1/repeat.h: Same.
5037         * include/tr1/stdlib.h: Same.
5038         * include/tr1/tuple: Same.
5039         * include/tr1/tuple_iterate.h: Same.
5040         * include/tr1/type_traits: Same.
5041         * include/tr1/type_traits_fwd.h: Same.
5042         * include/tr1/unordered_map: Same.
5043         * include/tr1/unordered_set: Same.
5044         * include/tr1/utility: Same.
5046         * include/tr1/ccomplex: Add.
5047         * include/tr1/complex.h: Add.
5048         * include/tr1/regex: Add.
5050         * include/Makefile.am: Add C++0x headers, "C" compatibility headers.
5051         * include/Makefile.in: Regenerate.
5053         * testsuite/tr1/headers.cc: Add in regex/complex.
5055         * testsuite/17_intro/headers/c++200x/all.cc: New.
5056         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Same.
5057         * testsuite/17_intro/using_namespace_std_tr1_neg.cc: Same.
5058         * testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc: Same.
5059         * testsuite/18_support/headers/cstdint/std_c++0x_neg.cc: Same.
5060         * testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Same.
5061         * testsuite/20_util/enable_shared_from_this/requirements/
5062         explicit_instantiation.cc: Same.
5063         * testsuite/20_util/headers/functional/types_std_c++0x.cc: Same.
5064         * testsuite/20_util/headers/functional/
5065         using_namespace_std_placeholders.cc: Same.
5066         * testsuite/20_util/headers/memory/types_std_c++0x.cc: Same.
5067         * testsuite/20_util/headers/type_traits/std_c++0x_neg.cc: Same.
5068         * testsuite/20_util/headers/type_traits/types_std_c++0x.cc: Same.
5069         * testsuite/20_util/shared_ptr/requirements/
5070         explicit_instantiation.cc: Same.
5071         * testsuite/20_util/weak_ptr/requirements/
5072         explicit_instantiation.cc: Same.
5073         * testsuite/23_containers/array/requirements/
5074         explicit_instantiation.cc: Same.
5075         * testsuite/23_containers/hash/requirements/
5076         explicit_instantiation.cc: Same.
5077         * testsuite/23_containers/headers/array/std_c++0x_neg.cc: Same.
5078         * testsuite/23_containers/headers/tuple/std_c++0x_neg.cc: Same.
5079         * testsuite/23_containers/headers/tuple/types_std_c++0x.cc: Same.
5080         * testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc: Same.
5081         * testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc: Same.
5082         * testsuite/23_containers/tuple/requirements/
5083         explicit_instantiation.cc: Same.
5084         * testsuite/23_containers/unordered_map/requirements/
5085         explicit_instantiation.cc: Same.
5086         * testsuite/23_containers/unordered_multimap/requirements/
5087         explicit_instantiation.cc: Same.
5088         * testsuite/23_containers/unordered_multiset/requirements/
5089         explicit_instantiation.cc: Same.
5090         * testsuite/23_containers/unordered_set/requirements/
5091         explicit_instantiation.cc: Same.
5092         * testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc: Same.
5093         * testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc: Same.
5094         * testsuite/26_numerics/headers/cfenv/types_std_c++0x.cc: Same.
5095         * testsuite/26_numerics/headers/cmath/types_std_c++0x.cc: Same.
5096         * testsuite/26_numerics/headers/cstdlib/types_std_c++0x.cc: Same.
5097         * testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc: Same.
5098         * testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Same.
5099         * testsuite/26_numerics/headers/random/types_std_c++0x.cc: Same.
5100         * testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Same.
5101         * testsuite/27_io/headers/cinttypes/types_std_c++0x.cc: Same.
5102         * testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Same.
5104         * testsuite/tr1/8_c_compatibility/cfenv/types.cc: Rename ...
5105         * testsuite/tr1/8_c_compatibility/cinttypes/types.cc: Same.
5106         * testsuite/tr1/8_c_compatibility/cmath/types.cc: Same.
5107         * testsuite/tr1/8_c_compatibility/cstdint/types.cc: Same.
5108         * testsuite/tr1/8_c_compatibility/cstdlib/types.cc: Same.
5109         * testsuite/tr1/8_c_compatibility/cfenv/types_std_tr1.cc: ...to this.
5110         * testsuite/tr1/8_c_compatibility/cinttypes/types_std_tr1.cc: Same.
5111         * testsuite/tr1/8_c_compatibility/cmath/types_std_tr1.cc: Same.
5112         * testsuite/tr1/8_c_compatibility/cstdint/types_std_tr1.cc: Same.
5113         * testsuite/tr1/8_c_compatibility/cstdlib/types_std_tr1.cc: Same.
5115 2007-03-03  Paolo Carlini  <pcarlini@suse.de>
5117         PR libstdc++/31031
5118         * include/bits/istream.tcc: Inhibit implicit instantiation of
5119         the _M_insert helpers.
5120         * include/bits/ostream.tcc: Likewise for _M_extract.
5121         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
5122         31031.cc: New.
5123         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
5124         31031.cc: Likewise.
5126 2007-03-03  Benjamin Kosnik  <bkoz@redhat.com>
5128         * include/debug/functions.h: Use cstddef.
5129         
5130         * testsuite/tr1/3_function_objects/headers/functional/
5131         using_namespace_std_tr1_placeholders.cc: Fix include.
5132         
5133 2007-03-03  Benjamin Kosnik  <bkoz@redhat.com>
5135         * crossconfig.m4 (djgpp): Correct builtin defines to HAVE___,
5136         instead of HAVE____.
5137         * configure: Regenerate.
5139 2007-03-03  Paolo Carlini  <pcarlini@suse.de>
5141         PR libstdc++/28080 (partial)
5142         * include/bits/stl_algobase.h: Do not include <iosfwd>,
5143         <bits/functexcept.h> is enough; adjust __copy_aux declarations;
5144         remove declaration of copy overload for istreambuf_iterator /
5145         ostreambuf_iterator.
5146         * src/debug.cc: Include <cstdio>.
5147         * include/ext/rope: Include <iosfwd>.
5148         * include/bits/char_traits.h: Include <cstdio> and <cwchar>.
5149         * include/bits/stl_algo.h: Remove declaration of find overload
5150         for istreambuf_iterator.
5151         * include/std/queue: Clean up includes.
5152         * include/std/stack: Likewise.
5153         * include/std/memory: Likewise.
5154         * include/std/algorithm: Likewise.
5155         * include/std/vector: Likewise.
5156         * include/std/deque: Likewise.
5157         * include/std/list: Likewise.
5158         * include/bits/stl_tree.h: Likewise.
5159         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Adjust
5160         dg-error markers.
5161         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
5162         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
5163         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
5164         * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
5165         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
5166         * testsuite/20_util/auto_ptr/assign_neg.cc: Likewise.
5168         * include/ext/type_traits.h: Fix type of __max_digits10; clean up
5169         includes.
5171         * testsuite/util/testsuite_hooks.h: Do not include <cstddef>.
5172         * testsuite/util/testsuite_hooks.cc: Do it here.
5174 2007-03-02  Paolo Carlini  <pcarlini@suse.de>
5176         * testsuite/27_io/objects/wchar_t/9661-1.cc: Include <cstdlib>.
5177         * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
5178         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
5179         * testsuite/27_io/objects/char/7.cc: Likewise.
5180         * testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise.
5181         * testsuite/27_io/basic_istream/ignore/char/2.cc: Likewise.
5182         * testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Likewise.
5183         * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
5184         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
5185         11.cc: Likewise.
5186         * testsuite/27_io/basic_istream/extractors_character/wchar_t/
5187         4.cc: Likewise.
5188         * testsuite/27_io/basic_istream/extractors_character/char/
5189         4.cc: Likewise.
5190         * testsuite/27_io/basic_ostream/seekp/wchar_t/
5191         2346-fstream.cc: Likewise.
5192         * testsuite/27_io/basic_ostream/seekp/char/
5193         2346-fstream.cc: Likewise.
5194         * testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
5195         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Likewise.
5196         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
5197         * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
5198         * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
5199         * testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise.
5200         * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
5201         * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
5202         * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Likewise.
5203         * testsuite/21_strings/basic_string/inserters_extractors/
5204         wchar_t/10.cc: Likewise.
5205         * testsuite/21_strings/basic_string/inserters_extractors/
5206         wchar_t/11.cc: Likewise.
5207         * testsuite/21_strings/basic_string/inserters_extractors/
5208         char/10.cc: Likewise.
5209         * testsuite/21_strings/basic_string/inserters_extractors/
5210         char/11.cc: Likewise.
5211         * testsuite/ext/pb_ds/example/trie_dna.cc: Likewise.
5212         * testsuite/ext/new_allocator/deallocate_global.cc: Likewise.
5213         * testsuite/ext/new_allocator/deallocate_local.cc: Likewise.
5214         * testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: Likewise.
5215         * testsuite/performance/27_io/ifstream_getline.cc: Likewise.
5216         * testsuite/22_locale/locale/cons/4.cc: Likewise.
5217         * testsuite/22_locale/locale/cons/5.cc: Likewise.
5218         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
5219         mutex_weaktoshared.cc: Likewise.
5220         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
5221         default_weaktoshared.cc: Likewise.
5222         * testsuite/thread/pthread5.cc: Likewise.
5223         * testsuite/thread/pthread1.cc: Likewise.
5224         * testsuite/23_containers/deque/cons/assign/1.cc: Likewise.
5226 2007-03-02  Paolo Carlini  <pcarlini@suse.de>
5228         * testsuite/thread/pthread1.cc: Include <pthread.h>.
5229         * testsuite/thread/pthread2.cc: Likewise.
5230         * testsuite/thread/pthread3.cc: Likewise.
5231         * testsuite/thread/pthread4.cc: Likewise.
5232         * testsuite/thread/pthread5.cc: Likewise.
5233         * testsuite/thread/pthread6.cc: Likewise.
5234         * testsuite/thread/pthread7-rope.cc: Likewise.
5236 2007-03-02  Paolo Carlini  <pcarlini@suse.de>
5238         PR libstdc++/28080 (partial)
5239         * include/tr1/random (class random_device): Rework to use simple
5240         <cstdio> input, do not include <fstream>.
5241         * include/tr1/random.tcc (all inserters and extractors): Refer
5242         to ios_base as base class of basic_istream or basic_ostream.
5244 2007-03-01  Brooks Moses  <brooks.moses@codesourcery.com>
5246         * Makefile.am: Add dummy install-pdf target.
5247         * Makefile.in: Regenerate
5249 2007-03-01  Paolo Carlini  <pcarlini@suse.de>
5251         PR libstdc++/31005
5252         * include/bits/localefwd.h: Include <cctype>.
5254 2007-02-27  Paolo Carlini  <pcarlini@suse.de>
5256         PR libstdc++/28080 (partial)
5257         * include/std/bitset: Do not include <ios>, <iosfwd> is enough.
5258         (operator>>(std::basic_istream<>&, bitset<>&)): Tweak, refer to
5259         ios_base as a base of basic_istream.
5260         * include/std/iomanip: Do not include <ios>, <iosfwd> + 
5261         <bits/ios_base.h> is enough.
5262         * include/std/iosfwd: Do not include <cctype> here...
5263         * include/bits/locale_facets.h: ... do it here, when needed.
5264         * include/bits/ostream.tcc: Clean up, do not include <locale> here...
5265         * include/std/ostream: ... here instead.
5266         * include/bits/istream.tcc: Likewise for <locale> and <ostream>...
5267         * include/std/istream: ... here.
5268         * include/bits/sstream.tcc: Do not include <sstream>.
5270 2007-02-27  Richard Guenther  <rguenther@suse.de>
5272         * acinclude.m4: Adjust regular expression for ld version extraction.
5273         * configure: Regenerate.
5275 2007-02-26  DJ Delorie  <dj@redhat.com>
5277         * crossconfig.m4 (djgpp): Pre-detect djgpp-specific results, to
5278         avoid needing to link during cross compiling.
5279         * configure: Regenerated.
5281 2007-02-26  Paolo Carlini  <pcarlini@suse.de>
5283         PR libstdc++/28080 (partial)
5284         * include/std/bitset: Do not include <istream> and <ostream>,
5285         <ios> is enough.
5286         * include/std/iomanip: Do not include the whole <istream>,
5287         <ios> is enough; do not include <functional>; reformat.
5288         * include/std/functional: Do not include <cstddef>.
5289         * include/std/list: Do not include <bits/stl_uninitialized.h>.
5290         * include/std/numeric: Do not include the whole <iterator> and
5291         <bits/stl_function.h>.
5292         * include/std/valarray: Do not include <numeric>.
5293         * include/bits/stl_numeric.h: Include <bits/concept_check.h>.
5294         * src/iostream-inst.cc: Include <istream>.
5295         * include/ext/functional: Include <cstddef>.
5296         * testsuite/util/testsuite_hooks.h: Do not include <locale>,
5297         <ctime> is enough; qualify tm.
5298         * testsuite/util/testsuite_hooks.cc: Qualify tm.
5300 2007-02-26  Paolo Carlini  <pcarlini@suse.de>
5302         * include/bits/locale_facets.h (class ctype_byname<char>,
5303         class ctype_byname<wchar_t>): Declare.
5304         * src/ctype.cc (ctype_byname<wchar_t>::ctype_byname(const char*,
5305         size_t), ctype_byname<wchar_t>::~ctype_byname): Define.
5306         * config/locale/generic/ctype_members.cc (ctype_byname<char>::
5307         ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
5308         Likewise.
5309         * config/locale/gnu/ctype_members.cc (ctype_byname<char>::
5310         ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
5311         Likewise.
5312         * config/locale/darwin/ctype_members.cc (ctype_byname<char>::
5313         ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
5314         Likewise.
5315         * testsuite/22_locale/headers/locale/synopsis.cc: Remove xfail.
5317 2007-02-25  Paolo Carlini  <pcarlini@suse.de>
5319         * testsuite/19_diagnostics/headers/cerrno/macros.cc: Include
5320         the right header.
5321         * testsuite/18_support/headers/cstdlib/macros.cc: Likewise.
5323 2007-02-23  Paolo Carlini  <pcarlini@suse.de>
5324         
5325         PR libstdc++/25896
5326         * include/tr1/hashtable (_Hashtable<>::erase(const key_type&)):
5327         Take care of &_M_extract((*__slot)->_M_v) == &__k.
5329         * testsuite/tr1/6_containers/unordered_map/erase/1.cc: New.
5330         * testsuite/tr1/6_containers/unordered_multimap/erase/1.cc: Likewise.
5331         * testsuite/tr1/6_containers/unordered_multiset/erase/1.cc: Likewise.
5332         * testsuite/tr1/6_containers/unordered_set/erase/1.cc: Likewise.
5334 2007-02-23  Mark Mitchell  <mark@codesourcery.com>
5336         * testsuite/27_io/ios_base/sync_with_stdio/1.cc: XFAIL for wrapped
5337         targets.
5339 2007-02-23  Mark Mitchell  <mark@codesourcery.com>
5341         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
5342         XFAIL for Newlib targets.
5344 2007-02-22  Simon Martin  <simartin@users.sourceforge.net>
5346         * testsuite/27_io/basic_ios/cons/char/3.cc: Fixed type mismatches in
5347         explicit instantiations.
5348         * testsuite/27_io/basic_istream/extractors_other/pod/
5349         3983-3.cc: Likewise.
5350         * testsuite/27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc:
5351         Likewise.
5352         * testsuite/27_io/basic_istream/extractors_character/pod/3983-2.cc:
5353         Likewise.
5354         * testsuite/27_io/basic_istream/sentry/pod/1.cc: Likewise.
5355         * testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
5356         * testsuite/21_strings/basic_string/inserters_extractors/
5357         pod/10081-in.cc: Likewise.
5358         * testsuite/21_strings/basic_string/inserters_extractors/pod/
5359         10081-out.cc: Likewise.
5360         * testsuite/21_strings/basic_string/capacity/1.cc: Likewise.
5362 2007-02-22  Paolo Carlini  <pcarlini@suse.de>
5364         * include/tr1/unordered_map (class __unordered_map,
5365         class __unordered_multimap): New.
5366         (class unordered_map, class unordered_multimap): Forward to
5367         the latter.
5368         * include/tr1/unordered_set: Likewise for unordered_set and
5369         unordered_multiset.
5370         * testsuite/tr1/6_containers/headers/unordered_set/synopsis.cc:
5371         Remove xfail.
5372         * testsuite/tr1/6_containers/headers/unordered_map/synopsis.cc:
5373         Likewise.
5374         * testsuite/tr1/6_containers/unordered_multimap/requirements/
5375         explicit_instantiation.cc: Adjust.
5376         * testsuite/tr1/6_containers/unordered_set/requirements/
5377         explicit_instantiation.cc: Likewise.
5378         * testsuite/tr1/6_containers/unordered_map/requirements/
5379         explicit_instantiation.cc: Likewise.
5380         * testsuite/tr1/6_containers/unordered_multiset/requirements/
5381         explicit_instantiation.cc: Likewise.
5382         * testsuite/tr1/6_containers/unordered_map/24064.cc: Likewise.
5383         * testsuite/util/native_type/assoc/native_hash_set.hpp: Likewise.
5384         * testsuite/util/native_type/assoc/native_hash_map.hpp: Likewise.
5386 2007-02-20  Mark Mitchell  <mark@codesourcery.com>
5388         * testsuite/lib/libstdc++.exp (libstdc++_init): Compile testglue
5389         with -fexceptions.
5391 2007-02-20  Paolo Carlini  <pcarlini@suse.de>
5393         PR libstdc++/28080 (partial)
5394         * include/tr1/functional: Split out hash bits to...
5395         * include/tr1/functional_hash.h: ...here.
5396         * include/Makefile.am: Add.
5397         * include/tr1/unordered_set: Include the latter instead.
5398         * include/tr1/unordered_map: Likewise.
5399         * include/tr1/random: Do not include the whole <algorithm>,
5400         stl_algobase.h is enough.
5401         * include/tr1/memory: Likewise.
5402         * include/Makefile.in: Regenerate.
5404         * include/tr1/utility (get(std::pair<>&), get(const std::pair<>&)):
5405         Mark inline.
5407 2007-02-20  Benjamin Kosnik  <bkoz@redhat.com>
5409         Directory layout flattening.
5411         Added in testsuite:
5412         * 20_util/allocator
5413         * 20_util/auto_ptr
5414         * 20_util/function_objects
5415         * 20_util/function_objects/binders
5416         * 20_util/function_objects/binders/1.cc
5417         * 20_util/function_objects/binders/3113.cc
5418         * 20_util/function_objects/comparisons.cc
5419         * 20_util/pair
5420         * 20_util/raw_storage_iterator
5421         * 20_util/rel_ops.cc
5422         * 20_util/specialized_algorithms
5423         * 20_util/specialized_algorithms/16505.cc
5424         * 20_util/temporary_buffer.cc
5425         * 26_numerics/numeric_arrays/slice_array
5426         * 26_numerics/numeric_arrays/slice_array/array_assignment.cc
5427         * 26_numerics/numeric_arrays/slice_array/requirements
5428         * 26_numerics/numeric_arrays/slice_array/requirements/
5429         explicit_instantiation.cc
5430         * 26_numerics/numeric_arrays/slice_array/requirements/typedefs.cc
5431         * 26_numerics/numeric_arrays/valarray
5432         * 26_numerics/numeric_arrays/valarray/27867.cc
5433         * 26_numerics/numeric_arrays/valarray/28277.cc
5434         * 26_numerics/numeric_arrays/valarray/30416.cc
5435         * 26_numerics/numeric_arrays/valarray/algo.cc
5436         * 26_numerics/numeric_arrays/valarray/binary_closure.cc
5437         * 26_numerics/numeric_arrays/valarray/const_bracket.cc
5438         * 26_numerics/numeric_arrays/valarray/dr543.cc
5439         * 26_numerics/numeric_arrays/valarray/name_lookup.cc
5440         * 26_numerics/numeric_arrays/valarray/operators.cc
5441         * 26_numerics/numeric_arrays/valarray/requirements
5442         * 26_numerics/numeric_arrays/valarray/requirements/
5443         explicit_instantiation.cc
5444         * 26_numerics/numeric_arrays/valarray/requirements/typedefs.cc
5445         * 26_numerics/numeric_arrays/valarray/subset_assignment.cc
5446         * tr1/2_general_utilities/enable_shared_from_this
5447         * tr1/2_general_utilities/shared_ptr
5448         * tr1/2_general_utilities/weak_ptr
5449         
5450         Deleted in testsuite:
5451         * 20_util/functional
5452         * 20_util/functional/binders
5453         * 20_util/functional/binders/1.cc
5454         * 20_util/functional/binders/3113.cc
5455         * 20_util/functional/comparisons.cc
5456         * 20_util/memory
5457         * 20_util/memory/16505.cc
5458         * 20_util/memory/allocator
5459         * 20_util/memory/allocator/10378.cc
5460         * 20_util/memory/allocator/14176.cc
5461         * 20_util/memory/allocator/1.cc
5462         * 20_util/memory/allocator/8230.cc
5463         * 20_util/memory/allocator/requirements
5464         * 20_util/memory/allocator/requirements/explicit_instantiation
5465         * 20_util/memory/allocator/requirements/explicit_instantiation/1.cc
5466         * 20_util/memory/auto_ptr
5467         * 20_util/memory/auto_ptr/1.cc
5468         * 20_util/memory/auto_ptr/2.cc
5469         * 20_util/memory/auto_ptr/3946.cc
5470         * 20_util/memory/auto_ptr/3.cc
5471         * 20_util/memory/auto_ptr/4.cc
5472         * 20_util/memory/auto_ptr/5.cc
5473         * 20_util/memory/auto_ptr/6.cc
5474         * 20_util/memory/auto_ptr/7.cc
5475         * 20_util/memory/auto_ptr/assign_neg.cc
5476         * 20_util/memory/auto_ptr/requirements
5477         * 20_util/memory/auto_ptr/requirements/explicit_instantiation
5478         * 20_util/memory/auto_ptr/requirements/explicit_instantiation/1.cc
5479         * 20_util/memory/raw_storage_iterator
5480         * 20_util/memory/raw_storage_iterator/requirements
5481         * 20_util/memory/raw_storage_iterator/requirements/base_classes.cc
5482         * 20_util/memory/raw_storage_iterator/requirements/
5483         explicit_instantiation
5484         * 20_util/memory/raw_storage_iterator/requirements/
5485         explicit_instantiation/1.cc
5486         * 20_util/memory/raw_storage_iterator/requirements/typedefs.cc
5487         * 20_util/memory/temporary_buffer.cc
5488         * 20_util/utility
5489         * 20_util/utility/pair
5490         * 20_util/utility/pair/1.cc
5491         * 20_util/utility/pair/2.cc
5492         * 20_util/utility/pair/3.cc
5493         * 20_util/utility/pair/4.cc
5494         * 20_util/utility/pair/requirements
5495         * 20_util/utility/pair/requirements/explicit_instantiation
5496         * 20_util/utility/pair/requirements/explicit_instantiation/1.cc
5497         * 20_util/utility/rel_ops.cc
5498         * 26_numerics/numeric_arrays/27867.cc
5499         * 26_numerics/numeric_arrays/28277.cc
5500         * 26_numerics/numeric_arrays/30416.cc
5501         * 26_numerics/numeric_arrays/binary_closure.cc
5502         * 26_numerics/numeric_arrays/dr543.cc
5503         * 26_numerics/numeric_arrays/slice_array_assignment.cc
5504         * 26_numerics/numeric_arrays/valarray.cc
5505         * 26_numerics/numeric_arrays/valarray_const_bracket.cc
5506         * 26_numerics/numeric_arrays/valarray_name_lookup.cc
5507         * 26_numerics/numeric_arrays/valarray_operators.cc
5508         * 26_numerics/numeric_arrays/valarray_subset_assignment.cc
5509         * tr1/2_general_utilities/memory
5510         * tr1/2_general_utilities/memory/enable_shared_from_this
5511         * tr1/2_general_utilities/memory/enable_shared_from_this/1.cc
5512         * tr1/2_general_utilities/memory/enable_shared_from_this/not_shared2.cc
5513         * tr1/2_general_utilities/memory/enable_shared_from_this/not_shared3.cc
5514         * tr1/2_general_utilities/memory/enable_shared_from_this/not_shared.cc
5515         * tr1/2_general_utilities/memory/enable_shared_from_this/requirements
5516         * tr1/2_general_utilities/memory/enable_shared_from_this/
5517         requirements/explicit_instantiation
5518         * tr1/2_general_utilities/memory/enable_shared_from_this/
5519         requirements/explicit_instantiation/1.cc
5520         * tr1/2_general_utilities/memory/enable_shared_from_this/shared.cc
5521         * tr1/2_general_utilities/memory/enable_shared_from_this/
5522         still_shared.cc
5523         * tr1/2_general_utilities/memory/shared_ptr
5524         * tr1/2_general_utilities/memory/shared_ptr/assign
5525         * tr1/2_general_utilities/memory/shared_ptr/assign/assign.cc
5526         * tr1/2_general_utilities/memory/shared_ptr/assign/auto_ptr.cc
5527         * tr1/2_general_utilities/memory/shared_ptr/assign/auto_ptr_neg.cc
5528         * tr1/2_general_utilities/memory/shared_ptr/assign/
5529         auto_ptr_rvalue_neg.cc
5530         * tr1/2_general_utilities/memory/shared_ptr/assign/dr541.cc
5531         * tr1/2_general_utilities/memory/shared_ptr/assign/shared_ptr.cc
5532         * tr1/2_general_utilities/memory/shared_ptr/assign/shared_ptr_neg.cc
5533         * tr1/2_general_utilities/memory/shared_ptr/casts
5534         * tr1/2_general_utilities/memory/shared_ptr/casts/1.cc
5535         * tr1/2_general_utilities/memory/shared_ptr/comparison
5536         * tr1/2_general_utilities/memory/shared_ptr/comparison/cmp.cc
5537         * tr1/2_general_utilities/memory/shared_ptr/cons
5538         * tr1/2_general_utilities/memory/shared_ptr/cons/auto_ptr.cc
5539         * tr1/2_general_utilities/memory/shared_ptr/cons/auto_ptr_neg.cc
5540         * tr1/2_general_utilities/memory/shared_ptr/cons/copy.cc
5541         * tr1/2_general_utilities/memory/shared_ptr/cons/default.cc
5542         * tr1/2_general_utilities/memory/shared_ptr/cons/pointer.cc
5543         * tr1/2_general_utilities/memory/shared_ptr/cons/weak_ptr.cc
5544         * tr1/2_general_utilities/memory/shared_ptr/cons/weak_ptr_expired.cc
5545         * tr1/2_general_utilities/memory/shared_ptr/dest
5546         * tr1/2_general_utilities/memory/shared_ptr/dest/dest.cc
5547         * tr1/2_general_utilities/memory/shared_ptr/misc
5548         * tr1/2_general_utilities/memory/shared_ptr/misc/24595.cc
5549         * tr1/2_general_utilities/memory/shared_ptr/misc/io.cc
5550         * tr1/2_general_utilities/memory/shared_ptr/misc/swap.cc
5551         * tr1/2_general_utilities/memory/shared_ptr/modifiers
5552         * tr1/2_general_utilities/memory/shared_ptr/modifiers/24805.cc
5553         * tr1/2_general_utilities/memory/shared_ptr/modifiers/reset.cc
5554         * tr1/2_general_utilities/memory/shared_ptr/modifiers/reset_neg.cc
5555         * tr1/2_general_utilities/memory/shared_ptr/modifiers/swap.cc
5556         * tr1/2_general_utilities/memory/shared_ptr/modifiers/swap_neg.cc
5557         * tr1/2_general_utilities/memory/shared_ptr/observers
5558         * tr1/2_general_utilities/memory/shared_ptr/observers/bool_conv.cc
5559         * tr1/2_general_utilities/memory/shared_ptr/observers/get.cc
5560         * tr1/2_general_utilities/memory/shared_ptr/observers/unique.cc
5561         * tr1/2_general_utilities/memory/shared_ptr/observers/use_count.cc
5562         * tr1/2_general_utilities/memory/shared_ptr/requirements
5563         * tr1/2_general_utilities/memory/shared_ptr/requirements/
5564         explicit_instantiation
5565         * tr1/2_general_utilities/memory/shared_ptr/requirements/
5566         explicit_instantiation/1.cc
5567         * tr1/2_general_utilities/memory/shared_ptr/thread
5568         * tr1/2_general_utilities/memory/shared_ptr/thread/
5569         default_weaktoshared.cc
5570         * tr1/2_general_utilities/memory/shared_ptr/thread/
5571         mutex_weaktoshared.cc
5572         * tr1/2_general_utilities/memory/weak_ptr
5573         * tr1/2_general_utilities/memory/weak_ptr/lock
5574         * tr1/2_general_utilities/memory/weak_ptr/lock/1.cc
5575         * tr1/2_general_utilities/memory/weak_ptr/requirements
5576         * tr1/2_general_utilities/memory/weak_ptr/requirements/
5577         explicit_instantiation
5578         * tr1/2_general_utilities/memory/weak_ptr/requirements/
5579         explicit_instantiation/1.cc
5581 2007-02-20  Benjamin Kosnik  <bkoz@redhat.com>
5583         Revamp library API testing.
5584         
5585         Added in testsuite:
5586         * 17_intro/headers
5587         * 17_intro/headers/all_assert_neg.cc
5588         * 17_intro/headers/all_c++200x_compatibility.cc
5589         * 17_intro/headers/all.cc
5590         * 17_intro/headers/c++1998
5591         * 17_intro/headers/c++1998/all.cc
5592         * 17_intro/headers/c++1998/all_multiple_inclusion.cc
5593         * 17_intro/headers/c++1998/c++_for_c.tar
5594         * 17_intro/headers/c++1998/c++.tar
5595         * 17_intro/using_namespace_std.cc
5596         * 18_support/headers
5597         * 18_support/headers/cfloat
5598         * 18_support/headers/cfloat/values.cc
5599         * 18_support/headers/climits
5600         * 18_support/headers/climits/values.cc
5601         * 18_support/headers/csetjmp
5602         * 18_support/headers/csetjmp/functions_std.cc
5603         * 18_support/headers/csetjmp/macros.cc
5604         * 18_support/headers/csetjmp/types_std.cc
5605         * 18_support/headers/csignal
5606         * 18_support/headers/csignal/functions_std.cc
5607         * 18_support/headers/csignal/macros.cc
5608         * 18_support/headers/csignal/types_std.cc
5609         * 18_support/headers/cstdarg
5610         * 18_support/headers/cstdarg/macros.cc
5611         * 18_support/headers/cstdarg/types_std.cc
5612         * 18_support/headers/cstddef
5613         * 18_support/headers/cstddef/macros.cc
5614         * 18_support/headers/cstddef/types_std.cc
5615         * 18_support/headers/cstdlib
5616         * 18_support/headers/cstdlib/functions_std.cc
5617         * 18_support/headers/cstdlib/macros.cc
5618         * 18_support/headers/ctime
5619         * 18_support/headers/ctime/functions_std.cc
5620         * 18_support/headers/ctime/macros.cc
5621         * 18_support/headers/ctime/types_std.cc
5622         * 18_support/headers/exception
5623         * 18_support/headers/exception/synopsis.cc
5624         * 18_support/headers/exception/types_std.cc
5625         * 18_support/headers/limits
5626         * 18_support/headers/limits/synopsis.cc
5627         * 18_support/headers/new
5628         * 18_support/headers/new/synopsis.cc
5629         * 18_support/headers/new/types_std.cc
5630         * 18_support/headers/typeinfo
5631         * 18_support/headers/typeinfo/synopsis.cc
5632         * 18_support/headers/typeinfo/types_std.cc
5633         * 18_support/numeric_limits/is_signed.cc
5634         * 18_support/numeric_limits/requirements
5635         * 18_support/numeric_limits/requirements/explicit_instantiation
5636         * 18_support/numeric_limits/requirements/explicit_instantiation/1.cc
5637         * 18_support/numeric_limits/specialization_default_values.cc
5638         * 19_diagnostics/headers
5639         * 19_diagnostics/headers/cassert
5640         * 19_diagnostics/headers/cassert/macros.cc
5641         * 19_diagnostics/headers/cerrno
5642         * 19_diagnostics/headers/cerrno/macros.cc
5643         * 19_diagnostics/headers/stdexcept
5644         * 19_diagnostics/headers/stdexcept/synopsis.cc
5645         * 19_diagnostics/headers/stdexcept/types_std.cc
5646         * 20_util/headers
5647         * 20_util/headers/cstdlib
5648         * 20_util/headers/cstdlib/functions_std.cc
5649         * 20_util/headers/cstring
5650         * 20_util/headers/cstring/functions_std.cc
5651         * 20_util/headers/cstring/macros.cc
5652         * 20_util/headers/cstring/types_std.cc
5653         * 20_util/headers/ctime
5654         * 20_util/headers/ctime/functions_std.cc
5655         * 20_util/headers/ctime/macros.cc
5656         * 20_util/headers/ctime/types_std.cc
5657         * 20_util/headers/functional
5658         * 20_util/headers/functional/synopsis.cc
5659         * 20_util/headers/memory
5660         * 20_util/headers/memory/synopsis.cc
5661         * 20_util/headers/utility
5662         * 20_util/headers/utility/synopsis.cc
5663         * 20_util/headers/utility/using_namespace_std_rel_ops.cc
5664         * 20_util/memory/allocator/requirements
5665         * 20_util/memory/allocator/requirements/explicit_instantiation
5666         * 20_util/memory/allocator/requirements/explicit_instantiation/1.cc
5667         * 20_util/memory/auto_ptr/requirements
5668         * 20_util/memory/auto_ptr/requirements/explicit_instantiation
5669         * 20_util/memory/auto_ptr/requirements/explicit_instantiation/1.cc
5670         * 20_util/memory/raw_storage_iterator
5671         * 20_util/memory/raw_storage_iterator/requirements
5672         * 20_util/memory/raw_storage_iterator/requirements/base_classes.cc
5673         * 20_util/memory/raw_storage_iterator/requirements/
5674         explicit_instantiation
5675         * 20_util/memory/raw_storage_iterator/requirements/
5676         explicit_instantiation/1.cc
5677         * 20_util/memory/raw_storage_iterator/requirements/typedefs.cc
5678         * 20_util/utility/pair/requirements
5679         * 20_util/utility/pair/requirements/explicit_instantiation
5680         * 20_util/utility/pair/requirements/explicit_instantiation/1.cc
5681         * 21_strings/basic_string/requirements
5682         * 21_strings/basic_string/requirements/explicit_instantiation
5683         * 21_strings/basic_string/requirements/explicit_instantiation/1.cc
5684         * 21_strings/basic_string/requirements/explicit_instantiation/debug.cc
5685         * 21_strings/headers
5686         * 21_strings/headers/cctype
5687         * 21_strings/headers/cctype/functions_std.cc
5688         * 21_strings/headers/cstdlib
5689         * 21_strings/headers/cstdlib/functions_std.cc
5690         * 21_strings/headers/cstdlib/macros.cc
5691         * 21_strings/headers/cstring
5692         * 21_strings/headers/cstring/functions_std.cc
5693         * 21_strings/headers/cstring/macros.cc
5694         * 21_strings/headers/cstring/types_std.cc
5695         * 21_strings/headers/cwchar
5696         * 21_strings/headers/cwchar/functions_std.cc
5697         * 21_strings/headers/cwchar/macros.cc
5698         * 21_strings/headers/cwchar/types_std.cc
5699         * 21_strings/headers/cwctype
5700         * 21_strings/headers/cwctype/functions_std.cc
5701         * 21_strings/headers/cwctype/macros.cc
5702         * 21_strings/headers/cwctype/types_std.cc
5703         * 21_strings/headers/string
5704         * 21_strings/headers/string/synopsis.cc
5705         * 21_strings/headers/string/types_std.cc
5706         * 22_locale/codecvt_byname/requirements
5707         * 22_locale/codecvt_byname/requirements/base_classes.cc
5708         * 22_locale/codecvt_byname/requirements/explicit_instantiation.cc
5709         * 22_locale/codecvt_byname/requirements/typedefs.cc
5710         * 22_locale/codecvt/requirements
5711         * 22_locale/codecvt/requirements/base_classes.cc
5712         * 22_locale/codecvt/requirements/explicit_instantiation.cc
5713         * 22_locale/codecvt/requirements/typedefs.cc
5714         * 22_locale/collate_byname/requirements
5715         * 22_locale/collate_byname/requirements/base_classes.cc
5716         * 22_locale/collate_byname/requirements/explicit_instantiation.cc
5717         * 22_locale/collate_byname/requirements/typedefs.cc
5718         * 22_locale/collate/requirements
5719         * 22_locale/collate/requirements/base_classes.cc
5720         * 22_locale/collate/requirements/explicit_instantiation.cc
5721         * 22_locale/collate/requirements/typedefs.cc
5722         * 22_locale/ctype_base/mask.cc
5723         * 22_locale/ctype/requirements
5724         * 22_locale/ctype/requirements/base_classes.cc
5725         * 22_locale/ctype/requirements/explicit_instantiation.cc
5726         * 22_locale/ctype/requirements/typedefs.cc
5727         * 22_locale/headers
5728         * 22_locale/headers/clocale
5729         * 22_locale/headers/clocale/functions_std.cc
5730         * 22_locale/headers/clocale/macros.cc
5731         * 22_locale/headers/clocale/types_std.cc
5732         * 22_locale/headers/locale
5733         * 22_locale/headers/locale/synopsis.cc
5734         * 22_locale/headers/locale/types_std.cc
5735         * 22_locale/messages_byname/requirements
5736         * 22_locale/messages_byname/requirements/base_classes.cc
5737         * 22_locale/messages_byname/requirements/explicit_instantiation.cc
5738         * 22_locale/messages_byname/requirements/typedefs.cc
5739         * 22_locale/messages/requirements
5740         * 22_locale/messages/requirements/base_classes.cc
5741         * 22_locale/messages/requirements/explicit_instantiation.cc
5742         * 22_locale/messages/requirements/typedefs.cc
5743         * 22_locale/money_get/cons
5744         * 22_locale/money_get/cons/3.cc
5745         * 22_locale/money_get/requirements
5746         * 22_locale/money_get/requirements/base_classes.cc
5747         * 22_locale/money_get/requirements/explicit_instantiations.cc
5748         * 22_locale/money_get/requirements/typedefs.cc
5749         * 22_locale/moneypunct_byname/requirements
5750         * 22_locale/moneypunct_byname/requirements/base_classes.cc
5751         * 22_locale/moneypunct_byname/requirements/explicit_instantiation.cc
5752         * 22_locale/moneypunct_byname/requirements/typedefs.cc
5753         * 22_locale/moneypunct/requirements
5754         * 22_locale/moneypunct/requirements/false
5755         * 22_locale/moneypunct/requirements/false/base_classes.cc
5756         * 22_locale/moneypunct/requirements/false/explicit_instantiation.cc
5757         * 22_locale/moneypunct/requirements/false/intl.cc
5758         * 22_locale/moneypunct/requirements/false/typedefs.cc
5759         * 22_locale/moneypunct/requirements/true
5760         * 22_locale/moneypunct/requirements/true/base_classes.cc
5761         * 22_locale/moneypunct/requirements/true/explicit_instantiation.cc
5762         * 22_locale/moneypunct/requirements/true/intl.cc
5763         * 22_locale/moneypunct/requirements/true/typedefs.cc
5764         * 22_locale/money_put/cons
5765         * 22_locale/money_put/cons/3.cc
5766         * 22_locale/money_put/requirements
5767         * 22_locale/money_put/requirements/base_classes.cc
5768         * 22_locale/money_put/requirements/explicit_instantiation.cc
5769         * 22_locale/money_put/requirements/typedefs.cc
5770         * 22_locale/num_get/cons
5771         * 22_locale/num_get/cons/3.cc
5772         * 22_locale/num_get/requirements
5773         * 22_locale/num_get/requirements/base_classes.cc
5774         * 22_locale/num_get/requirements/explicit_instantiation.cc
5775         * 22_locale/num_get/requirements/typedefs.cc
5776         * 22_locale/numpunct_byname/requirements
5777         * 22_locale/numpunct_byname/requirements/base_classes.cc
5778         * 22_locale/numpunct_byname/requirements/explicit_instantiations.cc
5779         * 22_locale/numpunct_byname/requirements/typedefs.cc
5780         * 22_locale/numpunct/requirements
5781         * 22_locale/numpunct/requirements/base_classes.cc
5782         * 22_locale/numpunct/requirements/explicit_instantiations.cc
5783         * 22_locale/numpunct/requirements/typedefs.cc
5784         * 22_locale/num_put/cons
5785         * 22_locale/num_put/cons/3.cc
5786         * 22_locale/num_put/requirements
5787         * 22_locale/num_put/requirements/base_classes.cc
5788         * 22_locale/num_put/requirements/explicit_instantiations.cc
5789         * 22_locale/num_put/requirements/typedefs.cc
5790         * 22_locale/time_get/requirements
5791         * 22_locale/time_get/requirements/base_classes.cc
5792         * 22_locale/time_get/requirements/explicit_instantiations.cc
5793         * 22_locale/time_get/requirements/typedefs.cc
5794         * 22_locale/time_put/requirements
5795         * 22_locale/time_put/requirements/base_classes.cc
5796         * 22_locale/time_put/requirements/explicit_instantiations.cc
5797         * 22_locale/time_put/requirements/typedefs.cc
5798         * 23_containers/bitset/requirements
5799         * 23_containers/bitset/requirements/explicit_instantiation
5800         * 23_containers/bitset/requirements/explicit_instantiation/1.cc
5801         * 23_containers/deque/requirements
5802         * 23_containers/deque/requirements/explicit_instantiation
5803         * 23_containers/deque/requirements/partial_specialization
5804         * 23_containers/deque/requirements/partial_specialization/1.cc
5805         * 23_containers/headers
5806         * 23_containers/headers/bitset
5807         * 23_containers/headers/bitset/synopsis.cc
5808         * 23_containers/headers/deque
5809         * 23_containers/headers/deque/synopsis.cc
5810         * 23_containers/headers/list
5811         * 23_containers/headers/list/synopsis.cc
5812         * 23_containers/headers/map
5813         * 23_containers/headers/map/synopsis.cc
5814         * 23_containers/headers/queue
5815         * 23_containers/headers/queue/synopsis.cc
5816         * 23_containers/headers/set
5817         * 23_containers/headers/set/synopsis.cc
5818         * 23_containers/headers/stack
5819         * 23_containers/headers/stack/synopsis.cc
5820         * 23_containers/headers/vector
5821         * 23_containers/headers/vector/synopsis.cc
5822         * 23_containers/list/requirements
5823         * 23_containers/list/requirements/explicit_instantiation
5824         * 23_containers/list/requirements/partial_specialization
5825         * 23_containers/list/requirements/partial_specialization/1.cc
5826         * 23_containers/map/requirements
5827         * 23_containers/map/requirements/explicit_instantiation
5828         * 23_containers/map/requirements/partial_specialization
5829         * 23_containers/map/requirements/partial_specialization/1.cc
5830         * 23_containers/multimap/requirements
5831         * 23_containers/multimap/requirements/explicit_instantiation
5832         * 23_containers/multimap/requirements/partial_specialization
5833         * 23_containers/multimap/requirements/partial_specialization/1.cc
5834         * 23_containers/multiset/requirements
5835         * 23_containers/multiset/requirements/explicit_instantiation
5836         * 23_containers/multiset/requirements/partial_specialization
5837         * 23_containers/multiset/requirements/partial_specialization/1.cc
5838         * 23_containers/priority_queue/requirements
5839         * 23_containers/priority_queue/requirements/explicit_instantiation
5840         * 23_containers/priority_queue/requirements/explicit_instantiation/1.cc
5841         * 23_containers/queue/requirements
5842         * 23_containers/queue/requirements/explicit_instantiation
5843         * 23_containers/queue/requirements/explicit_instantiation/1.cc
5844         * 23_containers/set/requirements
5845         * 23_containers/set/requirements/explicit_instantiation
5846         * 23_containers/set/requirements/partial_specialization
5847         * 23_containers/set/requirements/partial_specialization/1.cc
5848         * 23_containers/stack/requirements
5849         * 23_containers/stack/requirements/explicit_instantiation
5850         * 23_containers/stack/requirements/explicit_instantiation/1.cc
5851         * 23_containers/vector/requirements
5852         * 23_containers/vector/requirements/explicit_instantiation
5853         * 23_containers/vector/requirements/partial_specialization
5854         * 23_containers/vector/requirements/partial_specialization/1.cc
5855         * 24_iterators/back_insert_iterator
5856         * 24_iterators/back_insert_iterator/2.cc
5857         * 24_iterators/back_insert_iterator/requirements
5858         * 24_iterators/back_insert_iterator/requirements/base_classes.cc
5859         * 24_iterators/back_insert_iterator/requirements/container.cc
5860         * 24_iterators/back_insert_iterator/requirements/
5861         explicit_instantiation.cc
5862         * 24_iterators/back_insert_iterator/requirements/typedefs.cc
5863         * 24_iterators/front_insert_iterator
5864         * 24_iterators/front_insert_iterator/2.cc
5865         * 24_iterators/front_insert_iterator/requirements
5866         * 24_iterators/front_insert_iterator/requirements/base_classes.cc
5867         * 24_iterators/front_insert_iterator/requirements/container.cc
5868         * 24_iterators/front_insert_iterator/requirements/
5869         explicit_instantiation.cc
5870         * 24_iterators/front_insert_iterator/requirements/typedefs.cc
5871         * 24_iterators/headers
5872         * 24_iterators/headers/iterator
5873         * 24_iterators/headers/iterator/synopsis.cc
5874         * 24_iterators/headers/iterator/types_std.cc
5875         * 24_iterators/insert_iterator
5876         * 24_iterators/insert_iterator/2.cc
5877         * 24_iterators/insert_iterator/requirements
5878         * 24_iterators/insert_iterator/requirements/base_classes.cc
5879         * 24_iterators/insert_iterator/requirements/container.cc
5880         * 24_iterators/insert_iterator/requirements/explicit_instantiation.cc
5881         * 24_iterators/insert_iterator/requirements/typedefs.cc
5882         * 24_iterators/istreambuf_iterator/requirements
5883         * 24_iterators/istreambuf_iterator/requirements/base_classes.cc
5884         * 24_iterators/istreambuf_iterator/requirements/
5885         explicit_instantiation.cc
5886         * 24_iterators/istreambuf_iterator/requirements/typedefs.cc
5887         * 24_iterators/istream_iterator
5888         * 24_iterators/istream_iterator/2.cc
5889         * 24_iterators/istream_iterator/requirements
5890         * 24_iterators/istream_iterator/requirements/base_classes.cc
5891         * 24_iterators/istream_iterator/requirements/explicit_instantiation.cc
5892         * 24_iterators/istream_iterator/requirements/typedefs.cc
5893         * 24_iterators/ostreambuf_iterator/requirements
5894         * 24_iterators/ostreambuf_iterator/requirements/base_classes.cc
5895         * 24_iterators/ostreambuf_iterator/requirements/
5896         explicit_instantiation.cc
5897         * 24_iterators/ostreambuf_iterator/requirements/typedefs.cc
5898         * 24_iterators/ostream_iterator
5899         * 24_iterators/ostream_iterator/requirements
5900         * 24_iterators/ostream_iterator/requirements/base_classes.cc
5901         * 24_iterators/ostream_iterator/requirements/explicit_instantiation.cc
5902         * 24_iterators/ostream_iterator/requirements/typedefs.cc
5903         * 24_iterators/random_access_iterator
5904         * 24_iterators/random_access_iterator/26020.cc
5905         * 24_iterators/random_access_iterator/string_vector_iterators.cc
5906         * 24_iterators/reverse_iterator/requirements
5907         * 24_iterators/reverse_iterator/requirements/base_classes.cc
5908         * 24_iterators/reverse_iterator/requirements/current.cc
5909         * 24_iterators/reverse_iterator/requirements/explicit_instantiation.cc
5910         * 24_iterators/reverse_iterator/requirements/typedefs.cc
5911         * 25_algorithms/headers
5912         * 25_algorithms/headers/algorithm
5913         * 25_algorithms/headers/algorithm/synopsis.cc
5914         * 25_algorithms/headers/cstdlib
5915         * 25_algorithms/headers/cstdlib/functions_std.cc
5916         * 26_numerics/headers
5917         * 26_numerics/headers/cmath
5918         * 26_numerics/headers/cmath/19322.cc
5919         * 26_numerics/headers/cmath/c99_classification_macros_c.cc
5920         * 26_numerics/headers/cmath/c99_classification_macros_c++.cc
5921         * 26_numerics/headers/cmath/c_math.cc
5922         * 26_numerics/headers/cmath/c_math_dynamic.cc
5923         * 26_numerics/headers/cmath/fabs_inline.cc
5924         * 26_numerics/headers/cmath/functions_std.cc
5925         * 26_numerics/headers/cmath/macros.cc
5926         * 26_numerics/headers/cmath/overloads.cc
5927         * 26_numerics/headers/cmath/powi.cc
5928         * 26_numerics/headers/complex
5929         * 26_numerics/headers/complex/synopsis.cc
5930         * 26_numerics/headers/cstdlib
5931         * 26_numerics/headers/cstdlib/13943.cc
5932         * 26_numerics/headers/cstdlib/2190.cc
5933         * 26_numerics/headers/cstdlib/functions_std.cc
5934         * 26_numerics/headers/cstdlib/macros.cc
5935         * 26_numerics/headers/cstdlib/types_std.cc
5936         * 26_numerics/headers/numeric
5937         * 26_numerics/headers/numeric/synopsis.cc
5938         * 26_numerics/headers/valarray
5939         * 26_numerics/headers/valarray/synopsis.cc
5940         * 26_numerics/headers/valarray/types_std.cc
5941         * 26_numerics/numeric_arrays
5942         * 26_numerics/numeric_operations
5943         * 27_io/basic_filebuf/cons/2020.cc
5944         * 27_io/basic_filebuf/requirements
5945         * 27_io/basic_filebuf/requirements/base_classes.cc
5946         * 27_io/basic_filebuf/requirements/explicit_instantiation.cc
5947         * 27_io/basic_filebuf/requirements/typedefs.cc
5948         * 27_io/basic_fstream/cons
5949         * 27_io/basic_fstream/cons/3.cc
5950         * 27_io/basic_fstream/requirements
5951         * 27_io/basic_fstream/requirements/base_classes.cc
5952         * 27_io/basic_fstream/requirements/explicit_instantiation.cc
5953         * 27_io/basic_fstream/requirements/typedefs.cc
5954         * 27_io/basic_ifstream/cons/2020.cc
5955         * 27_io/basic_ifstream/requirements
5956         * 27_io/basic_ifstream/requirements/base_classes.cc
5957         * 27_io/basic_ifstream/requirements/explicit_instantiation.cc
5958         * 27_io/basic_ifstream/requirements/typedefs.cc
5959         * 27_io/basic_ios/cons/2020.cc
5960         * 27_io/basic_ios/requirements
5961         * 27_io/basic_ios/requirements/base_classes.cc
5962         * 27_io/basic_ios/requirements/explicit_instantiation.cc
5963         * 27_io/basic_ios/requirements/typedefs.cc
5964         * 27_io/basic_iostream/cons
5965         * 27_io/basic_iostream/cons/2020.cc
5966         * 27_io/basic_iostream/requirements
5967         * 27_io/basic_iostream/requirements/base_classes.cc
5968         * 27_io/basic_iostream/requirements/explicit_instantiation.cc
5969         * 27_io/basic_iostream/requirements/typedefs.cc
5970         * 27_io/basic_istream/cons
5971         * 27_io/basic_istream/cons/3.cc
5972         * 27_io/basic_istream/requirements
5973         * 27_io/basic_istream/requirements/base_classes.cc
5974         * 27_io/basic_istream/requirements/explicit_instantiation.cc
5975         * 27_io/basic_istream/requirements/typedefs.cc
5976         * 27_io/basic_istringstream/cons
5977         * 27_io/basic_istringstream/cons/2020.cc
5978         * 27_io/basic_istringstream/requirements
5979         * 27_io/basic_istringstream/requirements/base_classes.cc
5980         * 27_io/basic_istringstream/requirements/explicit_instantiation.cc
5981         * 27_io/basic_istringstream/requirements/typedefs.cc
5982         * 27_io/basic_ofstream/cons/2020.cc
5983         * 27_io/basic_ofstream/requirements
5984         * 27_io/basic_ofstream/requirements/base_classes.cc
5985         * 27_io/basic_ofstream/requirements/explicit_instantiations.cc
5986         * 27_io/basic_ofstream/requirements/typedefs.cc
5987         * 27_io/basic_ostream/cons/2020.cc
5988         * 27_io/basic_ostream/requirements
5989         * 27_io/basic_ostream/requirements/base_classes.cc
5990         * 27_io/basic_ostream/requirements/explicit_instantiation.cc
5991         * 27_io/basic_ostream/requirements/typedefs.cc
5992         * 27_io/basic_ostringstream/cons/2020.cc
5993         * 27_io/basic_ostringstream/requirements
5994         * 27_io/basic_ostringstream/requirements/base_classes.cc
5995         * 27_io/basic_ostringstream/requirements/explicit_instantiation.cc
5996         * 27_io/basic_ostringstream/requirements/typedefs.cc
5997         * 27_io/basic_streambuf/cons/2020.cc
5998         * 27_io/basic_streambuf/requirements
5999         * 27_io/basic_streambuf/requirements/base_classes.cc
6000         * 27_io/basic_streambuf/requirements/typedefs.cc
6001         * 27_io/basic_stringbuf/cons/2020.cc
6002         * 27_io/basic_stringbuf/requirements
6003         * 27_io/basic_stringbuf/requirements/base_classes.cc
6004         * 27_io/basic_stringbuf/requirements/explicit_instantiation
6005         * 27_io/basic_stringbuf/requirements/explicit_instantiation/2.cc
6006         * 27_io/basic_stringbuf/requirements/explicit_instantiation/4.cc
6007         * 27_io/basic_stringbuf/requirements/typedefs.cc
6008         * 27_io/basic_stringstream/cons
6009         * 27_io/basic_stringstream/cons/2020.cc
6010         * 27_io/basic_stringstream/requirements
6011         * 27_io/basic_stringstream/requirements/base_classes.cc
6012         * 27_io/basic_stringstream/requirements/explicit_instantiation.cc
6013         * 27_io/basic_stringstream/requirements/typedefs.cc
6014         * 27_io/fpos/requirements
6015         * 27_io/fpos/requirements/explicit_instantiation.cc
6016         * 27_io/headers
6017         * 27_io/headers/cstdio
6018         * 27_io/headers/cstdio/functions_std.cc
6019         * 27_io/headers/cstdio/macros.cc
6020         * 27_io/headers/cstdio/types_std.cc
6021         * 27_io/headers/cstdlib
6022         * 27_io/headers/fstream
6023         * 27_io/headers/fstream/synopsis.cc
6024         * 27_io/headers/fstream/types_std.cc
6025         * 27_io/headers/iomanip
6026         * 27_io/headers/iomanip/synopsis.cc
6027         * 27_io/headers/ios
6028         * 27_io/headers/ios/synopsis.cc
6029         * 27_io/headers/iostream
6030         * 27_io/headers/iostream/synopsis.cc
6031         * 27_io/headers/iostream/types_std.cc
6032         * 27_io/headers/ios/types_std.cc
6033         * 27_io/headers/istream
6034         * 27_io/headers/istream/synopsis.cc
6035         * 27_io/headers/istream/types_std.cc
6036         * 27_io/headers/ostream
6037         * 27_io/headers/ostream/synopsis.cc
6038         * 27_io/headers/ostream/types_std.cc
6039         * 27_io/headers/sstream
6040         * 27_io/headers/sstream/synopsis.cc
6041         * 27_io/headers/sstream/types_std.cc
6042         * 27_io/headers/streambuf
6043         * 27_io/headers/streambuf/synopsis.cc
6044         * 27_io/headers/streambuf/types_std.cc
6045         * ext/debug_allocator/explicit_instantiation.cc
6046         * ext/hash_map/requirements
6047         * ext/hash_map/requirements/explicit_instantiation.cc
6048         * ext/hash_set/requirements
6049         * ext/hash_set/requirements/explicit_instantiation.cc
6050         * ext/malloc_allocator/explicit_instantiation.cc
6051         * ext/mt_allocator/explicit_instantiation.cc
6052         * ext/pool_allocator/explicit_instantiation.cc
6053         * ext/slist/requirements
6054         * ext/slist/requirements/explicit_instantiation.cc
6055         * ext/stdio_filebuf/requirements
6056         * ext/stdio_filebuf/requirements/explicit_instantiation.cc
6057         * ext/vstring/requirements
6058         * ext/vstring/requirements/explicit_instantiation
6059         * tr1/2_general_utilities/headers
6060         * tr1/2_general_utilities/headers/functional
6061         * tr1/2_general_utilities/headers/functional/synopsis.cc
6062         * tr1/2_general_utilities/headers/memory
6063         * tr1/2_general_utilities/headers/memory/synopsis.cc
6064         * tr1/2_general_utilities/headers/memory/types_std_tr1.cc
6065         * tr1/2_general_utilities/memory/enable_shared_from_this/requirements
6066         * tr1/2_general_utilities/memory/enable_shared_from_this/
6067         requirements/explicit_instantiation
6068         * tr1/2_general_utilities/memory/shared_ptr/requirements
6069         * tr1/2_general_utilities/memory/shared_ptr/requirements/
6070         explicit_instantiation
6071         * tr1/2_general_utilities/memory/weak_ptr/requirements
6072         * tr1/2_general_utilities/memory/weak_ptr/requirements/
6073         explicit_instantiation
6074         * tr1/3_function_objects/headers
6075         * tr1/3_function_objects/headers/functional
6076         * tr1/3_function_objects/headers/functional/synopsis.cc
6077         * tr1/3_function_objects/headers/functional/types_std_tr1.cc
6078         * tr1/3_function_objects/headers/functional/
6079         using_namespace_std_tr1_placeholders.cc
6080         * tr1/4_metaprogramming/headers
6081         * tr1/4_metaprogramming/headers/type_traits
6082         * tr1/4_metaprogramming/headers/type_traits/synopsis.cc
6083         * tr1/4_metaprogramming/headers/type_traits/types_std_tr1.cc
6084         * tr1/5_numerical_facilities/headers
6085         * tr1/5_numerical_facilities/headers/random
6086         * tr1/5_numerical_facilities/headers/random/synopsis.cc
6087         * tr1/5_numerical_facilities/headers/random/types_std_tr1.cc
6088         * tr1/5_numerical_facilities/random/discard_block/
6089         requirements/typedefs.cc
6090         * tr1/6_containers/array/requirements/explicit_instantiation.cc
6091         * tr1/6_containers/hash
6092         * tr1/6_containers/hash/requirements
6093         * tr1/6_containers/hash/requirements/base_classes.cc
6094         * tr1/6_containers/hash/requirements/explicit_instantiation.cc
6095         * tr1/6_containers/headers
6096         * tr1/6_containers/headers/array
6097         * tr1/6_containers/headers/array/synopsis.cc
6098         * tr1/6_containers/headers/functional
6099         * tr1/6_containers/headers/functional/synopsis.cc
6100         * tr1/6_containers/headers/tuple
6101         * tr1/6_containers/headers/tuple/synopsis.cc
6102         * tr1/6_containers/headers/tuple/types_std_tr1.cc
6103         * tr1/6_containers/headers/unordered_map
6104         * tr1/6_containers/headers/unordered_map/synopsis.cc
6105         * tr1/6_containers/headers/unordered_set
6106         * tr1/6_containers/headers/unordered_set/synopsis.cc
6107         * tr1/6_containers/tuple/requirements
6108         * tr1/6_containers/tuple/requirements/explicit_instantiation.cc
6109         * tr1/6_containers/unordered_map
6110         * tr1/6_containers/unordered_map/24064.cc
6111         * tr1/6_containers/unordered_map/capacity
6112         * tr1/6_containers/unordered_map/capacity/29134-map.cc
6113         * tr1/6_containers/unordered_map/erase
6114         * tr1/6_containers/unordered_map/erase/24061-map.cc
6115         * tr1/6_containers/unordered_map/find
6116         * tr1/6_containers/unordered_map/find/map1.cc
6117         * tr1/6_containers/unordered_map/insert
6118         * tr1/6_containers/unordered_map/insert/24061-map.cc
6119         * tr1/6_containers/unordered_map/insert/array_syntax.cc
6120         * tr1/6_containers/unordered_map/insert/map_range.cc
6121         * tr1/6_containers/unordered_map/insert/map_single.cc
6122         * tr1/6_containers/unordered_map/requirements
6123         * tr1/6_containers/unordered_map/requirements/explicit_instantiation.cc
6124         * tr1/6_containers/unordered_map/requirements/iterator_neg.cc
6125         * tr1/6_containers/unordered_map/requirements/iterator_null_neg.cc
6126         * tr1/6_containers/unordered_map/swap
6127         * tr1/6_containers/unordered_map/swap/1.cc
6128         * tr1/6_containers/unordered_map/swap/2.cc
6129         * tr1/6_containers/unordered_multimap
6130         * tr1/6_containers/unordered_multimap/capacity
6131         * tr1/6_containers/unordered_multimap/capacity/29134-multimap.cc
6132         * tr1/6_containers/unordered_multimap/erase
6133         * tr1/6_containers/unordered_multimap/erase/24061-multimap.cc
6134         * tr1/6_containers/unordered_multimap/find
6135         * tr1/6_containers/unordered_multimap/find/multimap1.cc
6136         * tr1/6_containers/unordered_multimap/insert
6137         * tr1/6_containers/unordered_multimap/insert/24061-multimap.cc
6138         * tr1/6_containers/unordered_multimap/insert/multimap_range.cc
6139         * tr1/6_containers/unordered_multimap/insert/multimap_single.cc
6140         * tr1/6_containers/unordered_multimap/requirements
6141         * tr1/6_containers/unordered_multimap/requirements/
6142         explicit_instantiation.cc
6143         * tr1/6_containers/unordered_multimap/requirements/iterator_neg.cc
6144         * tr1/6_containers/unordered_multimap/requirements/iterator_null_neg.cc
6145         * tr1/6_containers/unordered_multimap/swap
6146         * tr1/6_containers/unordered_multimap/swap/1.cc
6147         * tr1/6_containers/unordered_multimap/swap/2.cc
6148         * tr1/6_containers/unordered_multiset
6149         * tr1/6_containers/unordered_multiset/24054.cc
6150         * tr1/6_containers/unordered_multiset/capacity
6151         * tr1/6_containers/unordered_multiset/capacity/29134-multiset.cc
6152         * tr1/6_containers/unordered_multiset/erase
6153         * tr1/6_containers/unordered_multiset/erase/24061-multiset.cc
6154         * tr1/6_containers/unordered_multiset/find
6155         * tr1/6_containers/unordered_multiset/find/multiset1.cc
6156         * tr1/6_containers/unordered_multiset/insert
6157         * tr1/6_containers/unordered_multiset/insert/24061-multiset.cc
6158         * tr1/6_containers/unordered_multiset/insert/multiset_range.cc
6159         * tr1/6_containers/unordered_multiset/insert/multiset_single.cc
6160         * tr1/6_containers/unordered_multiset/requirements
6161         * tr1/6_containers/unordered_multiset/requirements/
6162         explicit_instantiation.cc
6163         * tr1/6_containers/unordered_multiset/requirements/iterator_neg.cc
6164         * tr1/6_containers/unordered_multiset/requirements/iterator_null_neg.cc
6165         * tr1/6_containers/unordered_multiset/swap
6166         * tr1/6_containers/unordered_multiset/swap/1.cc
6167         * tr1/6_containers/unordered_multiset/swap/2.cc
6168         * tr1/6_containers/unordered_set
6169         * tr1/6_containers/unordered_set/23053.cc
6170         * tr1/6_containers/unordered_set/23465.cc
6171         * tr1/6_containers/unordered_set/26127.cc
6172         * tr1/6_containers/unordered_set/26132.cc
6173         * tr1/6_containers/unordered_set/capacity
6174         * tr1/6_containers/unordered_set/capacity/29134-set.cc
6175         * tr1/6_containers/unordered_set/erase
6176         * tr1/6_containers/unordered_set/erase/24061-set.cc
6177         * tr1/6_containers/unordered_set/find
6178         * tr1/6_containers/unordered_set/find/set1.cc
6179         * tr1/6_containers/unordered_set/insert
6180         * tr1/6_containers/unordered_set/insert/24061-set.cc
6181         * tr1/6_containers/unordered_set/insert/set_range.cc
6182         * tr1/6_containers/unordered_set/insert/set_single.cc
6183         * tr1/6_containers/unordered_set/requirements
6184         * tr1/6_containers/unordered_set/requirements/explicit_instantiation.cc
6185         * tr1/6_containers/unordered_set/requirements/iterator_neg.cc
6186         * tr1/6_containers/unordered_set/requirements/iterator_null_neg.cc
6187         * tr1/6_containers/unordered_set/requirements/
6188         iterators_default_constructor.cc
6189         * tr1/6_containers/unordered_set/swap
6190         * tr1/6_containers/unordered_set/swap/1.cc
6191         * tr1/6_containers/unordered_set/swap/2.cc
6192         * tr1/using_namespace_std_tr1.cc
6194         Deleted in testsuite:
6195         * 17_intro/header_cassert.cc
6196         * 17_intro/header_cerrno.cc
6197         * 17_intro/header_csetjmp.cc
6198         * 17_intro/header_cstdarg.cc
6199         * 17_intro/header_cstddef.cc
6200         * 17_intro/header_cstdio.cc
6201         * 17_intro/header_cstdlib.cc
6202         * 17_intro/header_cstring.cc
6203         * 17_intro/header_ctime.cc
6204         * 17_intro/header_cwchar.cc
6205         * 17_intro/header_cwctype.cc
6206         * 17_intro/header_fstream.cc
6207         * 17_intro/header_iomanip.cc
6208         * 17_intro/header_ios.cc
6209         * 17_intro/header_iosfwd.cc
6210         * 17_intro/header_iostream.cc
6211         * 17_intro/header_istream.cc
6212         * 17_intro/header_ostream.cc
6213         * 17_intro/headers.cc
6214         * 17_intro/headers_c++_c++0x_compat.cc
6215         * 17_intro/headers_c.cc
6216         * 17_intro/headers_c++.cc
6217         * 17_intro/header_sstream.cc
6218         * 17_intro/header_streambuf.cc
6219         * 17_intro/no_assert_neg.cc
6220         * 18_support/numeric_limits/sign.cc
6221         * 18_support/numeric_limits/specialization.cc
6222         * 20_util/memory/raw_storage_iterator.cc
6223         * 21_strings/basic_string/1.cc
6224         * 21_strings/basic_string/2.cc
6225         * 22_locale/codecvt/1.cc
6226         * 22_locale/codecvt/2.cc
6227         * 22_locale/codecvt_byname/1.cc
6228         * 22_locale/collate/1.cc
6229         * 22_locale/collate/2.cc
6230         * 22_locale/collate_byname/1.cc
6231         * 22_locale/ctype/1.cc
6232         * 22_locale/ctype_base/1.cc
6233         * 22_locale/messages/1.cc
6234         * 22_locale/messages/2.cc
6235         * 22_locale/messages_byname/1.cc
6236         * 22_locale/money_get/1.cc
6237         * 22_locale/money_get/2.cc
6238         * 22_locale/money_get/3.cc
6239         * 22_locale/moneypunct/1.cc
6240         * 22_locale/moneypunct/2.cc
6241         * 22_locale/moneypunct/3.cc
6242         * 22_locale/moneypunct_byname/1.cc
6243         * 22_locale/money_put/1.cc
6244         * 22_locale/money_put/2.cc
6245         * 22_locale/money_put/3.cc
6246         * 22_locale/num_get/1.cc
6247         * 22_locale/num_get/2.cc
6248         * 22_locale/num_get/3.cc
6249         * 22_locale/numpunct/1.cc
6250         * 22_locale/numpunct/2.cc
6251         * 22_locale/numpunct_byname/1.cc
6252         * 22_locale/num_put/1.cc
6253         * 22_locale/num_put/2.cc
6254         * 22_locale/num_put/3.cc
6255         * 22_locale/time_get/1.cc
6256         * 22_locale/time_get/2.cc
6257         * 22_locale/time_put/1.cc
6258         * 22_locale/time_put/2.cc
6259         * 23_containers/deque/1.cc
6260         * 23_containers/deque/explicit_instantiation
6261         * 23_containers/deque/explicit_instantiation/1.cc
6262         * 23_containers/deque/explicit_instantiation/2.cc
6263         * 23_containers/deque/explicit_instantiation/3.cc
6264         * 23_containers/list/1.cc
6265         * 23_containers/list/explicit_instantiation
6266         * 23_containers/list/explicit_instantiation/1.cc
6267         * 23_containers/list/explicit_instantiation/2.cc
6268         * 23_containers/list/explicit_instantiation/3.cc
6269         * 23_containers/map/1.cc
6270         * 23_containers/map/explicit_instantiation
6271         * 23_containers/map/explicit_instantiation/1.cc
6272         * 23_containers/map/explicit_instantiation/2.cc
6273         * 23_containers/map/explicit_instantiation/3.cc
6274         * 23_containers/multimap/1.cc
6275         * 23_containers/multimap/explicit_instantiation
6276         * 23_containers/multimap/explicit_instantiation/1.cc
6277         * 23_containers/multimap/explicit_instantiation/2.cc
6278         * 23_containers/multimap/explicit_instantiation/3.cc
6279         * 23_containers/multiset/1.cc
6280         * 23_containers/multiset/explicit_instantiation
6281         * 23_containers/multiset/explicit_instantiation/1.cc
6282         * 23_containers/multiset/explicit_instantiation/2.cc
6283         * 23_containers/multiset/explicit_instantiation/3.cc
6284         * 23_containers/set/1.cc
6285         * 23_containers/set/explicit_instantiation
6286         * 23_containers/set/explicit_instantiation/1.cc
6287         * 23_containers/set/explicit_instantiation/2.cc
6288         * 23_containers/set/explicit_instantiation/3.cc
6289         * 23_containers/vector/1.cc
6290         * 23_containers/vector/explicit_instantiation
6291         * 23_containers/vector/explicit_instantiation/1.cc
6292         * 23_containers/vector/explicit_instantiation/2.cc
6293         * 23_containers/vector/explicit_instantiation/3.cc
6294         * 24_iterators/26020.cc
6295         * 24_iterators/back_insert_iterator.cc
6296         * 24_iterators/front_insert_iterator.cc
6297         * 24_iterators/insert_iterator.cc
6298         * 24_iterators/istreambuf_iterator/1.cc
6299         * 24_iterators/istream_iterator.cc
6300         * 24_iterators/iterator.cc
6301         * 24_iterators/ostreambuf_iterator/1.cc
6302         * 24_iterators/ostream_iterator.cc
6303         * 24_iterators/reverse_iterator/1.cc
6304         * 26_numerics/cmath
6305         * 26_numerics/cmath/19322.cc
6306         * 26_numerics/cmath/c99_classification_macros_c.cc
6307         * 26_numerics/cmath/c99_classification_macros_c++.cc
6308         * 26_numerics/cmath/c_math.cc
6309         * 26_numerics/cmath/c_math_dynamic.cc
6310         * 26_numerics/cmath/fabs_inline.cc
6311         * 26_numerics/cmath/overloads.cc
6312         * 26_numerics/cmath/powi.cc
6313         * 26_numerics/cstdlib
6314         * 26_numerics/cstdlib/13943.cc
6315         * 26_numerics/numeric
6316         * 26_numerics/numeric/sum_diff.cc
6317         * 26_numerics/valarray
6318         * 26_numerics/valarray/27867.cc
6319         * 26_numerics/valarray/28277.cc
6320         * 26_numerics/valarray/30416.cc
6321         * 26_numerics/valarray/binary_closure.cc
6322         * 26_numerics/valarray/dr543.cc
6323         * 26_numerics/valarray/slice_array_assignment.cc
6324         * 26_numerics/valarray/slice.cc
6325         * 26_numerics/valarray/valarray.cc
6326         * 26_numerics/valarray/valarray_const_bracket.cc
6327         * 26_numerics/valarray/valarray_name_lookup.cc
6328         * 26_numerics/valarray/valarray_operators.cc
6329         * 26_numerics/valarray/valarray_subset_assignment.cc
6330         * 27_io/basic_filebuf/1.cc
6331         * 27_io/basic_filebuf/2.cc
6332         * 27_io/basic_filebuf/3.cc
6333         * 27_io/basic_filebuf/4.cc
6334         * 27_io/basic_fstream/1.cc
6335         * 27_io/basic_fstream/2.cc
6336         * 27_io/basic_fstream/3.cc
6337         * 27_io/basic_fstream/4.cc
6338         * 27_io/basic_ifstream/1.cc
6339         * 27_io/basic_ifstream/2.cc
6340         * 27_io/basic_ifstream/3.cc
6341         * 27_io/basic_ifstream/4.cc
6342         * 27_io/basic_ios/1.cc
6343         * 27_io/basic_ios/2.cc
6344         * 27_io/basic_ios/3.cc
6345         * 27_io/basic_ios/4.cc
6346         * 27_io/basic_iostream/1.cc
6347         * 27_io/basic_iostream/2.cc
6348         * 27_io/basic_iostream/3.cc
6349         * 27_io/basic_iostream/4.cc
6350         * 27_io/basic_istream/1.cc
6351         * 27_io/basic_istream/2.cc
6352         * 27_io/basic_istream/3.cc
6353         * 27_io/basic_istream/4.cc
6354         * 27_io/basic_istringstream/1.cc
6355         * 27_io/basic_istringstream/2.cc
6356         * 27_io/basic_istringstream/3.cc
6357         * 27_io/basic_istringstream/4.cc
6358         * 27_io/basic_ofstream/1.cc
6359         * 27_io/basic_ofstream/2.cc
6360         * 27_io/basic_ofstream/3.cc
6361         * 27_io/basic_ofstream/4.cc
6362         * 27_io/basic_ostream/1.cc
6363         * 27_io/basic_ostream/2.cc
6364         * 27_io/basic_ostream/3.cc
6365         * 27_io/basic_ostream/4.cc
6366         * 27_io/basic_ostringstream/1.cc
6367         * 27_io/basic_ostringstream/2.cc
6368         * 27_io/basic_ostringstream/3.cc
6369         * 27_io/basic_ostringstream/4.cc
6370         * 27_io/basic_streambuf/1.cc
6371         * 27_io/basic_streambuf/2.cc
6372         * 27_io/basic_streambuf/3.cc
6373         * 27_io/basic_stringbuf/1.cc
6374         * 27_io/basic_stringbuf/2.cc
6375         * 27_io/basic_stringbuf/3.cc
6376         * 27_io/basic_stringbuf/4.cc
6377         * 27_io/basic_stringbuf/5.cc
6378         * 27_io/basic_stringstream/1.cc
6379         * 27_io/basic_stringstream/2.cc
6380         * 27_io/basic_stringstream/3.cc
6381         * 27_io/basic_stringstream/4.cc
6382         * 27_io/fpos/1.cc
6383         * ext/debug_allocator/instantiate.cc
6384         * ext/hash_map/instantiate.cc
6385         * ext/hash_set/instantiate.cc
6386         * ext/malloc_allocator/instantiate.cc
6387         * ext/mt_allocator/instantiate.cc
6388         * ext/pool_allocator/instantiate.cc
6389         * ext/slist/instantiate.cc
6390         * ext/stdio_filebuf/char/1.cc
6391         * ext/vstring/explicit_instantiation
6392         * ext/vstring/explicit_instantiation/1.cc
6393         * ext/vstring/explicit_instantiation/2.cc
6394         * ext/vstring/explicit_instantiation/char
6395         * ext/vstring/explicit_instantiation/char/1.cc
6396         * ext/vstring/explicit_instantiation/wchar_t
6397         * ext/vstring/explicit_instantiation/wchar_t/1.cc
6398         * tr1/2_general_utilities/memory/enable_shared_from_this/
6399         explicit_instantiation
6400         * tr1/2_general_utilities/memory/enable_shared_from_this/
6401         explicit_instantiation/1.cc
6402         * tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation
6403         * tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation/1.cc
6404         * tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation
6405         * tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation/1.cc
6406         * tr1/5_numerical_facilities/random/discard_block/requirements/
6407         requirements.cc
6408         * tr1/6_containers/array/requirements/instantiate.cc
6409         * tr1/6_containers/unordered
6410         * tr1/6_containers/unordered/23781.cc
6411         * tr1/6_containers/unordered/capacity
6412         * tr1/6_containers/unordered/capacity/29134-map.cc
6413         * tr1/6_containers/unordered/capacity/29134-multimap.cc
6414         * tr1/6_containers/unordered/capacity/29134-multiset.cc
6415         * tr1/6_containers/unordered/capacity/29134-set.cc
6416         * tr1/6_containers/unordered/erase
6417         * tr1/6_containers/unordered/erase/24061-map.cc
6418         * tr1/6_containers/unordered/erase/24061-multimap.cc
6419         * tr1/6_containers/unordered/erase/24061-multiset.cc
6420         * tr1/6_containers/unordered/erase/24061-set.cc
6421         * tr1/6_containers/unordered/find
6422         * tr1/6_containers/unordered/find/map1.cc
6423         * tr1/6_containers/unordered/find/multimap1.cc
6424         * tr1/6_containers/unordered/find/multiset1.cc
6425         * tr1/6_containers/unordered/find/set1.cc
6426         * tr1/6_containers/unordered/hash
6427         * tr1/6_containers/unordered/hash/24799.cc
6428         * tr1/6_containers/unordered/hashtable
6429         * tr1/6_containers/unordered/hashtable/23053.cc
6430         * tr1/6_containers/unordered/hashtable/23465.cc
6431         * tr1/6_containers/unordered/hashtable/24054.cc
6432         * tr1/6_containers/unordered/hashtable/24064.cc
6433         * tr1/6_containers/unordered/hashtable/26127.cc
6434         * tr1/6_containers/unordered/hashtable/26132.cc
6435         * tr1/6_containers/unordered/hashtable/iterators_default_constructor.cc
6436         * tr1/6_containers/unordered/insert
6437         * tr1/6_containers/unordered/insert/24061-map.cc
6438         * tr1/6_containers/unordered/insert/24061-multimap.cc
6439         * tr1/6_containers/unordered/insert/24061-multiset.cc
6440         * tr1/6_containers/unordered/insert/24061-set.cc
6441         * tr1/6_containers/unordered/insert/array_syntax.cc
6442         * tr1/6_containers/unordered/insert/map_range.cc
6443         * tr1/6_containers/unordered/insert/map_single.cc
6444         * tr1/6_containers/unordered/insert/multimap_range.cc
6445         * tr1/6_containers/unordered/insert/multimap_single.cc
6446         * tr1/6_containers/unordered/insert/multiset_range.cc
6447         * tr1/6_containers/unordered/insert/multiset_single.cc
6448         * tr1/6_containers/unordered/insert/set_range.cc
6449         * tr1/6_containers/unordered/insert/set_single.cc
6450         * tr1/6_containers/unordered/instantiate
6451         * tr1/6_containers/unordered/instantiate/hash.cc
6452         * tr1/6_containers/unordered/instantiate/map.cc
6453         * tr1/6_containers/unordered/instantiate/multimap.cc
6454         * tr1/6_containers/unordered/instantiate/multiset.cc
6455         * tr1/6_containers/unordered/instantiate/set.cc
6456         * tr1/6_containers/unordered/swap
6457         * tr1/6_containers/unordered/swap/unordered_map
6458         * tr1/6_containers/unordered/swap/unordered_map/1.cc
6459         * tr1/6_containers/unordered/swap/unordered_map/2.cc
6460         * tr1/6_containers/unordered/swap/unordered_multimap
6461         * tr1/6_containers/unordered/swap/unordered_multimap/1.cc
6462         * tr1/6_containers/unordered/swap/unordered_multimap/2.cc
6463         * tr1/6_containers/unordered/swap/unordered_multiset
6464         * tr1/6_containers/unordered/swap/unordered_multiset/1.cc
6465         * tr1/6_containers/unordered/swap/unordered_multiset/2.cc
6466         * tr1/6_containers/unordered/swap/unordered_set
6467         * tr1/6_containers/unordered/swap/unordered_set/1.cc
6468         * tr1/6_containers/unordered/swap/unordered_set/2.cc
6469         * tr1/6_containers/unordered/types
6470         * tr1/6_containers/unordered/types/map_iterator.cc
6471         * tr1/6_containers/unordered/types/multimap_iterator.cc
6472         * tr1/6_containers/unordered/types/multiset_iterator.cc
6473         * tr1/6_containers/unordered/types/set_iterator.cc
6475         * testsuite/24_iterators/reverse_iterator/2.cc: To just one
6476         non-requirements test.
6477         * testsuite/ext/headers.cc: Add new includes.
6478         
6479 2007-02-18  Paolo Carlini  <pcarlini@suse.de>
6481         PR libstdc++/28080 (partial)
6482         * include/bits/stl_algobase.h: Do not include <climits>, use
6483         std::numeric_limits.
6484         * include/bits/stl_bvector.h: Use __CHAR_BIT__.
6485         * config/locale/gnu/codecvt_members.cc: Include <climits>.
6486         * config/locale/generic/codecvt_members.cc: Likewise.
6487         * include/std/string: Do not include <algorithm>; do not include
6488         <memory>, include <bits/allocator.h> instead.
6489         * include/ext/vstring_fwd.h: Likewise.
6490         * include/ext/vstring_util.h: Do not include <algorithm>.
6491         * include/tr1/hashtable_policy.h: Include <algorithm>.
6492         * testsuite/21_strings/basic_string/replace/char/1.cc: Likewise.
6493         * testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Likewise.
6494         * testsuite/23_containers/bitset/cons/1.cc: Likewise.
6495         * testsuite/util/testsuite_character.h: Likewise.
6497         * config/locale/gnu/codecvt_members.cc: Also include <cstdlib>,
6498         for MB_CUR_MAX.
6499         * config/locale/generic/codecvt_members.cc: Likewise.
6501 2007-02-16  Paolo Carlini  <pcarlini@suse.de>
6503         Revert.
6504         2007-02-14  Hans-Peter Nilsson  <hp@axis.com>
6506         PR middle-end/30768
6507         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc:
6508         Xfail ICE for cris-*-*.
6510 2007-02-14  Hans-Peter Nilsson  <hp@axis.com>
6512         PR middle-end/30768
6513         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc:
6514         Xfail ICE for cris-*-*.
6516 2007-02-14  Benjamin Kosnik  <bkoz@redhat.com>
6518         * configure.ac: Move AM_ICONV to native-only, add HAVE_ICONV for
6519         newlib.
6520         * configure: Regenerate.
6522 2007-02-13  Dirk Mueller  <dmueller@suse.de>
6524         * include/bits/locale_facets.tcc (num_get<>::do_get): Avoid
6525         warning about ambiguous else.
6527 2007-02-12  Paolo Carlini  <pcarlini@suse.de>
6529         PR libstdc++/21172
6530         * include/bits/stl_heap.h (__adjust_heap(_RandomAccessIterator,
6531         _Distance, _Distance, _Tp), __adjust_heap(_RandomAccessIterator,
6532         _Distance, _Distance, _Tp, _Compare)): Avoid potential integer
6533         overflow.
6535         * include/bits/stl_heap.h (__is_heap(_RandomAccessIterator,
6536         _RandomAccessIterator), __is_heap(_RandomAccessIterator,
6537         _RandomAccessIterator, _StrictWeakOrdering): Mark inline.
6538         (make_heap(_RandomAccessIterator, _RandomAccessIterator,
6539         _Compare)): Do not mark inline.
6541         * include/bits/stl_heap.h (push_heap(_RandomAccessIterator,
6542         _RandomAccessIterator), sort_heap(_RandomAccessIterator,
6543         _RandomAccessIterator)): Uncomment __glibcxx_requires_heap.
6545 2007-02-09  Richard Sandiford  <richard@codesourcery.com>
6547         * testsuite/22_locale/time_put/put/wchar_t/1.cc: XFAIL if
6548         dummy_wcsftime.
6549         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
6550         * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
6551         * testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
6552         * testsuite/22_locale/num_get/get/wchar_t/2.cc: XFAIL if lax_strtofp.
6553         * testsuite/22_locale/num_get/get/char/2.cc: Likewise.
6554         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
6555         Likewise.
6556         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/09.cc:
6557         Likewise.
6558         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
6559         Likewise.
6560         * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
6561         Likewise.
6562         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/6.cc:
6563         Likewise.
6564         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/6.cc:
6565         Likewise.
6566         * testsuite/26_numerics/cmath/c99_classification_macros_c++.cc: XFAIL
6567         for uClibc.
6568         * testsuite/26_numerics/cmath/c99_classification_macros_c.cc: Likewise.
6570 2007-02-09  Paolo Carlini  <pcarlini@suse.de>
6572         * scripts/testsuite_flags.in: Add back @LIBICONV@ to SECTIONLDFLAGS.
6574 2007-02-08  Howard Hinnant  <hhinnant@apple.com>
6576         PR libstdc++/17012
6577         * include/bits/list.tcc (list<>::remove): Take care of
6578         &*__first == &__value.
6579         * docs/html/ext/howto.html: Add an entry for DR 526.
6581 2007-02-07  Jakub Jelinek  <jakub@redhat.com>
6583         PR libgomp/28468
6584         * configure: Regenerate.
6586 2007-02-07  Hans-Peter Nilsson  <hp@axis.com>
6588         PR testsuite/28870
6589         * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: Use only
6590         10000 iterations for simulator targets.
6591         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Use only 5
6592         iterations for simulator targets.
6593         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Ditto.
6594         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Ditto.
6595         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Ditto.
6596         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Ditto.
6597         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Ditto.
6598         * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Ditto.
6599         * testsuite/23_containers/set/modifiers/16728.cc: Use only 10
6600         iterations for simulator targets.
6602 2007-02-06  Benjamin Kosnik  <bkoz@redhat.com>
6603             Marco Trudel  <mtrudel@gmx.ch>
6605         * include/precompiled/extc++.h: Guard include files that assume
6606         iconv support is present from precompilation via
6607         _GLIBCXX_HAVE_ICONV.
6609 2007-02-05  Paolo Carlini  <pcarlini@suse.de>
6611         * include/bits/stl_deque.h (operator<): Qualify call.
6613 2007-02-02  Benjamin Kosnik  <bkoz@redhat.com>
6615         * include/bits/c++config: Consistent macro guards for config includes.
6616         * config/locale/gnu/c_locale.h: Same.
6617         * config/locale/generic/c_locale.h: Same.
6618         * config/allocator/mt_allocator_base.h: Same.
6619         * config/allocator/malloc_allocator_base.h: Same.
6620         * config/allocator/new_allocator_base.h: Same.
6621         * config/allocator/pool_allocator_base.h: Same.
6622         * config/allocator/bitmap_allocator_base.h: Same.
6623         * config/os/vxworks/os_defines.h: Same.
6624         * config/cpu/sh/atomicity.h: Same.
6625         * config/io/c_io_stdio.h: Same.
6626         * config/io/basic_file_stdio.h: Same.
6628 2007-02-01  Paolo Carlini  <pcarlini@suse.de>
6630         PR libstdc++/14493
6631         * libsupc++/typeinfo (bad_cast::what, bad_typeid::what): Declare.
6632         * libsupc++/tinfo.cc: Define.   
6633         * libsupc++/exception (bad_exception::what): Declare.
6634         * libsupc++/eh_exception.cc: Define.
6635         (exception::what): Adjust, don't use typeid.
6636         * libsupc++/new (bad_alloc::what): Declare.
6637         * libsupc++/new_handler.cc: Define.
6638         * config/abi/pre/gnu.ver: Export the new methods @3.4.9; adjust
6639         existing 3.4.10 exports to 3.4.9.
6640         * configure.ac: Adjust to 6.0.9.
6641         * configure: Regenerate.
6642         * testsuite/util/testsuite_abi.cc: Update.
6643         * testsuite/18_support/14493.cc: New.
6645 2007-02-01  Ben Elliston  <bje@au.ibm.com>
6647         * libsupc++/eh_alloc.cc (__cxa_free_exception): Don't refer to the
6648         emergency_buffer using `&array[0][0]' notation, use `array'.
6650 2007-01-30  Benjamin Kosnik  <bkoz@redhat.com>
6652         PR libstdc++/30571
6653         * include/ext/pb_ds/detail/type_utils.hpp: Use C++0x
6654         static_assert if available, if not, centralize PB_DS_STATIC_ASSERT
6655         definition here.
6656         * include/ext/pb_ds/detail/resize_policy/
6657         cc_hash_max_collision_check_resize_trigger_imp.hpp: Remove
6658         PB_DS_STATIC_ASSERT definition.
6659         * include/ext/pb_ds/detail/resize_policy/
6660         hash_load_check_resize_trigger_imp.hpp: Same.
6661         * include/ext/pb_ds/detail/resize_policy/
6662         hash_standard_resize_policy_imp.hpp: Same.
6663         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
6664         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
6665         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
6666         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
6667         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
6668         * include/ext/pb_ds/trie_policy.hpp: Same.
6669         * testsuite/util/performance/assoc/timing/
6670         tree_order_statistics_test.hpp: Same.
6671         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Adjust line numbers.
6672         * testsuite/17_intro/headers_c++_c++0x_compat.cc: New.
6673         
6674         * include/precompiled/extc++.h: Update to current list of ext files.
6676 2007-01-29  Paolo Carlini  <pcarlini@suse.de>
6678         * include/bits/stl_uninitialized.h (uninitialized_copy(const char*,
6679         const char*, char*), uninitialized_copy(const wchar_t*, const wchar_t*,
6680         wchar_t*)): Remove, just forward to std::copy.
6682 2007-01-29  Benjamin Kosnik  <bkoz@redhat.com>
6684         * include/ext/enc_filebuf.h: Resurrect, update.
6685         * include/ext/codecvt_specializations.h: Remove
6686         _GLIBCXX_USE_ICONV, _GLIBCXX_USE_ENCODING_STATE.
6687         * include/bits/localefwd.h: Remove declaration for __enc_traits.
6688         * docs/html/22_locale/codecvt.html: Change __enc_traits to
6689         encoding_state.
6690         * scripts/testsuite_flags.in: Remove ICONV.
6692         * configure.ac: Remove GLIBCXX_CHECK_ICONV_SUPPORT.
6693         * acinclude.m4 (GLIBCXX_CHECK_ICONV_SUPPORT): Remove.
6694         * crossconfig.m4: Remove use of GLIBCXX_CHECK_ICONV_SUPPORT.
6695         * config.h.in: Remove HAVE_ICONV_CLOSE, HAVE_ICONV_OPEN,
6696         HAVE_NL_LANGINFO, _GLIBCXX_USE_ICONV.
6697         * include/Makefile.am: Uglify ICONV_CONST.
6698         * configure: Regenerate.
6699         * aclocal.m4: Regenerate.
6700         * Makefile.in: Regenerate.
6701         * src/Makefile.in: Regenerate.
6702         * po/Makefile.in: Regenerate.
6703         * libmath/Makefile.in: Regenerate.
6704         * include/Makefile.in: Regenerate.
6705         * libsupc++/Makefile.in: Regenerate.
6706         * testsuite/Makefile.in: Regenerate.
6708         * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Use
6709         dg-require-iconv, fix up for encoding_state changes.
6710         * testsuite/ext/enc_filebuf/char/13189.cc: Same.
6711         * testsuite/ext/enc_filebuf/char/13598.cc: Same.
6712         * testsuite/22_locale/codecvt/unicode: Move...
6713         * testsuite/22_locale/codecvt/unicode/char.cc: Move...
6714         * testsuite/22_locale/codecvt/unicode/1.cc: Move...
6715         * testsuite/22_locale/codecvt/unicode/wchar_t.cc: Move...
6716         * testsuite/ext/codecvt: New.
6717         * testsuite/ext/codecvt/char-1.cc: ...here. Also, use dg-require-iconv.
6718         * testsuite/ext/codecvt/char-2.cc: ...here. Same.
6719         * testsuite/ext/codecvt/1.cc: ...here. Same.
6720         * testsuite/ext/codecvt/wchar_t.cc: ...here. Same.
6721         * testsuite/22_locale/locale/cons/unicode: Delete directory.
6722         * testsuite/22_locale/locale/cons/unicode/1.cc: Move...
6723         * testsuite/22_locale/locale/cons/unicode.cc: ...here.
6725 2007-01-28  Paolo Carlini  <pcarlini@suse.de>
6727         * include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
6728         iter_type, ios_base&, ios_base::iostate&, bool&),
6729         num_put<>::_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT)):
6730         -Wconversion and -Woverflow fixes.
6731         * include/bits/istream.tcc (operator>>(int&), operator>>(short&)):
6732         Likewise.
6733         * include/std/valarray (valarray<>::shift, cshift): Likewise.
6735 2007-01-26  Paolo Carlini  <pcarlini@suse.de>
6737         PR libstdc++/30586
6738         * config/cpu/ia64/atomic_word.h: Just include <bits/cxxabi_tweaks.h>.
6739         * testsuite/abi/30586.cc: New.
6741 2007-01-25  Nathan Myers  <ncm@cantrip.org>
6743         * include/bits/streambuf_iterator.h (istreambuf_iterator<>::equal):
6744         Simplify.
6746 2007-01-24   Steve LoBasso <slobasso@yahoo.com>
6747              Paolo Carlini  <pcarlini@suse.de>
6749         * include/bits/deque.tcc (deque<>::erase(iterator, iterator)):
6750         Fix condition.
6751         * testsuite/23_containers/deque/modifiers/erase/3.cc: New.
6753 2007-01-24  Andrew Pinski  <andrew_pinski@playstation.sony.com>
6755         * libsupc++/eh_personality.cc  (PERSONALITY_FUNCTION): Replace
6756         _Unwind_Word with _uleb128_t in the SJLJ context.
6758 2007-01-24  Benjamin Kosnik  <bkoz@redhat.com>
6760         PR libstdc++/29722 continued
6761         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Add
6762         libsupc++ library directory.
6763         * testsuite/abi/cxx_runtime_only_linkage.cc: Remove hard-coded
6764         path specification.
6765         
6766 2007-01-24  Andreas Krebbel  <krebbel1@de.ibm.com>
6768         * libsupc++/eh_personality.cc (parse_lsda_header, check_exception_spec,
6769         get_ttype_entry, empty_exception_spec, PERSONALITY_FUNCTION): Replaced
6770         _Unwind_Word with _uleb128_t and _Unwind_SWord with _sleb128_t.
6772 2007-01-22  Paolo Carlini  <pcarlini@suse.de>
6774         * include/bits/stl_algobase.h (__fill_aux(unsigned char*,
6775         unsigned char*, const unsigned char&), __fill_aux(signed char*,
6776         signed char*, const signed char&), __fill_aux(char*, char*,
6777         const char&), __fill_aux(wchar_t*, wchar_t*, const wchar_t&)):
6778         Take the character by value.
6779         (__fill_n_aux): Likewise.
6781 2007-01-21  Paolo Carlini  <pcarlini@suse.de>
6783         PR libstdc++/30449 (fill, fill_n)
6784         * include/bits/stl_algobase.h (__fill_aux(wchar_t*, wchar_t*,
6785         const wchar_t&), __fill_n_aux(wchar_t*, _Size, const wchar_t&)): New.
6786         (fill(signed char*, signed char*, const signed char&),
6787         fill(unsigned char*, unsigned char*, const unsigned char&),
6788         fill(char*, char*, char&), fill_n(signed char*, _Size,
6789         const signed char&), fill_n(unsigned char*, _Size,
6790         const unsigned char&), fill_n(char*, _Size, char&)): Rename to
6791         __*_aux.
6792         (__fill_normal, __fill_n_normal): New, call the latter.
6793         (fill, fill_n): Adjust, call the latter.        
6794         * testsuite/25_algorithms/fill/4.cc: New.
6795         * testsuite/25_algorithms/fill/5.cc: New.
6797 2007-01-18  Paolo Carlini  <pcarlini@suse.de>
6799         * include/bits/basic_string.h (basic_string<>::_S_compare): Add.
6800         (compare(const basic_string&)): Use it.
6801         * include/bits/basic_string.tcc (compare(size_type, size_type,
6802         const basic_string&), compare(size_type, size_type,
6803         const basic_string&, size_type, size_type), compare(const _CharT*),
6804         compare(size_type, size_type, const _CharT*), compare(size_type,
6805         size_type, const _CharT*, size_type)): Likewise.
6806         * include/ext/vstring_util.h (__vstring_utility<>::_S_compare): Add.
6807         * include/ext/vstring.h (compare(const __versa_string&)): Use it.
6808         * include/ext/vstring.tcc (compare(size_type, size_type,
6809         const __versa_string&), compare(size_type, size_type,
6810         const __versa_string&, size_type, size_type), compare(const _CharT*),
6811         compare(size_type, size_type, const _CharT*), compare(size_type,
6812         size_type, const _CharT*, size_type)): Likewise.
6814 2007-01-15  Ian Lance Taylor  <iant@google.com>
6815             Paolo Carlini  <pcarlini@suse.de>
6817         * include/ext/type_traits.h: Fix __glibcxx_max macro.
6818         * include/std/limits: Likewise.
6820 2007-01-15  Paolo Carlini  <pcarlini@suse.de>
6822         * include/std/valarray (valarray<>::cshift): Fix typo.
6824 2007-01-14  Paolo Carlini  <pcarlini@suse.de>
6826         * include/bits/stl_algobase.h (fill_n(char*, _Size,
6827         const signed char&)): Fix signature.
6828         * testsuite/25_algorithms/fill/3.cc: New.
6830 2007-01-13  John David Anglin  <dave.anglin@nrc-cnrc.gc>
6832         * config/cpu/hppa/atomicity.h (__exchange_and_add): Don't use ordered
6833         store.
6834         (__atomic_add): Likewise.
6836 2007-01-13  Paolo Carlini  <pcarlini@suse.de>
6838         PR libstdc++/14991
6839         * docs/html/17_intro/porting-howto.html ([3]): Mention stdio_filebuf.
6840         * docs/html/17_intro/porting-howto.xml: Remove.
6842         * docs/html/17_intro/porting-howto.html: Remove spurious end tags
6843         pointed out by validator.w3.org.
6845 2007-01-12  Paolo Carlini  <pcarlini@suse.de>
6847         PR libstdc++/30416 (continued)
6848         * include/std/valarray (valarray<>::shift, valarray<>::cshift):
6849         Allways return the same variable, thus facilitating NRVO.
6851 2007-01-12  Paolo Carlini  <pcarlini@suse.de>
6853         PR libstdc++/30416
6854         * include/std/valarray (valarray<>::shift, valarray<>::cshift):
6855         Do not segfault when |n| > size.
6856         * testsuite/26_numerics/valarray/30416.cc: New.
6858 2007-01-06  Paolo Carlini  <pcarlini@suse.de>
6860         PR libstdc++/30365
6861         * crossconfig.m4 (case *-linux*): Run GLIBCXX_CHECK_LFS.
6862         * configure: Regenerate.
6864 2007-01-06  Matthias Klose  <doko@debian.org>
6866         * include/tr1/random (gamma_distribution): Fix typo in formula.
6867         * docs/doxygen/user.cfg.in: Use package amsmath.