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_ref