OSDN Git Service

be967f9c65f2d0b352712daad3439d56ea93cddd
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2007-10-18  Paolo Carlini  <pcarlini@suse.de>
2
3         * include/bits/allocator.h (struct __alloc_neq): Add.
4         * include/bits/stl_list.h (list<>::_M_check_equal_allocators): Use it.
5
6 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
7
8         * include/ext/hash_map: To...
9         * include/backward/hash_map: ...here. Remove debug mode.
10         * include/ext/hash_set: To...
11         * include/backward/hash_set: ...here. Remove debug mode.
12         * include/ext/hash_fun.h: To...
13         * include/backward/hash_fun.h: ...here.
14         * include/ext/hashtable.h: To...
15         * include/backward/hashtable.h: ...here.
16         
17         * include/bits/c++config: Remove __gnu_cxx namespace from debug mode.
18         * include/debug/debug.h: Same.
19                 
20         * include/debug/hash_map: Remove.
21         * include/debug/hash_multimap.h: Remove.
22         * include/debug/hash_set.h: Remove.
23         * include/debug/hash_set: Remove.
24         * include/debug/hash_multiset.h: Remove.
25         * include/debug/hash_map.h: Remove.
26         
27         * include/Makefile.am (ext_headers): Move hash_set, hash_map to
28         backward.
29         (debug_headers): Remove hash_map, hash_set, hash_map.h,
30         hash_map.h, hash_multiset.h, hash_multimap.h.   
31         * include/Makefile.in: Regenerate.
32
33         * docs/html/debug.html: Update.
34         * docs/html/ext/howto.html: Same.
35         * docs/html/faq/index.html: Same.
36         * docs/doxygen/Intro.3: Same.
37         * docs/doxygen/user.cfg.in: Adjust includes.
38         * testsuite/ext/hash_map: Move to...
39         * testsuite/backward/hash_map: ...here.
40         * testsuite/ext/hash_set: Move to...
41         * testsuite/backward/hash_set: ...here.
42         
43 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
44         
45         Removal of pre-ISO C++ items from include/backwards.
46         * include/Makefile.am (backward_headers): Remove all but strstream,
47         backward_warning.h.
48         * include/Makefile.in: Regenerate.
49         * include/backward/new.h: Remove.
50         * include/backward/iterator.h: Same.
51         * include/backward/alloc.h: Same.
52         * include/backward/set.h: Same.
53         * include/backward/hashtable.h: Same.
54         * include/backward/hash_set.h: Same.
55         * include/backward/fstream.h: Same.
56         * include/backward/tempbuf.h: Same.
57         * include/backward/istream.h: Same.
58         * include/backward/bvector.h: Same.
59         * include/backward/stack.h: Same.
60         * include/backward/rope.h: Same.
61         * include/backward/complex.h: Same.
62         * include/backward/ostream.h: Same.
63         * include/backward/heap.h: Same.
64         * include/backward/iostream.h: Same.
65         * include/backward/function.h: Same.
66         * include/backward/multimap.h: Same.
67         * include/backward/pair.h: Same.
68         * include/backward/stream.h: Same.
69         * include/backward/iomanip.h: Same.
70         * include/backward/slist.h: Same.
71         * include/backward/tree.h: Same.
72         * include/backward/vector.h: Same.
73         * include/backward/deque.h: Same.
74         * include/backward/multiset.h: Same.
75         * include/backward/defalloc.h: Same.
76         * include/backward/list.h: Same.
77         * include/backward/map.h: Same.
78         * include/backward/algobase.h: Same.
79         * include/backward/hash_map.h: Same.
80         * include/backward/algo.h: Same.
81         * include/backward/queue.h: Same.
82         * include/backward/streambuf.h: Same.
83         * testsuite/backward/header_hash_set_h.cc: Same.
84         * testsuite/backward/header_slist_h.cc: Same.
85         * testsuite/backward/header_hash_map_h.cc: Same.
86         * testsuite/backward/header_tempbuf_h.cc: Same.
87         * testsuite/backward/header_deque_h.cc: Same.
88         * testsuite/backward/header_rope_h.cc: Same.
89         * testsuite/backward/header_iterator_h.cc: Same.
90         * testsuite/backward/header_hashtable_h.cc: Same.
91
92 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
93
94         PR libstdc++/30085
95         * include/debug/unordered_map: New.
96         * include/debug/unordered_set: New.
97         * include/debug/safe_association.h: New.        
98         * include/std/unordered_map: Include debug header if _GLIBCXX_DEBUG.
99         * include/std/unordered_set: Same.
100         * include/Makefile.am (debug_headers): Add unordered_map,
101         unordered_set, safe_association.h.
102         * include/Makefile.in: Regenerate.
103         * testsuite/23_containers/unordered_map/requirements/debug.cc: New.
104         * testsuite/23_containers/unordered_multimap/requirements/
105         debug.cc: New.
106         * testsuite/23_containers/unordered_set/requirements/debug.cc: New.
107         * testsuite/23_containers/unordered_multiset/requirements/
108         debug.cc: New.
109
110 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
111         
112         * testsuite/util/native_type/assoc/native_hash_multimap.hpp: Remove
113         hash_map include.
114
115 2007-10-18  Paolo Carlini  <pcarlini@suse.de>
116
117         PR libstdc++/33807
118         * include/bits/allocator.h (operator==(const allocator<_Tp>&,
119         const allocator<_Tp>&), operator!=(const allocator<_Tp>&,
120         const allocator<_Tp>&)): Add.
121         * testsuite/20_util/allocator/33807.cc: New.
122
123 2007-10-17  Paolo Carlini  <pcarlini@suse.de>
124
125         * include/bits/cpp_type_traits.h (__is_byte): Add.
126         * include/bits/stl_algobase.h (struct __fill, struct __fill_n,
127         __fill_aux, __fill_n_aux): Remove.
128         (__fill_a, __fill_n_a): Add.
129         (fill, fill_n): Adjust.
130
131 2007-10-17  Paolo Carlini  <pcarlini@suse.de>
132
133         * include/bits/stl_iterator.h (back_insert_iterator<>::operator=
134         (typename _Container::value_type&&), front_insert_iterator<>::
135         operator=(typename _Container::value_type&&), insert_iterator<>::
136         operator=(typename _Container::value_type&&)): Add.
137
138         * include/bits/stl_iterator.h (insert_iterator<>::operator=
139         (typename _Container::const_reference)): Fix typo in signature.
140
141 2007-10-17  Paolo Carlini  <pcarlini@suse.de>
142
143         * include/tr1_impl/array: Correct macro guarding cbegin, cend,
144         crbegin, crend.
145         * include/tr1_impl/hashtable: Likewise.
146
147 2007-10-16  Paolo Carlini  <pcarlini@suse.de>
148
149         * include/ext/vstring.h (__versa_string<>::front, 
150         __versa_string<>::back): Add.
151         * testsuite/ext/vstring/element_access/char/front_back.cc: New.
152         * testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
153
154 2007-10-16  Paolo Carlini  <pcarlini@suse.de>
155
156         * include/bits/stl_queue.h (queue<>::queue(_Sequence&&),
157         queue<>::queue(queue&&), queue<>::operator=(queue&&),
158         queue<>::push(value_type&&), queue<>::swap(queue&&),
159         swap(queue<>&, queue<>&), swap(queue<>&&, queue<>&),
160         swap(queue<>&, queue<>&&), priority_queue<>::
161         priority_queue(const _Compare&, _Sequence&&),
162         priority_queue<>::priority_queue(_InputIterator, _InputIterator,
163         const _Compare&, _Sequence&&),
164         priority_queue<>::priority_queue(priority_queue&&),
165         priority_queue<>::operator=(priority_queue&&),
166         priority_queue<>::push(value_type&&),
167         priority_queue<>::swap(priority_queue&&),
168         swap(priority_queue<>&, priority_queue<>&),
169         swap(priority_queue<>&&, priority_queue<>&),
170         swap(priority_queue<>&, priority_queue<>&&)): Add.
171         * include/bits/stl_stack.h (stack<>::stack(_Sequence&&),
172         stack<>::push(value_type&&), stack<>::swap(stack&&),
173         swap(stack<>&, stack<>&), swap(stack<>&&, stack<>&),
174         swap(stack<>&, stack<>&&)): Add.
175         * testsuite/23_containers/queue/moveable.cc: New.
176         * testsuite/23_containers/priority_queue/moveable.cc: Likewise.
177
178 2007-10-16  Paolo Carlini  <pcarlini@suse.de>
179
180         * include/ext/vstring.h (__versa_string<>::
181         __versa_string(__versa_string&&),
182         __versa_string<>::operator=(__versa_string&&,
183         swap(__versa_string<>&&, __versa_string<>&),
184         swap(__versa_string<>(&, __versa_string<>&&)): Add.
185         (__versa_string<>::swap(__versa_string&&)): Adjust for C++0x.
186         * include/ext/sso_string_base.h
187         (__sso_string_base(__sso_string_base&&)): Add.
188         (__sso_string_base()): Use _Alloc_hider(_CharT*).
189         * include/ext/rc_string_base.h (__rc_string_base(__rc_string_base&&)):
190         Add.
191         (__rc_string_base()): Use _Alloc_hider(_CharT*).
192         * include/ext/vstring_util.h (_Alloc_hider::_Alloc_hider(_CharT*)):
193         Add.
194         * testsuite/ext/vstring/moveable.cc: Add.
195
196         * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Add.
197         * include/bits/stl_map.h (map<>::map(map&&)): Forward to the latter.
198         * include/bits/stl_set.h (set<>::set(set&&)): Likewise.
199         * include/bits/stl_multimap.h (multimap<>::multimap(multimap&&)):
200         Likewise.
201         * include/bits/stl_multiset.h (multiset<>::multiset(multiset&&)):
202         Likewise.
203         * include/bits/stl_deque.h (_Deque_base<>::_Deque_base(_Deque_base&&)):
204         Add.
205         (deque<>::deque(deque&&)): Forward to the latter.
206         * include/bits/stl_list.h (_List_base<>::_List_base(_List_base&&)):
207         Add.
208         (list<>::list(list&&)): Forward to the latter.
209         * include/bits/stl_vector.h
210         (_Vector_base<>::_Vector_base(_Vector_base&&)): Add.
211         (vector<>::vector(vector&&)): Forward to the latter.
212         * include/bits/stl_bvector.h
213         (_Bvector_base<>::_Bvector_base(_Bvector_base&&)): Add.
214         (vector<bool>::vector(vector&&)): Forward to the latter.
215
216         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
217         Adjust dg-error lines.
218         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
219         Likewise.
220         * testsuite/23_containers/vector/requirements/dr438/
221         constructor_1_neg.cc: Likewise.
222         * testsuite/23_containers/vector/requirements/dr438/
223         constructor_2_neg.cc: Likewise.
224         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
225         Likewise.
226         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
227         Likewise.
228         * testsuite/23_containers/deque/requirements/dr438/
229         constructor_1_neg.cc: Likewise.
230         * testsuite/23_containers/deque/requirements/dr438/
231         constructor_2_neg.cc: Likewise.
232         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
233         Likewise.
234         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
235         Likewise.
236         * testsuite/23_containers/list/requirements/dr438/
237         constructor_1_neg.cc: Likewise.
238         * testsuite/23_containers/list/requirements/dr438/
239         constructor_2_neg.cc: Likewise.
240
241 2007-10-15  Paolo Carlini  <pcarlini@suse.de>
242
243         * include/debug/set.h (set<>::cbegin, cend, crbegin, crend): Add.
244         * include/debug/multiset.h (set<>::cbegin, cend, crbegin, crend):
245         Likewise.
246         * include/debug/vector (vector<>::cbegin, cend, crbegin, crend):
247         Likewise.
248         * include/debug/map.h (map<>::cbegin, cend, crbegin, crend):
249         Likewise.
250         * include/debug/deque (deque<>::cbegin, cend, crbegin, crend): 
251         Likewise.
252         * include/debug/list (list<>::cbegin, cend, crbegin, crend):
253         Likewise.
254         * include/debug/multimap.h (multimap<>::cbegin, cend, crbegin,
255         crend): Likewise.
256         * include/tr1_impl/array (array<>::cbegin, cend, crbegin, crend):
257         Likewise.
258         * include/ext/vstring.h (__versa_string<>::cbegin, cend, crbegin,
259         crend): Likewise.
260         * include/bits/stl_list.h (list<>::cbegin, cend, crbegin, crend):
261         Likewise.
262         * include/bits/stl_map.h (map<>::cbegin, cend, crbegin, crend):
263         Likewise.
264         * include/bits/stl_set.h (set<>::cbegin, cend, crbegin, crend):
265         Likewise.
266         * include/bits/stl_multimap.h (multimap<>::cbegin, cend, crbegin,
267         crend): Likewise.
268         * include/bits/stl_vector.h (vector<>::cbegin, cend, crbegin, crend):
269         Likewise.
270         * include/bits/stl_deque.h (deque<>::cbegin, cend, crbegin, crend):
271         Likewise.
272         * include/bits/stl_multiset.h (multiset<>::cbegin, cend, crbegin,
273         crend): Likewise.
274         * include/bits/stl_bvector.h (vector<bool>::cbegin, cend, crbegin,
275         crend): Likewise.
276         * include/tr1_impl/hashtable (_Hashtable<>::cbegin, cend): Add. 
277
278         * testsuite/ext/vstring/requirements/citerators.cc: Add.
279         * testsuite/23_containers/unordered_map/requirements/citerators.cc:
280         Likewise.
281         * testsuite/23_containers/multimap/requirements/citerators.cc:
282         Likewise.
283         * testsuite/23_containers/set/requirements/citerators.cc: Likewise.
284         * testsuite/23_containers/unordered_multimap/requirements/
285         citerators.cc: Likewise.
286         * testsuite/23_containers/unordered_set/requirements/citerators.cc:
287         Likewise.
288         * testsuite/23_containers/vector/requirements/citerators.cc: Likewise.
289         * testsuite/23_containers/vector/bool/requirements/citerators.cc:
290         Likewise.
291         * testsuite/23_containers/deque/requirements/citerators.cc: Likewise.
292         * testsuite/23_containers/multiset/requirements/citerators.cc:
293         Likewise.
294         * testsuite/23_containers/list/requirements/citerators.cc: Likewise.
295         * testsuite/23_containers/unordered_multiset/requirements/
296         citerators.cc: Likewise.
297         * testsuite/23_containers/map/requirements/citerators.cc: Likewise.
298         * testsuite/23_containers/array/requirements/citerators.cc: Likewise.
299
300         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
301         Adjust dg-error lines.
302         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
303         Likewise.
304         * testsuite/23_containers/vector/requirements/dr438/
305         constructor_1_neg.cc: Likewise.
306         * testsuite/23_containers/vector/requirements/dr438/
307         constructor_2_neg.cc: Likewise.
308         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
309         Likewise.
310         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
311         Likewise.
312         * testsuite/23_containers/deque/requirements/dr438/
313         constructor_1_neg.cc: Likewise.
314         * testsuite/23_containers/deque/requirements/dr438/
315         constructor_2_neg.cc: Likewise.
316         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
317         Likewise.
318         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
319         Likewise.
320         * testsuite/23_containers/list/requirements/dr438/
321         constructor_1_neg.cc: Likewise.
322         * testsuite/23_containers/list/requirements/dr438/
323         constructor_2_neg.cc: Likewise.
324
325 2007-10-15  Paolo Carlini  <pcarlini@suse.de>
326
327         PR libstdc++/33773 (cont)
328         * testsuite/21_strings/headers/cwchar/macros.cc: Guard with
329         _GLIBCXX_USE_WCHAR_T, instead.
330
331 2007-10-15  Paolo Carlini  <pcarlini@suse.de>
332
333         PR libstdc++/33771
334         PR libstdc++/33773
335         * testsuite/21_strings/headers/cwchar/macros.cc: Guard test with
336         _GLIBCXX_HAVE_WCHAR_H.
337         * testsuite/21_strings/headers/cwctype/macros.cc: Likewise with
338         _GLIBCXX_HAVE_WCTYPE_H.
339         * testsuite/17_intro/headers/c++200x/all.cc: Guard inclusions
340         of <wchar.h> and <wctype.h>.
341         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc:
342         Likewise.
343         * testsuite/17_intro/headers/c++1998/all.cc: Likewise.
344         * testsuite/17_intro/headers/c++1998/all_multiple_inclusion.cc:
345         Likewise.
346
347 2007-10-14  Paolo Carlini  <pcarlini@suse.de>
348
349         * include/bits/stl_algo.h (is_sorted, is_sorted_until): Add.
350         * include/bits/algorithmfwd.h: Add.
351         * include/ext/algorithm: Adjust.
352         * testsuite/25_algorithms/is_sorted/requirements/
353         explicit_instantiation/2.cc: New.
354         * testsuite/25_algorithms/is_sorted/requirements/
355         explicit_instantiation/pod.cc: Likewise.
356         * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
357         * testsuite/25_algorithms/is_sorted_until/requirements/
358         explicit_instantiation/2.cc: Likewise.
359         * testsuite/25_algorithms/is_sorted_until/requirements/
360         explicit_instantiation/pod.cc: Likewise.
361         * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
362         * testsuite/25_algorithms/headers/algorithm/synopsis.cc:
363         Add is_sorted and is_sorted_until.
364
365         * include/bits/stl_heap.h (is_heap_until): Add concept and
366         debug-mode checks.
367
368 2007-10-12  Paolo Carlini  <pcarlini@suse.de>
369
370         * include/bits/stl_heap.h (__is_heap_until): Add.
371         (__is_heap(_RandomAccessIterator, _Distance),
372         __is_heap(_RandomAccessIterator, _Compare, _Distance)):
373         Adjust, call the latter.
374         (is_heap, is_heap_until): Add, call the above.
375         * include/bits/algorithmfwd.h: Add.
376         * testsuite/25_algorithms/is_heap/requirements/
377         explicit_instantiation/2.cc: New.
378         * testsuite/25_algorithms/is_heap/requirements/
379         explicit_instantiation/pod.cc: Likewise.
380         * testsuite/25_algorithms/is_heap/1.cc: Likewise.
381         * testsuite/25_algorithms/is_heap_until/requirements/
382         explicit_instantiation/2.cc: Likewise.
383         * testsuite/25_algorithms/is_heap_until/requirements/
384         explicit_instantiation/pod.cc: Likewise.
385         * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
386         * testsuite/25_algorithms/headers/algorithm/synopsis.cc:
387         Add is_heap and is_heap_until.
388
389 2007-10-12  Benjamin Kosnik  <bkoz@redhat.com>
390
391         * docs/doxygen/user.cfg.in: Scan tr1_impl/hashtable.
392         * include/tr1_impl/hashtable: Correct comment.
393
394         * include/ext/hash_map: Remove extraneous public markers.
395         * include/ext/hash_set: Same.
396
397         * testsuite/25_algorithms/headers/parallel_algorithm.cc: Move
398         inside algorithm directory.     
399         * testsuite/25_algorithms/headers/algorithm_parallel_mode.cc: Same.
400         * testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc: Same.
401         * testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc: Same.
402         * testsuite/25_algorithms/headers/algorithm/parallel_algorithm.cc:
403         To this.        
404         * testsuite/25_algorithms/headers/algorithm/
405         algorithm_parallel_mode.cc: Same.
406         * testsuite/25_algorithms/headers/algorithm/
407         parallel_algorithm_mixed1.cc: Same.
408         * testsuite/25_algorithms/headers/algorithm/
409         parallel_algorithm_mixed2.cc: Same.
410
411         * testsuite/21_strings/basic_string/requirements/
412         explicit_instantiation/debug.cc: Remove exception text.
413         
414         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
415         Fix for debug mode testing.     
416         * testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
417         
418 2007-10-12  Jesper Nilsson  <jesper.nilsson@axis.com>
419
420        * testsuite/tr1/5_numerical_facilities/special_functions/
421        20_riemann_zeta/check_value_neg.c (MAX_ITERATIONS): Add limit
422        when target is simulator.
423        * testsuite/tr1/5_numerical_facilities/special_functions/
424        20_riemann_zeta/check_value_pos.c (MAX_ITERATIONS): Likewise.
425
426 2007-10-11  Roger Sayle  <roger@eyesopen.com>
427
428         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EOVERFLOW for Tru64.
429         * configure: Regenerate.
430         * config/os/generic/error_constants.h: Guard.
431         * testsuite/19_diagnostics/headers/system_error/
432         types_std_c++0x.cc: Same.
433
434 2007-10-11  Benjamin Kosnik  <bkoz@redhat.com>
435
436         Convert ext/hash_map, set to tr1/functional, tr1/unordered_map, set.
437         * include/ext/rope: Use tr1/functional hash instead of ext/hash_fun.h.
438         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
439         * include/precompiled/extc++.h: Remove hash_map, hash_set.
440         * testsuite/util/testsuite_abi.h (__gnu_cxx): Use unordered_map
441         instead of hash_map. Remove hash specialization for string.
442         * testsuite/util/testsuite_abi.cc: Include <vector>.
443         * testsuite/util/native_type/assoc/native_hash_set.hpp: Remove
444         hash_set code.
445         * testsuite/util/native_type/assoc/native_hash_map.hpp: Remove
446         hash_map code.
447         * testsuite/util/native_type/assoc/native_hash_multimap.hpp:
448         Change hash_multimap to unordered_multimap.
449         * testsuite/util/testsuite_common_types.h: Remove hash_map, hash_set.
450         * testsuite/ext/headers.cc: Same.
451         * testsuite/17_intro/headers/all_c++200x_compatibility.cc: Remove
452         hash_map.h, hash_set.h.
453         * testsuite/17_intro/headers/all.cc: Same.
454         * testsuite/17_intro/headers/all_pedantic_errors.cc: Same.
455
456         * include/ext/pb_ds/detail/standard_policies.hpp: Format.
457         * testsuite/util/native_type/assoc/native_set.hpp: Same, 
458         update comment.
459         * testsuite/util/native_type/assoc/native_map.hpp: Same.
460         * testsuite/util/native_type/assoc/native_multimap.hpp: Same.
461         * testsuite/util/performance/assoc/timing/
462         multimap_insert_test.hpp: Same.
463         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
464
465 2007-10-11  Chris Jefferson  <chris@bubblescope.net>
466             Paolo Carlini  <pcarlini@suse.de>
467
468         * include/bits/stl_heap.h (__push_heap, push_heap, __adjust_heap,
469         make_heap): Use _GLIBCXX_MOVE.
470         (__pop_heap): Likewise, adjust signature.
471         (pop_heap): Adjust __pop_heap call.
472         * include/bits/stl_algo.h (__heap_select): Likewise.
473         * testsuite/25_algorithms/heap/moveable.cc: Remove dg-require-rvalref.
474         * testsuite/25_algorithms/partial_sort/moveable.cc: Likewise.
475
476 2007-10-11  Paolo Carlini  <pcarlini@suse.de>
477
478         PR libstdc++/33734
479         * include/ext/codecvt_specializations.h (encoding_state::good,
480         init, destroy): Use cast notation instead of reinterpret_cast.
481
482 2007-10-11  Paolo Carlini  <pcarlini@suse.de>
483
484         * testsuite/25_algorithms/heap/moveable.cc: Fix and extend.
485
486 2007-10-11  Danny Smith  <dannysmith@users.sourceforge.net>
487
488         PR libstdc++/33578
489         * include/parallel/compatibility.h.  Use POSIX sched_yield on
490         __CYGWIN__ 
491         (Sleep): Add prototype for __MINGW32__.
492
493 2007-10-10  Jason Merrill  <jason@redhat.com>
494
495         * libsupc++/guard.cc (struct mutex_wrapper): Move into
496         anonymous namespace.
497
498 2007-10-10  Paolo Carlini  <pcarlini@suse.de>
499
500         * include/debug/list (list<>::list(list&&)): Fix.
501         * include/debug/vector (vector<>::vector(vector&&)): Likewise.
502         * include/debug/deque (deque<>::deque(deque&&)): Likewise.
503         * include/debug/set.h (set<>::set(set&&)): Likewise.
504         * include/debug/map.h (map<>::map(map&&)): Likewise.
505         * include/debug/multiset.h (multiset<>::multiset(multiset&&)):Likewise.
506         * include/debug/multimap.h (multimap<>::multimap(multimap&&)):Likewise.
507
508 2007-10-10  Benjamin Kosnik  <bkoz@redhat.com>
509
510         PR libstdc++/33633
511         * include/debug/hash_multimap.h: Change _GLIBCXX_EXT to _GLIBCXX_EXT_D.
512         * include/debug/hash_set.h: Same.
513         * include/debug/hash_multiset.h: Same.
514         * include/debug/hash_map.h: Same.
515
516 2007-10-10  Benjamin Kosnik  <bkoz@redhat.com>
517
518         * include/parallel/losertree.h (loser_tree_traits_unguarded): To 
519         loser_tree_unguarded_traits.
520         * include/parallel/multiway_merge.h (__gnu_parallel): Same.
521
522 2007-10-10  Paolo Carlini  <pcarlini@suse.de>
523             Chris Fairles  <chris.fairles@gmail.com>
524
525         * include/bits/stl_algobase.h (swap): Move...
526         * include/bits/stl_move.h: ... here.
527         * include/bits/stl_pair.h (pair<>::pair(_U1&&, _U2&&),
528         pair<>::pair(pair<>&&), pair<>::operator=(pair<>&&),
529         pair<>::swap(pair&&), swap(&, &), swap(&&, &), swap(&, &&),
530         make_pair(_T1&&, _T2&&)): Add.
531         * testsuite/20_util/pair/swap.cc: Add.
532
533 2007-10-09  Wolfgang Bangerth  <bangerth@dealii.org>
534
535         PR libstdc++/33485 continued.
536         * include/parallel/multiway_mergesort.h: Use __builtin_alloca.
537         
538 2007-10-09  Zhou Drangon  <drangon.mail@gmail.com>
539
540         PR libstdc++/33682
541         * libsupc++/guard.cc: Make single conditional variable
542         implementation dependent to __GTHREAD_HAS_COND.
543
544 2007-10-09  Benjamin Kosnik  <bkoz@redhat.com>
545
546         PR libstdc++/33489 continued.           
547         * include/parallel/features.h (_GLIBCXX_LOSER_TREE): Set to zero.
548         (_GLIBCXX_LOSER_TREE_POINTER): Set to one.
549         (_GLIBCXX_LOSER_TREE_UNGUARDED): Set to zero.
550         (_GLIBCXX_LOSER_TREE_POINTER_UNGUARDED): Set to one.
551         * include/parallel/multiway_merge.h (parallel_multiway_merge):
552         Change array of value_type to array of value_type pointers.
553         (multiway_merge_bubble): Same.
554         (multiway_merge_loser_tree): Same.
555         * include/parallel/merge.h (merge_advance_movc): Change to avoid
556         default construction.
557         * include/parallel/multiseq_selection.h (multiseq_partition):
558         Replace value_type, bool pair with value_type*, null-initialized.
559         * include/parallel/multiway_mergesort.h (parallel_sort_mwms):
560         Don't use array form of operator new for value_types.
561         (parallel_sort_mwms_pu): Same.
562         * include/parallel/quicksort.h (parallel_sort_qs_divide): Don't
563         use array form to construct pointer to value_type on stack,
564         instead use __builtin_alloca.   
565         * include/parallel/random_shuffle.h (sequential_random_shuffle): Same,
566         but use operator new.
567         (parallel_random_shuffle_drs_pu): Same.
568         * include/parallel/partial_sum.h ( parallel_partial_sum_linear): Same.
569
570         * include/parallel/losertree.h: Format.
571         * include/parallel/settings.h: Format.
572
573         * include/parallel/multiway_merge.h: Move traits to....
574         * include/parallel/losertree.h: ... here.       
575         
576 2007-10-09  Paolo Carlini  <pcarlini@suse.de>
577
578         * include/tr1_impl/type_traitsfwd.h (add_reference): Remove.
579         * include/tr1/type_traits (add_reference): Add forward declaration.
580         * include/tr1_impl/functional (class _Mu<>): Fix.
581
582 2007-10-09  Paolo Carlini  <pcarlini@suse.de>
583
584         * include/bits/boost_concept_check.h (*AssociativeContainerConcept):
585         Remove, unused.
586
587 2007-10-08  Johannes Singler  <singler@ira.uka.de>
588
589         * include/parallel/base.h: Added plus and multiplies functor
590        for differently typed objects.
591         * include/parallel/numeric: Use it.
592         * include/parallel/for_each_selectors.h: Allowed different types.
593         * include/parallel/partial_sum.h: Fixed return value.
594         * testsuite/26_numerics/accumulate/1.cc: Tests for accumulate.
595         * testsuite/26_numerics/inner_product/1.cc: Tests for inner_product.
596
597 2007-10-08  Paolo Carlini  <pcarlini@suse.de>
598
599         * include/bits/stl_move.h (_GLIBCXX_MOVE): Add.
600         * include/bits/stl_algobase.h: Adjust.
601         * include/bits/stl_pair.h: Likewise.
602
603         * include/bits/stl_algo.h: Minor formatting fixes.
604
605 2007-10-08  Benjamin Kosnik  <bkoz@redhat.com>
606
607         PR libstdc++/33489      
608         * include/parallel/multiseq_selection.h: Remove default constructed
609         value_type.
610         * include/parallel/partition.h: 
611         * include/parallel/partial_sum.h: Format.
612
613 2007-10-08  Johannes Singler  <singler@ira.uka.de>
614
615         * include/parallel/multiway_merge.h: Added reference to paper.
616         * include/parallel/multiseq_selection.h: Added reference to paper.
617         * include/parallel/workstealing.h: Added reference to paper.
618         * include/parallel/balanced_quicksort.h: Added reference to paper.
619         * include/parallel/tree.h: Added reference to paper.
620         * docs/html/parallel_mode.html: Added reference to MCSTL.
621         More documentation on compile-time settings and tuning.
622
623 2007-10-08  Paolo Carlini  <pcarlini@suse.de>
624
625         * include/std/utility (identity, move, forward): Move to...
626         * include/bits/stl_move.h: ... here.
627         * include/Makefile.am: Add.
628         * include/bits/stl_algobase.h: Include the latter.
629         * include/Makefile.in: Regenerate.
630         * testsuite/20_util/pair/moveable.cc: Remove dg-require-rvalref.
631
632 2007-10-08  Chris Jefferson  <chris@bubblescope.net>
633             Paolo Carlini  <pcarlini@suse.de>
634
635         * include/bits/stl_pair.h (pair<>:pair(pair&&),
636         pair<>::operator=(pair&&)): Add.
637
638 2007-10-07  Chris Jefferson  <chris@bubblescope.net>
639             Paolo Carlini  <pcarlini@suse.de>
640
641         * include/debug/list (list<>::list(list&&),
642         list<>::operator=(list&&)): Add.
643         (list<>::swap): Adjust.
644         (swap(list&&, list& __y), swap(list&, list&& __y)): Add.
645         * include/debug/vector (vector<>::vector(vector&&),
646         vector<>::operator=(vector&&)): Add.
647         (vector<>::swap): Adjust.
648         (swap(vector&&, vector& __y), swap(vector&, vector&& __y)): Add.
649         * include/debug/deque (deque<>::deque(deque&&),
650         deque<>::operator=(deque&&)): Add.
651         (deque<>::swap): Adjust.
652         (swap(deque&&, deque& __y), swap(deque&, deque&& __y)): Add.
653         * include/debug/set.h (set<>::set(set&&),
654         set<>::operator=(set&&)): Add.
655         (set<>::swap): Adjust.
656         (swap(set&&, set& __y), swap(set&, set&& __y)): Add.
657         * include/debug/map.h (map<>::map(map&&),
658         map<>::operator=(map&&)): Add.
659         (map<>::swap): Adjust.
660         (swap(map&&, map& __y), swap(map&, map&& __y)): Add.
661         * include/debug/multiset.h (multiset<>::multiset(multiset&&),
662         multiset<>::operator=(multiset&&)): Add.
663         (smultiet<>::swap): Adjust.
664         (swap(multiset&&, multiset& __y),
665         swap(multiset&, multiset&& __y)): Add.
666         * include/debug/multimap.h (multimap<>::multimap(multimap&&),
667         multimap<>::operator=(multimap&&)): Add.
668         (multimap<>::swap): Adjust.
669         (swap(multimap&&, multimap& __y),
670         swap(multimap&, multimap&& __y)): Add.
671
672 2007-10-07  Paolo Carlini  <pcarlini@suse.de>
673
674         * include/bits/stl_algobase.h (_GLIBCXX_MOVE): Add.
675         (swap, __iter_swap): Use it.
676         * testsuite/25_algorithms/rotate/moveable.cc: Remove 
677         dg-require-rvalref.
678         * testsuite/25_algorithms/remove/moveable.cc: Likewise.
679         * testsuite/25_algorithms/partition/moveable.cc: Likewise. 
680         * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
681         * testsuite/25_algorithms/reverse/moveable.cc: Likewise. 
682         * testsuite/25_algorithms/unique/moveable.cc: Likewise. 
683         * testsuite/25_algorithms/remove_if/moveable.cc: Likewise. 
684
685         * include/bits/stl_algobase.h (lexicographical_compare):
686         Clean up.
687
688 2007-10-07  Chris Jefferson  <chris@bubblescope.net>
689             Paolo Carlini  <pcarlini@suse.de>
690
691         * include/bits/stl_algo.h (remove, remove_if, unique,
692         __rotate(_RandomAccessIterator, _RandomAccessIterator,
693         _RandomAccessIterator, random_access_iterator_tag)): Use _GLIBCXX_MOVE.
694         (__rotate(_ForwardIterator, _ForwardIterator, _ForwardIterator,
695         forward_iterator_tag), __rotate(_BidirectionalIterator,
696         _BidirectionalIterator, _BidirectionalIterator,
697         bidirectional_iterator_tag), __partition(_ForwardIterator,
698         _ForwardIterator, _Predicate, forward_iterator_tag)): Use iter_swap.
699
700 2007-10-06  Benjamin Kosnik  <bkoz@redhat.com>
701
702         PR libstdc++/33678      
703         * libsupc++/typeinfo (typeinfo): Revert ordering of virtual components.
704
705 2007-10-06  Benjamin Kosnik  <bkoz@redhat.com>
706
707         PR libstdc++/33487
708         * include/parallel/algorithmfwd.h (for_each, generate, generate_n,
709         transform, replace, replace_if, max_element, min_element, count,
710         count_if): Consistently construct overloads.
711         * include/parallel/numericfwd.h (accumulate, adjacent_difference,
712         inner_product): Same.
713         * include/parallel/algobase.h: Same.
714         * include/parallel/algo.h: Same.
715         * include/parallel/numeric: Same.
716
717         * include/bits/algorithmfwd.h: Correct find_end placement.
718
719         * docs/html/parallel_mode.html: Document some of the interface
720         conventions.
721
722         * include/parallel/search.h (calc_borders): Only use operator ==.
723         
724         * include/parallel/algorithmfwd.h: Move __gnu_sequential bits to...
725         * include/parallel/tags.h: ...here, and use a using directive.
726
727         * include/parallel/random_shuffle.h: Include stl_numeric. Qualify
728         uses of partial_num with __gnu_sequential.
729
730         * include/parallel/tree.h: Formatting.
731         
732 2007-10-05  Benjamin Kosnik  <bkoz@redhat.com>
733
734         Fixes for --disable-libstdcxx-pch.
735         * include/ext/rc_string_base.h: Include stl_iterator_base_funcs.h.
736         * include/ext/vstring_util.h: Include stl_iterator.h and
737         numeric_traits.h.
738         * include/tr1/functional: Include new.
739         * testsuite/util/testsuite_api.h: Include exception.
740         * testsuite/lib/libstdc++.exp (libstdc++_init): Set
741         PCH_CXXFLAGS via cxxpchflags.
742
743         * testsuite/25_algorithms/binary_search/requirements/
744         explicit_instantiation/2.cc: Same.: Fix includes.
745         * testsuite/25_algorithms/count_if/requirements/
746         explicit_instantiation/2.cc: Same.
747         * testsuite/25_algorithms/equal_range/requirements/
748         explicit_instantiation/2.cc: Same.
749         * testsuite/25_algorithms/find_end/requirements/
750         explicit_instantiation/2.cc: Same.
751         * testsuite/25_algorithms/find_first_of/requirements/
752         explicit_instantiation/2.cc: Same.
753         * testsuite/25_algorithms/find_if/requirements/
754         explicit_instantiation/2.cc: Same.
755         * testsuite/25_algorithms/for_each/requirements/
756         explicit_instantiation/2.cc: Same.
757         * testsuite/25_algorithms/includes/requirements/
758         explicit_instantiation/2.cc: Same.
759         * testsuite/25_algorithms/inplace_merge/requirements/
760         explicit_instantiation/2.cc: Same.
761         * testsuite/25_algorithms/lexicographical_compare/
762         requirements/explicit_instantiation/2.cc: Same.
763         * testsuite/25_algorithms/lower_bound/requirements/
764         explicit_instantiation/2.cc: Same.
765         * testsuite/25_algorithms/make_heap/requirements/
766         explicit_instantiation/2.cc: Same.
767         * testsuite/25_algorithms/max_element/requirements/
768         explicit_instantiation/2.cc: Same.
769         * testsuite/25_algorithms/max/requirements/
770         explicit_instantiation/2.cc: Same.
771         * testsuite/25_algorithms/merge/requirements/
772         explicit_instantiation/2.cc: Same.
773         * testsuite/25_algorithms/min_element/requirements/
774         explicit_instantiation/2.cc: Same.
775         * testsuite/25_algorithms/min/requirements/
776         explicit_instantiation/2.cc: Same.
777         * testsuite/25_algorithms/next_permutation/
778         requirements/explicit_instantiation/2.cc: Same.
779         * testsuite/25_algorithms/nth_element/requirements/
780         explicit_instantiation/2.cc: Same.
781         * testsuite/25_algorithms/partial_sort_copy/
782         requirements/explicit_instantiation/2.cc: Same.
783         * testsuite/25_algorithms/partial_sort/requirements/
784         explicit_instantiation/2.cc: Same.
785         * testsuite/25_algorithms/partition/requirements/
786         explicit_instantiation/2.cc: Same.
787         * testsuite/25_algorithms/pop_heap/requirements/
788         explicit_instantiation/2.cc: Same.
789         * testsuite/25_algorithms/prev_permutation/requirements/
790         explicit_instantiation/2.cc: Same.
791         * testsuite/25_algorithms/push_heap/requirements/
792         explicit_instantiation/2.cc: Same.
793         * testsuite/25_algorithms/random_shuffle/requirements/
794         explicit_instantiation/2.cc: Same.
795         * testsuite/25_algorithms/remove_copy_if/requirements/
796         explicit_instantiation/2.cc: Same.
797         * testsuite/25_algorithms/remove_if/requirements/
798         explicit_instantiation/2.cc: Same.
799         * testsuite/25_algorithms/replace_copy_if/requirements/
800         explicit_instantiation/2.cc: Same.
801         * testsuite/25_algorithms/replace_if/requirements/
802         explicit_instantiation/2.cc: Same.
803         * testsuite/25_algorithms/search_n/requirements/
804         explicit_instantiation/2.cc: Same.
805         * testsuite/25_algorithms/search/requirements/
806         explicit_instantiation/2.cc: Same.
807         * testsuite/25_algorithms/set_difference/requirements/
808         explicit_instantiation/2.cc: Same.
809         * testsuite/25_algorithms/set_intersection/requirements/
810         explicit_instantiation/2.cc: Same.
811         * testsuite/25_algorithms/set_symmetric_difference/requirements/
812         explicit_instantiation/2.cc: Same.
813         * testsuite/25_algorithms/set_union/requirements/
814         explicit_instantiation/2.cc: Same.
815         * testsuite/25_algorithms/sort_heap/requirements/
816         explicit_instantiation/2.cc: Same.
817         * testsuite/25_algorithms/sort/requirements/
818         explicit_instantiation/2.cc: Same.
819         * testsuite/25_algorithms/stable_partition/requirements/
820         explicit_instantiation/2.cc: Same.
821         * testsuite/25_algorithms/stable_sort/requirements/
822         explicit_instantiation/2.cc: Same.
823         * testsuite/25_algorithms/transform/requirements/
824         explicit_instantiation/2.cc: Same.
825         * testsuite/25_algorithms/unique_copy/requirements/
826         explicit_instantiation/2.cc: Same.
827         * testsuite/25_algorithms/unique/requirements/
828         explicit_instantiation/2.cc: Same.
829         * testsuite/25_algorithms/upper_bound/requirements/
830         explicit_instantiation/2.cc: Same.
831
832         * testsuite/25_algorithms/remove/requirements/
833         explicit_instantiation/pod.cc: Provide a hint to the compiler.
834
835 2007-10-05  Paolo Carlini  <pcarlini@suse.de>
836
837         * testsuite/23_containers/map/moveable.cc: Remove dg-require-rvalref.
838         * testsuite/23_containers/multimap/moveable.cc: Likewise.
839         * testsuite/23_containers/set/moveable.cc: Likewise. 
840         * testsuite/23_containers/multiset/moveable.cc: Likewise.
841         * testsuite/23_containers/deque/moveable.cc: Likewise. 
842         * testsuite/23_containers/list/moveable.cc: Likewise. 
843         * testsuite/23_containers/vector/moveable.cc: Likewise. 
844         * include/std/utility: Use _GLIBCXX_BEGIN_NAMESPACE.
845
846 2007-10-05  Paolo Carlini  <pcarlini@suse.de>
847             Chris Jefferson  <chris@bubblescope.net>
848
849         * include/bits/stl_iterator.h (class move_iterator,
850         make_move_iterator): Add.
851
852 2007-10-04  Doug Kwan  <dougkwan@google.com>
853
854         * include/ext/concurrent.h (class __mutex,
855         class __recursive_mutex): Add new method gthread_mutex to access
856         inner gthread mutex.
857         [__GTHREAD_HAS_COND] (class __concurrence_broadcast_error,
858         class __concurrence_wait_error, class __cond): Add.
859         * libsupc++/guard.cc (recursive_push, recursive_pop): Delete.
860         (init_in_progress_flag, set_init_in_progress_flag): Add to
861         replace recursive_push and recursive_pop.
862         (throw_recursive_init_exception): Add.
863         (acquire, __cxa_guard_acquire, __cxa_guard_abort and
864         __cxa_guard_release): [__GTHREAD_HAS_COND] Use a conditional
865         for synchronization of static variable initialization.
866         The global mutex is only held briefly when guards are
867         accessed. [!__GTHREAD_HAS_COND] Fall back to the old code,
868         which deadlocks.
869         * testsuite/thread/guard.cc: Add new test. It deadlocks with the
870         old locking code in libstdc++-v3/libsup++/guard.cc.
871
872 2007-10-04  Paolo Carlini  <pcarlini@suse.de>
873
874         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
875         Adjust dg-error line number.
876         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
877         Likewise.
878         * testsuite/23_containers/vector/requirements/dr438/
879         constructor_1_neg.cc: Likewise.
880         * testsuite/23_containers/vector/requirements/dr438/
881         constructor_2_neg.cc: Likewise.
882         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
883         Adjust dg-error line number.
884         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
885         Likewise.
886         * testsuite/23_containers/deque/requirements/dr438/
887         constructor_1_neg.cc: Likewise.
888         * testsuite/23_containers/deque/requirements/dr438/
889         constructor_2_neg.cc: Likewise.
890         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
891         Adjust dg-error line number.
892         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
893         Likewise.
894         * testsuite/23_containers/list/requirements/dr438/
895         constructor_1_neg.cc: Likewise.
896         * testsuite/23_containers/list/requirements/dr438/
897         constructor_2_neg.cc: Likewise.
898
899 2007-10-04  Chris Jefferson  <chris@bubblescope.net>
900             Paolo Carlini  <pcarlini@suse.de>
901
902         * include/bits/stl_list.h (list<>::list(list&&),
903         list<>::operator=(list&&)): Add.
904         (list<>::swap): Adjust.
905         (swap(list&&, list& __y), swap(list&, list&& __y)): Add.
906         * include/bits/stl_vector.h (vector<>::vector(vector&&),
907         vector<>::operator=(vector&&)): Add.
908         (vector<>::swap): Adjust.
909         (swap(vector&&, vector& __y), swap(vector&, vector&& __y)): Add.
910         * include/bits/stl_bvector.h (vector<>::vector(vector&&),
911         vector<>::operator=(vector&&)): Add.
912         (vector<>::swap): Adjust.
913         * include/bits/stl_deque.h (deque<>::deque(deque&&),
914         deque<>::operator=(deque&&)): Add.
915         (deque<>::swap): Adjust.
916         (swap(deque&&, deque& __y), swap(deque&, deque&& __y)): Add.
917         * include/bits/stl_set.h (set<>::set(set&&),
918         set<>::operator=(set&&)): Add.
919         (set<>::swap): Adjust.
920         (swap(set&&, set& __y), swap(set&, set&& __y)): Add.
921         * include/bits/stl_map.h (map<>::map(map&&),
922         map<>::operator=(map&&)): Add.
923         (map<>::swap): Adjust.
924         (swap(map&&, map& __y), swap(map&, map&& __y)): Add.
925         * include/bits/stl_multiset.h (multiset<>::multiset(multiset&&),
926         multiset<>::operator=(multiset&&)): Add.
927         (smultiet<>::swap): Adjust.
928         (swap(multiset&&, multiset& __y),
929         swap(multiset&, multiset&& __y)): Add.
930         * include/bits/stl_multimap.h (multimap<>::multimap(multimap&&),
931         multimap<>::operator=(multimap&&)): Add.
932         (multimap<>::swap): Adjust.
933         (swap(multimap&&, multimap& __y),
934         swap(multimap&, multimap&& __y)): Add.
935
936 2007-10-04  Paolo Carlini  <pcarlini@suse.de>
937
938         Avoid copying some allocator objects.
939         * include/bits/stl_list.h (_List_impl::_List_impl(),
940         _List_base::_List_base(), list<>::list()): Add.
941         * include/bits/stl_vector.h  (_Vector_impl::_Vector_impl(),
942         _Vector_base::_Vector_base(), vector<>::vector()): Add.
943         * include/bits/stl_bvector.h (_Bvector_impl::_Bvector_impl(),
944         _Bvector_base::_Bvector_base(), vector<>::vector()): Add.
945         * include/bits/stl_deque.h  (_Deque_impl::_Deque_impl(),
946         _Deque_base::_Deque_base(), deque<>::deque()): Add.
947         * include/bits/stl_tree.h (_Rb_tree_impl<>::_Rb_tree_impl(),
948         _Rb_tree_impl<>::_M_initialize): Add.
949         (_Rb_tree<>::_Rb_tree(const _Compare&, const allocator_type&),
950         _Rb_tree(const _Rb_tree&)): Adjust.
951         * include/bits/stl_set.h (set<>::set(),
952         set(_InputIterator, _InputIterator)): Use _M_t default constructor. 
953         * include/bits/stl_map.h (map<>::map(), set(_InputIterator,
954         _InputIterator)): Use _M_t default constructor. 
955         * include/bits/stl_multiset.h (multiset<>::multiset(),
956         multiset(_InputIterator, _InputIterator)): Use _M_t default
957         constructor. 
958         * include/bits/stl_multimap.h (multimap<>::multimap(),
959         multimap(_InputIterator, _InputIterator)): Use _M_t default
960         constructor.
961
962 2007-10-03  Chris Jefferson  <chris@bubblescope.net>
963             Benjamin Kosnik  <bkoz@redhat.com>
964
965         * testsuite/20_util/pair/moveable.cc: New. Merge from 
966         libstdcxx_so_7-branch.
967         * testsuite/23_containers/deque/capacity/moveable.cc: Same.
968         * testsuite/23_containers/deque/cons/moveable.cc: Same.
969         * testsuite/23_containers/deque/modifiers/moveable.cc: Same.
970         * testsuite/23_containers/deque/moveable.cc: Same.
971         * testsuite/23_containers/list/moveable.cc: Same.
972         * testsuite/23_containers/map/moveable.cc: Same.
973         * testsuite/23_containers/multimap/moveable.cc: Same.
974         * testsuite/23_containers/multiset/moveable.cc: Same.
975         * testsuite/23_containers/set/moveable.cc: Same.
976         * testsuite/23_containers/vector/cons/moveable.cc: Same.
977         * testsuite/23_containers/vector/modifiers/moveable.cc: Same.
978         * testsuite/23_containers/vector/moveable.cc: Same.
979         * testsuite/23_containers/vector/resize/moveable.cc: Same.
980         * testsuite/25_algorithms/heap/moveable.cc: Same.
981         * testsuite/25_algorithms/nth_element/moveable.cc: Same.
982         * testsuite/25_algorithms/partial_sort/moveable.cc: Same.
983         * testsuite/25_algorithms/partition/moveable.cc: Same.
984         * testsuite/25_algorithms/remove_if/moveable.cc: Same.
985         * testsuite/25_algorithms/remove/moveable.cc: Same.
986         * testsuite/25_algorithms/reverse/moveable.cc: Same.
987         * testsuite/25_algorithms/rotate/moveable.cc: Same.
988         * testsuite/25_algorithms/sort/moveable.cc: Same.
989         * testsuite/25_algorithms/swap_ranges/moveable.cc: Same.
990         * testsuite/25_algorithms/unique/moveable.cc: Same.
991         * testsuite/util/testsuite_rvalref.h: New.
992
993         * testsuite/25_algorithms/equal/equal.cc: Move to...
994         * testsuite/25_algorithms/equal/no_operator_ne.cc: ...this.
995         * testsuite/25_algorithms/heap/heap.cc: Move to...
996         * testsuite/25_algorithms/heap/1.cc: ...this.
997         * testsuite/25_algorithms/lower_bound/lower_bound.cc: Move to...
998         * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: ...this.
999         * testsuite/25_algorithms/partition/partition.cc: Move to...
1000         * testsuite/25_algorithms/partition/1.cc: ...this.
1001         * testsuite/25_algorithms/stable_partition/1.cc: ... and this.
1002         
1003         * testsuite/25_algorithms/search/1.cc: Update from merge.
1004         * testsuite/25_algorithms/search/check_type.cc: Same.
1005
1006         * testsuite/lib/dg-options.exp (dg-require-rvalref): New.
1007         * testsuite/lib/libstdc++.exp (check_v3_target_rvalref): New.
1008         
1009 2007-10-03  Richard Sandiford  <richard@codesourcery.com>
1010
1011         * acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
1012         -fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
1013         Make the tests assign results to volatile variables.  Use -lm
1014         for link tests in GCC_TRY_COMPILE_OR_LINK.  Fall back to
1015         compile-only tests if -lm is not available.
1016         * configure: Regenerate.
1017
1018 2007-10-03  Paolo Carlini  <pcarlini@suse.de>
1019
1020         PR libstdc++/33613
1021         * include/debug/functions.h (__check_partitioned): Rename to...
1022         (__check_partioned_lower): ... this.
1023         (__check_partioned_upper): Add.
1024         * include/debug/macros.h (__glibcxx_check_partitioned): Rename to...
1025         (__glibcxx_check_partitioned_lower): ... this, adjust.
1026         (__glibcxx_check_partitioned_upper): Add.
1027         * include/debug/debug.h (__glibcxx_requires_partitioned): Rename to...
1028         (__glibcxx_requires_partitioned_lower): ... this, adjust.
1029         (__glibcxx_requires_partitioned_upper): Add.
1030         * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
1031         binary search): Use the above.
1032         * testsuite/25_algorithms/lower_bound/33613.cc: New.
1033         * testsuite/25_algorithms/upper_bound/33613.cc: Likewise.
1034
1035 2007-10-03  Kazu Hirata  <kazu@codesourcery.com>
1036
1037         Revert:
1038         2007-10-02  Richard Sandiford  <richard@codesourcery.com>
1039         * acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
1040         -fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
1041         Make the tests assign results to volatile variables.
1042         * configure: Regenerate.
1043
1044 2007-10-02  Richard Sandiford  <richard@codesourcery.com>
1045
1046         * acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
1047         -fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
1048         Make the tests assign results to volatile variables.
1049         * configure: Regenerate.
1050
1051 2007-10-02  Benjamin Kosnik  <bkoz@redhat.com>
1052
1053         * testsuite/25_algorithms/binary_search/2.cc: Split into...
1054         * testsuite/25_algorithms/upper_bound/2.cc: ... this.
1055         * testsuite/25_algorithms/lower_bound/2.cc: ... this.
1056         * testsuite/25_algorithms/equal_range/2.cc: ... and this.
1057
1058 2007-10-02  Chris Jefferson  <chris@bubblescope.net>
1059
1060         * testsuite/25_algorithms/search/1.cc: Merge from 
1061         libstdcxx_so_7-branch.
1062         * testsuite/25_algorithms/search/check_type.cc: Same.
1063         * testsuite/25_algorithms/sort/vectorbool.cc: Same.
1064
1065 2007-09-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
1066
1067         * src/valarray-inst.cc, include/ext/atomicity.h,
1068         include/ext/concurrence.h, include/bits/basic_string.h,
1069         include/bits/fstream.tcc, include/ext/vstring.h: Fix comment typos.
1070
1071 2007-09-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
1072
1073         * docs/html/test.html, docs/html/ext/mt_allocator.html,
1074         docs/html/ext/tr1.html, docs/html/17_intro/contribute.html,
1075         docs/html/documentation.html, docs/html/20_util/allocator.html:
1076         Update docs to refer to Subversion not CVS. Fix markup.
1077
1078 2007-09-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
1079
1080         * docs/html/Makefile: Follow up to libstdc++/14991, remove target.
1081
1082 2007-09-28  Benjamin Kosnik  <bkoz@redhat.com>
1083
1084         * include/parallel/algorithmfwd.h: Spacing.
1085         * include/parallel/tags.h: Correct comment.
1086         
1087         * testsuite/Makefile.am (AM_MAKEFLAGS, AM_RUNTESTFLAGS): Remove.
1088         * testsuite/Makefile.in: Regenerate.
1089         
1090 2007-09-27  Benjamin Kosnik  <bkoz@redhat.com>
1091
1092         * testsuite/util/testsuite_hooks.cc (set_memory_limits): Adjust
1093         x86_64 virtual memory setting for libgomp.
1094         
1095 2007-09-26  Benjamin Kosnik  <bkoz@redhat.com>
1096
1097         * include/bits/stl_algo.h: Add return type information to comments.
1098         * include/bits/algorithmfwd.h: Formatting.
1099         * testsuite/util/testsuite_hooks.h (NonDefaultConstructible): Move..
1100         * testsuite/util/testsuite_api.h: ...here. Add necessary operators
1101         for use in testing chapters 25 and 26.
1102         * testsuite/util/testsuite_character.h: Same.
1103
1104         * testsuite/25_algorithms/*/requirements/explicit_instantiation/
1105         2.cc, pod.cc: New.
1106
1107         * testsuite/26_numerics/accumulate, adjacent_difference, inner_product,
1108         partial_sum/requirements/explicit_instantiation/2.cc, pod.cc: New.
1109         
1110         * testsuite/26_numerics/numeric_arrays/*: Move contents into
1111         testsuite/26_numerics.
1112
1113         * testsuite/26_numerics/numeric_operations: Same.
1114         
1115         * testsuite/23_containers/*/requirements/explicit_instantiation/2.cc:
1116         Adjust includes from testsuite_eh.h to testsuite_api.h.
1117
1118 2007-09-25  Richard Sandiford  <rsandifo@nildram.co.uk>
1119
1120         * testsuite/lib/libstdc++.exp (check_v3_target_fileio): Test lseek.
1121
1122 2007-09-18  Benjamin Kosnik  <bkoz@redhat.com>
1123             Chalathip Thumkanon  <chalathip@gmail.com>
1124
1125         PR libstdc++/32819
1126         PR libstdc++/32822
1127         * docs/html/ext/pb_ds/hash_based_containers.html: Correct.
1128         
1129 2007-09-17  Benjamin Kosnik  <bkoz@redhat.com>
1130
1131         * configure.host: Set atomic_flags on i486.
1132
1133         * include/Makefile.am: Remove parallel-mode pch.        
1134         * include/Makefile.in: Regenerate.
1135
1136         * testsuite/lib/libstdc++.exp: Set ld_library_flags for libgomp if
1137         present.
1138
1139         * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Comment.
1140         * configure: Regenerate.
1141
1142 2007-09-17  Johannes Singler  <singler@ira.uka.de>
1143
1144         * include/parallel/for_each.h: Fixed comment/doxygen markup typos.
1145         * include/parallel/base.h: Same.
1146         * include/parallel/numeric: Same.
1147         * include/parallel/quicksort.h: Same.
1148         * include/parallel/compiletime_settings.h: Same.
1149         * include/parallel/random_shuffle.h: Same.
1150         * include/parallel/balanced_quicksort.h: Same.
1151         * include/parallel/tree.h: Same.
1152         * include/parallel/settings.h: Same.
1153         * include/parallel/search.h: Same.
1154         * include/parallel/partition.h: Same.
1155         * include/parallel/partial_sum.h: Same.
1156
1157 2007-09-17  Paolo Carlini  <pcarlini@suse.de>
1158
1159         * include/tr1_impl/type_traitsfwd.h (aligned_storage): Remove
1160         declaration.
1161         * include/tr1_impl/type_traits (aligned_storage): Remove.
1162         * include/std/type_traits (aligned_storage, __aligned_storage_msa):
1163         Add.
1164         * include/tr1/type_traits (aligned_storage): Add.
1165         * testsuite/20_util/aligned_storage/value.cc: New.
1166         * testsuite/20_util/aligned_storage/requirements/
1167         explicit_instantiation.cc: Likewise.
1168         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
1169         dg-error lines.
1170         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1171         Likewise.
1172
1173 2007-09-16  Paolo Carlini  <pcarlini@suse.de>
1174             Douglas Gregor  <doug.gregor@gmail.com>
1175
1176         * include/tr1_impl/type_traits (aligned_storage): Implement
1177         in the neat and general way.
1178
1179 2007-09-14  Benjamin Kosnik  <bkoz@redhat.com>
1180         
1181         * include/parallel/base.h (__gnu_parallel::less<Tp>): Add partial
1182         specialization for one argument. 
1183         (__gnu_parallel::less): Add operator.
1184
1185         * include/parallel/multiway_merge.h: Use __builtin_alloca. 
1186         * include/parallel/partial_sum.h: Same.
1187         * include/parallel/find.h: Same.        
1188         
1189 2007-09-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1190
1191         * include/tr1_impl/boost_shared_ptr.h: (__weak_ptr::lock()): Add
1192         missing template argument.
1193         * testsuite/tr1/2_general_utilities/shared_ptr/requirements/
1194         explicit_instantiation/2.cc: New.
1195         * testsuite/tr1/2_general_utilities/weak_ptr/requirements/
1196         explicit_instantiation/2.cc: New.
1197
1198 2007-09-14  Benjamin Kosnik  <bkoz@redhat.com>
1199
1200         * testsuite/17_intro/headers/all_pedantic_errors.cc: New.
1201         * include/tr1_impl/cinttypes: Add pragma GCC system_header.
1202         * include/tr1_impl/cfenv: Same.
1203         * include/tr1_impl/cstdint: Same.
1204         * include/tr1/cstdbool: Same.
1205         * include/ext/pb_ds/detail/resize_policy/
1206         hash_prime_size_policy_imp.hpp: Same.
1207         * include/parallel/partial_sum.h: Avoid VLA error with
1208         __builtin_alloca.
1209
1210 2007-09-14  Thiemo Seufer  <ths@mips.com>
1211
1212         * crossconfig.m4 (mips*-sde-elf*): New stanza.
1213         * configure: Regenerate.
1214
1215 2007-09-12  Benjamin Kosnik  <bkoz@redhat.com>
1216
1217         * include/ext/pb_ds/*: Change namespace pb_ds to __gnu_pbds.
1218         * docs/html/ext/pb_ds/*: Same.
1219         * testsuite/ext/pb_ds/*: Same.
1220         * testsuite/performance/ext/pb_ds/*: Same.
1221         * testsuite/util/*: Same.
1222         
1223 2007-09-12  Benjamin Kosnik  <bkoz@redhat.com>
1224
1225         * include/parallel/find.h: Doxygen fixups.
1226         * include/bits/hashtable.h: Same.
1227
1228 2007-09-11  Johannes Singler  <singler@ira.uka.de>
1229             Leonor Frias Moya  <lfrias@lsi.upc.edu>
1230             Felix Putze  <kontakt@felix-putze.de>
1231             Marius Elvert  <marius.elvert@ira.uka.de>
1232             Felix Bondarenko  <f.bondarenko@web.de>
1233             Robert Geisberger  <robert.geisberger@stud.uni-karlsruhe.de>
1234             Robin Dapp  <r.dapp@freenet.de>
1235             Benjamin Kosnik  <bkoz@redhat.com>
1236
1237         Add parallel mode.
1238         * include/parallel: New.
1239         * include/parallel/iterator.h: New.
1240         * include/parallel/multiway_merge.h: New.
1241         * include/parallel/parallel.h: New.
1242         * include/parallel/algorithm
1243         * include/parallel/find_selectors.h: New.
1244         * include/parallel/losertree.h: New.
1245         * include/parallel/list_partition.h: New.
1246         * include/parallel/types.h: New.
1247         * include/parallel/for_each.h: New.
1248         * include/parallel/multiseq_selection.h: New.
1249         * include/parallel/workstealing.h: New.
1250         * include/parallel/base.h: New.
1251         * include/parallel/par_loop.h: New.
1252         * include/parallel/numeric
1253         * include/parallel/features.h: New.
1254         * include/parallel/quicksort.h: New.
1255         * include/parallel/algorithmfwd.h: New.
1256         * include/parallel/equally_split.h: New.
1257         * include/parallel/compiletime_settings.h: New.
1258         * include/parallel/for_each_selectors.h: New.
1259         * include/parallel/basic_iterator.h: New.
1260         * include/parallel/omp_loop_static.h: New.
1261         * include/parallel/random_shuffle.h: New.
1262         * include/parallel/balanced_quicksort.h: New.
1263         * include/parallel/set_operations.h: New.
1264         * include/parallel/tags.h: New.
1265         * include/parallel/merge.h: New.
1266         * include/parallel/tree.h: New.
1267         * include/parallel/settings.h: New.
1268         * include/parallel/unique_copy.h: New.
1269         * include/parallel/multiway_mergesort.h: New.
1270         * include/parallel/numericfwd.h: New.
1271         * include/parallel/search.h: New.
1272         * include/parallel/partition.h: New.
1273         * include/parallel/compatibility.h: New.
1274         * include/parallel/algobase.h: New.
1275         * include/parallel/find.h: New.
1276         * include/parallel/partial_sum.h: New.
1277         * include/parallel/algo.h: New.
1278         * include/parallel/omp_loop.h: New.
1279         * include/parallel/queue.h: New.
1280         * include/parallel/timing.h: New.
1281         * include/parallel/sort.h: New.
1282         * include/parallel/checkers.h: New.
1283         * include/parallel/random_number.h: New.
1284         * include/bits/algorithmfwd.h: New.
1285
1286         * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): New.
1287         * configure.host: Add atomic_flags.
1288         * configure.ac: Export ATOMIC_FLAGS, call GLIBCXX_ENABLE_PARALLEL.
1289         * src/Makefile.am: Add parallel_list rules.
1290         * include/Makefile.am: Add parallel files.
1291         * testsuite/Makefile.am (check-parallel): Add.
1292         (check-performance-parallel): Add.
1293         * config.h.in: Regenerate.
1294         * configure: Same.
1295         * libsupc++/Makefile.in: Same.
1296         * testsuite/Makefile.in: Same.
1297         * Makefile.in: Same.
1298         * libmath/Makefile.in: Same.
1299         * include/Makefile.in: Same.
1300         * src/Makefile.in: Same.
1301         * po/Makefile.in: Same.
1302         
1303         * config/abi/pre/gnu.ver: Export parallel list bits.
1304
1305         * docs/html/parallel_mode.html: New.
1306         * docs/html/documentation.html: Add link.
1307         * docs/doxygen/user.cfg.in: Adjust for new files and directory.
1308         * docs/doxygen/doxygroups.cc: Adjust namespace markup.
1309
1310         * include/debug/set.h: Adjust for _GLIBCXX_STD_D or _P change.
1311         * include/debug/bitset: Same.
1312         * include/debug/multiset.h: Same.
1313         * include/debug/vector: Same.
1314         * include/debug/map.h: Same.
1315         * include/debug/deque: Same.
1316         * include/debug/list: Same.
1317         * include/debug/debug.h: Same.
1318         * include/debug/multimap.h: Same.
1319         * include/std/algorithm: Same.
1320         * include/std/numeric: Same.
1321         * include/std/bitset: Same.
1322         * include/std/string: Same.
1323         * include/ext/hash_map: Same.
1324         * include/ext/hash_set: Same.
1325         * include/bits/stl_list.h: Same.
1326         * include/bits/stl_map.h: Same.
1327         * include/bits/stl_algobase.h: Same.
1328         * include/bits/stl_set.h: Same.
1329         * include/bits/stl_multimap.h: Same.
1330         * include/bits/stl_vector.h: Same.
1331         * include/bits/stl_numeric.h: Same.
1332         * include/bits/stl_deque.h: Same.
1333         * include/bits/stl_multiset.h: Same.
1334         * include/bits/char_traits.h: Same.
1335         * include/bits/stl_algo.h: Same.
1336         * include/bits/c++config: Same.
1337         * include/bits/vector.tcc: Same.
1338         * include/bits/deque.tcc: Same.
1339         * include/bits/stl_bvector.h: Same.
1340         * include/bits/list.tcc: Same.
1341         * src/list.cc: Same.
1342         * src/parallel_list.cc: New.
1343
1344         * testsuite/lib/libstdc++.exp (check_v3_target_parallel_mode): New.
1345         * testsuite/lib/dg-options.exp (dg-require-parallel-mode): New.
1346         * scripts/testsuite_flags.in (--cxxparallelflags): New.
1347         * scripts/check_performance: Adjust.
1348         * testsuite/25_algorithms/headers/parallel_algorithm.cc: New.
1349         * testsuite/25_algorithms/headers/algorithm_parallel_mode.cc: New.
1350         * testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc: New.
1351         * testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc: New.
1352         * testsuite/26_numerics/headers/numeric/parallel_numeric.cc: New.
1353         * testsuite/26_numerics/headers/numeric/numeric_parallel_mode.cc: New.
1354         * testsuite/26_numerics/headers/numeric/
1355         parallel_numeric_mixed1.cc: New.
1356         * testsuite/26_numerics/headers/numeric/
1357         parallel_numeric_mixed2.cc: New.
1358         
1359 2007-09-11  Daniel Jacobowitz  <dan@codesourcery.com>
1360
1361         * testsuite/lib/libstdc++.exp (libstdc++_init): Revert part of
1362         2007-09-06 change.
1363
1364 2007-09-09  Roger Sayle  <roger@eyesopen.com>
1365
1366         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ECANCELED for cygwin.
1367         * configure: Regenerate.
1368         * config/os/generic/error_constants.h: Guard.
1369         * testsuite/19_diagnostics/headers/system_error/
1370         types_std_c++0x.cc: Same.
1371
1372 2007-09-09  Benjamin Kosnik  <bkoz@redhat.com>
1373         
1374         * testsuite/25_algorithms/binary_search.cc: Move...
1375         * testsuite/25_algorithms/binary_search/2.cc: ...here.
1376
1377         * testsuite/25_algorithms/sort.cc: Move...      
1378         * testsuite/25_algorithms/sort/1.cc: ...here.
1379         * testsuite/25_algorithms/partial_sort_copy/2.cc: ...here.
1380         * testsuite/25_algorithms/nth_element/3.cc: ...here.
1381         * testsuite/25_algorithms/partial_sort/2.cc: ...here.
1382         * testsuite/25_algorithms/stable_sort/2.cc: ...here.
1383
1384         * testsuite/25_algorithms/min_max.cc: Move...
1385         * testsuite/25_algorithms/min/1.cc: ...here.
1386         * testsuite/25_algorithms/min/2.cc: ...here.
1387         * testsuite/25_algorithms/max/1.cc: ...here.
1388         * testsuite/25_algorithms/max/2.cc: ...here.
1389
1390 2007-09-09  Joseph Myers  <joseph@codesourcery.com>
1391
1392         * testsuite/lib/libstdc++.exp (v3-build-support): Specify output
1393         file for preprocessing.  Use remote_exec to call ar and ranlib.
1394
1395 2007-09-08  Benjamin Kosnik  <bkoz@redhat.com>
1396
1397         * include/bits/functional_hash.h: Add ext/numeric_traits.h.
1398         * include/tr1/functional_hash.h Same.
1399         * include/tr1/functional: Remove string, ext/type_traits.h includes.
1400         * include/tr1_impl/functional_hash.h: Move string, wstring
1401         definitions for std::<hash>::operator into separate file.
1402         * include/std/functional
1403         * src/hash.cc: New, move definitions here.
1404         * src/hash_c++0x.cc: Same.
1405         * src/Makefile.am: Add new source files.
1406         * configure: Regenerate.
1407         * Makefile.in: Same.
1408         * src/Makefile.in: Same.
1409         * po/Makefile.in: Same.
1410         * libmath/Makefile.in: Same.
1411         * libsupc++/Makefile.in: Same.
1412         * testsuite/Makefile.in: Same.
1413         * config/abi/pre/gnu.ver: Add symbols.
1414         * config/abi/pre/gnu-versioned-namespace.ver: Same, fix.
1415         
1416 2007-09-07  Benjamin Kosnik  <bkoz@redhat.com>
1417
1418         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc:
1419         Correct line number.
1420
1421 2007-09-07  Danny Smith  <dannysmith@users.sourceforge.net>
1422
1423         PR libstdc++/33203
1424         * configure.host (error_constants_dir):  New variable,
1425         defaulting to os/generic.
1426         ( mingw32*): Overide default.
1427         * configure.ac (ERROR_CONSTANTS_SRCDIR): New.
1428         * configure: Regenerate.
1429         * include/Makefile.am (host_headers): Add
1430         $(ERROR_CONSTANTS_SRCDIR)/error_constants.h .
1431         * include/Makefile.in: Regenerate.
1432         * include/std/system_error (enum posix_errno): Remove.
1433         Include <bits/error_constants.h> instead.
1434         * config/os/mingw32/error_constants.h: New.
1435         * config/os/generic/error_constants.h: New.
1436
1437 2007-09-06  Benjamin Kosnik  <bkoz@redhat.com>
1438
1439         * testsuite/lib/libstdc++.exp: Check CXXFLAGS.
1440         * scripts/testsuite_flags.in: CXXFLAGS_default, matching dejagnu.
1441
1442         * include/std/ostream: Spacing tweak.
1443         * include/ext/hashtable.h: Use <algorithm>.
1444         * include/ext/slist: Same.
1445         * include/ext/rope: Same.
1446         * include/bits/stl_function.h: Format.
1447         * include/tr1_impl/array: Remove section number in doxygen markup.
1448         * src/list.cc: Comment tweak.   
1449         
1450         * docs/doxygen/user.cfg.in: Update for include/tr1_impl.
1451         
1452         * testsuite/25_algorithms/search_n/iterator.cc: Add using declaration.
1453         * testsuite/25_algorithms/nth_element/1.cc:  Same.
1454         * testsuite/21_strings/char_traits/requirements/short/1.cc: Use
1455         char_type typedef to the underlying character type.     
1456         * testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc:
1457         Remove -ansi -pedantic-errors.
1458         * testsuite/21_strings/char_traits/requirements/char/typedefs.cc: Same.
1459         * testsuite/tr1/6_containers/headers/functional/synopsis.cc:
1460         Remove specializations.
1461         
1462 2007-09-06  Paolo Carlini  <pcarlini@suse.de>
1463
1464         * include/bits/stl_vector.h (_Vector_base<>::_M_allocate):
1465         Do not call _M_impl.allocate when __n == 0.
1466         * testsuite/23_containers/vector/zero_sized_allocations.cc: New.
1467
1468 2007-09-06  Benjamin Kosnik  <bkoz@redhat.com>
1469         
1470         PR libstdc++/29367
1471         * include/ext/pb_ds/detail/map_debug_base.hpp: From this..
1472         * include/ext/pb_ds/detail/debug_map_base.hpp: ...to this.
1473         Rename map_debug_base to debug_map_base, add std::pair output
1474         extractors, change duplicate map_debug_base typedef in containers
1475         to debug_base. Use m_store_extra_indicator for m_store_hash_indicator.
1476         * include/ext/pb_ds/*: Likewise.
1477         * include/Makefile.am: Same.
1478         * include/Makefile.in: Regenerate.
1479         
1480 2007-09-06  Matthias Klose  <doko@debian.org>
1481
1482         * testsuite/27_io/headers/cstdlib: Remove empty directory.
1483
1484 2007-09-05  Roger Sayle  <roger@eyesopen.com>
1485
1486         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EBADMSG for darwin.
1487         * configure: Regenerate.
1488         * include/std/system_error: Guard.
1489         * testsuite/19_diagnostics/headers/system_error/
1490         types_std_c++0x.cc: Same.
1491         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
1492         line numbers.
1493
1494 2007-09-03  Paolo Carlini  <pcarlini@suse.de>
1495
1496         PR libstdc++/33293
1497         * include/bits/stl_numeric.h (accumulate, inner_product):
1498         Add inline function-specifier.
1499
1500 2007-08-31  Douglas Gregor  <doug.gregor@gmail.com>
1501
1502         * testsuite/abi/demangle/cxx0x/rref.cc: New.
1503
1504 2007-08-29  Benjamin Kosnik  <bkoz@redhat.com>
1505
1506         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENODATA, ENOSR,
1507         ENOSTR, ETIME for freebsd.      
1508         * configure: Regenerate.
1509         * include/std/system_error: Guard.      
1510         * testsuite/19_diagnostics/headers/system_error/
1511         types_std_c++0x.cc: Same.
1512         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
1513         line numbers.
1514
1515 2007-08-28  Paolo Carlini  <pcarlini@suse.de>
1516
1517         PR libstdc++/33128
1518         * include/tr1_impl/random (uniform_int<>::_M_call): Deal with
1519         __urng() returning negative values.
1520         * testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
1521         New.
1522
1523 2007-08-24  Benjamin Kosnik  <bkoz@redhat.com>
1524
1525         * acinclude.m4: Fix duplicate variable names.
1526         * configure: Regenerate.
1527
1528 2007-08-24  Benjamin Kosnik  <bkoz@redhat.com>
1529
1530         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENOLINK, EPROTO
1531         for netbsd.
1532         * configure: Regenerate.
1533         * include/std/system_error: Guard.      
1534         * testsuite/19_diagnostics/headers/system_error/
1535         types_std_c++0x.cc: Same.
1536         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
1537         line numbers.
1538
1539 2007-08-23  Benjamin Kosnik  <bkoz@redhat.com>
1540
1541         * include/std/system_error: New file.
1542         * src/system_error.cc: New file.
1543         * src/Makefile.am (sources): Add.
1544         * src/Makefile.in: Regenerate.  
1545         * include/Makefile.am (std_headers): Add system_error.
1546         * include/Makefile.in: Regenerate.
1547         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): New.
1548         * configure.ac: Call it.
1549         * config.h.in: Regenerate.
1550         * include/bits/functional_hash.h: Add hash<error_code>.
1551         * include/std/ostream: Add inserters for error_code.
1552         
1553         * docs/doxygen/user.cfg.in: Add system_error.
1554
1555         * config/abi/pre/gnu.ver(GLIBCXX_3.4.10): Add new symbols.
1556
1557         * testsuite/19_diagnostics/error_code: New.
1558         * testsuite/19_diagnostics/error_code/cons: Same.
1559         * testsuite/19_diagnostics/error_code/cons/1.cc: Same.
1560         * testsuite/19_diagnostics/error_code/operators: Same.
1561         * testsuite/19_diagnostics/error_code/operators/bool.cc: Same.
1562         * testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Same.
1563         * testsuite/19_diagnostics/error_code/operators/equal.cc: Same.
1564         * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Same.
1565         * testsuite/19_diagnostics/error_category: Same.
1566         * testsuite/19_diagnostics/error_category/cons: Same.
1567         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Same.
1568         * testsuite/19_diagnostics/error_category/cons/default.cc: Same.
1569         * testsuite/19_diagnostics/error_category/operators: Same.
1570         * testsuite/19_diagnostics/error_category/operators/equal.cc: Same.
1571         * testsuite/19_diagnostics/error_category/operators/not_equal.cc: Same.
1572         * testsuite/19_diagnostics/headers/system_error: Same.
1573         * testsuite/19_diagnostics/headers/system_error/
1574         types_std_c++0x.cc: Same.
1575         * testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc: Same.
1576         * testsuite/19_diagnostics/system_error: Same.
1577         * testsuite/19_diagnostics/system_error/
1578         cons_virtual_derivation.cc: Same.
1579         * testsuite/19_diagnostics/system_error/cons-1.cc: Same.
1580         * testsuite/19_diagnostics/system_error/what-1.cc: Same.
1581         * testsuite/19_diagnostics/system_error/what-2.cc: Same.
1582         * testsuite/19_diagnostics/system_error/what-big.cc: Same.
1583         * testsuite/19_diagnostics/system_error/what-3.cc: Same.
1584         * testsuite/19_diagnostics/system_error/what-4.cc: Same.
1585         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1586         error_code.cc: Same.
1587         * testsuite/27_io/basic_ostream/inserters_other/char/
1588         error_code.cc: Same.
1589         * testsuite/tr1/6_containers/hash/operators: New.
1590         * testsuite/tr1/6_containers/hash/operators/size_t.cc: Same.
1591         
1592         * testsuite/23_containers/hash: Move...
1593         * testsuite/20_util/hash: ... here.
1594         * testsuite/20_util/hash/operators: New.
1595         * testsuite/20_util/hash/operators/size_t.cc: New.
1596
1597         * testsuite/20_util/function_objects/bad_function_call: Move...
1598         * testsuite/20_util/bad_function_call: ...here.
1599         
1600 2007-08-21  Benjamin Kosnik  <bkoz@montsouris.artheist.org>
1601
1602         * include/Makefile.am (install-data-local): Remove pch-install rules.
1603         (host_headers): Add stdc++.h, stdtr1c++.h, extc++.h.
1604         * include/Makefile.in: Regenerate.
1605         * config.h.in: Same.
1606
1607         * scripts/check_compile: Remove space between outputs.  
1608         * include/ext/throw_allocator.h: Correct doxygen markup.        
1609         * include/bits/char_traits.h: Correct spacing.
1610         * include/bits/stl_function.h: Same, for 80 column.
1611         * include/std/valarray: Same.
1612         * testsuite/util/testsuite_iterators.h: Same.   
1613         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Format.
1614         
1615 2007-08-17  Daniel Jacobowitz  <dan@codesourcery.com>
1616
1617         PR testsuite/31884
1618         * testsuite/ext/pb_ds/example/priority_queue_dijkstra.cc (main): Do
1619         not access deleted nodes.
1620
1621         * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc,
1622         testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc,
1623         testsuite/27_io/basic_filebuf/open/char/4.cc,
1624         testsuite/27_io/objects/char/9.cc: Use dg-require-fileio.
1625         * testsuite/ext/forced_exception_error/cons_virtual_derivation.cc,
1626         testsuite/ext/pb_ds/regression/hash_data_map_rand.cc,
1627         testsuite/ext/pb_ds/regression/trie_data_map_rand.cc,
1628         testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc,
1629         testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc,
1630         testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc,
1631         testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc,
1632         testsuite/ext/pb_ds/regression/priority_queue_rand.cc,
1633         testsuite/ext/pb_ds/regression/tree_data_map_rand.cc,
1634         testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc,
1635         testsuite/ext/throw_allocator/deallocate_global.cc,
1636         testsuite/ext/throw_allocator/check_delete.cc,
1637         testsuite/ext/throw_allocator/check_allocate_max_size.cc,
1638         testsuite/ext/throw_allocator/check_deallocate_null.cc,
1639         testsuite/ext/throw_allocator/check_new.cc,
1640         testsuite/ext/throw_allocator/deallocate_local.cc,
1641         testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
1642         cons/gen1.cc,
1643         testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/cons/
1644         gen1.cc,
1645         testsuite/tr1/5_numerical_facilities/random/linear_congruential/cons/
1646         gen1.cc,
1647         testsuite/tr1/5_numerical_facilities/random/mersenne_twister/cons/
1648         gen1.cc,
1649         testsuite/23_containers/list/modifiers/insert/25288.cc: Use
1650         dg-require-time.
1651
1652 2007-08-17  Paolo Carlini  <pcarlini@suse.de>
1653
1654         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
1655         dg-error lines.
1656         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Ditto.
1657
1658 2007-08-17  Chris Fairles  <chris.fairles@gmail.com>
1659
1660         PR libstdc++/33098
1661         * include/std/type_traits (__is_convertible_helper):
1662         Use add_lvalue_reference.
1663
1664 2007-08-17  Johannes Willkomm  <willkomm@sc.rwth-aachen.de>
1665
1666         PR libstdc++/33084
1667         * include/std/valarray (operator _Op(const _Tp&,
1668         const valarray<>&)): Fix typo.
1669         * testsuite/26_numerics/numeric_arrays/valarray/33084.cc: New.
1670
1671 2007-08-07  Jim Blandy  <jimb@codesourcery.com>
1672
1673         * src/Makefile.am (libstdc++-symbol.ver): Make
1674         sure the build tree copy of libstdc++-symbol.ver is writeable.
1675         * src/Makefile.in: Regenerated.
1676
1677 2007-08-02  Paolo Carlini  <pcarlini@suse.de>
1678
1679         DR 660, [Ready] in Toronto.
1680         * include/bits/stl_function.h (bit_and, bit_or, bit_xor): Add.
1681         * testsuite/20_util/function_objects/dr660.cc: New.
1682         * docs/html/ext/howto.html: Add an entry for DR 660, update.
1683
1684         * docs/html/ext/lwg-closed.html, docs/html/ext/lwg-active.html,
1685         docs/html/ext/lwg-defects.html: Import Revision 49.
1686
1687 2007-07-30  Paolo Carlini  <pcarlini@suse.de>
1688
1689         PR libstdc++/32908
1690         * include/bits/stl_algobase.h (struct __lc_rai): New.
1691         (lexicographical_compare(_II1, _II1, _II2, _II2),
1692         lexicographical_compare(_II1, _II1, _II2, _II2, _Compare)): Use it.
1693         * testsuite/performance/25_algorithms/lexicographical_compare.cc: New.
1694
1695 2007-07-27  Paolo Carlini  <pcarlini@suse.de>
1696
1697         PR libstdc++/32907
1698         * include/bits/basic_string.h (operator==(const basic_string<_CharT>&,
1699         const basic_string<_CharT>&)): Add.
1700         (operator!=): Forward to operator==.
1701         * include/ext/vstring.h(operator==(const __versa_string<_CharT,
1702         std::char_traits<_CharT>, std::allocator<_CharT>, _Base>&,
1703         const __versa_string<_CharT, std::char_traits<_CharT>,
1704         std::allocator<_CharT>, _Base>&)): Add.
1705         (operator!=): Forward to operator==.
1706
1707         * include/ext/sso_string_base.h (_M_compare): Remove.
1708
1709 2007-07-25  Stephen M. Webb  <stephenw@xandros.com>
1710
1711         Fixed abi_check for missing symbol size changes.
1712         * testsuite/util/testsuite_abi.cc: Changed local variable name to
1713         prevent member variable hiding.
1714
1715 2007-07-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1716
1717         PR libstdc++/31836
1718         * config/locale/generic/c_locale.cc (__convert_to_v): Don't use
1719         strtold if _GLIBCXX_HAVE_BROKEN_STRTOLD is defined.
1720         * config/os/hpux/os_defines.h (_GLIBCXX_HAVE_BROKEN_STRTOLD): Define
1721         if __hppa__ is defined.
1722
1723 2007-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1724
1725         PR bootstrap/3456
1726         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Enable on
1727         mips-sgi-irix6*.
1728         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
1729         * testsuite/thread/18185.cc: Likewise.
1730         * testsuite/thread/pthread1.cc: Likewise.
1731         * testsuite/thread/pthread2.cc: Likewise.
1732         * testsuite/thread/pthread3.cc: Likewise.
1733         * testsuite/thread/pthread4.cc: Likewise.
1734         * testsuite/thread/pthread5.cc: Likewise.
1735         * testsuite/thread/pthread6.cc: Likewise.
1736         * testsuite/thread/pthread7-rope.cc: Likewise.
1737         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
1738         default_weaktoshared.cc: Likewise.
1739         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
1740         mutex_weaktoshared.cc: Likewise.
1741
1742 2007-07-16  Danny Smith  <dannysmith@users.sourceforge.net>
1743
1744         * config/os/mingw32/ctype_base.h: Use the generic libstdc++ masks
1745         rather than MSVCRT defines.
1746         * config/os/mingw32/ctype_noninline.h (classic_table): Construct
1747         and return a static classic table based on generic libstdc++ masks.
1748
1749 2007-07-12  Douglas Gregor  <doug.gregor@gmail.com>
1750
1751         * testsuite/tr1/3_function_objects/bind/all_bound.cc: Disambiguate
1752         uses of TR1/C++0x facilities.
1753         * testsuite/tr1/3_function_objects/bind/nested.cc: Ditto.
1754         * testsuite/tr1/3_function_objects/bind/placeholders.cc: Ditto.
1755         * testsuite/tr1/6_containers/unordered_multimap/requirements/
1756         explicit_instantiation.cc: Ditto. 
1757         * testsuite/tr1/6_containers/unordered_multimap/swap/1.cc: Ditto.
1758         * testsuite/tr1/6_containers/unordered_multimap/swap/2.cc: Ditto.
1759         * testsuite/tr1/6_containers/unordered_set/requirements/
1760         explicit_instantiation.cc: Ditto.
1761         * testsuite/tr1/6_containers/unordered_set/swap/1.cc: Ditto.
1762         * testsuite/tr1/6_containers/unordered_set/swap/2.cc: Ditto.
1763         * testsuite/tr1/6_containers/utility/pair.cc: Ditto.
1764         * testsuite/tr1/6_containers/unordered_map/requirements/
1765         explicit_instantiation.cc: Ditto. 
1766         * testsuite/tr1/6_containers/unordered_map/24064.cc: Ditto.
1767         * testsuite/tr1/6_containers/unordered_map/swap/1.cc: Ditto.
1768         * testsuite/tr1/6_containers/unordered_map/swap/2.cc: Ditto.
1769         * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Ditto.
1770         * testsuite/tr1/6_containers/tuple/cons/constructor.cc: Ditto.
1771         * testsuite/tr1/6_containers/tuple/cons/assignment.cc: Ditto.
1772         * testsuite/tr1/6_containers/tuple/tuple_element.cc: Ditto.
1773         * testsuite/tr1/6_containers/tuple/tuple_size.cc: Ditto.
1774         * testsuite/tr1/6_containers/tuple/comparison_operators/
1775         comparisons.cc: Ditto. 
1776         * testsuite/tr1/6_containers/tuple/element_access/get.cc: Ditto.
1777         * testsuite/tr1/6_containers/tuple/creation_functions/23978.cc: Ditto.
1778         * testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: Ditto.
1779         * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
1780         Ditto.
1781         * testsuite/tr1/6_containers/unordered_multiset/requirements/
1782         explicit_instantiation.cc: Ditto.
1783         * testsuite/tr1/6_containers/unordered_multiset/swap/1.cc: Ditto.
1784         * testsuite/tr1/6_containers/unordered_multiset/swap/2.cc: Ditto.
1785
1786 2007-07-10  Bob Wilson  <bob.wilson@acm.org>
1787         
1788         * configure.ac: Check if $atomicity_dir is cpu/generic/atomicity_mutex
1789         instead of the non-existent cpu/generic/atomic_mutex.
1790         * configure: Regenerate.
1791         
1792 2007-07-10  Paolo Carlini  <pcarlini@suse.de>
1793
1794         * include/std/utility (identity, move, forward): Add.
1795         * testsuite/20_util/move/requirements/explicit_instantiation.cc: New.
1796         * testsuite/20_util/move/1.cc: New.
1797         * testsuite/20_util/identity/value.cc: New.
1798         * testsuite/20_util/identity/requirements/typedefs.cc: New.
1799         * testsuite/20_util/identity/requirements/explicit_instantiation.cc:
1800         New.
1801         * testsuite/20_util/forward/requirements/explicit_instantiation.cc:
1802         New.
1803         * testsuite/20_util/forward/1.cc: New.
1804         * testsuite/20_util/forward/1_neg.cc: New.
1805         
1806 2007-07-09  Paolo Carlini  <pcarlini@suse.de>
1807
1808         * testsuite/27_io/ios_base/failure/what-1.cc: Include <stdexcept>.
1809
1810 2007-07-09  Jim Xochellis  <jimxoch@yahoo.gr>
1811             Paolo Carlini  <pcarlini@suse.de>
1812
1813         * include/bits/stl_algo.h (search(_ForwardIterator1,
1814         _ForwardIterator1, _ForwardIterator2, _ForwardIterator2)): Tidy.
1815         (search(_ForwardIterator1, _ForwardIterator1, _ForwardIterator2,
1816         _ForwardIterator2, _BinaryPredicate)): Likewise.
1817
1818 2007-07-06  Hans-Peter Nilsson  <hp@axis.com>
1819
1820         * testsuite/lib/libstdc++.exp (v3-build_support): Use env(AR)
1821         and env(RANLIB), not env(AR_FOR_TARGET) and env(RANLIB_FOR_TARGET).
1822
1823 2007-07-05  Joerg Richter  <joerg.richter@pdv-fs.de>
1824
1825         PR libstdc++/31957
1826         * include/Makefile.am: Work around an AIX sed oddity.
1827         * include/Makefile.in: Regenerate.
1828         
1829 2007-07-04  Jim Xochellis  <jimxoch@yahoo.gr>
1830
1831         * include/bits/stl_algo.h (search(_ForwardIterator1,
1832         _ForwardIterator1, _ForwardIterator2, _ForwardIterator2)): Simplify
1833         general case loop to a for(;;).
1834         (search(_ForwardIterator1, _ForwardIterator1, _ForwardIterator2,
1835         _ForwardIterator2, _BinaryPredicate)): Likewise; remove redundant
1836         inner loop.
1837         
1838 2007-07-03  Paolo Carlini  <pcarlini@suse.de>
1839
1840         PR libstdc++/31518
1841         * include/debug/formatter.h (_Error_formatter::_M_get_max_length): New.
1842         (_Error_formatter::_Error_formatter): Use it.
1843         * src/debug.cc: Define.
1844         (_Error_formatter::_M_error): Tweak.
1845         * configure.ac: Adjust version to 6:10:0.
1846         * config/abi/pre/gnu.ver: Export _Error_formatter::_M_get_max_length
1847         at GLIBCXX_3.4.10.
1848         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.10.
1849         * docs/html/debug.html: Document.
1850         * configure: Regenerate.
1851
1852 2007-07-02  Douglas Gregor  <doug.gregor@gmail.com>
1853
1854         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1855         Tweak line numbers.
1856         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1857         Ditto.
1858         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
1859         Don't try to create an unsigned wchar_t.
1860         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1861         Don't try to create an unsigned wchar_t.
1862         * testsuite/util/testsuite_hooks.h: Remove a stray semicolon.
1863
1864 2007-07-01  Douglas Gregor  <doug.gregor@gmail.com>
1865
1866         * include/std/type_traits (__make_unsigned): Remove invalid
1867         wchar_t specialization.
1868         (__make_signed): Remove invalid wchar_t specialization.
1869         
1870 2007-06-29  Douglas Gregor  <doug.gregor@gmail.com>
1871
1872         * testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc: Force
1873         C++98 mode.  
1874         * testsuite/18_support/headers/cstdint/std_c++0x_neg.cc: Ditto.
1875         * testsuite/20_util/headers/type_traits/std_c++0x_neg.cc: Ditto.
1876         * testsuite/23_containers/headers/array/std_c++0x_neg.cc: Ditto.
1877         * testsuite/23_containers/headers/tuple/std_c++0x_neg.cc: Ditto.
1878         * testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc:
1879         Ditto. 
1880         * testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc:
1881         Ditto. 
1882         * testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc: Ditto.
1883         * testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc: Ditto.
1884         * testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc: Ditto.
1885         * testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Ditto.
1886         * testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Ditto.
1887         * testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Ditto.
1888
1889 2007-06-28  Paolo Carlini  <pcarlini@suse.de>
1890
1891         PR libstdc++/32509
1892         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Carry out the checks
1893         involving the de_DE locale only if an auto locale config is
1894         used for a target suitable for the gnu locale model.
1895         * docs/html/install.html: Update.
1896         * configure: Regenerated.
1897
1898 2007-06-26  Benjamin Kosnik  <bkoz@redhat.com>
1899
1900         * testsuite/util/testsuite_api.h: New.
1901         * testsuite/27_io/ios_base/failure: Add.
1902         * testsuite/27_io/ios_base/failure/cons_virtual_derivation.cc: New.
1903         * testsuite/27_io/ios_base/failure/what-1.cc: Same.
1904         * testsuite/27_io/ios_base/failure/what-2.cc: Same.
1905         * testsuite/27_io/ios_base/failure/what-big.cc: Same.
1906         * testsuite/27_io/ios_base/failure/what-3.cc: Same.
1907         * testsuite/19_diagnostics/logic_error/
1908         cons_virtual_derivation.cc: Same.
1909         * testsuite/19_diagnostics/runtime_error/
1910         cons_virtual_derivation.cc: Same.
1911         * testsuite/18_support/bad_alloc/cons_virtual_derivation.cc: Same.
1912         * testsuite/18_support/bad_cast/cons_virtual_derivation.cc: Same.
1913         * testsuite/18_support/bad_exception/cons_virtual_derivation.cc: Same.
1914         * testsuite/18_support/bad_typeid/cons_virtual_derivation.cc: Same.
1915         * testsuite/ext/concurrence_lock_error: New.
1916         * testsuite/ext/concurrence_lock_error/
1917         cons_virtual_derivation.cc: Same.
1918         * testsuite/ext/forced_exception_error: New.
1919         * testsuite/ext/forced_exception_error/
1920         cons_virtual_derivation.cc: Same.
1921         * testsuite/ext/concurrence_unlock_error: New.
1922         * testsuite/ext/concurrence_unlock_error/
1923         cons_virtual_derivation.cc: Same.
1924         * testsuite/20_util/function_objects/bad_function_call: New.
1925         * testsuite/20_util/function_objects/bad_function_call/
1926         cons_virtual_derivation.cc: Same.
1927         
1928 2007-06-26  Benjamin Kosnik  <bkoz@redhat.com>  
1929
1930         * include/ext/throw_allocator.h: Fixes for -fno-exceptions.
1931         * testsuite/util/testsuite_shared.cc: Same.
1932         * testsuite/util/io/illegal_input_error.hpp: Same.
1933         * testsuite/util/io/verified_cmd_line_input.cc: Same.
1934
1935         * libsupc++/typeinfo (type_info): Correct comment formatting,
1936         clarify member access and public interface.
1937         * libsupc++/exception: Less compressed comments.
1938         * libsupc++/new: Same.
1939         
1940 2007-06-18  Paolo Carlini  <pcarlini@suse.de>
1941
1942         * include/bits/stl_list.h: Rename guard macro consistently with
1943         file name.
1944         * include/bits/stl_algobase.h: Likewise.
1945         * include/bits/stl_map.h: Likewise.
1946         * include/bits/stl_queue.h: Likewise.
1947         * include/bits/stl_set.h: Likewise.
1948         * include/bits/stl_stack.h: Likewise.
1949         * include/bits/stl_iterator_base_types.h: Likewise.
1950         * include/bits/stl_multimap.h: Likewise.
1951         * include/bits/stl_pair.h: Likewise.
1952         * include/bits/stl_vector.h: Likewise.
1953         * include/bits/stl_deque.h: Likewise.
1954         * include/bits/stl_multiset.h: Likewise.
1955         * include/bits/stl_iterator_base_funcs.h: Likewise.
1956         * include/bits/stl_algo.h: Likewise.
1957         * include/bits/stl_iterator.h: Likewise.
1958         * include/bits/stl_tempbuf.h: Likewise.
1959         * include/bits/stl_bvector.h: Likewise.
1960         * include/bits/stl_function.h: Likewise.
1961         * include/bits/stl_tree.h: Likewise.
1962
1963 2007-06-17  Nathan Sidwell  <nathan@codesourcery.com>
1964
1965         * config/cpu/m68k/atomicity.h: Use __mcfisaa__, __mcfisaaplus__,
1966         __mcfisab__ & __mcfisac__ instead of obsolete cpu #defines.
1967
1968 2007-06-13  Richard Earnshaw  <rearnsha@arm.com>
1969
1970         * libsupc++/eh_arm.cc (__cxa_type_match): Handle foreign
1971         exceptions.
1972         * libsubpc++/eh_personality.cc: Don't try to set up foreign or
1973         forced unwind types here when using the ARM EABI unwinder.
1974
1975 2007-06-13  Paolo Carlini  <pcarlini@suse.de>
1976
1977         * include/c_global/cmath: Tweak includes.
1978         * include/std/memory: Likewise.
1979         * include/std/complex: Likewise.
1980         * include/tr1/memory: Likewise.
1981         * include/tr1/complex: Likewise.
1982         * include/tr1/cmath: Likewise; do not wrap special functions
1983         in #ifndef __GXX_EXPERIMENTAL_CXX0X__.
1984
1985 2007-06-10  Benjamin Kosnik  <bkoz@redhat.com>
1986
1987         * testsuite/util/testsuite_performance.h: Add cstring include for
1988         memset.
1989
1990 2007-06-08  Paolo Carlini  <pcarlini@suse.de>
1991
1992         * docs/html/install.html: Adjust consistently with libstdc++/31717.
1993
1994 2007-06-08  Francesco Palagi  <palagi@arcetri.astro.it>
1995
1996         * include/std/fstream: Add Table 92 in comment.
1997
1998 2007-06-06  Paolo Carlini  <pcarlini@suse.de>
1999
2000         PR libstdc++/32233
2001         * include/bits/stl_vector.h (_M_fill_initialize): Fix return type.
2002         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2003         Adjust dg-error line.
2004         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2005         Likewise.
2006
2007 2007-06-06  Benjamin Kosnik  <bkoz@redhat.com>
2008             Frank Mori Hess  <frank.hess@nist.gov>
2009         
2010         * docs/html/debug.html: Correct link.
2011
2012 2007-06-02  Paolo Carlini  <pcarlini@suse.de>
2013
2014         * include/tr1_impl/type_traits (is_reference, add_reference,
2015         remove_reference): Remove.
2016         * include/tr1/type_traits (is_reference, add_reference,
2017         remove_reference): Add.
2018         * include/std/type_traits (is_lvalue_reference, is_rvalue_reference,
2019         is_reference, remove_reference, add_lvalue_reference,
2020         add_rvalue_reference): Add.
2021         * include/tr1_impl/boost_shared_ptr.h (operator*): Adjust.
2022         * testsuite/20_util/add_lvalue_reference/requirements/
2023         explicit_instantiation.cc: New.
2024         * testsuite/20_util/add_lvalue_reference/value.cc: Likewise.
2025         * testsuite/20_util/add_rvalue_reference/requirements/
2026         explicit_instantiation.cc: Likewise.
2027         * testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
2028         * testsuite/20_util/is_lvalue_reference/requirements/
2029         explicit_instantiation.cc: Likewise.
2030         * testsuite/20_util/is_lvalue_reference/requirements/
2031         typedefs.cc: Likewise.
2032         * testsuite/20_util/is_lvalue_reference/value.cc: Likewise.
2033         * testsuite/20_util/is_rvalue_reference/requirements/
2034         explicit_instantiation.cc: Likewise.
2035         * testsuite/20_util/is_rvalue_reference/requirements/
2036         typedefs.cc: Likewise.
2037         * testsuite/20_util/is_rvalue_reference/value.cc: Likewise.
2038         * testsuite/20_util/is_reference/requirements/
2039         explicit_instantiation.cc: Likewise.
2040         * testsuite/20_util/is_reference/requirements/typedefs.cc: Likewise.
2041         * testsuite/20_util/is_reference/value.cc: Likewise.
2042         * testsuite/20_util/remove_reference/requirements/
2043         explicit_instantiation.cc: New.
2044         * testsuite/20_util/remove_reference/value.cc: Likewise.
2045
2046         * testsuite/tr1/4_metaprogramming/add_const/requirements/
2047         typedefs.cc: Move...
2048         * testsuite/tr1/4_metaprogramming/add_const/value.cc: ... here.
2049         * testsuite/tr1/4_metaprogramming/add_cv/requirements/
2050         typedefs.cc: Move...
2051         * testsuite/tr1/4_metaprogramming/add_cv/value.cc: ... here.
2052         * testsuite/tr1/4_metaprogramming/add_pointer/requirements/
2053         typedefs.cc: Move...
2054         * testsuite/tr1/4_metaprogramming/add_pointer/value.cc: ... here.
2055         * testsuite/tr1/4_metaprogramming/add_reference/requirements/
2056         typedefs.cc: Move...
2057         * testsuite/tr1/4_metaprogramming/add_reference/value.cc: ... here.
2058         * testsuite/tr1/4_metaprogramming/add_volatile/requirements/
2059         typedefs.cc: Move...
2060         * testsuite/tr1/4_metaprogramming/add_volatile/value.cc: ... here.
2061         * testsuite/tr1/4_metaprogramming/aligned_storage/requirements/
2062         typedefs.cc: Move...
2063         * testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: ... here.
2064
2065 2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
2066
2067         * configure: Regenerate.
2068
2069 2007-06-01  Benjamin Kosnik  <bkoz@redhat.com>
2070         
2071         * testsuite/19_diagnostics/logic_error/what-big.cc: New.
2072         * testsuite/19_diagnostics/logic_error/what-3.cc: Same.
2073         * testsuite/19_diagnostics/runtime_error/what-big.cc: Same.
2074         * testsuite/19_diagnostics/runtime_error/what-3.cc: Same.
2075
2076         * testsuite/18_support/14493.cc: Break into...
2077         * testsuite/18_support/exception/what.cc: ...this.
2078         * testsuite/18_support/bad_cast/what.cc: ...this.
2079         * testsuite/18_support/bad_alloc/what.cc: ...this.
2080         * testsuite/18_support/bad_typeid/what.cc: ...this.
2081         * testsuite/18_support/bad_exception/what.cc: ...this.
2082
2083         * testsuite/19_diagnostics/bad_exception/23591_thread-1.c: Move...
2084         * testsuite/18_support/bad_exception/23591_thread-1.c: ...here.
2085
2086         * testsuite/18_support/14026.cc: Move...
2087         * testsuite/18_support/uncaught_exception/14026.cc: ...here.
2088
2089 2007-06-01  Benjamin Kosnik  <bkoz@redhat.com>
2090
2091         * include/ext/throw_allocator.h (__throw_allocator::allocate):
2092         Throw bad_alloc for out of memory conditions.   
2093         * testsuite/ext/throw_allocator/deallocate_global.cc: New.
2094         * testsuite/ext/throw_allocator/check_delete.cc: Same.
2095         * testsuite/ext/throw_allocator/check_allocate_max_size.cc: Same.
2096         * testsuite/ext/throw_allocator/check_deallocate_null.cc: Same.
2097         * testsuite/ext/throw_allocator/explicit_instantiation.cc: Same.
2098         * testsuite/ext/throw_allocator/check_new.cc: Same.
2099         * testsuite/ext/throw_allocator/deallocate_local.cc: Same.
2100
2101 2007-05-31  Paolo Carlini  <pcarlini@suse.de>
2102
2103         PR libstdc++/31426
2104         * include/bits/c++config: Remove namespace association bits
2105         from tr1 to std.
2106
2107         * include/ext/type_traits.h (__promote, __promote2,
2108         __promote3, __promote4): Add.
2109
2110         * include/bits/hashtable.h: New.
2111         * include/bits/functional_hash.h: Likewise.
2112         * include/tr1/hashtable.h: Likewise.
2113
2114         * include/tr1_impl/random: New.
2115         * include/tr1_impl/cinttypes: Likewise.
2116         * include/tr1_impl/cstdlib: Likewise.
2117         * include/tr1_impl/unordered_map: Likewise.
2118         * include/tr1_impl/cstdio: Likewise.
2119         * include/tr1_impl/boost_shared_ptr.h: Likewise.
2120         * include/tr1_impl/cctype: Likewise.
2121         * include/tr1_impl/random.tcc: Likewise.
2122         * include/tr1_impl/tuple: Likewise.
2123         * include/tr1_impl/functional_hash.h: Likewise.
2124         * include/tr1_impl/hashtable: Likewise.
2125         * include/tr1_impl/cmath: Likewise.
2126         * include/tr1_impl/type_traitsfwd.h: Likewise.
2127         * include/tr1_impl/hashtable_policy.h: Likewise.
2128         * include/tr1_impl/cfenv: Likewise.
2129         * include/tr1_impl/unordered_set: Likewise.
2130         * include/tr1_impl/functional: Likewise.
2131         * include/tr1_impl/utility: Likewise.
2132         * include/tr1_impl/complex: Likewise.
2133         * include/tr1_impl/type_traits: Likewise.
2134         * include/tr1_impl/cwchar: Likewise.
2135         * include/tr1_impl/cstdint: Likewise.
2136         * include/tr1_impl/regex: Likewise.
2137         * include/tr1_impl/array: Likewise.
2138         * include/tr1_impl/cwctype: Likewise.
2139
2140         * include/tr1/type_traitsfwd.h: Remove.
2141         * include/tr1/boost_shared_ptr.h: Likewise.
2142         * include/tr1/common.h: Likewise.
2143         * include/tr1/hashtable: Likewise.
2144         * include/tr1/hashtable_policy.h: Likewise.
2145         * include/tr1/random.tcc: Likewise.
2146
2147         * include/c_global/cinttypes: Include tr1_impl/cinttypes.
2148         * include/c_global/cstdlib: Likewise for cstdlib.
2149         * include/c_global/cstdio: Likewise for cstdio.
2150         * include/c_global/cctype: Likewise for cctype.
2151         * include/c_global/cmath: Likewise for cmath.
2152         * include/c_global/cfenv: Likewise for cfenv.
2153         * include/c_global/cwchar: Likewise for cwchar.
2154         * include/c_global/cstdint: Likewise for cstdint.
2155         * include/c_global/cwctype: Likewise for cwctype.
2156         * include/tr1/cinttypes: Likewise for cinttypes.
2157         * include/tr1/cstdlib: Likewise for cstdlib.
2158         * include/tr1/cstdio: Likewise for cstdio.
2159         * include/tr1/cctype: Likewise for cctype.
2160         * include/tr1/cmath: Likewise for cmath.
2161         * include/tr1/cfenv: Likewise for cfenv.
2162         * include/tr1/cwchar: Likewise for cwchar.
2163         * include/tr1/cstdint: Likewise for cstdint.
2164         * include/tr1/cwctype: Likewise for cwctype.
2165         * include/tr1/functional_hash.h: Likewise for functional_hash.
2166
2167         * include/std/tuple: Include tr1_impl/tuple.
2168         * include/std/utility: Likewise for utility.
2169         * include/std/type_traits: Likewise for type_traits.
2170         (is_pod): Just forward to __is_pod.
2171         (has_trivial_default_constructor): Just forward to
2172         __has_trivial_constructor.
2173         (has_trivial_copy_constructor): Just forward to __has_trivial_copy.
2174         (has_trivial_assign): Just forward to __has_trivial_assign.
2175         (has_trivial_destructor): Just forward to __has_trivial_destructor.
2176         (has_nothrow_default_constructor): Just forward to
2177         __has_nothrow_constructor.
2178         (has_nothrow_copy_constructor): Just forward to __has_nothrow_copy.
2179         (has_nothrow_assign): Just forward to __has_nothrow_assign.
2180         (is_base_of): Just forward to __is_base_of.
2181         (is_signed, is_unsigned): Implement according to the C++0x
2182         specifications.
2183         * include/std/memory: Likewise for memory.
2184         * include/std/regex: Likewise for regex.
2185         * include/std/random: Likewise for random.
2186         * include/std/unordered_map: Likewise for unordered_map.
2187         * include/std/unordered_set: Likewise for unordered_set.
2188         * include/std/functional: Likewise for functional.
2189         * include/std/complex: Likewise for complex.
2190         * include/std/array: Likewise for array.
2191         * include/tr1/tuple: Likewise for tuple.
2192         * include/tr1/utility: Likewise for utility.
2193         * include/tr1/type_traits: Likewise for type_traits
2194         * include/tr1/memory: Likewise for memory.
2195         * include/tr1/regex: Likewise for regex.
2196         * include/tr1/random: Likewise for random.
2197         * include/tr1/unordered_map: Likewise for unordered_map.
2198         * include/tr1/unordered_set: Likewise for unordered_set.
2199         * include/tr1/functional: Likewise for functional.
2200         * include/tr1/complex: Likewise for complex.
2201         * include/tr1/array: Likewise for array.
2202
2203         * include/c_global/ctgmath: Tweak.
2204         * include/c_global/cstdarg: Likewise.
2205         * include/c_global/ctime: Likewise.
2206         * include/c_global/climits: Likewise.
2207         * include/c_global/cfloat: Likewise.    
2208         * include/c_global/ccomplex: Likewise.
2209         * include/c_global/cstdbool: Likewise.
2210
2211         * include/tr1/poly_laguerre.tcc: Tweak, don't use _GLIBCXX_TR1.
2212         * include/tr1/riemann_zeta.tcc: Likewise.
2213         * include/tr1/beta_function.tcc: Likewise.
2214         * include/tr1/exp_integral.tcc: Likewise.
2215         * include/tr1/hypergeometric.tcc: Likewise.
2216         * include/tr1/modified_bessel_func.tcc: Likewise.
2217         * include/tr1/legendre_function.tcc: Likewise.
2218         * include/tr1/special_function_util.h: Likewise.
2219         * include/tr1/bessel_function.tcc: Likewise.
2220         * include/tr1/poly_hermite.tcc: Likewise.
2221         * include/tr1/ell_integral.tcc: Likewise.
2222         * include/tr1/gamma.tcc: Likewise.
2223         * include/tr1/stdlib.h: Likewise.
2224         * include/tr1/math.h: Likewise.
2225
2226         * include/tr1/complex.h: Minor tweaks.
2227         * include/tr1/wctype.h: Likewise.
2228         * include/tr1/wchar.h: Likewise.
2229         * include/tr1/inttypes.h: Likewise.
2230         * include/tr1/tgmath.h: Likewise.
2231         * include/tr1/cstdbool: Likewise.
2232         * include/tr1/cfloat: Likewise.
2233         * include/tr1/ccomplex: Likewise.
2234         * include/tr1/ctime: Likewise.
2235         * include/tr1/climits: Likewise.
2236         * include/tr1/ctgmath: Likewise.
2237         * include/tr1/cstdarg: Likewise.
2238
2239         * testsuite/tr1/headers.cc: Move...
2240         * testsuite/tr1/headers/all.cc: ... here.
2241         * testsuite/tr1/using_namespace_std_tr1.cc: Move...
2242         * testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: ... here.
2243         * testsuite/tr1/headers/using_namespace_std_tr1.cc ... here.
2244         * testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: New.
2245
2246         * testsuite/20_util/tuple/requirements/explicit_instantiation.cc:
2247         Adjust namespace.
2248         * testsuite/20_util/has_nothrow_copy_constructor/value.cc: Adjust to
2249         the C++0x requirements.
2250         * testsuite/20_util/has_nothrow_default_constructor/value.cc: Likewise.
2251         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
2252         * testsuite/20_util/has_trivial_default_constructor/value.cc: Likewise.
2253
2254         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
2255         dg-error lines.
2256         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2257         Likewise.
2258         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
2259         Un-xfail.
2260
2261         * testsuite/20_util/is_signed/value.cc: New.
2262         * testsuite/20_util/is_signed/requirements/typedefs.cc: Likewise.
2263         * testsuite/20_util/is_signed/requirements/explicit_instantiation.cc:
2264         Likewise.
2265         * testsuite/20_util/is_unsigned/value.cc: Likewise..
2266         * testsuite/20_util/is_unsigned/requirements/typedefs.cc: Likewise.
2267         * testsuite/20_util/is_unsigned/requirements/explicit_instantiation.cc:
2268         Likewise.
2269
2270         * include/Makefile.am: Adjust.  
2271         * include/Makefile.in: Regenerate.
2272
2273 2007-05-31  Paolo Carlini  <pcarlini@suse.de>
2274
2275         PR c++/32158 (libstdc++ bits)
2276         * include/bits/stl_uninitialized.h (__uninitialized_copy_aux,
2277         __uninitialized_fill_aux, __uninitialized_fill_n_aux):
2278         Remove.
2279         (struct __uninitialized_copy, struct __uninitialized_fill,
2280         struct __uninitialized_fill_n): Add.
2281         (uninitialized_copy, uninitialized_fill, uninitialized_fill_n):
2282         Adjust.
2283         * testsuite/20_util/specialized_algorithms/32158.cc: New.
2284
2285         * include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
2286         _InputIterator, _ForwardIterator)): Robustify vs non-POD input.
2287
2288         * include/bits/stl_vector.h (_M_fill_initialize): New.
2289         (vector(size_type, const value_type&, const allocator_type&),
2290         _M_initialize_dispatch(_Integer, _Integer, __true_type)): Use it.
2291         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2292         Adjust dg-error line.
2293         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2294         Likewise.
2295         * testsuite/23_containers/vector/requirements/dr438/
2296         constructor_1_neg.cc: Likewise.
2297         * testsuite/23_containers/vector/requirements/dr438/
2298         constructor_2_neg.cc: Likewise.
2299
2300 2007-05-29  Paolo Carlini  <pcarlini@suse.de>
2301
2302         * aclocal.m4: Regenerate.
2303
2304         * testsuite/17_intro/headers/c++1998/c++_for_c.tar: Remove.
2305         * testsuite/17_intro/headers/c++1998/c++.tar: Likewise.
2306
2307 2007-05-28  Benjamin Kosnik  <bkoz@redhat.com>
2308
2309         PR libstdc++/31717 
2310         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Re-organize. Sanity check
2311         gnu locale model requests to make sure it will work for the requested
2312         target. Add checks for strxfrm_l, strerror_l when in gnu locale,
2313         and strerror_r everywhere.
2314         * aclocal.m4: Regenerated.
2315         * configure: Regenerated.
2316         * config.h.in: Regenerated.
2317         
2318 2007-05-27  Paolo Carlini  <pcarlini@suse.de>
2319
2320         * include/tr1/boost_shared_ptr.h
2321         (_Sp_counted_base<_S_mutex>::_M_add_ref_lock()): Do not wrap in
2322         #ifdef __GTHREADS.
2323
2324 2007-05-27  Paolo Carlini  <pcarlini@suse.de>
2325
2326         * include/c_global/cwchar: Do not include <ctime>.
2327         * include/c_std/cwchar: Likewise.
2328         * include/ext/throw_allocator.h: Do it here.
2329         
2330 2007-05-25  Paolo Carlini  <pcarlini@suse.de>
2331
2332         * config/locale/gnu/c_locale.h (__convert_from_v): Fix typo.
2333
2334 2007-05-24  Paolo Carlini  <pcarlini@suse.de>
2335
2336         * include/ext/concurrence.h: Use __GCC_HAVE_SYNC_COMPARE_AND_SWAP_*.
2337
2338 2007-05-24  Steve Ellcey  <sje@cup.hp.com>
2339
2340         * Makefile.in: Regenerate.
2341         * configure: Regenerate.
2342         * aclocal.m4: Regenerate.
2343         * include/Makefile.in: Regenerate.
2344         * libmath/Makefile.in: Regenerate.
2345         * libsupc++/Makefile.in: Regenerate.
2346         * po/Makefile.in: Regenerate.
2347         * src/Makefile.in: Regenerate.
2348         * testsuite/Makefile.in: Regenerate.
2349
2350 2007-05-24  Paolo Carlini  <pcarlini@suse.de>
2351
2352         * config/locale/gnu/c_locale.h (__convert_from_v): Only switch to the
2353         "C" locale if the current one isn't already "C" (for old glibcs).
2354         * config/os/gnu-linux/ctype_noninline.h (ctype<char>::classic_table,
2355         ctype<char>::ctype(__c_locale, const mask*, bool, size_t),
2356         ctype<char>::ctype(const mask*, bool, size_t)): Likewise, for generic
2357         locale model.
2358         * config/locale/gnu/messages_members.h
2359         (messages<>::messages(__c_locale, const char*, size_t),
2360         messages_byname<_CharT>::messages_byname(const char*, size_t)):
2361         Only dynamically allocate memory if __s != "C".
2362         * config/locale/gnu/time_members.h
2363         (__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)):
2364         Likewise.
2365         * config/locale/generic/time_members.h
2366         (__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)):
2367         Likewise.
2368
2369         * testsuite/util/testsuite_allocator.h: Revert last change.
2370
2371 2007-05-22  Paolo Carlini  <pcarlini@suse.de>
2372
2373         * testsuite/util/testsuite_allocator.h (check_new): Assign false
2374         to new_called.
2375         (check_delete): Likewise for delete_called.
2376
2377 2007-05-21  Paolo Carlini  <pcarlini@suse.de>
2378
2379         * config/locale/gnu/c_locale.h: Do not include <cstdarg>, use builtins.
2380         * config/locale/generic/c_locale.h: Likewise.
2381
2382 2007-05-21  Paolo Carlini  <pcarlini@suse.de>
2383
2384         PR libstdc++/31621
2385         * acinclude.m4 ([GLIBCXX_CHECK_LINKER_FEATURES]): Use the C compiler.
2386         * configure: Regenerate.
2387
2388 2007-05-20  Paolo Carlini  <pcarlini@suse.de>
2389
2390         * include/bits/stl_algo.h: Shuffle the functions to better match the
2391         order in the standard.
2392
2393 2007-05-17  Paolo Carlini  <pcarlini@suse.de>
2394
2395         * config/locale/gnu/c_locale.h: Do not include <libintl.h>.
2396         * config/locale/gnu/messages_members.h: Do it here.
2397         
2398         * config/locale/gnu/c_locale.h: Do not include <cstdio>, use
2399         the builtins.
2400         * config/locale/generic/c_locale.h: Likewise.
2401
2402 2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>
2403
2404         * acinclude.m4 (GLIBCXX_CHECK_COMPILER_FEATURES): Add -g to
2405         compile flags, move code to test to global scope.
2406         * configure: Regenerate.
2407         
2408 2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>
2409
2410         * testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc: 
2411         Fix dg bits.
2412         * testsuite/21_strings/char_traits/requirements/char/typedefs.cc: Same.
2413
2414 2007-05-17  Paolo Carlini  <pcarlini@suse.de>
2415
2416         * include/bits/stl_algobase.h (mismatch): Move...
2417         * include/bits/stl_algo.h: ... here.
2418
2419 2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>
2420
2421         * include/tr1/cmath: Guard special math with
2422         __GXX_EXPERIMENTAL_CXX0X__.
2423         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
2424         Remove xfail.
2425
2426 2007-05-17  Paolo Carlini  <pcarlini@suse.de>
2427
2428         * include/bits/locale_facets.tcc (__pad<>::_S_pad): Minor tweaks, avoid
2429         unnecessary casts, do widenings just in time.
2430
2431 2007-05-16  Benjamin Kosnik  <bkoz@redhat.com>
2432
2433         * acinclude.m4 (GLIBCXX_CHECK_COMPILER_FEATURES): Add a function
2434         to the test code compiled with -ffunction-sections -fdata-sections.
2435         * configure: Regenerate.
2436
2437         * testsuite/22_locale/ctype/scan/wchar_t/1.cc: Remove
2438         _GLIBCXX_USE_WCHAR_T guards as superfluous.
2439         
2440         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Add
2441         _GLIBCXX_USE_WCHAR_T guards.    
2442         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
2443         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
2444         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.
2445
2446         * testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc: 
2447         Add.
2448         * testsuite/21_strings/char_traits/typedefs/char/1.cc: Move...
2449         * testsuite/21_strings/char_traits/requirements/char/typedefs.cc: 
2450         ...here.
2451         * testsuite/21_strings/char_traits/typedefs: Remove.
2452         * testsuite/21_strings/char_traits/typedefs/char: Remove.
2453         
2454 2007-05-16  Benjamin Kosnik  <bkoz@redhat.com>  
2455
2456         * docs/html/abi.html: Update for gcc-4.1.2 and gcc-4.2.0.
2457         
2458 2007-05-14  Kaz Kojima  <kkojima@gcc.gnu.org>
2459
2460         * testsuite/tr1/5_numerical_facilities/special_functions/
2461         17_hyperg/check_nan.cc: Add -mieee for sh.
2462
2463 2007-05-14  Paolo Carlini  <pcarlini@suse.de>
2464
2465         * testsuite/util/testsuite_io.h: Only include <ios>.
2466
2467 2007-05-14  Paolo Carlini  <pcarlini@suse.de>
2468
2469         * include/bits/allocator.h: Do not include cpp_type_traits.h.
2470
2471 2007-05-14  Paolo Carlini  <pcarlini@suse.de>
2472
2473         * include/bits/postypes.h (class fpos<>): Remove redundant forward
2474         declaration.
2475
2476 2007-05-13  Paolo Carlini  <pcarlini@suse.de>
2477
2478         * include/bits/stl_tempbuf.h (return_temporary_buffer(_Tp*)): Inline.
2479
2480 2007-05-13  Paolo Carlini  <pcarlini@suse.de>
2481
2482         * include/tr1/type_traitsfwd.h: Fix include guard typo.
2483
2484 2007-05-11  Paolo Carlini  <pcarlini@suse.de>
2485
2486         * include/ext/pod_char_traits.h (char_traits<>::move):
2487         Use __builtin_memmove.
2488         * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name,
2489         collate_byname(const char*, size_t)): Use __builtin_strcmp.
2490         * include/bits/locale_facets.h: Use __builtin_mem* and
2491         __builtin_str* everywhere.
2492         * include/bits/codecvt.h (codecvt_byname(const char*, size_t)):
2493         Use __builtin_strcmp.
2494         * include/bits/char_traits.h: Use __builtin_mem* everywhere.
2495         * include/bits/fstream.tcc (basic_filebuf<>::underflow, imbue):
2496         Use __builtin_memcpy and __builtin_memmove.
2497         * include/bits/locale_facets_nonio.h (moneypunct_byname(const char*,
2498         size_t __refs)): Use __builtin_strcmp.
2499         * include/std/bitset (bitset<>::_M_do_reset): Use __builtin_memset.
2500         * config/locale/gnu/c_locale.h: Use __builtin_strlen, __builtin_strcmp,
2501         and __builtin_memcpy.
2502         * config/locale/gnu/messages_members.h: Likewise.
2503         * config/locale/gnu/time_members.h: Likewise.
2504         * config/locale/generic/c_locale.h: Likewise.
2505         * config/locale/generic/messages_members.h: Likewise.
2506         * config/locale/generic/time_members.h: Likewise.
2507         * config/os/gnu-linux/ctype_noninline.h: Likewise, avoid strdup.
2508         * config/os/tpf/ctype_noninline.h: Likewise.
2509         * config/locale/generic/codecvt_members.cc: Include <cstring>. 
2510         * config/locale/generic/ctype_members.cc: Likewise.
2511         * config/locale/generic/collate_members.cc: Likewise.
2512         * config/locale/gnu/c++locale_internal.h: Likewise.
2513         * config/locale/darwin/ctype_members.cc: Likewise.
2514         * src/ctype.cc: Likewise.
2515         * testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
2516         * testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
2517         * testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
2518         * testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
2519         * testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
2520         * config/locale/gnu/messages_members.cc: Avoid strdup.
2521         * config/locale/gnu/monetary_members.cc: Likewise.
2522         * config/locale/gnu/time_members.cc: Likewise.  
2523         * config/locale/gnu/time_members.cc: Likewise.
2524         * config/locale/generic/c_locale.cc: Likewise.
2525
2526 2007-05-11  Benjamin Kosnik  <bkoz@redhat.com>
2527
2528         * include/std/stdexcept: Remove extra spacing.
2529
2530         * testsuite/19_diagnostics/stdexceptions.cc: Break into...
2531         * testsuite/19_diagnostics/bad_exception: ...this. Populate.
2532         * testsuite/19_diagnostics/logic_error: ... this.
2533         * testsuite/19_diagnostics/logic_error/what-1.cc: ...this.
2534         * testsuite/19_diagnostics/logic_error/what-2.cc: ...this.
2535         * testsuite/19_diagnostics/runtime_error: ...this.
2536         * testsuite/19_diagnostics/runtime_error/what-1.cc: ...this.
2537         * testsuite/19_diagnostics/runtime_error/what-2.cc: ...this.
2538         * testsuite/19_diagnostics/runtime_error/what-3.cc: ...this.
2539         * testsuite/19_diagnostics/23591_thread-1.c: Move...
2540         * testsuite/19_diagnostics/bad_exception/23591_thread-1.c: ...here.
2541
2542 2007-05-10  Paolo Carlini  <pcarlini@suse.de>
2543
2544         * 27_io/objects/wchar_t/11.cc: Include <cstring>.
2545         * 27_io/objects/wchar_t/10.cc: Likewise.
2546         * 27_io/objects/wchar_t/12.cc: Likewise.
2547         * 27_io/basic_streambuf/sputbackc/char/9538.cc: Likewise.
2548         * 27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
2549         * 27_io/basic_streambuf/overflow/char/1.cc: Likewise.
2550         * 27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
2551         * 27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
2552         * 27_io/basic_streambuf/sputn/char/1.cc: Likewise.
2553         * 27_io/basic_ios/cons/char/3.cc: Likewise.
2554         * 27_io/basic_stringbuf/setbuf/char/2.cc: Likewise.
2555         * 27_io/basic_stringbuf/setbuf/char/3.cc: Likewise.
2556         * 27_io/basic_stringbuf/setbuf/char/4.cc: Likewise.
2557         * 27_io/basic_istream/extractors_character/char/4.cc: Likewise.
2558         * 27_io/fpos/mbstate_t/1.cc: Likewise.
2559         * 27_io/basic_filebuf/setbuf/char/2.cc: Likewise.
2560         * 27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
2561         * 25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
2562         * 25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
2563         * 19_diagnostics/stdexceptions.cc: Likewise.
2564         * 21_strings/char_traits/requirements/short/1.cc: Likewise.
2565         * 21_strings/basic_string/compare/char/1.cc: Likewise.
2566         * 21_strings/basic_string/capacity/1.cc: Likewise.
2567         * ext/codecvt/char-1.cc: Likewise.
2568         * ext/codecvt/char-2.cc: Likewise.
2569         * ext/codecvt/1.cc: Likewise.
2570         * ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
2571         * ext/stdio_sync_filebuf/char/1.cc: Likewise.
2572         * ext/stdio_filebuf/char/2.cc: Likewise.
2573         * ext/stdio_filebuf/char/10063-1.cc: Likewise.
2574         * 22_locale/ctype/narrow/char/19955.cc: Likewise.
2575         * 22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
2576         * 22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
2577         * 22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
2578         * 22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
2579         * 22_locale/codecvt/unshift/char/1.cc: Likewise.
2580         * 22_locale/codecvt/length/wchar_t/1.cc: Likewise.
2581         * 22_locale/codecvt/length/wchar_t/2.cc: Likewise.
2582         * 22_locale/codecvt/length/wchar_t/3.cc: Likewise.
2583         * 22_locale/codecvt/length/wchar_t/4.cc: Likewise.
2584         * 22_locale/codecvt/length/wchar_t/5.cc: Likewise.
2585         * 22_locale/codecvt/length/wchar_t/6.cc: Likewise.
2586         * 22_locale/codecvt/length/wchar_t/7.cc: Likewise.
2587         * 22_locale/codecvt/always_noconv/char/1.cc: Likewise.
2588         * 22_locale/codecvt/encoding/char/1.cc: Likewise.
2589         * 22_locale/codecvt/in/wchar_t/1.cc: Likewise.
2590         * 22_locale/codecvt/in/wchar_t/2.cc: Likewise.
2591         * 22_locale/codecvt/in/wchar_t/3.cc: Likewise.
2592         * 22_locale/codecvt/in/wchar_t/4.cc: Likewise.
2593         * 22_locale/codecvt/in/wchar_t/5.cc: Likewise.
2594         * 22_locale/codecvt/in/wchar_t/6.cc: Likewise.
2595         * 22_locale/codecvt/in/wchar_t/7.cc: Likewise.
2596         * 22_locale/codecvt/in/wchar_t/8.cc: Likewise.
2597         * 22_locale/codecvt/in/wchar_t/9.cc: Likewise.
2598         * 22_locale/codecvt/in/char/1.cc: Likewise.
2599         * 22_locale/codecvt/max_length/char/1.cc: Likewise.
2600         * 22_locale/codecvt/out/wchar_t/1.cc: Likewise.
2601         * 22_locale/codecvt/out/wchar_t/2.cc: Likewise.
2602         * 22_locale/codecvt/out/wchar_t/3.cc: Likewise.
2603         * 22_locale/codecvt/out/wchar_t/4.cc: Likewise.
2604         * 22_locale/codecvt/out/wchar_t/5.cc: Likewise.
2605         * 22_locale/codecvt/out/wchar_t/6.cc: Likewise.
2606         * 22_locale/codecvt/out/wchar_t/7.cc: Likewise.
2607         * 22_locale/codecvt/out/char/1.cc: Likewise.
2608         * 22_locale/locale/cons/5.cc: Likewise.
2609         * 22_locale/collate_byname/named_equivalence.cc: Likewise.
2610
2611 2007-05-07  Mark Mitchell  <mark@codesourcery.com>
2612
2613         * libstdc++-v3/libsupc++/cxxabi.h (_GLIBCXX_NOTHROW): New macro.
2614         (__cxa_atexit): Use it.
2615
2616         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): For
2617         installed-tree testing, search more include directories.
2618
2619 2007-05-08  Benjamin Kosnik  <bkoz@redhat.com>
2620
2621         * include/std/type_traits (make_signed): Remove specializations
2622         for floating point types.
2623         (make_unsigned): Same.
2624         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Fix.
2625         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Same.
2626         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
2627         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
2628         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
2629         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.
2630         
2631 2007-05-08  Benjamin Kosnik  <bkoz@redhat.com>
2632
2633         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: New.
2634
2635 2007-05-08  Jason Merrill  <jason@redhat.com>
2636
2637         * libsupc++/cxxabi-internal.h: Remove, to be replaced by...
2638         * libsupc++/cxxabi-forced.h: ...this new file.
2639         * include/ext/vstring.tcc: Include cxxabi-forced.h instead.
2640         * include/bits/istream.tcc: Likewise.
2641         * include/bits/ostream.tcc: Likewise.
2642         * include/bits/basic_string.tcc: Likewise.
2643         * include/bits/ostream_insert.h: Likewise.
2644         * include/bits/fstream.tcc: Likewise.
2645         * include/std/bitset: Likewise.
2646         * libsupc++/cxxabi.h: Restore previous contents.
2647         * Makefile.am (headers): Add cxxabi-forced.h.
2648         * Makefile.in: Regenerate.
2649
2650 2007-05-08  Benjamin Kosnik  <bkoz@redhat.com>
2651
2652         * testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.2.
2653
2654         * libsupc++/cxxabi-internal.h (__foreign_exception::__pure): To
2655         __pure_virtual.
2656
2657 2007-05-07  Jason Merrill  <jason@redhat.com>
2658
2659         * include/bits/ostream.tcc (operator<<(char*)): Add __s.
2660
2661         * config/abi/pre/gnu.ver: Fix symbol versions.
2662         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
2663
2664 2007-05-07  Danny Smith  <dannysmith@users.sourceforge.net>
2665
2666         * config/os/mingw32/os_defines.h (NOMINMAX): Update comment.
2667
2668 2007-05-07  Jason Merrill  <jason@redhat.com>
2669
2670         PR c++/28145
2671         * libsupc++/cxxabi.h (__forced_unwind, __foreign_exception):
2672         New classes.
2673         * libsupc++/eh_exception.cc: Define their destructors.
2674         * config/abi/pre/gnu.ver: Export their type_infos.
2675         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
2676         * libsupc++/eh_personality.cc: A handler for abi::__forced_unwind
2677         matches a forced unwind, and a handler for abi::__foreign_exception
2678         matches a foreign exception.
2679         
2680         * include/bits/istream.tcc: Rethrow forced unwind.
2681         * include/bits/ostream.tcc: Likewise.
2682         * include/bits/ostream_insert.h: Likewise.
2683         * include/bits/basic_string.tcc (operator>>, getline): Likewise.
2684         * include/bits/fstream.tcc (basic_filebuf::close): Likewise.
2685         * include/ext/vstring.cc (operator>>, getline): Likewise.
2686         * src/istream.cc: Likewise.
2687         * src/compatibility.cc (basic_istream::ignore): Likewise.
2688         * include/std/bitset (operator>>): Likewise.
2689         * include/std/fstream (basic_filebuf::close): Remove throw() spec.
2690         * libsupc++/cxxabi-internal.h: Split out from...
2691         * libsupc++/cxxabi.h: ...here.
2692
2693 2007-05-07  Paolo Carlini  <pcarlini@suse.de>
2694
2695         * include/bits/stl_algobase.h: Do not include <cstring>.
2696         (copy(const _Tp*, const _Tp*, _Tp*), __copy_b(const _Tp*, const _Tp*,
2697         _Tp*)): Use __builtin_memmove.
2698         (__fill_aux): Use __builtin_memset.
2699         (equal(const _Tp*, const _Tp*, const _Tp*),
2700         lexicographical_compare(const unsigned char*, const unsigned char*,
2701         const unsigned char*, const unsigned char*)): Use __builtin_memcmp.
2702         * include/bits/valarray_array.h: Do not include <cstring>.
2703         (_Array_default_ctor<, true>::_S_do_it): Use __builtin_memset.
2704         (_Array_copy_ctor<, true>::_S_do_it, _Array_copier<, true>::_S_do_it):
2705         Use __builtin_memcpy.
2706         * include/ext/algorithm
2707         (__lexicographical_compare_3way(const unsigned char*,
2708         const unsigned char*, const unsigned char*, const unsigned char*)):
2709         Use __builtin_memcmp.
2710         * testsuite/23_containers/vector/requirements/dr438/
2711         constructor_1_neg.cc: Adjust dg-error line number.
2712         * testsuite/23_containers/vector/requirements/dr438/
2713         constructor_2_neg.cc: Likewise.
2714
2715 2007-05-07  Mark Mitchell  <mark@codesourcery.com>
2716
2717         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): For
2718         installed-tree testing, search more include directories.
2719
2720         * testsuite/22_locale/num_put/put/char/14220.cc: XFAIL on Solaris
2721         2.10.
2722         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2723
2724         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): In
2725         installed-tree testing, use "remote_exec host", not "remote_exec
2726         exec".  Trip trailing newlines from output of -dumpversion and
2727         -dumpmachine.
2728
2729 2007-05-07  Benjamin Kosnik  <bkoz@redhat.com>
2730             Howard Hinnant  <hhinnant@apple.com>
2731
2732         * include/std/type_traits: (make_signed, make_unsigned): Adjust
2733         for enum sizes. 
2734         * testsuite/20_util/make_unsigned/requirements/typedefs.cc: Move to...
2735         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: ...here.
2736         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Add,
2737         compile with -funsigned-char -fshort-enums.
2738         * testsuite/20_util/make_signed/requirements/typedefs.cc: Move to...
2739         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: ...here.
2740         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Add,
2741         compile with -funsigned-char -fshort-enums.
2742
2743         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
2744         Add a temporary xfail to this test for all platforms.
2745         
2746 2007-05-06  Paolo Carlini  <pcarlini@suse.de>
2747
2748         * include/std/complex: Add missing extern template declarations.
2749         * testsuite/26_numerics/complex/complex_inserters_extractors.cc:
2750         Move...
2751         * testsuite/26_numerics/complex/inserters_extractors/char/1.cc:
2752         ... here.
2753         * testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc:
2754         New.
2755
2756 2007-05-06  Paolo Carlini  <pcarlini@suse.de>
2757
2758         PR libstdc++/31834
2759         * testsuite/17_intro/headers/c++200x/all.cc: Protect inclusion
2760         of C99 headers.
2761         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc:
2762         Likewise.
2763
2764 2007-05-06  Paolo Carlini  <pcarlini@suse.de>
2765
2766         * config/locale/generic/c_locale.cc: Don't use __builtin_huge_val*
2767         when __*_HAS_INFINITY__ is false.
2768
2769 2007-05-04  Paolo Carlini  <pcarlini@suse.de>
2770
2771         * include/bits/stl_raw_storage_iter.h (class raw_storage_iterator):
2772         Adjust template parameter name.
2773
2774 2007-05-04  Mark Mitchell  <mark@codesourcery.com>
2775
2776         * libsupc++/cxxabi.h (__cxa_atexit): Conditionalize exception
2777         specification on #ifdef __cplusplus.
2778         
2779 2007-05-04  Paolo Carlini  <pcarlini@suse.de>
2780
2781         * include/bits/stl_memory.h: Rename to stl_auto_ptr.h.
2782         (__get_temporary_buffer, get_temporary_buffer,
2783         return_temporary_buffer): Move...
2784         * include/bits/stl_tempbuf.h: ... here.
2785         * include/std/memory: Adjust includes.
2786         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust dg-error line
2787         numbers.
2788         * include/Makefile.am: Adjust.
2789         * include/Makefile.in: Regenerate.
2790
2791         * testsuite/util/testsuite_iterators.h: Do not include the entire
2792         <iterator>.
2793         * include/bits/stl_iterator_base_types.h: Adjust includes.
2794         * testsuite/25_algorithms/unique_copy/2.cc: Include <functional>.
2795
2796 2007-05-04  Mark Mitchell  <mark@codesourcery.com>
2797
2798         * libsupc++/atexit_arm.cc: New file.
2799         * libsupc++/vec.cc (__aeabi_atexit): Remove.
2800         * libsupc++/cxxabi.h (__cxa_atexit): Add exception specification.
2801
2802         * libsupc++/Makefile.am: Add atexit_arm.cc.
2803         * libsupc++/Makefile.in: Regenerated.
2804
2805 2007-05-04  Paolo Carlini  <pcarlini@suse.de>
2806
2807         * include/bits/stl_construct.h (_Destroy(_ForwardIterator,
2808         _ForwardIterator __last, _Allocator)): Change the last parameter
2809         to _Allocator&.
2810         * include/bits/stl_uninitialized.h (__uninitialized_copy_a,
2811         __uninitialized_fill_a, __uninitialized_fill_n_a,
2812         __uninitialized_fill_copy, __uninitialized_copy_fill,
2813         __uninitialized_copy_copy): Likewise.
2814         * include/ext/rope: Adjust everywhere.
2815         * include/ext/ropeimpl.h: Likewise.
2816
2817 2007-05-03  Benjamin Kosnik  <bkoz@redhat.com>
2818
2819         * include/std/type_traits (enable_if): New.
2820         (conditional): New.
2821         (__decay_selector, decay): New.
2822         (__cv_selector, __match_cv_qualifiers): New.
2823         (__make_unsigned, __make_unsigned_selector, make_unsigned): New.
2824         (__make_signed, __make_signed_selector, make_signed): New.
2825         (has_trivial_constructor): ... to has_trivial_default_constructor.
2826         (has_nothrow_constructor): ... to has_nothrow_default_constructor.
2827         (has_trivial_copy): ... to has_trivial_copy_constructor.
2828         (has_nothrow_copy): ... to has_nothrow_copy_constructor.
2829
2830         * include/tr1/type_traits_fwd: Move to...
2831         * include/tr1/type_traitsfwd: ... this, consistency with
2832         ios/string/locale forward headers.
2833         * include/tr1/type_traits: Adjust include.      
2834         * include/Makefile.am (tr1_headers): Change type_traits_fwd.h to
2835         type_traitsfwd.h.
2836         * include/Makefile.in: Regenerate.
2837
2838         * testsuite/23_containers/tuple: Move...
2839         * testsuite/20_util/tuple:... here.
2840
2841         * testsuite/20_util/conditional: New.
2842         * testsuite/20_util/conditional/requirements: Same.
2843         * testsuite/20_util/conditional/requirements/
2844         explicit_instantiation.cc: Same.
2845         * testsuite/20_util/conditional/requirements/typedefs.cc: Same.
2846         * testsuite/20_util/decay: Same.
2847         * testsuite/20_util/decay/requirements: Same.
2848         * testsuite/20_util/decay/requirements/explicit_instantiation.cc: Same.
2849         * testsuite/20_util/decay/requirements/typedefs.cc: Same.
2850         * testsuite/20_util/enable_if: Same.
2851         * testsuite/20_util/enable_if/requirements: Same.
2852         * testsuite/20_util/enable_if/requirements/
2853         explicit_instantiation.cc: Same.
2854         * testsuite/20_util/enable_if/requirements/typedefs.cc: Same.
2855         * testsuite/20_util/enable_if/requirements/typedefs_neg.cc: Same.
2856         * testsuite/20_util/has_nothrow_copy_constructor: Same.
2857         * testsuite/20_util/has_nothrow_copy_constructor/requirements: Same.
2858         * testsuite/20_util/has_nothrow_copy_constructor/requirements/
2859         explicit_instantiation.cc: Same.
2860         * testsuite/20_util/has_nothrow_copy_constructor/requirements/
2861         typedefs.cc: Same.
2862         * testsuite/20_util/has_nothrow_copy_constructor/value.cc: Same.
2863         * testsuite/20_util/has_nothrow_default_constructor: Same.
2864         * testsuite/20_util/has_nothrow_default_constructor/requirements: Same.
2865         * testsuite/20_util/has_nothrow_default_constructor/requirements/
2866         explicit_instantiation.cc: Same.
2867         * testsuite/20_util/has_nothrow_default_constructor/requirements/
2868         typedefs.cc: Same.
2869         * testsuite/20_util/has_nothrow_default_constructor/value.cc: Same.
2870         * testsuite/20_util/has_trivial_copy_constructor: Same.
2871         * testsuite/20_util/has_trivial_copy_constructor/requirements: Same.
2872         * testsuite/20_util/has_trivial_copy_constructor/requirements/
2873         explicit_instantiation.cc: Same.
2874         * testsuite/20_util/has_trivial_copy_constructor/requirements/
2875         typedefs.cc: Same.
2876         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Same.
2877         * testsuite/20_util/has_trivial_default_constructor: Same.
2878         * testsuite/20_util/has_trivial_default_constructor/requirements: Same.
2879         * testsuite/20_util/has_trivial_default_constructor/requirements/
2880         explicit_instantiation.cc: Same.
2881         * testsuite/20_util/has_trivial_default_constructor/requirements/
2882         typedefs.cc: Same.
2883         * testsuite/20_util/has_trivial_default_constructor/value.cc: Same.
2884         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc: Same.
2885         * testsuite/20_util/make_signed: Same.
2886         * testsuite/20_util/make_signed/requirements: Same.
2887         * testsuite/20_util/make_signed/requirements/
2888         explicit_instantiation.cc: Same.
2889         * testsuite/20_util/make_signed/requirements/typedefs.cc: Same.
2890         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
2891         * testsuite/20_util/make_unsigned: Same.
2892         * testsuite/20_util/make_unsigned/requirements: Same.
2893         * testsuite/20_util/make_unsigned/requirements/
2894         explicit_instantiation.cc: Same.
2895         * testsuite/20_util/make_unsigned/requirements/typedefs.cc: Same.
2896         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
2897         
2898 2007-05-02  Paolo Carlini  <pcarlini@suse.de>
2899
2900         PR libstdc++/31777
2901         * include/ext/pool_allocator.h (__pool_alloc<>::allocate,
2902         __pool_alloc<>::deallocate): Fix _S_force_new check.
2903
2904 2007-05-01  Benjamin Kosnik  <bkoz@redhat.com>
2905         
2906         * 23_containers/requirements/sequences/dr438/deque/*: Move to...
2907         * 23_containers/deque/requirements/dr438: ...here.
2908         
2909         * 23_containers/requirements/sequences/dr438/list/*: Move to...
2910         * 23_containers/list/requirements/dr438: ...here.
2911         
2912         * 23_containers/requirements/sequences/dr438/vector/*: Move to...
2913         * 23_containers/vector/requirements/dr438: ...here.
2914
2915 2007-05-01  Benjamin Kosnik  <bkoz@redhat.com>
2916         
2917         * testsuite/*/explicit_instantiations.cc: Change to...
2918         * testsuite/*/explicit_instantiation.cc: ... this.
2919
2920 2007-05-01  Benjamin Kosnik  <bkoz@redhat.com>
2921         
2922         * testsuite/tr1/4_metaprogramming/*/explicit_instantiations.cc: Change
2923         "basic_ofstream" in comment to type_traits.
2924
2925 2007-04-30  Benjamin Kosnik  <bkoz@redhat.com>
2926
2927         Directory layout flattening.
2928
2929         Added in testsuite:
2930         * tr1/4_metaprogramming/add_const
2931         * tr1/4_metaprogramming/add_const/requirements
2932         * tr1/4_metaprogramming/add_const/requirements/
2933         explicit_instantiations.cc
2934         * tr1/4_metaprogramming/add_const/requirements/typedefs.cc
2935         * tr1/4_metaprogramming/add_cv
2936         * tr1/4_metaprogramming/add_cv/requirements
2937         * tr1/4_metaprogramming/add_cv/requirements/explicit_instantiations.cc
2938         * tr1/4_metaprogramming/add_cv/requirements/typedefs.cc
2939         * tr1/4_metaprogramming/add_pointer
2940         * tr1/4_metaprogramming/add_pointer/requirements
2941         * tr1/4_metaprogramming/add_pointer/requirements/
2942         explicit_instantiations.cc
2943         * tr1/4_metaprogramming/add_pointer/requirements/typedefs.cc
2944         * tr1/4_metaprogramming/add_reference
2945         * tr1/4_metaprogramming/add_reference/requirements
2946         * tr1/4_metaprogramming/add_reference/requirements/
2947         explicit_instantiations.cc
2948         * tr1/4_metaprogramming/add_reference/requirements/typedefs.cc
2949         * tr1/4_metaprogramming/add_volatile
2950         * tr1/4_metaprogramming/add_volatile/requirements
2951         * tr1/4_metaprogramming/add_volatile/requirements/
2952         explicit_instantiations.cc
2953         * tr1/4_metaprogramming/add_volatile/requirements/typedefs.cc
2954         * tr1/4_metaprogramming/aligned_storage
2955         * tr1/4_metaprogramming/aligned_storage/requirements
2956         * tr1/4_metaprogramming/aligned_storage/requirements/
2957         explicit_instantiations.cc
2958         * tr1/4_metaprogramming/aligned_storage/requirements/typedefs.cc
2959         * tr1/4_metaprogramming/alignment_of
2960         * tr1/4_metaprogramming/alignment_of/requirements
2961         * tr1/4_metaprogramming/alignment_of/requirements/
2962         explicit_instantiations.cc
2963         * tr1/4_metaprogramming/alignment_of/requirements/typedefs.cc
2964         * tr1/4_metaprogramming/alignment_of/value.cc
2965         * tr1/4_metaprogramming/extent
2966         * tr1/4_metaprogramming/extent/requirements
2967         * tr1/4_metaprogramming/extent/requirements/explicit_instantiations.cc
2968         * tr1/4_metaprogramming/extent/requirements/typedefs.cc
2969         * tr1/4_metaprogramming/extent/value.cc
2970         * tr1/4_metaprogramming/has_nothrow_assign
2971         * tr1/4_metaprogramming/has_nothrow_assign/requirements
2972         * tr1/4_metaprogramming/has_nothrow_assign/requirements/
2973         explicit_instantiations.cc
2974         * tr1/4_metaprogramming/has_nothrow_assign/requirements/typedefs.cc
2975         * tr1/4_metaprogramming/has_nothrow_assign/value.cc
2976         * tr1/4_metaprogramming/has_nothrow_constructor
2977         * tr1/4_metaprogramming/has_nothrow_constructor/requirements
2978         * tr1/4_metaprogramming/has_nothrow_constructor/
2979         requirements/explicit_instantiations.cc
2980         * tr1/4_metaprogramming/has_nothrow_constructor/
2981         requirements/typedefs.cc
2982         * tr1/4_metaprogramming/has_nothrow_constructor/value.cc
2983         * tr1/4_metaprogramming/has_nothrow_copy
2984         * tr1/4_metaprogramming/has_nothrow_copy/requirements
2985         * tr1/4_metaprogramming/has_nothrow_copy/requirements/
2986         explicit_instantiations.cc
2987         * tr1/4_metaprogramming/has_nothrow_copy/requirements/typedefs.cc
2988         * tr1/4_metaprogramming/has_nothrow_copy/value.cc
2989         * tr1/4_metaprogramming/has_trivial_assign
2990         * tr1/4_metaprogramming/has_trivial_assign/requirements
2991         * tr1/4_metaprogramming/has_trivial_assign/requirements/
2992         explicit_instantiations.cc
2993         * tr1/4_metaprogramming/has_trivial_assign/requirements/typedefs.cc
2994         * tr1/4_metaprogramming/has_trivial_assign/value.cc
2995         * tr1/4_metaprogramming/has_trivial_constructor
2996         * tr1/4_metaprogramming/has_trivial_constructor/requirements
2997         * tr1/4_metaprogramming/has_trivial_constructor/
2998         requirements/explicit_instantiations.cc
2999         * tr1/4_metaprogramming/has_trivial_constructor/
3000         requirements/typedefs.cc
3001         * tr1/4_metaprogramming/has_trivial_constructor/value.cc
3002         * tr1/4_metaprogramming/has_trivial_copy
3003         * tr1/4_metaprogramming/has_trivial_copy/requirements
3004         * tr1/4_metaprogramming/has_trivial_copy/
3005         requirements/explicit_instantiations.cc
3006         * tr1/4_metaprogramming/has_trivial_copy/requirements/typedefs.cc
3007         * tr1/4_metaprogramming/has_trivial_copy/value.cc
3008         * tr1/4_metaprogramming/has_trivial_destructor
3009         * tr1/4_metaprogramming/has_trivial_destructor/requirements
3010         * tr1/4_metaprogramming/has_trivial_destructor/
3011         requirements/explicit_instantiations.cc
3012         * tr1/4_metaprogramming/has_trivial_destructor/requirements/typedefs.cc
3013         * tr1/4_metaprogramming/has_trivial_destructor/value.cc
3014         * tr1/4_metaprogramming/has_virtual_destructor
3015         * tr1/4_metaprogramming/has_virtual_destructor/requirements
3016         * tr1/4_metaprogramming/has_virtual_destructor/
3017         requirements/explicit_instantiations.cc
3018         * tr1/4_metaprogramming/has_virtual_destructor/requirements/typedefs.cc
3019         * tr1/4_metaprogramming/has_virtual_destructor/value.cc
3020         * tr1/4_metaprogramming/integral_constant
3021         * tr1/4_metaprogramming/integral_constant/requirements
3022         * tr1/4_metaprogramming/integral_constant/
3023         requirements/explicit_instantiations.cc
3024         * tr1/4_metaprogramming/integral_constant/requirements/typedefs.cc
3025         * tr1/4_metaprogramming/integral_constant/true_false_value.cc
3026         * tr1/4_metaprogramming/is_abstract
3027         * tr1/4_metaprogramming/is_abstract/requirements
3028         * tr1/4_metaprogramming/is_abstract/
3029         requirements/explicit_instantiations.cc
3030         * tr1/4_metaprogramming/is_abstract/requirements/typedefs.cc
3031         * tr1/4_metaprogramming/is_abstract/value.cc
3032         * tr1/4_metaprogramming/is_arithmetic
3033         * tr1/4_metaprogramming/is_arithmetic/requirements
3034         * tr1/4_metaprogramming/is_arithmetic/
3035         requirements/explicit_instantiations.cc
3036         * tr1/4_metaprogramming/is_arithmetic/requirements/typedefs.cc
3037         * tr1/4_metaprogramming/is_arithmetic/value.cc
3038         * tr1/4_metaprogramming/is_array
3039         * tr1/4_metaprogramming/is_array/requirements
3040         * tr1/4_metaprogramming/is_array/
3041         requirements/explicit_instantiations.cc
3042         * tr1/4_metaprogramming/is_array/requirements/typedefs.cc
3043         * tr1/4_metaprogramming/is_array/value.cc
3044         * tr1/4_metaprogramming/is_base_of
3045         * tr1/4_metaprogramming/is_base_of/requirements
3046         * tr1/4_metaprogramming/is_base_of/
3047         requirements/explicit_instantiations.cc
3048         * tr1/4_metaprogramming/is_base_of/requirements/typedefs.cc
3049         * tr1/4_metaprogramming/is_base_of/value.cc
3050         * tr1/4_metaprogramming/is_class
3051         * tr1/4_metaprogramming/is_class/requirements
3052         * tr1/4_metaprogramming/is_class/
3053         requirements/explicit_instantiations.cc
3054         * tr1/4_metaprogramming/is_class/requirements/typedefs.cc
3055         * tr1/4_metaprogramming/is_class/value.cc
3056         * tr1/4_metaprogramming/is_compound
3057         * tr1/4_metaprogramming/is_compound/requirements
3058         * tr1/4_metaprogramming/is_compound/
3059         requirements/explicit_instantiations.cc
3060         * tr1/4_metaprogramming/is_compound/requirements/typedefs.cc
3061         * tr1/4_metaprogramming/is_compound/value.cc
3062         * tr1/4_metaprogramming/is_const
3063         * tr1/4_metaprogramming/is_const/requirements
3064         * tr1/4_metaprogramming/is_const/
3065         requirements/explicit_instantiations.cc
3066         * tr1/4_metaprogramming/is_const/requirements/typedefs.cc
3067         * tr1/4_metaprogramming/is_const/value.cc
3068         * tr1/4_metaprogramming/is_convertible
3069         * tr1/4_metaprogramming/is_convertible/requirements
3070         * tr1/4_metaprogramming/is_convertible/
3071         requirements/explicit_instantiations.cc
3072         * tr1/4_metaprogramming/is_convertible/requirements/typedefs.cc
3073         * tr1/4_metaprogramming/is_convertible/value.cc
3074         * tr1/4_metaprogramming/is_empty
3075         * tr1/4_metaprogramming/is_empty/requirements
3076         * tr1/4_metaprogramming/is_empty/requirements/
3077         explicit_instantiations.cc
3078         * tr1/4_metaprogramming/is_empty/requirements/typedefs.cc
3079         * tr1/4_metaprogramming/is_empty/value.cc
3080         * tr1/4_metaprogramming/is_enum
3081         * tr1/4_metaprogramming/is_enum/requirements
3082         * tr1/4_metaprogramming/is_enum/requirements/explicit_instantiations.cc
3083         * tr1/4_metaprogramming/is_enum/requirements/typedefs.cc
3084         * tr1/4_metaprogramming/is_enum/value.cc
3085         * tr1/4_metaprogramming/is_floating_point
3086         * tr1/4_metaprogramming/is_floating_point/requirements
3087         * tr1/4_metaprogramming/is_floating_point/requirements/
3088         explicit_instantiations.cc
3089         * tr1/4_metaprogramming/is_floating_point/requirements/typedefs.cc
3090         * tr1/4_metaprogramming/is_floating_point/value.cc
3091         * tr1/4_metaprogramming/is_function
3092         * tr1/4_metaprogramming/is_function/requirements
3093         * tr1/4_metaprogramming/is_function/requirements/
3094         explicit_instantiations.cc
3095         * tr1/4_metaprogramming/is_function/requirements/typedefs.cc
3096         * tr1/4_metaprogramming/is_function/value.cc
3097         * tr1/4_metaprogramming/is_fundamental
3098         * tr1/4_metaprogramming/is_fundamental/requirements
3099         * tr1/4_metaprogramming/is_fundamental/requirements/
3100         explicit_instantiations.cc
3101         * tr1/4_metaprogramming/is_fundamental/requirements/typedefs.cc
3102         * tr1/4_metaprogramming/is_fundamental/value.cc
3103         * tr1/4_metaprogramming/is_integral
3104         * tr1/4_metaprogramming/is_integral/requirements
3105         * tr1/4_metaprogramming/is_integral/requirements/
3106         explicit_instantiations.cc
3107         * tr1/4_metaprogramming/is_integral/requirements/typedefs.cc
3108         * tr1/4_metaprogramming/is_integral/value.cc
3109         * tr1/4_metaprogramming/is_member_function_pointer
3110         * tr1/4_metaprogramming/is_member_function_pointer/requirements
3111         * tr1/4_metaprogramming/is_member_function_pointer/
3112         requirements/explicit_instantiations.cc
3113         * tr1/4_metaprogramming/is_member_function_pointer/
3114         requirements/typedefs.cc
3115         * tr1/4_metaprogramming/is_member_function_pointer/value.cc
3116         * tr1/4_metaprogramming/is_member_object_pointer
3117         * tr1/4_metaprogramming/is_member_object_pointer/requirements
3118         * tr1/4_metaprogramming/is_member_object_pointer/
3119         requirements/explicit_instantiations.cc
3120         * tr1/4_metaprogramming/is_member_object_pointer/
3121         requirements/typedefs.cc
3122         * tr1/4_metaprogramming/is_member_object_pointer/value.cc
3123         * tr1/4_metaprogramming/is_member_pointer
3124         * tr1/4_metaprogramming/is_member_pointer/requirements
3125         * tr1/4_metaprogramming/is_member_pointer/requirements/
3126         explicit_instantiations.cc
3127         * tr1/4_metaprogramming/is_member_pointer/requirements/typedefs.cc
3128         * tr1/4_metaprogramming/is_member_pointer/value.cc
3129         * tr1/4_metaprogramming/is_object
3130         * tr1/4_metaprogramming/is_object/requirements
3131         * tr1/4_metaprogramming/is_object/requirements/
3132         explicit_instantiations.cc
3133         * tr1/4_metaprogramming/is_object/requirements/typedefs.cc
3134         * tr1/4_metaprogramming/is_object/value.cc
3135         * tr1/4_metaprogramming/is_pod
3136         * tr1/4_metaprogramming/is_pod/requirements
3137         * tr1/4_metaprogramming/is_pod/requirements/explicit_instantiations.cc
3138         * tr1/4_metaprogramming/is_pod/requirements/typedefs.cc
3139         * tr1/4_metaprogramming/is_pod/value.cc
3140         * tr1/4_metaprogramming/is_pointer
3141         * tr1/4_metaprogramming/is_pointer/requirements
3142         * tr1/4_metaprogramming/is_pointer/requirements/
3143         explicit_instantiations.cc
3144         * tr1/4_metaprogramming/is_pointer/requirements/typedefs.cc
3145         * tr1/4_metaprogramming/is_pointer/value.cc
3146         * tr1/4_metaprogramming/is_polymorphic
3147         * tr1/4_metaprogramming/is_polymorphic/requirements
3148         * tr1/4_metaprogramming/is_polymorphic/requirements/
3149         explicit_instantiations.cc
3150         * tr1/4_metaprogramming/is_polymorphic/requirements/typedefs.cc
3151         * tr1/4_metaprogramming/is_polymorphic/value.cc
3152         * tr1/4_metaprogramming/is_reference
3153         * tr1/4_metaprogramming/is_reference/requirements
3154         * tr1/4_metaprogramming/is_reference/requirements/
3155         explicit_instantiations.cc
3156         * tr1/4_metaprogramming/is_reference/requirements/typedefs.cc
3157         * tr1/4_metaprogramming/is_reference/value.cc
3158         * tr1/4_metaprogramming/is_same
3159         * tr1/4_metaprogramming/is_same/requirements
3160         * tr1/4_metaprogramming/is_same/requirements/explicit_instantiations.cc
3161         * tr1/4_metaprogramming/is_same/requirements/typedefs.cc
3162         * tr1/4_metaprogramming/is_same/value.cc
3163         * tr1/4_metaprogramming/is_scalar
3164         * tr1/4_metaprogramming/is_scalar/requirements
3165         * tr1/4_metaprogramming/is_scalar/requirements/
3166         explicit_instantiations.cc
3167         * tr1/4_metaprogramming/is_scalar/requirements/typedefs.cc
3168         * tr1/4_metaprogramming/is_scalar/value.cc
3169         * tr1/4_metaprogramming/is_signed
3170         * tr1/4_metaprogramming/is_signed/requirements
3171         * tr1/4_metaprogramming/is_signed/requirements/
3172         explicit_instantiations.cc
3173         * tr1/4_metaprogramming/is_signed/requirements/typedefs.cc
3174         * tr1/4_metaprogramming/is_signed/value.cc
3175         * tr1/4_metaprogramming/is_union
3176         * tr1/4_metaprogramming/is_union/requirements
3177         * tr1/4_metaprogramming/is_union/requirements/
3178         explicit_instantiations.cc
3179         * tr1/4_metaprogramming/is_union/requirements/typedefs.cc
3180         * tr1/4_metaprogramming/is_union/value.cc
3181         * tr1/4_metaprogramming/is_unsigned
3182         * tr1/4_metaprogramming/is_unsigned/requirements
3183         * tr1/4_metaprogramming/is_unsigned/requirements/
3184         explicit_instantiations.cc
3185         * tr1/4_metaprogramming/is_unsigned/requirements/typedefs.cc
3186         * tr1/4_metaprogramming/is_unsigned/value.cc
3187         * tr1/4_metaprogramming/is_void
3188         * tr1/4_metaprogramming/is_void/requirements
3189         * tr1/4_metaprogramming/is_void/requirements/explicit_instantiations.cc
3190         * tr1/4_metaprogramming/is_void/requirements/typedefs.cc
3191         * tr1/4_metaprogramming/is_void/value.cc
3192         * tr1/4_metaprogramming/is_volatile
3193         * tr1/4_metaprogramming/is_volatile/requirements
3194         * tr1/4_metaprogramming/is_volatile/requirements/
3195         explicit_instantiations.cc
3196         * tr1/4_metaprogramming/is_volatile/requirements/typedefs.cc
3197         * tr1/4_metaprogramming/is_volatile/value.cc
3198         * tr1/4_metaprogramming/rank
3199         * tr1/4_metaprogramming/rank/requirements
3200         * tr1/4_metaprogramming/rank/requirements/explicit_instantiations.cc
3201         * tr1/4_metaprogramming/rank/requirements/typedefs.cc
3202         * tr1/4_metaprogramming/rank/value.cc
3203         * tr1/4_metaprogramming/remove_all_extents
3204         * tr1/4_metaprogramming/remove_all_extents/requirements
3205         * tr1/4_metaprogramming/remove_all_extents/requirements/
3206         explicit_instantiations.cc
3207         * tr1/4_metaprogramming/remove_all_extents/value.cc
3208         * tr1/4_metaprogramming/remove_const
3209         * tr1/4_metaprogramming/remove_const/requirements
3210         * tr1/4_metaprogramming/remove_const/requirements/
3211         explicit_instantiations.cc
3212         * tr1/4_metaprogramming/remove_const/value.cc
3213         * tr1/4_metaprogramming/remove_cv
3214         * tr1/4_metaprogramming/remove_cv/requirements
3215         * tr1/4_metaprogramming/remove_cv/requirements/
3216         explicit_instantiations.cc
3217         * tr1/4_metaprogramming/remove_cv/value.cc
3218         * tr1/4_metaprogramming/remove_extent
3219         * tr1/4_metaprogramming/remove_extent/requirements
3220         * tr1/4_metaprogramming/remove_extent/requirements/
3221         explicit_instantiations.cc
3222         * tr1/4_metaprogramming/remove_extent/value.cc
3223         * tr1/4_metaprogramming/remove_pointer
3224         * tr1/4_metaprogramming/remove_pointer/requirements
3225         * tr1/4_metaprogramming/remove_pointer/requirements/
3226         explicit_instantiations.cc
3227         * tr1/4_metaprogramming/remove_pointer/value.cc
3228         * tr1/4_metaprogramming/remove_reference
3229         * tr1/4_metaprogramming/remove_reference/requirements
3230         * tr1/4_metaprogramming/remove_reference/requirements/
3231         explicit_instantiations.cc
3232         * tr1/4_metaprogramming/remove_reference/value.cc
3233         * tr1/4_metaprogramming/remove_volatile
3234         * tr1/4_metaprogramming/remove_volatile/requirements
3235         * tr1/4_metaprogramming/remove_volatile/requirements/
3236         explicit_instantiations.cc
3237         * tr1/4_metaprogramming/remove_volatile/value.cc
3238
3239         Deleted in testsuite:   
3240         * tr1/4_metaprogramming/alignment_of/alignment_of.cc
3241         * tr1/4_metaprogramming/alignment_of/typedefs.cc
3242         * tr1/4_metaprogramming/array_modifications
3243         * tr1/4_metaprogramming/array_modifications/remove_all_extents.cc
3244         * tr1/4_metaprogramming/array_modifications/remove_extent.cc
3245         * tr1/4_metaprogramming/composite_type_traits
3246         * tr1/4_metaprogramming/composite_type_traits/is_arithmetic
3247         * tr1/4_metaprogramming/composite_type_traits/is_arithmetic/
3248         is_arithmetic.cc
3249         * tr1/4_metaprogramming/composite_type_traits/is_arithmetic/typedefs.cc
3250         * tr1/4_metaprogramming/composite_type_traits/is_compound
3251         * tr1/4_metaprogramming/composite_type_traits/is_compound/
3252         is_compound.cc
3253         * tr1/4_metaprogramming/composite_type_traits/is_compound/typedefs.cc
3254         * tr1/4_metaprogramming/composite_type_traits/is_fundamental
3255         * tr1/4_metaprogramming/composite_type_traits/is_fundamental/
3256         is_fundamental.cc
3257         * tr1/4_metaprogramming/composite_type_traits/is_fundamental/
3258         typedefs.cc
3259         * tr1/4_metaprogramming/composite_type_traits/is_member_pointer
3260         * tr1/4_metaprogramming/composite_type_traits/is_member_pointer/
3261         is_member_pointer.cc
3262         * tr1/4_metaprogramming/composite_type_traits/is_member_pointer/
3263         typedefs.cc
3264         * tr1/4_metaprogramming/composite_type_traits/is_object
3265         * tr1/4_metaprogramming/composite_type_traits/is_object/24808.cc
3266         * tr1/4_metaprogramming/composite_type_traits/is_object/is_object.cc
3267         * tr1/4_metaprogramming/composite_type_traits/is_object/typedefs.cc
3268         * tr1/4_metaprogramming/composite_type_traits/is_scalar
3269         * tr1/4_metaprogramming/composite_type_traits/is_scalar/is_scalar.cc
3270         * tr1/4_metaprogramming/composite_type_traits/is_scalar/typedefs.cc
3271         * tr1/4_metaprogramming/const_volatile_modifications
3272         * tr1/4_metaprogramming/const_volatile_modifications/add_const.cc
3273         * tr1/4_metaprogramming/const_volatile_modifications/add_cv.cc
3274         * tr1/4_metaprogramming/const_volatile_modifications/add_volatile.cc
3275         * tr1/4_metaprogramming/const_volatile_modifications/remove_const.cc
3276         * tr1/4_metaprogramming/const_volatile_modifications/remove_cv.cc
3277         * tr1/4_metaprogramming/const_volatile_modifications/remove_volatile.cc
3278         * tr1/4_metaprogramming/extent/extent.cc
3279         * tr1/4_metaprogramming/extent/typedefs.cc
3280         * tr1/4_metaprogramming/has_nothrow_assign/has_nothrow_assign.cc
3281         * tr1/4_metaprogramming/has_nothrow_assign/typedefs.cc
3282         * tr1/4_metaprogramming/has_nothrow_constructor/
3283         has_nothrow_constructor.cc
3284         * tr1/4_metaprogramming/has_nothrow_constructor/typedefs.cc
3285         * tr1/4_metaprogramming/has_nothrow_copy/has_nothrow_copy.cc
3286         * tr1/4_metaprogramming/has_nothrow_copy/typedefs.cc
3287         * tr1/4_metaprogramming/has_trivial_assign/has_trivial_assign.cc
3288         * tr1/4_metaprogramming/has_trivial_assign/typedefs.cc
3289         * tr1/4_metaprogramming/has_trivial_constructor/
3290         has_trivial_constructor.cc
3291         * tr1/4_metaprogramming/has_trivial_constructor/typedefs.cc
3292         * tr1/4_metaprogramming/has_trivial_copy/has_trivial_copy.cc
3293         * tr1/4_metaprogramming/has_trivial_copy/typedefs.cc
3294         * tr1/4_metaprogramming/has_trivial_destructor/
3295         has_trivial_destructor.cc
3296         * tr1/4_metaprogramming/has_trivial_destructor/typedefs.cc
3297         * tr1/4_metaprogramming/has_virtual_destructor/
3298         has_virtual_destructor.cc
3299         * tr1/4_metaprogramming/has_virtual_destructor/typedefs.cc
3300         * tr1/4_metaprogramming/helper_classes
3301         * tr1/4_metaprogramming/helper_classes/static_definition.cc
3302         * tr1/4_metaprogramming/helper_classes/true_false_type.cc
3303         * tr1/4_metaprogramming/helper_classes/true_false_type_typedefs.cc
3304         * tr1/4_metaprogramming/helper_classes/typedefs.cc
3305         * tr1/4_metaprogramming/integral_constant/true_false_type.cc
3306         * tr1/4_metaprogramming/integral_constant/typedefs.cc
3307         * tr1/4_metaprogramming/is_abstract/is_abstract.cc
3308         * tr1/4_metaprogramming/is_abstract/typedefs.cc
3309         * tr1/4_metaprogramming/is_arithmetic/is_arithmetic.cc
3310         * tr1/4_metaprogramming/is_arithmetic/typedefs.cc
3311         * tr1/4_metaprogramming/is_array/is_array.cc
3312         * tr1/4_metaprogramming/is_array/typedefs.cc
3313         * tr1/4_metaprogramming/is_base_of/is_base_of.cc
3314         * tr1/4_metaprogramming/is_base_of/typedefs.cc
3315         * tr1/4_metaprogramming/is_class/is_class.cc
3316         * tr1/4_metaprogramming/is_class/typedefs.cc
3317         * tr1/4_metaprogramming/is_compound/is_compound.cc
3318         * tr1/4_metaprogramming/is_compound/typedefs.cc
3319         * tr1/4_metaprogramming/is_const/is_const.cc
3320         * tr1/4_metaprogramming/is_const/typedefs.cc
3321         * tr1/4_metaprogramming/is_convertible/is_convertible.cc
3322         * tr1/4_metaprogramming/is_convertible/typedefs.cc
3323         * tr1/4_metaprogramming/is_empty/is_empty.cc
3324         * tr1/4_metaprogramming/is_empty/typedefs.cc
3325         * tr1/4_metaprogramming/is_enum/is_enum.cc
3326         * tr1/4_metaprogramming/is_enum/typedefs.cc
3327         * tr1/4_metaprogramming/is_floating_point/is_floating_point.cc
3328         * tr1/4_metaprogramming/is_floating_point/typedefs.cc
3329         * tr1/4_metaprogramming/is_function/is_function.cc
3330         * tr1/4_metaprogramming/is_function/typedefs.cc
3331         * tr1/4_metaprogramming/is_fundamental/is_fundamental.cc
3332         * tr1/4_metaprogramming/is_fundamental/typedefs.cc
3333         * tr1/4_metaprogramming/is_integral/is_integral.cc
3334         * tr1/4_metaprogramming/is_integral/typedefs.cc
3335         * tr1/4_metaprogramming/is_member_function_pointer/
3336         is_member_function_pointer.cc
3337         * tr1/4_metaprogramming/is_member_function_pointer/typedefs.cc
3338         * tr1/4_metaprogramming/is_member_object_pointer/
3339         is_member_object_pointer.cc
3340         * tr1/4_metaprogramming/is_member_object_pointer/typedefs.cc
3341         * tr1/4_metaprogramming/is_member_pointer/is_member_pointer.cc
3342         * tr1/4_metaprogramming/is_member_pointer/typedefs.cc
3343         * tr1/4_metaprogramming/is_object/is_object.cc
3344         * tr1/4_metaprogramming/is_object/typedefs.cc
3345         * tr1/4_metaprogramming/is_pod/is_pod.cc
3346         * tr1/4_metaprogramming/is_pod/typedefs.cc
3347         * tr1/4_metaprogramming/is_pointer/is_pointer.cc
3348         * tr1/4_metaprogramming/is_pointer/typedefs.cc
3349         * tr1/4_metaprogramming/is_polymorphic/is_polymorphic.cc
3350         * tr1/4_metaprogramming/is_polymorphic/typedefs.cc
3351         * tr1/4_metaprogramming/is_reference/is_reference.cc
3352         * tr1/4_metaprogramming/is_reference/typedefs.cc
3353         * tr1/4_metaprogramming/is_same/is_same.cc
3354         * tr1/4_metaprogramming/is_same/typedefs.cc
3355         * tr1/4_metaprogramming/is_scalar/is_scalar.cc
3356         * tr1/4_metaprogramming/is_scalar/typedefs.cc
3357         * tr1/4_metaprogramming/is_signed/is_signed.cc
3358         * tr1/4_metaprogramming/is_signed/typedefs.cc
3359         * tr1/4_metaprogramming/is_union/is_union.cc
3360         * tr1/4_metaprogramming/is_union/typedefs.cc
3361         * tr1/4_metaprogramming/is_unsigned/is_unsigned.cc
3362         * tr1/4_metaprogramming/is_unsigned/typedefs.cc
3363         * tr1/4_metaprogramming/is_void/is_void.cc
3364         * tr1/4_metaprogramming/is_void/typedefs.cc
3365         * tr1/4_metaprogramming/is_volatile/is_volatile.cc
3366         * tr1/4_metaprogramming/is_volatile/typedefs.cc
3367         * tr1/4_metaprogramming/other_transformations
3368         * tr1/4_metaprogramming/other_transformations/aligned_storage
3369         * tr1/4_metaprogramming/other_transformations/aligned_storage/
3370         aligned_storage.cc
3371         * tr1/4_metaprogramming/other_transformations/aligned_storage/
3372         typedefs.cc
3373         * tr1/4_metaprogramming/pointer_modifications
3374         * tr1/4_metaprogramming/pointer_modifications/add_pointer.cc
3375         * tr1/4_metaprogramming/pointer_modifications/remove_pointer.cc
3376         * tr1/4_metaprogramming/primary_type_categories
3377         * tr1/4_metaprogramming/primary_type_categories/is_array
3378         * tr1/4_metaprogramming/primary_type_categories/is_array/is_array.cc
3379         * tr1/4_metaprogramming/primary_type_categories/is_array/typedefs.cc
3380         * tr1/4_metaprogramming/primary_type_categories/is_class
3381         * tr1/4_metaprogramming/primary_type_categories/is_class/is_class.cc
3382         * tr1/4_metaprogramming/primary_type_categories/is_class/typedefs.cc
3383         * tr1/4_metaprogramming/primary_type_categories/is_enum
3384         * tr1/4_metaprogramming/primary_type_categories/is_enum/24808.cc
3385         * tr1/4_metaprogramming/primary_type_categories/is_enum/is_enum.cc
3386         * tr1/4_metaprogramming/primary_type_categories/is_enum/typedefs.cc
3387         * tr1/4_metaprogramming/primary_type_categories/is_floating_point
3388         * tr1/4_metaprogramming/primary_type_categories/is_floating_point/
3389         is_floating_point.cc
3390         * tr1/4_metaprogramming/primary_type_categories/is_floating_point/
3391         typedefs.cc
3392         * tr1/4_metaprogramming/primary_type_categories/is_function
3393         * tr1/4_metaprogramming/primary_type_categories/is_function/24808.cc
3394         * tr1/4_metaprogramming/primary_type_categories/is_function/
3395         is_function.cc
3396         * tr1/4_metaprogramming/primary_type_categories/is_function/typedefs.cc
3397         * tr1/4_metaprogramming/primary_type_categories/is_integral
3398         * tr1/4_metaprogramming/primary_type_categories/is_integral/
3399         is_integral.cc
3400         * tr1/4_metaprogramming/primary_type_categories/is_integral/typedefs.cc
3401         * tr1/4_metaprogramming/primary_type_categories/
3402         is_member_function_pointer
3403         * tr1/4_metaprogramming/primary_type_categories/
3404         is_member_function_pointer/is_member_function_pointer.cc
3405         * tr1/4_metaprogramming/primary_type_categories/
3406         is_member_function_pointer/typedefs.cc
3407         * tr1/4_metaprogramming/primary_type_categories/
3408         is_member_object_pointer
3409         * tr1/4_metaprogramming/primary_type_categories/
3410         is_member_object_pointer/is_member_object_pointer.cc
3411         * tr1/4_metaprogramming/primary_type_categories/
3412         is_member_object_pointer/typedefs.cc
3413         * tr1/4_metaprogramming/primary_type_categories/is_pointer
3414         * tr1/4_metaprogramming/primary_type_categories/is_pointer/
3415         is_pointer.cc
3416         * tr1/4_metaprogramming/primary_type_categories/is_pointer/typedefs.cc
3417         * tr1/4_metaprogramming/primary_type_categories/is_reference
3418         * tr1/4_metaprogramming/primary_type_categories/is_reference/
3419         is_reference.cc
3420         * tr1/4_metaprogramming/primary_type_categories/is_reference/
3421         typedefs.cc
3422         * tr1/4_metaprogramming/primary_type_categories/is_union
3423         * tr1/4_metaprogramming/primary_type_categories/is_union/is_union.cc
3424         * tr1/4_metaprogramming/primary_type_categories/is_union/typedefs.cc
3425         * tr1/4_metaprogramming/primary_type_categories/is_void
3426         * tr1/4_metaprogramming/primary_type_categories/is_void/is_void.cc
3427         * tr1/4_metaprogramming/primary_type_categories/is_void/typedefs.cc
3428         * tr1/4_metaprogramming/rank/rank.cc
3429         * tr1/4_metaprogramming/rank/typedefs.cc
3430         * tr1/4_metaprogramming/reference_modifications/add_reference.cc
3431         * tr1/4_metaprogramming/reference_modifications/remove_reference.cc
3432         * tr1/4_metaprogramming/relationships_between_types
3433         * tr1/4_metaprogramming/relationships_between_types/is_base_of
3434         * tr1/4_metaprogramming/relationships_between_types/is_base_of/
3435         is_base_of.cc
3436         * tr1/4_metaprogramming/relationships_between_types/is_base_of/
3437         typedefs.cc
3438         * tr1/4_metaprogramming/relationships_between_types/is_convertible
3439         * tr1/4_metaprogramming/relationships_between_types/is_convertible/
3440         is_convertible.cc
3441         * tr1/4_metaprogramming/relationships_between_types/is_convertible/
3442         typedefs.cc
3443         * tr1/4_metaprogramming/relationships_between_types/is_same
3444         * tr1/4_metaprogramming/relationships_between_types/is_same/is_same.cc
3445         * tr1/4_metaprogramming/relationships_between_types/is_same/typedefs.cc
3446         * tr1/4_metaprogramming/type_properties
3447         * tr1/4_metaprogramming/type_properties/alignment_of
3448         * tr1/4_metaprogramming/type_properties/alignment_of/alignment_of.cc
3449         * tr1/4_metaprogramming/type_properties/alignment_of/typedefs.cc
3450         * tr1/4_metaprogramming/type_properties/extent
3451         * tr1/4_metaprogramming/type_properties/extent/extent.cc
3452         * tr1/4_metaprogramming/type_properties/extent/typedefs.cc
3453         * tr1/4_metaprogramming/type_properties/has_nothrow_assign
3454         * tr1/4_metaprogramming/type_properties/has_nothrow_assign/
3455         has_nothrow_assign.cc
3456         * tr1/4_metaprogramming/type_properties/has_nothrow_assign/typedefs.cc
3457         * tr1/4_metaprogramming/type_properties/has_nothrow_constructor
3458         * tr1/4_metaprogramming/type_properties/has_nothrow_constructor/
3459         has_nothrow_constructor.cc
3460         * tr1/4_metaprogramming/type_properties/has_nothrow_constructor/
3461         typedefs.cc
3462         * tr1/4_metaprogramming/type_properties/has_nothrow_copy
3463         * tr1/4_metaprogramming/type_properties/has_nothrow_copy/
3464         has_nothrow_copy.cc
3465         * tr1/4_metaprogramming/type_properties/has_nothrow_copy/typedefs.cc
3466         * tr1/4_metaprogramming/type_properties/has_trivial_assign
3467         * tr1/4_metaprogramming/type_properties/has_trivial_assign/
3468         has_trivial_assign.cc
3469         * tr1/4_metaprogramming/type_properties/has_trivial_assign/typedefs.cc
3470         * tr1/4_metaprogramming/type_properties/has_trivial_constructor
3471         * tr1/4_metaprogramming/type_properties/has_trivial_constructor/
3472         has_trivial_constructor.cc
3473         * tr1/4_metaprogramming/type_properties/has_trivial_constructor/
3474         typedefs.cc
3475         * tr1/4_metaprogramming/type_properties/has_trivial_copy
3476         * tr1/4_metaprogramming/type_properties/has_trivial_copy/
3477         has_trivial_copy.cc
3478         * tr1/4_metaprogramming/type_properties/has_trivial_copy/typedefs.cc
3479         * tr1/4_metaprogramming/type_properties/has_trivial_destructor
3480         * tr1/4_metaprogramming/type_properties/has_trivial_destructor/
3481         has_trivial_destructor.cc
3482         * tr1/4_metaprogramming/type_properties/has_trivial_destructor/
3483         typedefs.cc
3484         * tr1/4_metaprogramming/type_properties/has_virtual_destructor
3485         * tr1/4_metaprogramming/type_properties/has_virtual_destructor/
3486         has_virtual_destructor.cc
3487         * tr1/4_metaprogramming/type_properties/has_virtual_destructor/
3488         typedefs.cc
3489         * tr1/4_metaprogramming/type_properties/is_abstract
3490         * tr1/4_metaprogramming/type_properties/is_abstract/is_abstract.cc
3491         * tr1/4_metaprogramming/type_properties/is_abstract/typedefs.cc
3492         * tr1/4_metaprogramming/type_properties/is_const
3493         * tr1/4_metaprogramming/type_properties/is_const/is_const.cc
3494         * tr1/4_metaprogramming/type_properties/is_const/typedefs.cc
3495         * tr1/4_metaprogramming/type_properties/is_empty
3496         * tr1/4_metaprogramming/type_properties/is_empty/is_empty.cc
3497         * tr1/4_metaprogramming/type_properties/is_empty/typedefs.cc
3498         * tr1/4_metaprogramming/type_properties/is_pod
3499         * tr1/4_metaprogramming/type_properties/is_pod/is_pod.cc
3500         * tr1/4_metaprogramming/type_properties/is_pod/typedefs.cc
3501         * tr1/4_metaprogramming/type_properties/is_polymorphic
3502         * tr1/4_metaprogramming/type_properties/is_polymorphic/24809.cc
3503         * tr1/4_metaprogramming/type_properties/is_polymorphic/
3504         is_polymorphic.cc
3505         * tr1/4_metaprogramming/type_properties/is_polymorphic/typedefs.cc
3506         * tr1/4_metaprogramming/type_properties/is_signed
3507         * tr1/4_metaprogramming/type_properties/is_signed/is_signed.cc
3508         * tr1/4_metaprogramming/type_properties/is_signed/typedefs.cc
3509         * tr1/4_metaprogramming/type_properties/is_unsigned
3510         * tr1/4_metaprogramming/type_properties/is_unsigned/is_unsigned.cc
3511         * tr1/4_metaprogramming/type_properties/is_unsigned/typedefs.cc
3512         * tr1/4_metaprogramming/type_properties/is_volatile
3513         * tr1/4_metaprogramming/type_properties/is_volatile/is_volatile.cc
3514         * tr1/4_metaprogramming/type_properties/is_volatile/typedefs.cc
3515         * tr1/4_metaprogramming/type_properties/rank
3516         * tr1/4_metaprogramming/type_properties/rank/rank.cc
3517         * tr1/4_metaprogramming/type_properties/rank/typedefs.cc
3518
3519 2007-04-30  Hans-Peter Nilsson  <hp@axis.com>
3520
3521         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Correct
3522         regexp to filter out -nostdinc++.
3523
3524 2007-04-30  Paolo Carlini  <pcarlini@suse.de>
3525
3526         PR libstdc++/30449 (equal)
3527         * include/bits/stl_algobase.h (struct __niter_base): Add.
3528         (copy(_II, _II, _OI), copy_backward(_BI1, _BI1, _BI2),
3529         fill(_ForwardIterator, _ForwardIterator, const _Tp&),
3530         fill_n(_OI, _Size, const _Tp&), equal(_II1, _II1, _II2)):
3531         Use it.
3532         (struct __copy_normal, __copy_backward_normal,
3533         struct __fill_normal, struct __fill_n_normal): Remove.
3534         (struct __equal, struct __equal_aux): Add.
3535         * include/bits/stl_iterator.h: Add _Iterator_type typedef.
3536
3537         * include/bits/stl_algobase.h (__fill_aux(wchar_t*,
3538         wchar_t*, wchar_t), __fill_n_aux(wchar_t*, _Size, wchar_t)):
3539         Remove.
3540
3541         * testsuite/23_containers/requirements/sequences/dr438/vector/
3542         constructor_1_neg.cc: Adjust dg-error line number.
3543         * testsuite/23_containers/requirements/sequences/dr438/vector/
3544         constructor_2_neg.cc: Likewise.
3545
3546 2007-04-30  Paolo Carlini  <pcarlini@suse.de>
3547
3548         * include/tr1/type_traits (is_pod): Use __is_pod.
3549         * testsuite/tr1/4_metaprogramming/type_properties/
3550         has_trivial_destructor/has_trivial_destructor.cc: Adjust.
3551         * testsuite/tr1/4_metaprogramming/type_properties/
3552         has_nothrow_constructor/has_nothrow_constructor.cc: Likewise.
3553         * testsuite/tr1/4_metaprogramming/type_properties/
3554         has_trivial_constructor/has_trivial_constructor.cc: Likewise.
3555         * testsuite/tr1/4_metaprogramming/type_properties/
3556         is_pod/is_pod.cc: Likewise.
3557
3558 2007-04-29  Paolo Carlini  <pcarlini@suse.de>
3559
3560         * include/bits/localefwd.h: Remove redundant inline qualifiers.
3561         (__check_facet): Move...
3562         * include/bits/basic_ios.h: ... here.
3563         (widen(char), narrow(char_type, char)): Define inline.
3564         * include/bits/basic_ios.tcc (widen(char), narrow(char_type, char)):
3565         Remove.
3566
3567 2007-04-27  Paolo Carlini  <pcarlini@suse.de>
3568
3569         DR 438, [DR].
3570         * include/bits/basic_string.h (_S_construct_aux(_InIterator,
3571         _InIterator, const _Alloc&, __true_type)): Do not cast the
3572         second argument.
3573         * include/ext/rc_string_base.h (_S_construct_aux(_Integer,
3574         _Integer, const _Alloc&, std::__true_type)): Likewise.
3575         * include/ext/sso_string_base.h (_M_construct_aux(_InIterator,
3576         _InIterator, std::__true_type)): Likewise.
3577         * include/bits/stl_deque.h (_M_initialize_dispatch(_Integer,
3578         _Integer, __true_type)): Cast the first argument.
3579         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do
3580         not cast the arguments.
3581         (_M_insert_dispatch(iterator, _Integer, _Integer, __true_type)):
3582         Likewise.
3583         * include/bits/stl_list.h (_M_initialize_dispatch(_Integer,
3584         _Integer, __true_type)): Likewise.
3585         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do
3586         not cast both arguments.
3587         * include/bits/stl_bvector.h (_M_initialize_dispatch(_Integer,
3588         _Integer, __true_type)): Cast the first argument.
3589         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do not
3590         cast the arguments.
3591         * include/bits/stl_vector.h (_M_initialize_dispatch(_Integer,
3592         _Integer, __true_type)): Cast the first argument.
3593         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do not
3594         cast the arguments.
3595         (_M_insert_dispatch(iterator, _Integer, _Integer, __true_type)):
3596         Likewise.
3597         * testsuite/21_strings/basic_string/requirements/dr438/
3598         constructor.cc: New.
3599         * testsuite/ext/vstring/requirements/dr438/constructor.cc: Likewise.
3600         * testsuite/23_containers/requirements/sequences/dr438/deque/
3601         assign_neg.cc: Likewise.
3602         * testsuite/23_containers/requirements/sequences/dr438/deque/
3603         constructor.cc: Likewise.
3604         * testsuite/23_containers/requirements/sequences/dr438/deque/
3605         constructor_1_neg.cc: Likewise.
3606         * testsuite/23_containers/requirements/sequences/dr438/deque/
3607         constructor_1_neg.cc: Likewise.
3608         * testsuite/23_containers/requirements/sequences/dr438/deque/
3609         insert_neg.cc: Likewise.
3610         * testsuite/23_containers/requirements/sequences/dr438/list/
3611         assign_neg.cc: Likewise.
3612         * testsuite/23_containers/requirements/sequences/dr438/list/
3613         constructor.cc: Likewise.
3614         * testsuite/23_containers/requirements/sequences/dr438/list/
3615         constructor_1_neg.cc: Likewise.
3616         * testsuite/23_containers/requirements/sequences/dr438/list/
3617         constructor_1_neg.cc: Likewise.
3618         * testsuite/23_containers/requirements/sequences/dr438/list/
3619         insert_neg.cc: Likewise.
3620         * testsuite/23_containers/requirements/sequences/dr438/vector/
3621         assign_neg.cc: Likewise.
3622         * testsuite/23_containers/requirements/sequences/dr438/vector/
3623         constructor.cc: Likewise.
3624         * testsuite/23_containers/requirements/sequences/dr438/vector/
3625         constructor_1_neg.cc: Likewise.
3626         * testsuite/23_containers/requirements/sequences/dr438/vector/
3627         constructor_1_neg.cc: Likewise.
3628         * testsuite/23_containers/requirements/sequences/dr438/vector/
3629         insert_neg.cc: Likewise.
3630         * testsuite/23_containers/requirements/sequences/dr438/vector/
3631         bool/constructor.cc: Likewise.
3632         * docs/html/ext/howto.html: Add an entry for DR 438.
3633
3634 2007-04-25  Paolo Carlini  <pcarlini@suse.de>
3635
3636         * include/bits/locale_classes.h: Remove redundant inline specifiers.
3637         * include/bits/ios_base.h: Likewise.
3638         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust dg-error line
3639         numbers.
3640         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
3641
3642 2007-04-24  Paolo Carlini  <pcarlini@suse.de>
3643
3644         * include/bits/locale_facets.h (class collate, class collate_byname):
3645         Move...
3646         * include/bits/locale_classes.h: ... here.
3647         * include/bits/locale_facets.tcc (locale::combine, locale::operator(),
3648         has_facet, use_facet, collate::_M_compare, collate::_M_transform,
3649         collate::do_compare, collate::do_transform, collate::do_hash): Move...
3650         * include/bits/locale_classes.tcc: ... here, new.
3651         * include/Makefile.am: Add.
3652         * testsuite/util/testsuite_abi.h: Include <locale>.
3653         * include/std/locale: Tweak.
3654         * include/std/istream: Likewise.
3655         * include/std/ostream: Likewise.
3656         * include/bits/codecvt.h: Likewise.
3657         * include/Makefile.in: Regenerate.
3658
3659         * include/bits/codecvt.h: Adjust extern template declarations.
3660         * include/bits/ostream_insert.h: Likewise.
3661         * include/bits/ostream.tcc: Likewise.
3662
3663         * include/bits/locale_facets.h: Do not include <bits/codecvt.h>.
3664         * include/std/fstream: Do it here.
3665         * include/bits/locale_facets_nonio.h: Likewise.
3666
3667 2007-04-23  Paolo Carlini  <pcarlini@suse.de>
3668
3669         * include/bits/locale_facets.h (class time_base,
3670         struct __timepunct_cache, class __timepunct, class time_get,
3671         class time_get_byname, class time_put, class time_put_byname,
3672         class money_base, struct __moneypunct_cache, class moneypunct,
3673         class moneypunct_byname, class money_get, class money_put,
3674         struct messages_base, class messages, class messages_byname): Move...
3675         * include/bits/locale_facets_nonio.h: ... here.
3676         * include/bits/locale_facets.tcc
3677         (struct __use_cache<__moneypunct_cache<> >,
3678         __moneypunct_cache<>::_M_cache, money_get<>::_M_extract,
3679         money_get<>::__do_get, money_get<>::do_get, money_put<>::_M_insert,
3680         money_put<>::__do_put, money_put<>::do_put, time_get<>::do_date_order,
3681         time_get<>::_M_extract_via_format, time_get<>::_M_extract_num,
3682         time_get<>::_M_extract_name, time_get<>::do_get_time,
3683         time_get<>::do_get_date, time_get<>::do_get_weekday,
3684         time_get<>::do_get_monthname, time_get<>::do_get_year, time_put<>::put,
3685         time_put<>::do_put): Move...
3686         * include/bits/locale_facets_nonio.tcc: ... here.
3687         * include/Makefile.am: Add.
3688         * include/std/locale: Adjust includes.
3689         * include/std/fstream: Likewise.
3690         * include/std/istream: Likewise.
3691         * include/std/ostream: Likewise.
3692         * include/Makefile.in: Regenerate.
3693
3694 2007-04-23  Nathan Sidwell  <nathan@codesourcery.com>
3695
3696         * scripts/testsuite_flags.in: Add --build-cc option.
3697         * testsuite/lib/libstdc++.exp (libstdc++_init): Set cc.  Fix typo
3698         in previous change.
3699         (v3_target_compile_as_c): Use cc.
3700
3701 2007-04-22  Mark Mitchell  <mark@codesourcery.com>
3702
3703         * testsuite/lib/libstdc++.exp (libstdc++_init): Use the same flags
3704         for remote host testing we use for local host testing.  Copy all
3705         testsuite headers to the remote host
3706         (v3_target_compile_as_c): Use remote_exec, not just exec.
3707
3708 2007-04-22  Paolo Carlini  <pcarlini@suse.de>
3709
3710         * include/tr1/functional: Formatting fixes.
3711
3712 2007-04-22  Paolo Carlini  <pcarlini@suse.de>
3713
3714         * include/ext/concurrence.h: Do not include <cstdlib>, use
3715         __builtin_abort.
3716         * include/debug/debug.h: Likewise.
3717         * include/tr1/memory: Likewise.
3718         * include/tr1/boost_shared_ptr.h: Likewise.
3719         * include/tr1/functional: Likewise.
3720
3721 2007-04-22  Paolo Carlini  <pcarlini@suse.de>
3722
3723         * include/bits/locale_facets.tcc: Do not include <typeinfo>.
3724         * testsuite/27_io/basic_ios/imbue/14072.cc: Do it here.
3725         * testsuite/27_io/basic_ios/cons/char/3.cc: Likewise.
3726         * testsuite/27_io/basic_istream/sentry/pod/1.cc: Likewise.
3727         * testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
3728         * testsuite/21_strings/basic_string/inserters_extractors/
3729         pod/10081-in.cc: Likewise.
3730         * testsuite/21_strings/basic_string/inserters_extractors/
3731         pod/10081-out.cc: Likewise.
3732         * testsuite/22_locale/locale/cons/2.cc: Likewise.
3733         * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
3734         * testsuite/22_locale/numpunct/members/pod/2.cc: Likewise.
3735         * testsuite/22_locale/global_templates/1.cc: Likewise.
3736
3737 2007-04-19  Joseph Myers  <joseph@codesourcery.com>
3738
3739         * configure.ac: Allow both powerpc*-*-linux* and powerpc*-*-gnu*
3740         for long double compatibility.
3741         * configure: Regenerate.
3742         * src/complex_io.cc, src/istream-inst.cc, src/ostream-inst.cc:
3743         Condition some _GLIBCXX_LDBL_COMPAT calls on _GLIBCXX_USE_WCHAR_T.
3744
3745 2007-04-14  Steve Ellcey  <sje@cup.hp.com>
3746
3747         * configure.ac: Change how LIBSUPCXX_PICFLAGS is set.
3748         * configure: Regenerate.
3749
3750 2007-04-14  Paolo Carlini  <pcarlini@suse.de>
3751
3752         * config/locale/generic/c_locale.cc: Include <limits>.
3753
3754 2007-04-13  Paolo Carlini  <pcarlini@suse.de>
3755
3756         PR libstdc++/31556
3757         * include/bits/stl_algobase.h (equal(_InputIterator1, _InputIterator1,
3758         _InputIterator2, _BinaryPredicate), mismatch(_InputIterator1,
3759         _InputIterator1, _InputIterator2, _BinaryPredicate)): Convert
3760         predicate return to bool.
3761         * include/bits/stl_algo.h (__find_if(_InputIterator, _InputIterator,
3762         _Predicate, input_iterator_tag), search(_ForwardIterator1,
3763         _ForwardIterator1, _ForwardIterator2, _ForwardIterator2,
3764         _BinaryPredicate), __search_n(_ForwardIterator, _ForwardIterator,
3765         _Integer, const _Tp&, _BinaryPredicate, std::forward_iterator_tag),
3766         __search_n(_RandomAccessIter, _RandomAccessIter, _Integer, const _Tp&,
3767         _BinaryPredicate, std::random_access_iterator_tag),
3768       &n