OSDN Git Service

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