OSDN Git Service

2009-04-04 Paolo Carlini <paolo.carlini@oracle.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2009-04-04  Edward Smith-Rowland  <3dw4rd@verizon.net>
2
3         * include/bits/random.h (struct _ShiftMin1): Fix small typo and
4         thinko.
5         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
6         default.cc: Enable.
7
8 2009-04-04  Paolo Carlini  <paolo.carlini@oracle.com>
9
10         PR libstdc++/39629 (partial)
11         * testsuite/26_numerics/random/independent_bits_engine/cons/
12         base_move.cc: Use uint_fast64_t instead of unsigned long.
13         * testsuite/26_numerics/random/independent_bits_engine/cons/
14         seed1.cc: Likewise.
15         * testsuite/26_numerics/random/independent_bits_engine/cons/
16         seed2.cc: Likewise.
17         * testsuite/26_numerics/random/independent_bits_engine/cons/
18         base_copy.cc: Likewise.
19         * testsuite/26_numerics/random/independent_bits_engine/cons/
20         default.cc: Likewise.
21         * testsuite/26_numerics/random/independent_bits_engine/cons/
22         seed_seq.cc: Likewise.
23         * testsuite/26_numerics/random/independent_bits_engine/
24         requirements/typedefs.cc: Likewise.
25         * testsuite/26_numerics/random/independent_bits_engine/
26         operators/equal.cc: Likewise.
27         * testsuite/26_numerics/random/independent_bits_engine/
28         operators/serialize.cc: Likewise.
29         * testsuite/26_numerics/random/mt19937_64.cc: Use ull.
30
31 2009-04-03  Paolo Carlini  <paolo.carlini@oracle.com>
32
33         * include/tr1_impl/random: Remove, empty.
34         * include/tr1_impl/random.tcc: Likewise.
35
36         * include/std/random: Minor clean-ups, formatting fixes, adjust
37         copyright years.
38         * include/bits/random.tcc: Likewise.
39         * include/bits/random.h: Likewise.
40         * include/tr1/random: Likewise.
41         * include/tr1/random.tcc: Likewise.
42         * include/tr1/random.h: Likewise.
43
44 2009-04-02  Benjamin Kosnik  <bkoz@redhat.com>
45
46         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
47         Change to mersenne_twister_engine, add same defaults as
48         mersenne_twister_engine/cons/default.cc.
49         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Same.
50
51         * include/bits/random.tcc (seed_seq::seed_seq): Uglify parameter
52         to __il.
53         * include/bits/random.h (mersenne_twister_engine): Qualify
54         _ShiftMin1 with namespace __detail.
55         (__detail::_ShiftMin1): Use __gnu_cxx::__numeric_traits::max until
56         constexpr std::numeric_limits::max() can be used.
57         (mersenne_twister_engine): Split apart static asserts into one
58         assert per message. Temporarily disable the last three.
59
60 2009-04-02  Edward Smith-Rowland  <3dw4rd@verizon.net>
61
62         * include/Makefile.am: Update to N2836. Modified for new random headers.
63         * include/Makefile.in: Ditto.
64         * include/tr1_impl/random: Moved to tr1/random.h
65         * include/tr1_impl/random.tcc: Moved to tr1
66         * include/tr1/random: Just point to moved tr1 random headers.
67         * include/tr1/random.tcc: Moved from tr1_impl.
68         * include/tr1/random.h: Moved from tr1_impl/random.
69         * include/std/random: Modified to point to std random headers.
70         * include/bits/random.tcc: New implementation of std random facilities.
71         * include/bits/random.h: Ditto.
72         * testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Changed.
73         * testsuite/26_numerics/random/linear_congruential_engine/cons/
74         seed1.cc: New.
75         * testsuite/26_numerics/random/linear_congruential_engine/cons/
76         seed2.cc: New.
77         * testsuite/26_numerics/random/linear_congruential_engine/cons/
78         default.cc: New.
79         * testsuite/26_numerics/random/linear_congruential_engine/requirements/
80         non_uint_neg.cc: New.
81         * testsuite/26_numerics/random/linear_congruential_engine/requirements/
82         typedefs.cc: New.
83         * testsuite/26_numerics/random/linear_congruential_engine/operators/
84         equal.cc: New.
85         * testsuite/26_numerics/random/linear_congruential_engine/operators/
86         serialize.cc: New.
87         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
88         seed1.cc: New.
89         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
90         seed2.cc: New.
91         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
92         default.cc: New.
93         * testsuite/26_numerics/random/mersenne_twister_engine/requirements/
94         typedefs.cc: New.
95         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
96         equal.cc: New.
97         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
98         serialize.cc: New.
99         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
100         seed1.cc: New.
101         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
102         seed2.cc: New.
103         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
104         default.cc: New.
105         * testsuite/26_numerics/random/subtract_with_carry_engine/requirements/
106         typedefs.cc: New.
107         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
108         equal.cc: New.
109         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
110         serialize.cc: New.
111         * testsuite/26_numerics/random/discard_block_engine/cons/
112         base_move.cc: New.
113         * testsuite/26_numerics/random/discard_block_engine/cons/
114         seed1.cc: New.
115         * testsuite/26_numerics/random/discard_block_engine/cons/
116         seed2.cc: New.
117         * testsuite/26_numerics/random/discard_block_engine/cons/
118         base_copy.cc: New.
119         * testsuite/26_numerics/random/discard_block_engine/cons/
120         default.cc: New.
121         * testsuite/26_numerics/random/discard_block_engine/cons/
122         seed_seq.cc: New.
123         * testsuite/26_numerics/random/discard_block_engine/requirements/
124         typedefs.cc: New.
125         * testsuite/26_numerics/random/discard_block_engine/operators/
126         equal.cc: New.
127         * testsuite/26_numerics/random/discard_block_engine/operators/
128         serialize.cc: New.
129         * testsuite/26_numerics/random/independent_bits_engine/cons/
130         base_move.cc: New.
131         * testsuite/26_numerics/random/independent_bits_engine/cons/
132         seed1.cc: New.
133         * testsuite/26_numerics/random/independent_bits_engine/cons/
134         seed2.cc: New.
135         * testsuite/26_numerics/random/independent_bits_engine/cons/
136         base_copy.cc: New.
137         * testsuite/26_numerics/random/independent_bits_engine/cons/
138         default.cc: New.
139         * testsuite/26_numerics/random/independent_bits_engine/cons/
140         seed_seq.cc: New.
141         * testsuite/26_numerics/random/independent_bits_engine/requirements/
142         typedefs.cc: New.
143         * testsuite/26_numerics/random/independent_bits_engine/operators/
144         equal.cc: New.
145         * testsuite/26_numerics/random/independent_bits_engine/operators/
146         serialize.cc: New.
147         * testsuite/26_numerics/random/shuffle_order_engine/cons/
148         base_move.cc: New.
149         * testsuite/26_numerics/random/shuffle_order_engine/cons/
150         seed1.cc: New.
151         * testsuite/26_numerics/random/shuffle_order_engine/cons/
152         seed2.cc: New.
153         * testsuite/26_numerics/random/shuffle_order_engine/cons/
154         base_copy.cc: New.
155         * testsuite/26_numerics/random/shuffle_order_engine/cons/
156         default.cc: New.
157         * testsuite/26_numerics/random/shuffle_order_engine/cons/
158         seed_seq.cc: New.
159         * testsuite/26_numerics/random/shuffle_order_engine/requirements/
160         typedefs.cc: New.
161         * testsuite/26_numerics/random/shuffle_order_engine/operators/
162         equal.cc: New.
163         * testsuite/26_numerics/random/shuffle_order_engine/operators/
164         serialize.cc
165         * testsuite/26_numerics/random/mt19937.cc: New.
166         * testsuite/26_numerics/random/mt19937_64.cc: New.
167         * testsuite/26_numerics/random/minstd_rand.cc: New.
168         * testsuite/26_numerics/random/minstd_rand0.cc: New.
169         * testsuite/26_numerics/random/ranlux24_base.cc: New.
170         * testsuite/26_numerics/random/ranlux48_base.cc: New.
171         * testsuite/26_numerics/random/ranlux24.cc: New.
172         * testsuite/26_numerics/random/ranlux48.cc: New.
173         * testsuite/26_numerics/random/knuth_b.cc: New.
174         * testsuite/26_numerics/random/default_random_engine.cc: New.
175         * testsuite/26_numerics/random/chi_squared_distribution/cons/
176         parms.cc: New.
177         * testsuite/26_numerics/random/chi_squared_distribution/cons/
178         default.cc: New.
179         * testsuite/26_numerics/random/chi_squared_distribution/requirements/
180         typedefs.cc: New.
181         * testsuite/26_numerics/random/chi_squared_distribution/operators/
182         serialize.cc: New.
183         * testsuite/26_numerics/random/normal_distribution/cons/
184         parms.cc: New.
185         * testsuite/26_numerics/random/normal_distribution/cons/
186         default.cc: New.
187         * testsuite/26_numerics/random/normal_distribution/requirements/
188         typedefs.cc: New.
189         * testsuite/26_numerics/random/normal_distribution/operators/
190         serialize.cc: New.
191         * testsuite/26_numerics/random/seed_seq/cons/range.cc: New.
192         * testsuite/26_numerics/random/seed_seq/cons/default.cc: New.
193         * testsuite/26_numerics/random/seed_seq/requirements/typedefs.cc: New.
194         * testsuite/26_numerics/random/uniform_int_distribution/cons/
195         parms_neg.cc: New.
196         * testsuite/26_numerics/random/uniform_int_distribution/cons/
197         parms.cc: New.
198         * testsuite/26_numerics/random/uniform_int_distribution/cons/
199         default.cc: New.
200         * testsuite/26_numerics/random/uniform_int_distribution/requirements/
201         typedefs.cc: New.
202         * testsuite/26_numerics/random/uniform_int_distribution/operators/
203         serialize.cc: New.
204         * testsuite/26_numerics/random/uniform_real_distribution/cons/
205         parms_neg.cc: New.
206         * testsuite/26_numerics/random/uniform_real_distribution/cons/
207         parms.cc: New.
208         * testsuite/26_numerics/random/uniform_real_distribution/cons/
209         default.cc: New.
210         * testsuite/26_numerics/random/uniform_real_distribution/requirements/
211         typedefs.cc: New.
212         * testsuite/26_numerics/random/uniform_real_distribution/operators/
213         serialize.cc: New.
214         * testsuite/26_numerics/random/poisson_distribution/cons/
215         parms.cc: New.
216         * testsuite/26_numerics/random/poisson_distribution/cons/
217         default.cc: New.
218         * testsuite/26_numerics/random/poisson_distribution/requirements/
219         typedefs.cc
220         * testsuite/26_numerics/random/poisson_distribution/operators/
221         serialize.cc: New.
222         * testsuite/26_numerics/random/bernoulli_distribution/cons/
223         parms.cc: New.
224         * testsuite/26_numerics/random/bernoulli_distribution/cons/
225         default.cc: New.
226         * testsuite/26_numerics/random/bernoulli_distribution/requirements/
227         typedefs.cc: New.
228         * testsuite/26_numerics/random/bernoulli_distribution/operators/
229         serialize.cc: New.
230         * testsuite/26_numerics/random/discrete_distribution/cons/
231         range.cc: New.
232         * testsuite/26_numerics/random/discrete_distribution/cons/
233         initlist.cc: New.
234         * testsuite/26_numerics/random/discrete_distribution/cons/
235         default.cc: New.
236         * testsuite/26_numerics/random/discrete_distribution/cons/
237         num_xbound_fun.cc: New.
238         * testsuite/26_numerics/random/discrete_distribution/requirements/
239         typedefs.cc: New.
240         * testsuite/26_numerics/random/discrete_distribution/operators/
241         serialize.cc: New.
242         * testsuite/26_numerics/random/weibull_distribution/cons/
243         parms.cc: New.
244         * testsuite/26_numerics/random/weibull_distribution/cons/
245         default.cc: New.
246         * testsuite/26_numerics/random/weibull_distribution/requirements/
247         typedefs.cc: New.
248         * testsuite/26_numerics/random/weibull_distribution/operators/
249         serialize.cc: New.
250         * testsuite/26_numerics/random/negative_binomial_distribution/cons/
251         parms.cc: New.
252         * testsuite/26_numerics/random/negative_binomial_distribution/cons/
253         default.cc: New.
254         * testsuite/26_numerics/random/negative_binomial_distribution/
255         requirements/typedefs.cc: New.
256         * testsuite/26_numerics/random/negative_binomial_distribution/
257         operators/serialize.cc: New.
258         * testsuite/26_numerics/random/cauchy_distribution/cons/
259         parms.cc: New.
260         * testsuite/26_numerics/random/cauchy_distribution/cons/
261         default.cc: New.
262         * testsuite/26_numerics/random/cauchy_distribution/requirements/
263         typedefs.cc: New.
264         * testsuite/26_numerics/random/cauchy_distribution/operators/
265         serialize.cc: New.
266         * testsuite/26_numerics/random/gamma_distribution/cons/
267         parms.cc: New.
268         * testsuite/26_numerics/random/gamma_distribution/cons/
269         default.cc: New.
270         * testsuite/26_numerics/random/gamma_distribution/requirements/
271         typedefs.cc: New.
272         * testsuite/26_numerics/random/gamma_distribution/operators/
273         serialize.cc: New.
274         * testsuite/26_numerics/random/fisher_f_distribution/cons/
275         parms.cc: New.
276         * testsuite/26_numerics/random/fisher_f_distribution/cons/
277         default.cc: New.
278         * testsuite/26_numerics/random/fisher_f_distribution/requirements/
279         typedefs.cc: New.
280         * testsuite/26_numerics/random/fisher_f_distribution/operators/
281         serialize.cc: New.
282
283         * testsuite/26_numerics/random/exponential_distribution/cons/
284         parms.cc: New.
285         * testsuite/26_numerics/random/exponential_distribution/cons/
286         default.cc: New.
287         * testsuite/26_numerics/random/exponential_distribution/requirements/
288         typedefs.cc: New.
289         * testsuite/26_numerics/random/exponential_distribution/operators/
290         serialize.cc: New.
291         * testsuite/26_numerics/random/lognormal_distribution/cons/
292         parms.cc: New.
293         * testsuite/26_numerics/random/lognormal_distribution/cons/
294         default.cc: New.
295         * testsuite/26_numerics/random/lognormal_distribution/requirements/
296         typedefs.cc: New.
297         * testsuite/26_numerics/random/lognormal_distribution/operators/
298         serialize.cc: New.
299         * testsuite/26_numerics/random/binomial_distribution/cons/
300         parms.cc: New.
301         * testsuite/26_numerics/random/binomial_distribution/cons/
302         default.cc: New.
303         * testsuite/26_numerics/random/binomial_distribution/requirements/
304         typedefs.cc: New.
305         * testsuite/26_numerics/random/binomial_distribution/operators/
306         serialize.cc: New.
307         * testsuite/26_numerics/random/random_device/cons/
308         token.cc: New.
309         * testsuite/26_numerics/random/random_device/cons/
310         default.cc: New.
311         * testsuite/26_numerics/random/random_device/requirements/
312         typedefs.cc: New.
313         * testsuite/26_numerics/random/extreme_value_distribution/cons/
314         parms.cc: New.
315         * testsuite/26_numerics/random/extreme_value_distribution/cons/
316         default.cc: New.
317         * testsuite/26_numerics/random/extreme_value_distribution/requirements/
318         typedefs.cc: New.
319         * testsuite/26_numerics/random/extreme_value_distribution/operators/
320         serialize.cc: New.
321         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
322         range.cc: New.
323         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
324         default.cc: New.
325         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
326         num_xbound_fun.cc: New.
327         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
328         initlist_fun.cc: New.
329         * testsuite/26_numerics/random/piecewise_linear_distribution/
330         requirements/typedefs.cc: New.
331         * testsuite/26_numerics/random/piecewise_linear_distribution/operators/
332         serialize.cc: New.
333         * testsuite/26_numerics/random/student_t_distribution/cons/
334         parms.cc: New.
335         * testsuite/26_numerics/random/student_t_distribution/cons/
336         default.cc: New.
337         * testsuite/26_numerics/random/student_t_distribution/requirements/
338         typedefs.cc: New.
339         * testsuite/26_numerics/random/student_t_distribution/operators/
340         serialize.cc: New.
341         * testsuite/26_numerics/random/geometric_distribution/cons/
342         parms.cc: New.
343         * testsuite/26_numerics/random/geometric_distribution/cons/
344         default.cc: New.
345         * testsuite/26_numerics/random/geometric_distribution/requirements/
346         typedefs.cc: New.
347         * testsuite/26_numerics/random/geometric_distribution/operators/
348         serialize.cc: New.
349         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
350         range.cc: New.
351         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
352         default.cc: New.
353         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
354         num_xbound_fun.cc: New.
355         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
356         initlist_fun.cc: New.
357         * testsuite/26_numerics/random/piecewise_constant_distribution/
358         requirements/typedefs.cc: New.
359         * testsuite/26_numerics/random/piecewise_constant_distribution/
360         operators/serialize.cc: New.
361
362 2009-04-02  Dodji Seketeli  <dodji@redhat.com>
363
364         * include/ext/bitmap_allocator.h: The typedefs should be made public
365         if we want them to be accessible. This has been revealed by the patch
366         that fixes PR c++/26693 in g++.
367
368 2009-04-02  Jakub Jelinek  <jakub@redhat.com>
369
370         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
371         Regenerated.
372         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
373         Regenerated.
374         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
375         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
376         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
377         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
378         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Regenerated.
379         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
380         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
381         Regenerated.
382         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
383
384 2009-03-31  Jason Merrill  <jason@redhat.com>
385
386         * libsupc++/unwind-cxx.h: Correct __cxa_call_terminate prototype.
387
388         PR libstdc++/39310
389         * include/tr1_impl/type_traits (is_function): Add partial
390         specializations with function cv-quals.
391         (__is_function_helper): Remove.
392         (is_member_pointer): Don't define in terms of is_member_*_pointer.
393
394 2009-03-30  Ian Lance Taylor  <iant@google.com>
395
396         * include/backward/hashtable.h (clear): Return quickly if the
397         table is empty.
398
399 2009-03-27  Ian Lance Taylor  <iant@google.com>
400
401         * include/backward/hashtable.h (_S_num_primes): Change to 29.
402         (__stl_prime_list): Add 5 at the start of the list.
403
404 2009-03-25  Edward Smith-Rowland  <3dw4rd@verizon.net>
405
406         * include/std/fstream (basic_filebuf<>::open(const std::string&,
407         ios_base::openmode), basic_ifstream<>::basic_ifstream(const
408         std::string&, ios_base::openmode), basic_ifstream<>::
409         open(const std::string&, ios_base::openmode), basic_ofstream<>::
410         basic_ofstream(const std::string&, ios_base::openmode),
411         basic_ofstream<>::open(const std::string&, ios_base::openmode),
412         basic_fstream<>::basic_fstream(const std::string&, ios_base::openmode),
413         basic_fstream<>::open(const std::string&, ios_base::openmode)):
414         Add in C++0x mode.
415         * testsuite/27_io/basic_ofstream/open/char/2.cc: New.
416         * testsuite/27_io/basic_ofstream/cons/char/2.cc: Likewise.
417         * testsuite/27_io/basic_fstream/open/char/1.cc: Likewise.
418         * testsuite/27_io/basic_fstream/cons/char/1.cc: Likewise.
419         * testsuite/27_io/basic_ifstream/open/char/2.cc: Likewise.
420         * testsuite/27_io/basic_ifstream/cons/char/2.cc: Likewise.
421         * testsuite/27_io/basic_filebuf/open/char/5.cc: Likewise.
422
423 2009-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
424
425         * testsuite/27_io/basic_ofstream/cons/char/2.cc: Rename to...
426         * testsuite/27_io/basic_ofstream/cons/char/1.cc: ... this.    
427         * testsuite/27_io/basic_fstream/cons/3.cc: Rename to...
428         * testsuite/27_io/basic_fstream/cons/1.cc: ... this.
429
430 2009-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
431
432         * include/bits/forward_list.h (_Fwd_list_node_base<>::
433         _M_transfer_after, _M_reverse_after): Move out of line...
434         * include/bits/forward_list.tcc: ... here.
435         (forward_list<>::reverse): Move inline...
436         * include/bits/forward_list.h: ... here; minor cosmetic changes.
437
438 2009-03-22  Mark Mitchell  <mark@codesourcery.com>
439
440         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
441         28277.cc: Likewise.
442         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/28277-3.cc:
443         Likewise.
444         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/28277-4.cc:
445         Likewise.
446         * testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc:
447         Likewise.
448
449 2009-03-22  Mark Mitchell  <mark@codesourcery.com>
450
451         * testsuite/25_algorithms/search_n/iterator.cc: Update copyright
452         year(s).
453         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
454         * testsuite/21_strings/basic_string/inserters_extractors/char/28277.cc
455         Likewise.
456         * testsuite/27_io/basic_ostream/inserters_character/char/28277-3.cc:
457         Likewise.
458         * testsuite/27_io/basic_ostream/inserters_character/char/28277-4.cc:
459         Likewise.
460         * testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
461
462 2009-03-22  Mark Mitchell  <mark@codesourcery.com>
463
464         * testsuite/25_algorithms/search_n/iterator.cc: Condition
465         iterations for simulators.
466         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
467         * testsuite/21_strings/basic_string/inserters_extractors/char/28277.cc
468         Condition stream width for simulators.
469         * testsuite/27_io/basic_ostream/inserters_character/char/28277-3.cc:
470         Likewise.
471         * testsuite/27_io/basic_ostream/inserters_character/char/28277-4.cc:
472         Likewise.
473         * testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
474
475 2009-03-17  Benjamin Kosnik  <bkoz@redhat.com>
476
477         * doc/xml/manual/appendix_contributing.xml: Add docbook style
478         sheet version information. Table-ize docbook element examples.
479         * doc/xml/manual/using.xml: Human-readable header
480         markup. Alphabetized. Add new headers.
481         * doc/html: Regenerate.
482
483 2009-03-15  Paolo Carlini  <paolo.carlini@oracle.com>
484
485         * doc/xml/faq.xml: Fix link to setup documentation.
486
487 2009-03-14  Paolo Carlini  <paolo.carlini@oracle.com>
488
489         * include/std/type_traits (__add_lvalue_reference_helper,
490         __add_rvalue_reference_helper): As an optimization, rewrite
491         condition (avoid is_function).
492
493 2009-03-13  Paolo Carlini  <paolo.carlini@oracle.com>
494
495         PR libstdc++/39405
496         * testsuite/20_util/shared_ptr/cons/39405.cc: New.
497         * testsuite/tr1/2_general_utilities/shared_ptr/cons/39405.cc: Likewise.
498
499 2009-03-12  Benjamin Kosnik  <bkoz@redhat.com>
500
501         * testsuite/30_threads/condition_variable_any/native_handle/
502         typesizes.cc: Include tweaks.
503         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Same.
504         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Same.
505         * testsuite/30_threads/thread/native_handle/typesizes.cc: Same.
506         * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc: Same.
507         * testsuite/30_threads/condition_variable/native_handle/
508         typesizes.cc: Same.
509
510 2009-03-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
511
512         * include/bits/shared_ptr.h: Add include guards.
513         * include/tr1/shared_ptr.h: Likewise.
514
515 2009-03-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
516
517         * include/std/iostream: Fix doxygen link.
518         * include/bits/forward_list.h: Fix doxygen markup.
519         * include/ext/vstring.h: Escape backslash in doxygen comment.
520         * include/bits/basic_string.h: Likewise.
521
522 2009-03-10  Paolo Carlini  <paolo.carlini@oracle.com>
523
524         * doc/xml/faq.xml: Fix links to implementation status pages.
525
526 2009-03-10  Paolo Carlini  <paolo.carlini@oracle.com>
527
528         * include/std/complex (operator+(const complex<>&, const _Tp&),
529         operator+(const _Tp&, const complex<>&),
530         operator-(const complex<>&, const _Tp&),
531         operator-(const _Tp&, const complex<>&)): Do not assume real()
532         returns a reference (against DR 387).
533         * testsuite/26_numerics/complex/dr387_2.cc: New.
534
535 2009-03-02  Benjamin Kosnik  <bkoz@redhat.com>
536
537         * testsuite/thread/pthread4.cc: Move...
538         * testsuite/21_strings/basic_string/pthread4.cc: ...here.
539         * testsuite/thread/pthread5.cc: Move...
540         * testsuite/23_containers/list/pthread5.cc: ...here.
541         * testsuite/thread/pthread6.cc: Move...
542         * testsuite/23_containers/map/pthread6.cc: ...here.
543         * testsuite/thread/pthread7-rope.cc: Move...
544         * testsuite/ext/rope/pthread7-rope.cc: ...here.
545         * testsuite/thread/guard.cc: Move...
546         * testsuite/18_support/pthread_guard.cc: ...here.
547         * testsuite/thread/18185.cc: Move...
548         * testsuite/21_strings/basic_string/pthread18185.cc: ...here.
549         * testsuite/thread/pthread1.cc: Move...
550         * testsuite/23_containers/list/pthread1.cc: ...here.
551         * testsuite/thread/pthread2.cc: Move...
552         * testsuite/27_io/basic_ofstream/pthread2.cc: ...here.
553         * testsuite/thread/pthread3.cc: Move...
554         * testsuite/27_io/basic_ostringstream/pthread3.cc: ...here.
555
556         * testsuite/libstdc++-dg/conformance.exp: Remove thread directory.
557         * testsuite/thread: Remove.
558
559 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
560
561         * configure: Regenerate.
562
563 2009-02-23  Adam Nemet  <anemet@caviumnetworks.com>
564
565         * testsuite/libstdc++-abi/abi.exp: Add multilib support.
566         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Remove MULTISUBDIR
567         from baseline_dir.
568         * configure: Regenerate.
569         * testsuite/Makefile.am (baseline_file): Remove variable.
570         (site.exp): Set baseline_dir rather than baseline_file.
571         (check-abi): Pass AM_RUNTESTFLAGS and RUNTESTFLAGS to runtest.
572         * testsuite/Makefile.in: Regenerate.
573
574 2009-02-20  Benjamin Kosnik  <bkoz@redhat.com>
575
576         * testsuite/30_threads/thread/this_thread: Move...
577         * testsuite/30_threads/this_thread: ...here.
578         * testsuite/20_util/unique_ptr/assign/assign.cc: Move...
579         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: ...here.
580         * testsuite/20_util/ratio/cons/cons_overflow.cc: Move...
581         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: ...here.
582         * testsuite/20_util/ratio/operations/ops_overflow.cc: Move...
583         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: ...here.
584
585 2009-02-20  Benjamin Kosnik  <bkoz@redhat.com>
586
587         * doc/doxygen/user.cfg.in: Tweaks.
588         * doc/doxygen/doxygroups.cc: Prefer markup that can be elsewhere,
589         be elsewhere.
590
591         * include/tr1_impl/unordered_map: Just use most specialized
592         container module.
593         * include/tr1_impl/unordered_set: Same.
594         * include/tr1_impl/array: Same.
595         * include/bits/stl_list.h: Same.
596         * include/bits/stl_map.h: Same.
597         * include/bits/stl_queue.h: Same.
598         * include/bits/stl_set.h: Same.
599         * include/bits/stl_stack.h: Same.
600         * include/bits/forward_list.h: Same.
601         * include/bits/basic_string.h: Same.
602         * include/bits/stl_multimap.h: Same.
603         * include/bits/stl_vector.h: Same.
604         * include/bits/stl_deque.h: Same.
605         * include/bits/stl_multiset.h: Same.
606         * include/bits/stl_bvector.h: Same.
607
608         * include/backward/binders.h: Change binder module to binders.
609
610         * include/std/complex: Add complex_numers module.
611         * include/tr1_impl/complex: Same.
612
613         * include/std/valarray: Add numeric_arrays module.
614         * include/bits/gslice_array.h: Same.
615         * include/bits/gslice.h: Same.
616         * include/bits/mask_array.h: Same.
617         * include/bits/slice_array.h: Same.
618         * include/bits/indirect_array.h: Same.
619
620         * include/bits/allocator.h: Add allocators module.
621         * include/ext/throw_allocator.h
622         * include/ext/pool_allocator.h
623         * include/ext/bitmap_allocator.h
624         * include/ext/new_allocator.h
625         * include/ext/malloc_allocator.h
626         * include/ext/array_allocator.h
627         * include/ext/mt_allocator.h
628         * include/ext/debug_allocator.h
629         * include/ext/extptr_allocator.h
630
631         * include/tr1_impl/functional: Move namespace markup here.
632         * include/tr1_impl/regex: Same.
633
634         * include/tr1_impl/type_traits: Add metaprogramming module.
635         * include/std/type_traits: Same.
636
637         * include/std/memory: Add memory module.
638
639         * include/std/ratio: Add ratio module.
640
641         * include/std/chrono: Move namespace markup here, add time module.
642
643         * include/std/thread: Move namespace markup here, add concurrency
644         module.
645         * include/std/mutex: Use concurrency module.
646         * include/std/condition_variable: Same.
647
648
649         * include/bits/ios_base.h: Refine io module.
650         * include/bits/basic_ios.h: Same.
651         * include/std/fstream: Same.
652         * include/std/istream: Same.
653         * include/std/ostream: Same.
654         * include/std/sstream: Same.
655
656         * include/ext/vstring.h: Correct parameter markup.
657
658         * include/bits/shared_ptr.h: Add pointer_abstractions module.
659         * include/bits/unique_ptr.h: Same.
660
661         * include/bits/algorithmfwd.h: Add mutating_algorithms,
662         non_mutating_algorithms, sorting_algorithms. Adjust nesting.
663         * include/bits/stl_heap.h: Add markup for new groupings.
664         * include/bits/stl_algobase.h: Same.
665         * include/bits/stl_algo.h: Same.
666
667         * include/c_compatibility/stdatomic.h: Add atomics module.
668         * include/c_global/cstdatomic: Same.
669
670         * libsupc++/exception: Add exceptions module.
671         * libsupc++/typeinfo: Same.
672         * libsupc++/new: Same.
673         * libsupc++/exception_ptr.h: Same.
674         * include/std/system_error: Same.
675         * include/std/stdexcept: Same.
676
677         * libsupc++/cxxabi.h: Move doxygroups.cc markup here.
678         * libsupc++/cxxabi-forced.h: Same.
679
680         * testsuite/27_io/ios_base/cons/assign_neg.cc: Fix up line numbers.
681         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
682         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc: Same.
683         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc: Same.
684         * testsuite/30_threads/mutex/cons/assign_neg.cc: Same.
685         * testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
686         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Same.
687         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Same.
688         * testsuite/30_threads/thread/cons/assign_neg.cc: Same.
689         * testsuite/30_threads/thread/cons/copy_neg.cc: Same.
690         * testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
691         * testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.
692         * testsuite/30_threads/condition_variable/cons/assign_neg.cc: Same.
693         * testsuite/30_threads/condition_variable/cons/copy_neg.cc: Same.
694         * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc: Same.
695         * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Same.
696         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
697         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
698         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
699         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
700         * testsuite/23_containers/vector/requirements/dr438/
701         constructor_1_neg.cc: Same.
702         * testsuite/23_containers/vector/requirements/dr438/
703         constructor_2_neg.cc: Same.
704         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
705         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
706         * testsuite/23_containers/deque/requirements/dr438/
707         constructor_1_neg.cc: Same.
708         * testsuite/23_containers/deque/requirements/dr438/
709         constructor_2_neg.cc: Same.
710         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
711         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
712         * testsuite/23_containers/list/requirements/dr438/
713         constructor_1_neg.cc: Same.
714         * testsuite/23_containers/list/requirements/dr438/
715         constructor_2_neg.cc: Same.
716         * testsuite/20_util/duration/cons/1_neg.cc: Same.
717         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
718         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
719         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
720         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
721         * testsuite/20_util/unique_ptr/assign/assign.cc: Same.
722         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
723         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
724         * testsuite/20_util/ratio/cons/cons_overflow.cc: Same.
725         * testsuite/20_util/ratio/operations/ops_overflow.cc: Same.
726
727 2009-02-18  Benjamin Kosnik  <bkoz@redhat.com>
728
729         * doc/doxygen/doxygroups.cc: Move algorithm groups into algorithmfwd.h.
730         * doc/doxygen/user.cfg.in: Update.
731         * scripts/run_doxygen: Adjust for new group names.
732
733         * include/tr1_impl/random: Update doxygen group markup.
734         * include/tr1_impl/unordered_map: Same.
735         * include/tr1_impl/unordered_set: Same.
736         * include/tr1_impl/array: Same.
737         * include/std/numeric: Same.
738         * include/std/utility: Same.
739         * include/std/bitset: Same.
740         * include/std/iosfwd: Same.
741         * include/bits/stl_list.h: Same.
742         * include/bits/stl_map.h: Same.
743         * include/bits/stl_algobase.h: Same.
744         * include/bits/stl_queue.h: Same.
745         * include/bits/stl_set.h: Same.
746         * include/bits/stl_stack.h: Same.
747         * include/bits/stl_iterator_base_types.h: Same.
748         * include/bits/forward_list.h: Same.
749         * include/bits/basic_string.h: Same.
750         * include/bits/stl_multimap.h: Same.
751         * include/bits/stl_vector.h: Same.
752         * include/bits/stl_deque.h: Same.
753         * include/bits/stl_multiset.h: Same.
754         * include/bits/stl_algo.h: Same.
755         * include/bits/stl_bvector.h: Same.
756         * include/bits/algorithmfwd.h: Same.
757         * include/bits/stl_function.h: Same.
758         * include/tr1/cmath: Same.
759         * include/backward/binders.h: Same.
760
761 2009-02-17  Benjamin Kosnik  <bkoz@redhat.com>
762
763         * include/std/system_error (system_category): To system_category().
764         (generic_category): To generic_category. DR 890.
765         * src/system_error.cc: Define.
766         * include/bits/functexcept.h: Only one __throw_system_error.
767         * src/functexcept.cc: Same.
768         * include/std/mutex: Fixup for changes above.
769         * testsuite/19_diagnostics/error_condition/cons/1.cc: Same.
770         * testsuite/19_diagnostics/error_code/cons/1.cc: Same.
771         * testsuite/19_diagnostics/system_error/cons-1.cc: Same.
772         * config/abi/pre/gnu.ver: Clean up exports.
773
774 2009-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
775
776         * include/std/thread: Fix typo.
777         * src/thread.cc (thread::join): Use NULL.
778
779 2009-02-15  Paolo Carlini  <paolo.carlini@oracle.com>
780
781         PR libstdc++/39168
782         * src/locale_facets.cc (__verify_grouping(const char*, size_t,
783         const string&)): Also check that the value != CHAR_MAX.
784         * include/bits/locale_facets.tcc (__numpunct_cache<>::
785         _M_cache(const locale&), __add_grouping(_CharT*, _CharT,
786         const char*, size_t, const _CharT*, const _CharT*)): Likewise.
787         * include/bits/locale_facets_nonio.tcc (__moneypunct_cache<>::
788         _M_cache(const locale&)): Likewise.
789         * testsuite/22_locale/money_put/put/wchar_t/39168.cc: New.
790         * testsuite/22_locale/money_put/put/char/39168.cc: Likewise.
791         * testsuite/22_locale/money_get/get/wchar_t/39168.cc: Likewise.
792         * testsuite/22_locale/money_get/get/char/39168.cc: Likewise.
793         * testsuite/22_locale/num_get/get/wchar_t/39168.cc: Likewise.
794         * testsuite/22_locale/num_get/get/char/39168.cc: Likewise.
795
796 2009-02-13  Chris Fairles  <cfairles@gcc.gnu.org>
797             Benjamin Kosnik  <bkoz@redhat.com>
798
799         * include/std/thread (_Impl_base): Move _M_id out and into ...
800         (thread): ...here. Call _M_make_routine in body of constructors.
801         Adjust data member usage to reflect changes.
802         (_M_make_routine): From _M_make_shared_data.
803         (_M_start_thread): Add __shared_base_type argument.
804         * src/thread.cc: Fixups for above.
805         * config/abi/pre/gnu.ver: Adjust exports.
806         * testsuite/30_threads/thread/native_handle/typesizes.cc: Enable.
807         * testsuite/30_threads/thread/cons/assign_neg.cc: Adjust line numbers.
808         * testsuite/30_threads/thread/cons/copy_neg.cc: Same.
809
810 2009-02-12  Benjamin Kosnik  <bkoz@redhat.com>
811
812         * testsuite/util/thread/all.h (compare_type_to_native_type_sizes): To...
813         (compare_type_to_native_type): ...this, add alignment check.
814         * testsuite/30_threads/condition_variable_any/native_handle/
815         typesizes.cc: Modify as above.
816         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Same.
817         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Same.
818         * testsuite/30_threads/thread/native_handle/typesizes.cc: Same.
819         * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc: Same.
820         * testsuite/30_threads/condition_variable/native_handle/
821         typesizes.cc: Same.
822         * testsuite/30_threads/recursive_timed_mutex/native_handle/
823         typesizes.cc: Same.
824
825         * testsuite/30_threads/thread/cons/1.cc: Add comments.
826         * testsuite/30_threads/thread/cons/2.cc: Same.
827         * testsuite/30_threads/thread/cons/3.cc: Same.
828         * testsuite/30_threads/thread/cons/4.cc: Same.
829         * testsuite/30_threads/thread/cons/5.cc: Same.
830         * testsuite/30_threads/thread/cons/6.cc: Same.
831         * testsuite/30_threads/thread/cons/7.cc: Same.
832         * testsuite/30_threads/thread/cons/8.cc: Same.
833
834         * testsuite/30_threads/thread/cons/9.cc: New.
835         * testsuite/30_threads/thread/cons/moveable.cc: New.
836
837         * src/condition_variable.cc: Clean up whitespace.
838         * include/std/condition_variable: Same.
839
840 2009-02-09  Benjamin Kosnik  <bkoz@redhat.com>
841
842         * include/std/condition_variable (condition_variable): Remove
843         _M_internal_mutex. Add private __native_type typedef.
844         * src/condition_variable.cc (condition_variable::notify_one):
845         Remove _M_internal_mutex use. Use typedef.
846         (condition_variable::notify_all): Same.
847         * include/std/mutex (mutex): Add private __native_type typedef. Use it.
848         (recursive_mutex): Same.
849         (timed_mutex): Same.
850         (recursive_timed_mutex): Same.
851         (once_flag): Make __native_type typedef private.
852
853         * include/std/thread (this_thread): Add minimal markup.
854
855         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
856         Adjust line numbers.
857         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc: Same.
858         * testsuite/30_threads/mutex/cons/assign_neg.cc: Same.
859         * testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
860         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Same.
861         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Same.
862         * testsuite/30_threads/thread/cons/assign_neg.cc: Same.
863         * testsuite/30_threads/thread/cons/copy_neg.cc: Same.
864         * testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
865         * testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.
866         * testsuite/30_threads/condition_variable/cons/assign_neg.cc: Same.
867         * testsuite/30_threads/condition_variable/cons/copy_neg.cc: Same.
868         * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc: Same.
869         * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Same.
870
871         * testsuite/util/thread/all.h: Testsuite utilities for testing thread.
872         * testsuite/30_threads/condition_variable_any/native_handle/
873         typesizes.cc: New.
874         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Same.
875         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Same.
876         * testsuite/30_threads/thread/native_handle/typesizes.cc: Same.
877         * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc: Same.
878         * testsuite/30_threads/condition_variable/native_handle/
879         typesizes.cc: Same.
880         * testsuite/30_threads/recursive_timed_mutex/native_handle/
881         typesizes.cc: Same.
882
883 2009-02-09  Jack Howarth  <howarth@bromo.med.uc.edu>
884
885         PR testsuite/33300
886         * libstdc++-v3/testsuite/27_io/ios_base/storage/2.cc: Skip
887         on darwin for lp64.
888
889 2009-02-09  Adam Nemet  <anemet@caviumnetworks.com>
890
891         * configure.host: Set abi_baseline_pair for mips64*-linux.
892         * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: New file.
893
894 2009-02-08  Chris Fairles  <cfairles@gcc.gnu.org>
895
896         * include/std/thread (this_thread::get_id): Inline.
897
898 2009-02-08  Chris Fairles  <cfairles@gcc.gnu.org>
899
900         * include/std/thread (thread<>::thread(_Callable)): Explicitly use
901         _Callable as template argument for _M_make_shared_data.
902         * testsuite/30_threads/thread/cons/6.cc: New.
903         * testsuite/30_threads/thread/cons/7.cc: New.
904         * testsuite/30_threads/thread/cons/8.cc: New.
905
906 2009-02-07  Benjamin Kosnik  <bkoz@redhat.com>
907
908         * testsuite/30_threads/thread/member: To..
909         * testsuite/30_threads/thread/members: ...this.
910         * testsuite/30_threads/condition_variable/member: To...
911         * testsuite/30_threads/condition_variable/members: ...this.
912
913 2009-02-06  Benjamin Kosnik  <bkoz@redhat.com>
914
915         * include/std/thread (thread::id): Move definition inside thread.
916         Use native_handle_type. Remove this_thread::get_id friend.
917         Change __thread_data_ptr to __shared_base_ptr.
918         (thread::id::id(native_handle_type): Make public. Still explicit.
919         Use native_handle_type. Change _M_thread_id to _M_thread.
920         (thread::__thread_data_base): Rename to _Impl_base. Use id, change
921         _M_thread_handle to _M_id.
922         (thread::__thread_data): Rename to _Impl.
923         Fixup for renames.
924         (thread::_M_make_thread_data): Return derived type.
925         (thread::hardware_concurrency): Add definition for default case.
926         (thread::get_id): Now can define inline.
927         (thread): Change _M_thread_data to _M_data.
928         (this_thread::get_id): Now can define inline.
929         * src/thread.cc (__thread_proxy): Rename to
930         execute_native_thread_routine.
931         Fixup for other renames.
932         * testsuite/30_threads/thread/cons/assign_neg.cc: New.
933         * testsuite/30_threads/thread/cons/copy_neg.cc: New.
934         * testsuite/30_threads/thread/algorithm: Move to..
935         * testsuite/30_threads/thread/swap: ...this.
936         * testsuite/30_threads/thread/member/hardware_concurrency.cc: Add.
937         * testsuite/30_threads/thread/id/operators.cc: New.
938
939 2009-02-05  Chris Fairles  <cfairles@gcc.gnu.org>
940
941         * include/std/tuple (_Head_base<>::_Head_base(_UHead&&)): Formatting.
942         (_Head_base<>::__swap_impl): Rename to _M_swap_impl.
943         (_Tuple_impl<>::__swap_impl): Likewise and make protected to avoid
944         exposing it in public std::tuple interface.
945
946 2009-02-05  Chris Fairles  <cfairles@gcc.gnu.org>
947             Benjamin Kosnik  <bkoz@redhat.com>
948
949         * include/std/thread (__thread_data_base): Nest class in std::thread.
950         (__thread_data): Likewise.
951         (__thread_data_ptr): Nest typedef in std::thread.
952         * src/thread.cc (__thread_proxy): Qualify the above names.
953         * config/abi/pre/gnu.ver: Remove unused exports.
954
955 2009-02-04  Benjamin Kosnik  <bkoz@redhat.com>
956
957         * include/bits/unique_ptr.h: Remove private __this_type typedef.
958         * include/bits/stl_vector.h: Remove private vector_type typedef.
959         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
960         Fix line numbers.
961         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
962         * testsuite/23_containers/vector/requirements/dr438/
963         constructor_1_neg.cc: Same.
964         * testsuite/23_containers/vector/requirements/dr438/
965         constructor_2_neg.cc: Same.
966         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
967         * testsuite/20_util/unique_ptr/assign/assign.cc: Same.
968
969 2009-02-03  Paolo Carlini  <paolo.carlini@oracle.com>
970
971         PR libstdc++/25191
972         * libsupc++/exception_defines.h: Depending on __EXCEPTIONS,
973         deal consistently with __try and __catch too.
974         * src/localename.cc: Replace try -> __try, catch -> __catch.
975         * src/ios.cc: Likewise.
976         * src/locale.cc: Likewise.
977         * src/istream.cc: Likewise.
978         * src/thread.cc: Likewise.
979         * src/compatibility.cc: Likewise.
980         * src/bitmap_allocator.cc: Likewise.
981         * src/ios_init.cc: Likewise.
982         * include/debug/deque: Likewise.
983         * include/debug/list: Likewise.
984         * include/tr1_impl/hashtable: Likewise.
985         * include/std/bitset: Likewise.
986         * include/ext/pb_ds/detail/resize_policy/
987         hash_load_check_resize_trigger_imp.hpp: Likewise.
988         * include/ext/pb_ds/detail/resize_policy/
989         hash_standard_resize_policy_imp.hpp: Likewise.
990         * include/ext/pb_ds/detail/cc_hash_table_map_/
991         resize_fn_imps.hpp: Likewise.
992         * include/ext/pb_ds/detail/cc_hash_table_map_/
993         constructor_destructor_fn_imps.hpp: Likewise.
994         * include/ext/pb_ds/detail/pat_trie_/
995         split_join_branch_bag.hpp: Likewise.
996         * include/ext/pb_ds/detail/pat_trie_/
997         constructors_destructor_fn_imps.hpp: Likewise.
998         * include/ext/pb_ds/detail/bin_search_tree_/
999         constructors_destructor_fn_imps.hpp: Likewise.
1000         * include/ext/pb_ds/detail/gp_hash_table_map_/
1001         resize_fn_imps.hpp: Likewise.
1002         * include/ext/pb_ds/detail/gp_hash_table_map_/
1003         constructor_destructor_fn_imps.hpp: Likewise.
1004         * include/ext/pb_ds/detail/binary_heap_/
1005         constructors_destructor_fn_imps.hpp: Likewise.
1006         * include/ext/pb_ds/detail/binary_heap_/
1007         erase_fn_imps.hpp: Likewise.
1008         * include/ext/pb_ds/detail/binary_heap_/
1009         split_join_fn_imps.hpp: Likewise.
1010         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
1011         constructors_destructor_fn_imps.hpp: Likewise.
1012         * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
1013         * include/ext/pb_ds/detail/list_update_map_/
1014         constructor_destructor_fn_imps.hpp: Likewise.
1015         * include/ext/slist: Likewise.
1016         * include/ext/memory: Likewise.
1017         * include/ext/rc_string_base.h: Likewise.
1018         * include/ext/ropeimpl.h: Likewise.
1019         * include/ext/vstring.tcc: Likewise.
1020         * include/ext/rope: Likewise.
1021         * include/ext/sso_string_base.h: Likewise.
1022         * include/bits/shared_ptr.h: Likewise.
1023         * include/bits/stl_list.h: Likewise.
1024         * include/bits/locale_classes.tcc: Likewise.
1025         * include/bits/locale_facets.tcc: Likewise.
1026         * include/bits/locale_classes.h: Likewise.
1027         * include/bits/forward_list.h: Likewise.
1028         * include/bits/stl_vector.h: Likewise.
1029         * include/bits/stl_deque.h: Likewise.
1030         * include/bits/istream.tcc: Likewise.
1031         * include/bits/stl_uninitialized.h: Likewise.
1032         * include/bits/ostream.tcc: Likewise.
1033         * include/bits/vector.tcc: Likewise.
1034         * include/bits/stl_tempbuf.h: Likewise.
1035         * include/bits/deque.tcc: Likewise.
1036         * include/bits/basic_string.tcc: Likewise.
1037         * include/bits/ostream_insert.h: Likewise.
1038         * include/bits/locale_facets_nonio.tcc: Likewise.
1039         * include/bits/stl_tree.h: Likewise.
1040         * include/bits/fstream.tcc: Likewise.
1041         * include/tr1/shared_ptr.h: Likewise.
1042         * include/tr1/hypergeometric.tcc: Likewise.
1043         * include/backward/hashtable.h: Likewise.
1044         * libsupc++/exception_ptr.h: Likewise.
1045         * libsupc++/eh_personality.cc: Likewise.
1046         * libsupc++/eh_call.cc: Likewise.
1047         * config/locale/gnu/monetary_members.cc: Likewise.
1048         * config/locale/gnu/time_members.h: Likewise.
1049         * config/locale/generic/time_members.h: Likewise.
1050
1051 2009-02-03  Johannes Singler  <singler@ira.uka.de>
1052
1053         * include/parallel/algorithmfwd.h:
1054         Add parallelism default for many declarations.
1055         * include/parallel/numericfwd.h: Likewise.
1056         * include/parallel/iterator.h: Use iterator_traits as usual.
1057         * include/parallel/par_loop.h:
1058         Include equally_split.h.
1059         (for_each_template_random_access_ed):
1060         Avoid calling the Result default constructor.
1061         * include/parallel/numeric: Replace
1062         for_each_template_random_access by
1063         for_each_template_random_access_ed in numeric functions.
1064
1065 2009-02-02  Benjamin Kosnik  <bkoz@redhat.com>
1066
1067         * config/os/gnu-linux/os_defines.h: Remove superfluous
1068         __NO_STRING_INLINES.
1069
1070 2009-02-02  Jakub Jelinek  <jakub@redhat.com>
1071
1072         * testsuite/21_strings/c_strings/char/3.cc: New test.
1073         * testsuite/21_strings/c_strings/wchar_t/3.cc: New test.
1074
1075 2009-01-30  Ulrich Drepper  <drepper@redhat.com>
1076             Jakub Jelinek  <jakub@redhat.com>
1077
1078         PR libstdc++/30928 (partial, works together with recent glibcs)
1079         * include/c_std/cstring (memchr, strchr, strpbrk, strrchr, strstr):
1080         Provide inlines only if __CORRECT_ISO_CPP_STRING_H_PROTO is not
1081         defined.
1082         * include/c_std/cwchar (wcschr, wcspbrk, wcsrchr, wcsstr, wmemchr):
1083         Provide inlines only if __CORRECT_ISO_CPP_WCHAR_H_PROTO is not
1084         defined.
1085         * include/c_global/cstring (memchr, strchr, strpbrk, strrchr, strstr):
1086         Provide inlines only if __CORRECT_ISO_CPP_STRING_H_PROTO is not
1087         defined.
1088         * include/c_global/cwchar (wcschr, wcspbrk, wcsrchr, wcsstr, wmemchr):
1089         Provide inlines only if __CORRECT_ISO_CPP_WCHAR_H_PROTO is not
1090         defined.
1091         * testsuite/21_strings/c_strings/char_t/2.cc (test02): If first
1092         argument is const char *, assign result to const char * var, not
1093         char *.
1094         * testsuite/21_strings/c_strings/wchar_t/2.cc (test02): If first
1095         argument is const wchar_t *, assign result to const wchar_t * var, not
1096         wchar_t *.
1097
1098 2009-01-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
1099
1100         * include/std/thread: Remove unused headers.
1101         (__thread_data_base): Remove unused mutex and base.
1102         (thread::~thread): Only detach if joinable.
1103         (thread::joinable): Test if thread data ptr is empty.
1104         (thread::_M_thread_data_mutex): Remove.
1105         (thread::_M_get_thread_data): Remove.
1106         (thread::_M_make_thread_data): Remove overload, use make_shared.
1107         (thread::id::id): Make constructor explicit.
1108         * src/thread.cc (thread::join,thread::detach): Throw if not joinable.
1109         (thread::_M_start_thread): Break shared_ptr cycle on error.
1110         (__thread_proxy): Use shared_ptr swap instead of copy and reset.
1111         * testsuite/30_threads/thread/member/4.cc: New.
1112         * testsuite/30_threads/thread/member/5.cc: New.
1113
1114 2009-01-28  Benjamin Kosnik  <bkoz@redhat.com>
1115
1116         * testsuite/util/testsuite_common_types.h (has_trivial_cons_dtor): New.
1117         (standard_layout): Just use !has_virtual_destructor for now.
1118         * testsuite/30_threads/mutex/requirements/standard_layout.cc: New.
1119         * testsuite/30_threads/timed_mutex/requirements/standard_layout.cc: New.
1120         * testsuite/30_threads/recursive_mutex/requirements/
1121         standard_layout.cc: New.
1122         * testsuite/30_threads/condition_variable/requirements/
1123         standard_layout.cc: New.
1124         * testsuite/29_atomics/atomic_address/requirements/
1125         standard_layout.cc: Adjust.
1126         * testsuite/29_atomics/atomic_flag/requirements/
1127         standard_layout.cc: Same.
1128         * testsuite/29_atomics/atomic_address/requirements/trivial.cc: New.
1129         * testsuite/29_atomics/atomic_integral/requirements/trivial.cc: Same.
1130         * testsuite/29_atomics/atomic_flag/requirements/trivial.cc: Same.
1131         * testsuite/30_threads/condition_variable/requirements/typedefs.cc: New.
1132         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Adjust
1133         line numbers.
1134         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
1135         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
1136         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
1137         * testsuite/29_atomics/atomic/requirements/standard_layout.cc:
1138         Remove, not required.
1139
1140 2009-01-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
1141
1142         * include/std/thread (__thread_data_base, thread): Rename member
1143         functions to match coding style.
1144         (thread::thread,thread::operator=): Define move operations.
1145         * src/thread.cc (__thread_data_base, thread): Rename member functions.
1146         * config/abi/pre/gnu.ver: Adjust.
1147
1148 2009-01-22  Benjamin Kosnik  <bkoz@redhat.com>
1149
1150         PR libstdc++/38384
1151         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Disable symbol versioning
1152         on HPUX.
1153         * configure: Regenerate.
1154
1155 2009-01-21  Benjamin Kosnik  <bkoz@redhat.com>
1156
1157         * testsuite/29_atomics/headers/stdatomic.h/functions.c: Remove
1158         atomic_flag_fence.
1159
1160 2009-01-21  Dodji Seketeli  <dodji@redhat.com>
1161
1162 2009-01-20  Benjamin Kosnik  <bkoz@redhat.com>
1163             Uros Bizjak  <ubizjak@gmail.com>
1164
1165         PR libstdc++/38834
1166         * config/abi/pre/gnu.ver: Correct char16_t and char32_t exports.
1167         * config/os/gnu-linux/ldbl-extra.ver: Tweak.
1168
1169 2009-01-20  Benjamin Kosnik  <bkoz@redhat.com>
1170             Rainer Emrich  <r.emrich@de.tecosim.com>
1171
1172         PR libstdc++/38919
1173         * crossconfig.m4: Use GLIBCXX_CHECK_MATH_SUPPORT and
1174         GLIBCXX_CHECK_STDLIB_SUPPORT for mingw crosses.
1175         * configure: Regenerate.
1176
1177 2009-01-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1178
1179         * include/std/thread (__thread_data_base::__run): Make non-const.
1180         * testsuite/30_threads/thread/cons/5.cc: New.
1181
1182 2009-01-16  Benjamin Kosnik  <bkoz@redhat.com>
1183
1184         * src/Makefile.am (sources): Add math_stubs_float.cc.
1185         * src/Makefile.in: Regenerate.
1186         * src/math_stubs_float.cc: New, from libmath/stubs.c.
1187
1188 2009-01-15  Benjamin Kosnik  <bkoz@redhat.com>
1189
1190         * src/Makefile.am (sources): Add math_stubs_long_double.cc.
1191         * src/Makefile.in: Regenerate.
1192         * src/math_stubs_long_double.cc: New, from libmath/stubs.c.
1193
1194 2009-01-15  Benjamin Kosnik  <bkoz@redhat.com>
1195
1196         PR libstdc++/32666
1197         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1198
1199 2009-01-15  Benjamin Kosnik  <bkoz@redhat.com>
1200
1201         PR libstdc++/32666
1202         * Makefile.am (hosted_source): Remove libmath directory.
1203         * Makefile.in: Regenerate.
1204         * linkage.m4 (GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT): Remove.
1205         (AC_REPLACE_MATHFUNCS): Remove.
1206         (GLIBCXX_CHECK_MATH_SUPPORT): Remove copysign, copysignl checks as done
1207         in GLIBCXX_CHECK_C99_TR1.
1208         * acinclude.m4: Remove libmath, need_math.
1209         * crossconfig.m4: Remove use of HAVE_COPYSIGN, HAVE_COPYSIGNL,
1210         HAVE_COPYSIGNF, GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT, need_libmath.
1211         * configure.ac: Same.
1212         * configure: Regenerate.
1213         * fragment.am: Fix comment.
1214         * config.h.in: Regenerate.
1215         * src/Makefile.in: Regenerate.
1216         * src/Makefile.am: Remove libmath references.
1217         * doc/Makefile.in: Regenerate.
1218         * po/Makefile.in: Regenerate.
1219         * include/Makefile.in: Regenerate.
1220         * libsupc++/Makefile.in: Regenerate.
1221         * testsuite/Makefile.in: Regenerate.
1222
1223         * src/compatibility.cc: Also export long double versions of "C" math
1224         library if hppa-linux.
1225         * config/abi/pre/gnu.ver: Remove unused __signbit exports.
1226         * doc/xml/manual/appendix_contributing.xml: Remove libmath reference.
1227
1228         * libmath: Remove.
1229         * libmath/signbit.c: Same.
1230         * libmath/stubs.c: Same.
1231         * libmath/Makefile.in: Same.
1232         * libmath/copysignf.c: Same.
1233         * libmath/mathconf.h: Same.
1234         * libmath/signbitf.c: Same.
1235         * libmath/Makefile.am: Same.
1236         * libmath/signbitl.c: Same.
1237
1238 2009-01-15  Chris Fairles  <cfairles@gcc.gnu.org>
1239             Paolo Carlini  <paolo.carlini@oracle.com>
1240
1241         * acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME],
1242         [GLIBCXX_CHECK_NANOSLEEP]): Remove.
1243         ([GLIBCXX_ENABLE_LIBSTDCXX_TIME]): Add.
1244         * configure.ac: Adjust.
1245         * doc/xml/manual/configure.xml: Update.
1246         * testsuite/lib/libstdc++.exp (check_v3_target_sched_yield): Add.
1247         * testsuite/lib/dg-options.exp (dg-require-sched-yield): Add.
1248         * testsuite/30_threads/thread/this_thread/2.cc: Use the latter.
1249         * configure: Regenerate.
1250         * config.h.in: Likewise.
1251
1252         * src/thread.cc (thread::thread(), thread::~thread, thread::get_id,
1253         thread::joinable, thread::swap, this_thread::get_id,
1254         this_thread::yield): Define inline...
1255         * include/std/thread: ... here.
1256         * config/abi/pre/gnu.ver: Adjust.
1257
1258 2009-01-13  Uros Bizjak  <ubizjak@gmail.com>
1259
1260         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc:
1261         Add dg-timeout-factor 2.0.
1262         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Ditto.
1263         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Ditto.
1264         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Ditto.
1265         * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Ditto.
1266         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Ditto.
1267         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Ditto.
1268
1269 2009-01-13  Uros Bizjak  <ubizjak@gmail.com>
1270
1271         * scripts/extract_symvers: Add sed script to remove ' [<other>: xx] '
1272         field from readelf output.
1273
1274 2009-01-12  Benjamin Kosnik  <bkoz@redhat.com>
1275
1276         PR libstdc++/38384
1277         * crossconfig.m4 (hpux): Update for 10.20, 11, 11.20.
1278         * configure: Regenerate.
1279
1280 2009-01-12  Benjamin Kosnik  <bkoz@redhat.com>
1281
1282         * crossconfig.m4 (linux): Add GCC_CHECK_TLS to define
1283         _GLIBCXX_HAVE_TLS.
1284         Use GLIBCXX_CHECK_COMPILER_FEATURES to compute SECTION_FLAGS.
1285
1286 2009-01-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
1287
1288         * include/tr1_impl/regex (basic_regex::basic_regex): Use range
1289         constructor for _M_pattern.
1290         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
1291         string.cc: Test construction from different basic_string type.
1292         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
1293         string.cc: Likewise.
1294
1295 2009-01-07  Benjamin Kosnik  <bkoz@redhat.com>
1296             Jonathan Larmour  <jifl@eCosCentric.com>
1297
1298         PR libstdc++/36801
1299         * config/cpu/generic/atomicity_mutex/atomicity.h (get_atomic_mutex):
1300         New.
1301         (__gnu_cxx::__exchange_and_add): Use it.
1302         * src/atomic.cc (get_atomic_mutex): New.
1303         * src/debug.cc (get_safe_base_mutex): New.
1304         * src/locale.cc (get_locale_cache_mutex): New.
1305         * src/mt_allocator.cc (get_freelist): New.
1306         (get_freelist_mutex): New.
1307         * src/pool_allocator.cc (get_palloc_mutex): New.
1308         * include/std/mutex (__once_functor_lock): To
1309         (__get_once_functor_lock): ...this.
1310         * src/mutex.cc (__once_mutex): Don't export, use
1311         (get_once_mutex): ...this.
1312         * config/abi/pre/gnu.ver: Adjust exports.
1313
1314 2009-01-07  Jakub Jelinek  <jakub@redhat.com>
1315
1316         PR libstdc++/38732
1317         * libsupc++/unwind-cxx.h (__cxxabiv1::__cxa_exception): Remove
1318         referenceCount field again.
1319         (__cxxabiv1::__cxa_refcounted_exception): New struct.
1320         (__cxxabiv1::__get_refcounted_exception_header_from_obj,
1321         __cxxabiv1::__get_refcounted_exception_header_from_ue): New static
1322         inline functions.
1323         * libsupc++/eh_alloc.cc (__cxxabiv1::__cxa_allocate_exception,
1324         __cxxabiv1::__cxa_free_exception): Use __cxa_refcounted_exception
1325         instead of __cxa_exception.
1326         * libsupc++/eh_throw.cc (__gxx_exception_cleanup,
1327         __cxxabiv1::__cxa_throw): Likewise.
1328         * libsupc++/eh_ptr.cc (std::rethrow_exception,
1329         std::__exception_ptr::exception_ptr::_M_addref,
1330         std::__exception_ptr::exception_ptr::_M_release,
1331         __gxx_dependent_exception_cleanup): Likewise.
1332         * testsuite/18_support/exception/38732.cc: New test.
1333
1334         PR libstdc++/38092
1335         * acinclude.m4 (HAVE_AS_SYMVER_DIRECTIVE): New test.
1336         * src/compatibility.cc: Don't use .symver directives if
1337         _GLIBCXX_HAVE_AS_SYMVER_DIRECTIVE is not defined.
1338         * config.h.in: Regenerated.
1339         * configure: Likewise.
1340
1341 2009-01-07  Paolo Carlini  <paolo.carlini@oracle.com>
1342
1343         PR libstdc++/38466
1344         * include/bits/stl_pair.h: Document C++03 pair vs swap.
1345
1346 2009-01-06  Benjamin Kosnik  <bkoz@redhat.com>
1347
1348         * src/locale_init.cc (locale::_S_initialize_once): Move construction
1349         of classic locale...
1350         (locale::classic): Here.
1351
1352 2009-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
1353
1354         * include/tr1_impl/regex: Fix bad return statements and typos.
1355
1356 2009-01-05  Benjamin Kosnik  <bkoz@redhat.com>
1357
1358         * include/tr1_impl/regex: Remove unimplemented function definitions.
1359         * testsuite/28_regex/init-list.cc: Compile only.
1360         * testsuite/tr1/7_regular_expressions/regex/cons/char/
1361         c_string_extended.cc: Same.
1362         * testsuite/tr1/7_regular_expressions/basic_regex/assign/*: Same.
1363         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/*: Same.
1364
1365 2009-01-05  Benjamin Kosnik  <bkoz@redhat.com>
1366
1367         PR libstdc++/38384
1368         * crossconfig.m4: Define HAVE_FABSF for hpux crosses.
1369         * configure: Regenerate.
1370
1371 2009-01-05  Ben Elliston  <bje@au.ibm.com>
1372
1373         * configure.ac (GLIBCXX_CHECK_STANDARD_LAYOUT): Remove invocation.
1374         * configure: Regenerate.
1375
1376 2009-01-05  Ben Elliston  <bje@au.ibm.com>
1377
1378         * configure.ac: Exchange the order of GLIBCXX_ENABLE_THREADS and
1379         GLIBCXX_ENABLE_ATOMIC_BUILTINS macro invocations.
1380         * configure: Regenerate.
1381
1382 2009-01-04  Richard Guenther  <rguenther@suse.de>
1383
1384         PR libstdc++/38720
1385         * include/ext/pointer.h (_Relative_pointer_impl): Use an unsigned
1386         integer type for storage, arithmetic and comparisons.
1387         * testsuite/ext/ext_pointer/1_neg.cc: Adjust line numbers.
1388
1389 2009-01-04  Paolo Carlini  <paolo.carlini@oracle.com>
1390
1391         PR libstdc++/38719
1392         * include/bits/forward_list.h (_Fwd_list_iterator<>::_M_next,
1393         _Fwd_list_const_iterator::_M_next): Fix return type.
1394
1395 2009-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
1396
1397         * Revert last commit, reopen and suspend libstdc++/38678.
1398
1399 2009-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
1400
1401         PR libstdc++/38678
1402         * include/std/istream (basic_istream<>::_M_read): New.
1403         * include/bits/istream.tcc (basic_istream<>::_M_read): Define.
1404         (basic_istream<>::read, basic_istream<>::readsome): Use it.
1405         * include/std/ostream (basic_ostream<>::_M_write_): New.
1406         (basic_ostream<>::_M_write): Adjust.
1407         * include/bits/ostream.tcc (basic_ostream<>::_M_write_): Define.
1408         * testsuite/27_io/basic_istream/read/char/38678.cc: New.
1409         * testsuite/27_io/basic_istream/read/wchar_t/38678.cc: Likewise.
1410         * testsuite/27_io/basic_ostream/write/char/38678.cc: Likewise.
1411         * testsuite/27_io/basic_ostream/write/wchar_t/38678.cc: Likewise.
1412
1413 2008-12-22  Jonathan Larmour  <jifl@eCosCentric.com>
1414
1415         * include/ext/concurrence.h: Fix __gthread_cond_t initialisation
1416         function macro name.
1417
1418 2008-12-22  Benjamin Kosnik  <bkoz@redhat.com>
1419
1420         * doc/doxygen/stdheader.cc: Add cstdlib.
1421         * doc/doxygen/user.cfg.in: Regenerate for doxygen 1.5.7.
1422
1423 2008-12-21  Andrew Pinski  <pinskia@gmail.com>
1424
1425         PR target/38300
1426         * configure: Regenerate.
1427
1428 2008-12-21  Paolo Carlini  <paolo.carlini@oracle.com>
1429
1430         PR libstdc++/38596
1431         * include/tr1_impl/functional (function<>::target,
1432         function<>::target_type): Provide only when __GXX_RTTI is defined.
1433         (_Function_base::_M_manager, _Ref_manager<>::_M_manager,
1434         _Function_handler<void(_ArgTypes...), _Member _Class::*>::_M_manager):
1435         Adjust.
1436
1437 2008-12-19  Ben Elliston  <bje@au.ibm.com>
1438
1439         * acinclude.m4: Guard a variable test against an empty string.
1440         * configure: Regenerate.
1441
1442 2008-12-18  Jack Howarth  <howarth@bromo.med.uc.edu>
1443
1444         * testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc:
1445         Add xfail on all targets except darwin.
1446         * libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/
1447         1674.cc: Same.
1448         * libstdc++-v3/testsuite/22_locale/ctype/is/char/2.cc: Correct syntax
1449         for xfailing on all targets except linux.
1450
1451 2008-12-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1452
1453         * configure: Regenerate.
1454
1455 2008-12-17  Jack Howarth  <howarth@bromo.med.uc.edu>
1456
1457         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
1458         Don't xfail test on darwin8 or later.
1459
1460 2008-12-16  Jack Howarth  <howarth@bromo.med.uc.edu>
1461
1462         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
1463         Don't xfail excessive errors on darwin8 or later.
1464
1465 2008-12-15  Benjamin Kosnik  <bkoz@redhat.com>
1466
1467         * include/c_global/cstdatomic: Remove assert include.
1468         * include/debug/debug.h: Consolidate __replacement_assert...
1469         * include/parallel/base.h: Consolidate __replacement_assert...
1470         * include/bits/c++config: ...here.
1471         * include/bits/atomic_0.h: Use it.
1472         * include/bits/atomic_2.h: Same.
1473         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers.
1474         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
1475
1476 2008-12-13  Benjamin Kosnik  <bkoz@redhat.com>
1477
1478         * src/atomic.cc: Revert last change.
1479         * include/bits/atomic_2.h: Move cassert include to...
1480         * include/c_global/cstdatomic: ...here.
1481         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers.
1482         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
1483
1484 2008-12-12  Benjamin Kosnik  <bkoz@redhat.com>
1485
1486         * src/Makefile.am: Remove -x c++ for atomic build rules.
1487         * src/Makefile.in: Regenerate.
1488         * src/atomic.cc: Move mutex include before cstdatomic.
1489
1490 2008-12-12  H.J. Lu  <hongjiu.lu@intel.com>
1491
1492         PR libstdc++/37144
1493         * testsuite/util/regression/trait/assoc/type_trait.hpp
1494         (regression_test_type_traits): Add const to pair_type_rebind.
1495
1496 2008-12-12  Benjamin Kosnik  <bkoz@redhat.com>
1497
1498         * src/atomic.cc: Correct guards to match mutex.cc.
1499
1500 2008-12-11  Benjamin Kosnik  <bkoz@redhat.com>
1501             Richard Henderson  <rth@redhat.com>
1502
1503         * include/c_global/cstdatomic: Update to N2798.
1504         (atomic): Remove explicit constructors as per DR 845.
1505         * include/bits/atomic_0.h: New. Switchable implementation.
1506         * include/bits/atomic_2.h: New. Lock-free implementation.
1507         * include/c_compatibility/stdatomic.h: Use foward headers.
1508         * include/bits/atomicfwd_cxx.h: New.
1509         * include/bits/atomicfwd_c.h: New.
1510         * src/atomic.cc: Adjust.
1511         * acinclude.m4 (GLIBCXX_CHECK_STANDARD_LAYOUT): Remove,
1512         unconditionally use default/deleted syntax.
1513         (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Check for 2, 8.
1514         * include/Makefile.am (bits_headers): Add atomicfwd_c.h,
1515         atomicfwd_cxx.h, atomic_0.h, atomic_2.h.
1516         * include/Makefile.in: Regenerate.
1517         * configure: Regenerate.
1518         * config.h.in: Regenerate.
1519         * config/abi/pre/gnu.ver: Adjust exports.
1520
1521         * testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc: Adjust.
1522         * testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc: Same.
1523         * testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc: Same.
1524         * testsuite/29_atomics/atomic_address/cons/assign_neg.cc: Same.
1525         * testsuite/29_atomics/atomic_address/cons/explicit_value.cc: Move to..
1526         * testsuite/29_atomics/atomic_address/cons/single_value.cc: ...this.
1527         * testsuite/29_atomics/atomic_address/cons/copy_neg.cc
1528         * testsuite/29_atomics/atomic_integral/cons/single_value.cc: New.
1529         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: New.
1530         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: New.
1531         * testsuite/29_atomics/atomic_integral/cons/default.cc: New.
1532         * testsuite/29_atomics/atomic_integral/cons/direct_list.cc: New.
1533         * testsuite/29_atomics/atomic_integral/cons/copy_list.cc: New.
1534         * testsuite/29_atomics/atomic_integral/requirements/
1535         standard_layout.cc: New.
1536         * testsuite/29_atomics/atomic_integral/operators/
1537         integral_assignment.cc: New.
1538         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc: New.
1539         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: New.
1540         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc: New.
1541         * testsuite/29_atomics/atomic_integral/operators/increment.cc: New.
1542         * testsuite/29_atomics/atomic_integral/operators/decrement.cc: New.
1543         * testsuite/29_atomics/atomic_integral/operators/bitwise.cc: New.
1544         * testsuite/29_atomics/atomic_integral/operators/
1545         integral_conversion.cc: New.
1546         * testsuite/29_atomics/atomic_flag/cons/assign_neg.cc: Adjust.
1547         * testsuite/29_atomics/atomic_flag/cons/copy_neg.cc: Same.
1548         * testsuite/29_atomics/atomic_flag/requirements/
1549         standard_layout.cc: Same.
1550         * testsuite/29_atomics/atomic_flag/
1551         atomic_global_fence_compatibility.cc: Kill.
1552         * testsuite/29_atomics/headers/cstdatomic/types_std_c++0x.cc: Adjust.
1553         * testsuite/29_atomics/headers/cstdatomic/functions_std_c++0x.cc: Same.
1554         * testsuite/29_atomics/headers/cstdatomic/macros.cc: Same.
1555         * testsuite/29_atomics/headers/stdatomic.h/macros.c: Same.
1556         * testsuite/29_atomics/headers/stdatomic.h/types.c: Same.
1557         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
1558         * testsuite/29_atomics/atomic/cons/explicit_value.cc: Move to...
1559         * testsuite/29_atomics/atomic/cons/single_value.cc: ...this.
1560         * testsuite/29_atomics/atomic/cons/copy_neg.cc
1561         * testsuite/29_atomics/atomic/cons/direct_list.cc: New.
1562         * testsuite/29_atomics/atomic/cons/copy_list.cc: New.
1563         * testsuite/29_atomics/atomic/requirements/standard_layout.cc: New.
1564         * testsuite/29_atomics/atomic/requirements/base_classes.cc: New.
1565         * testsuite/29_atomics/atomic/operators/integral_assignment.cc: New.
1566         * testsuite/29_atomics/atomic/operators/integral_conversion.cc: New.
1567         * testsuite/util/testsuite_hooks.h (bitmask_operators): Move...
1568         * testsuite/util/testsuite_common_types.h: ...here.
1569         (atomic_integrals_no_bool): New.
1570         (atomic_integrals): New.
1571         (has_increment_operators, has_decrement_operators)
1572         (direct_list_initializable, single_value_constructible)
1573         (standard_layout, has_bitwise_operators, integral_convertable)
1574         (integral_assignable): Add.
1575
1576 2008-12-11  Jakub Jelinek  <jakub@redhat.com>
1577
1578         PR c++/37582
1579         * testsuite/26_numerics/headers/cmath/37582.cc: New.
1580
1581 2008-12-08  Paolo Carlini  <paolo.carlini@oracle.com>
1582
1583         * include/tr1_impl/cmath: Undef remquof / remquol too; add using
1584         declarations.
1585         * acinclude.m4 [GLIBCXX_CHECK_C99_TR1]: Check remquof / remquol too.
1586         * testsuite/tr1/8_c_compatibility/cmath/functions.cc: Adjust.
1587         * configure: Regenerate.
1588
1589 2008-12-08  Edward Smith-Rowland  <3dw4rd@verizon.net>
1590
1591         * include/bits/forward_list.h: Fixed spurious "forward_swap" in doxy.
1592
1593 2008-12-06  Paolo Carlini  <paolo.carlini@oracle.com>
1594
1595         PR libstdc++/38421
1596         * include/tr1/ell_integral.tcc: Avoid __ea, future SPU badname.
1597         * doc/xml/manual/appendix_contributing.xml: Add __ea to the list
1598         of badnames.
1599
1600 2008-12-05  Tom Tromey  <tromey@redhat.com>
1601
1602         * include/tr1_impl/functional (_Mu): Fix typo.
1603
1604 2008-12-05  Paolo Carlini  <paolo.carlini@oracle.com>
1605
1606         PR libstdc++/38399
1607         * include/bits/locale_facets_nonio.tcc (money_get<>::
1608         _M_extract(iter_type, iter_type, ios_base&, ios_base::iostate&,
1609         string&)): Fix, reject decimal point when frac_digits <= 0.
1610         * testsuite/22_locale/money_get/get/char/38399.cc: New.
1611         * testsuite/22_locale/money_get/get/wchar_t/38399.cc: Likewise.
1612         * testsuite/22_locale/money_get/get/char/5.cc: Adjust.
1613         * testsuite/22_locale/money_get/get/wchar_t/5.cc: Likewise.
1614
1615 2008-12-05  Paolo Carlini  <paolo.carlini@oracle.com>
1616
1617         PR libstdc++/38411
1618         * testsuite/22_locale/numpunct/members/char/2.cc: Use is_IS instead
1619         of fr_FR.
1620         * testsuite/22_locale/numpunct/members/wchar_t/2.cc: Likewise.
1621         * testsuite/22_locale/locale/cons/7.cc: Likewise.
1622
1623 2008-12-04  Paolo Carlini  <paolo.carlini@oracle.com>
1624
1625         PR libstdc++/38368
1626         * config/locale/gnu/numeric_members.cc (numpunct<char>::
1627         _M_initialize_numpunct, numpunct<wchar_t>::_M_initialize_numpunct):
1628         Fix for THOUSANDS_SEP == '\0' consistently with "C" locale.
1629         * config/locale/gnu/monetary_members.cc (moneypunct<char, true>::
1630         _M_initialize_moneypunct, moneypunct<char, false>::
1631         _M_initialize_moneypunct, moneypunct<wchar_t, true>::
1632         _M_initialize_moneypunct, moneypunct<wchar_t, false>::
1633         _M_initialize_moneypunct): Fix for __MON_DECIMAL_POINT == '\0' or
1634         __MON_THOUSANDS_SEP == '\0' consistently with "C" locale.
1635         * testsuite/22_locale/locale/cons/38368.cc: New.
1636
1637 2008-12-02  Paolo Carlini  <paolo.carlini@oracle.com>
1638
1639         PR libstdc++/38365 (cont)
1640         * src/localename.cc (locale::locale(const locale&, const locale&,
1641         category)): Revert last changes.
1642         (locale::_Impl::_M_replace_categories(const _Impl*, category)):
1643         Fix here instead; rework.
1644
1645 2008-12-02  Paolo Carlini  <paolo.carlini@oracle.com>
1646
1647         PR libstdc++/38365
1648         * src/localename.cc (locale::locale(const locale&, const locale&,
1649         category)): Fix.
1650         * testsuite/22_locale/locale/cons/38365.cc: New.
1651
1652 2008-12-01  Benjamin Kosnik  <bkoz@redhat.com>
1653
1654         PR libstdc++/38080
1655         * include/std/iostream: Correct URL.
1656         * include/std/streambuf: Same.
1657         * include/std/bitset: Same.
1658         * include/std/iosfwd: Same.
1659         * include/std/fstream: Same.
1660         * include/std/istream: Same.
1661         * include/std/ostream: Same.
1662         * include/std/sstream: Same.
1663         * include/bits/basic_ios.h: Same.
1664         * include/bits/stl_map.h: Same.
1665         * include/bits/stl_set.h: Same.
1666         * include/bits/stl_multimap.h: Same.
1667         * include/bits/ios_base.h: Same.
1668         * include/bits/stl_multiset.h: Same.
1669         * include/bits/char_traits.h: Same.
1670         * include/bits/stl_relops.h: Same.
1671         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
1672         * testsuite/27_io/ios_base/cons/copy_neg.cc: Ditto.
1673
1674 2008-11-26  Janis Johnson  <janis187@us.ibm.com>
1675
1676         PR testsuite/28870
1677         * testsuite/lib/libstdc++.exp: Include new timeout library files.
1678         (libstdc++_init): Define tool_timeout.
1679         (dg-test): Override DejaGnu proc.
1680         (v3_target_compile): Set timeout value from new proc.
1681         (v3_target_compile_as_c): Ditto.
1682
1683 2008-11-24  Paolo Carlini  <paolo.carlini@oracle.com>
1684
1685         PR libstdc++/38244 (cont, debug bits)
1686         * include/debug/bitset (bitset<>::bitset(const char*, char, char)):
1687         Remove, do not implement DR 778.
1688
1689 2008-11-24  Paolo Carlini  <paolo.carlini@oracle.com>
1690
1691         PR libstdc++/38244
1692         * include/std/bitset (bitset<>::bitset(const char*, char, char)):
1693         Remove, do not implement DR 778.
1694         * doc/xml/manual/intro.xml: Remove entry for DR 778.
1695         * testsuite/23_containers/bitset/cons/2.cc: Remove.
1696         * testsuite/23_containers/bitset/cons/dr396.cc: Tweak.
1697         * testsuite/23_containers/bitset/cons/38244.cc: Add.
1698
1699 2008-11-21  Paolo Carlini  <paolo.carlini@oracle.com>
1700
1701         * testsuite/22_locale/num_put/put/char/38210.cc: Tweak.
1702         * testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.
1703
1704 2008-11-21  Paolo Carlini  <paolo.carlini@oracle.com>
1705
1706         PR libstdc++/38210
1707         * include/bits/locale_facets.tcc (num_put<>::do_put(iter_type,
1708         ios_base&, char_type, const void*)): Fix.
1709         * testsuite/22_locale/num_put/put/char/38210.cc: New.
1710         * testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.
1711
1712 2008-11-20  Paolo Carlini  <paolo.carlini@oracle.com>
1713
1714         PR libstdc++/38196
1715         * include/bits/locale_facets.tcc (num_put<>::do_put(iter_type,
1716         ios_base&, char_type, bool)): Fix.
1717         * testsuite/22_locale/num_put/put/char/38196.cc: New.
1718         * testsuite/22_locale/num_put/put/wchar_t/38196.cc: Likewise.
1719
1720 2008-11-18  Paolo Carlini  <paolo.carlini@oracle.com>
1721
1722         * include/tr1_impl/cinttypes: Remove redundant pragma system_header.
1723         * include/tr1_impl/cfenv: Likewise.
1724         * include/tr1_impl/cstdint: Likewise.
1725
1726 2008-11-13  Paolo Carlini  <paolo.carlini@oracle.com>
1727
1728         PR libstdc++/38000
1729         * include/c_global/csignal: Do not use include_next.
1730         * include/c_global/cstdlib: Likewise.
1731         * include/c_global/cstdio: Likewise.
1732         * include/c_global/cstdarg: Likewise.
1733         * include/c_global/cctype: Likewise.
1734         * include/c_global/cerrno: Likewise.
1735         * include/c_global/cmath: Likewise.
1736         * include/c_global/clocale: Likewise.
1737         * include/c_global/climits: Likewise.
1738         * include/c_global/cassert: Likewise.
1739         * include/c_global/csetjmp: Likewise.
1740         * include/c_global/cwchar: Likewise.
1741         * include/c_global/cfloat: Likewise.
1742         * include/c_global/cstdbool: Likewise.
1743         * include/c_global/cstring: Likewise.
1744         * include/c_global/cstddef: Likewise.
1745         * include/c_global/cwctype: Likewise.
1746         * include/tr1/cstdbool: Likewise.
1747         * include/tr1_impl/cinttypes: Do not include <inttypes.h>.
1748         * include/c_global/cinttypes: Do it here.
1749         * include/tr1/cinttypes: Likewise.
1750         * include/tr1_impl/cfenv: Do not include <fenv.h>.
1751         * include/c_global/cfenv: Do it here.
1752         * include/tr1/cfenv: Likewise.
1753         * include/tr1_impl/cstdint: Do not include <stdint.h>.
1754         * include/c_global/cstdint: Do it here.
1755         * include/tr1/cstdint: Likewise.
1756         * include/c_compatibility/fenv.h: Include <tr1_impl/cfenv>.
1757         * include/c_compatibility/stdint.h: Include <tr1_impl/cstdint>.
1758         * include/c_compatibility/inttypes.h: Include <tr1_impl/cinttypes>.
1759
1760         * include/c_compatibility/math.h: Minor tweak, add comment.
1761
1762 2008-11-12  Steve Ellcey  <sje@cup.hp.com>
1763
1764         * configure.ac: Move call to GCC_CHECK_UNWIND_GETIPINFO.
1765         * configure: Regenerate to get new GCC_CHECK_UNWIND_GETIPINFO.
1766
1767 2008-11-12  Paolo Carlini  <paolo.carlini@oracle.com>
1768
1769         PR libstdc++/37986 (cont)
1770         * include/tr1_impl/random (struct _Adaptor): Use only remove_reference
1771         on _Engine.
1772         (struct _Adaptor<_Engine*, _Distribution>): Add.
1773         * testsuite/tr1/5_numerical_facilities/random/variate_generator/
1774         37986.cc: Extend.
1775
1776 2008-11-11  Paolo Carlini  <paolo.carlini@oracle.com>
1777
1778         PR libstdc++/37986
1779         * include/tr1_impl/random (struct _Adaptor): Use remove_pointer
1780         and remove_reference on _Engine.
1781         * testsuite/tr1/5_numerical_facilities/random/variate_generator/
1782         37986.cc: New.
1783
1784 2008-11-11  Paolo Carlini  <paolo.carlini@oracle.com>
1785
1786         * testsuite/ext/ext_pointer/1_neg.cc: Adjust dg-error line numbers.
1787
1788 2008-11-11  Paolo Carlini  <paolo.carlini@oracle.com>
1789
1790         * testsuite/23_containers/vector/ext_pointer/modifiers/erase.cc: Fix.
1791         * testsuite/23_containers/vector/ext_pointer/modifiers/element.cc:
1792         Likewise.
1793
1794 2008-11-11  Bob Walters  <bob.s.walters@gmail.com>
1795
1796         * include/bits/forward_list.h: Support non-standard pointer types
1797         (_Fwd_list_node_base): Add _Alloc template parameter.
1798         (_Fwd_list_node<>): Likewise.
1799         (_Fwd_list_iterator<>): Likewise.
1800         (_Fwd_list_const_iterator<>): Likewise.
1801         (_Fwd_list_node_base::_M_next, _M_transfer_after, _M_reverse_after):
1802         Use _Alloc<_Tp>::pointer.
1803         (_Fwd_list_iterator<>::_M_node): Use _Node_base::_Pointer.
1804         (_Fwd_list_base<>::_M_get_node, _M_create_node, _M_create_node,
1805         _M_insert_after, _M_put_node, _M_erase_after): Likewise.
1806         (_Fwd_list_const_iterator<>::_M_node): use _Node_base::_Const_pointer.
1807         (forward_list<>): Use __static_pointer_cast in place of static_cast,
1808         and __const_pointer_cast in place of const_cast.
1809         * include/bits/forward_list.tcc
1810         (_Fwd_list_node<>::_M_sort_after): Using _Pointer typedefs in place
1811         of standard pointers, __static_pointer_cast in place of static_cast.
1812         (_Fwd_list_base<>::_Fwd_list_base, _M_insert_after, _M_erase_after):
1813         Likewise.
1814         (forward_list<>::_M_initialize_dispatch, _M_fill_initialize,
1815         splice_after, remove, remove_if, merge): Likewise.
1816         * testsuite/23_containers/forward_list/ext_pointer/modifiers/1.cc: New.
1817         * testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
1818         Likewise.
1819         * testsuite/23_containers/forward_list/ext_pointer/modifiers/3.cc:
1820         Likewise.
1821         * testsuite/23_containers/forward_list/ext_pointer/modifiers/4.cc:
1822         Likewise.
1823         * testsuite/23_containers/forward_list/ext_pointer/modifiers/5.cc:
1824         Likewise.
1825         * testsuite/23_containers/forward_list/ext_pointer/operations/1.cc:
1826         Likewise.
1827         * testsuite/23_containers/forward_list/ext_pointer/operations/2.cc:
1828         Likewise.
1829         * testsuite/23_containers/forward_list/ext_pointer/operations/3.cc:
1830         Likewise.
1831         * testsuite/23_containers/forward_list/ext_pointer/operations/4.cc:
1832         Likewise.
1833         * testsuite/23_containers/forward_list/ext_pointer/operations/5.cc:
1834         Likewise.
1835         * testsuite/23_containers/forward_list/ext_pointer/operations/6.cc:
1836         Likewise.
1837         * testsuite/23_containers/forward_list/ext_pointer/operations/7.cc:
1838         Likewise.
1839         * testsuite/23_containers/forward_list/ext_pointer/requirements/1.cc:
1840         Likewise.
1841         * testsuite/23_containers/forward_list/ext_pointer/requirements/
1842         explicit_instantiation/1.cc: Likewise.
1843         * testsuite/23_containers/forward_list/ext_pointer/requirements/
1844         explicit_instantiation/3.cc: Likewise.
1845         * testsuite/23_containers/forward_list/ext_pointer/1.cc: Likewise.
1846
1847 2008-11-11  Paolo Carlini  <paolo.carlini@oracle.com>
1848
1849         * include/ext/extptr_allocator.h: Minor tweaks.
1850         * include/ext/pointer.h: Likewise.
1851         * include/ext/cast.h: Likewise.
1852
1853 2008-11-10  Paolo Carlini  <paolo.carlini@oracle.com>
1854
1855         PR libstdc++/38067
1856         * config/locale/gnu/monetary_members.cc (moneypunct<>::
1857         _M_initialize_moneypunct(__c_locale, const char*)): Use correct vector
1858         delete for __wcs_ps and __wcs_ns.
1859
1860 2008-11-07  Bob Walters  <bob.s.walters@gmail.com>
1861
1862         * include/ext/pointer.h: New, add experimental support for non-standard
1863         pointer types in containers via the allocator::pointer typedef.
1864         (Currently only supported/working with std::vector)
1865         * include/ext/cast.h: New, add overload-able pointer casting functions
1866         for use in containers supporting non-standard pointer types.
1867         * include/ext/extptr_allocator.h: New, add _ExtPtr_allocator.
1868         * include/Makefile.am: Update.
1869         * include/precompiled/extc++.h: Likewise.
1870         * include/Makefile.in: Regenerate.
1871         * testsuite/ext/ext_pointer/1.cc: New.
1872         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
1873         * testsuite/23_containers/vector/ext_pointer/citerators.cc: New.
1874         * testsuite/23_containers/vector/ext_pointer/data_access.cc: Likewise.
1875         * testsuite/23_containers/vector/ext_pointer/resize.cc: Likewise.
1876         * testsuite/23_containers/vector/ext_pointer/types/1.cc: Likewise.
1877         * testsuite/23_containers/vector/ext_pointer/modifiers/element.cc:
1878         Likewise.
1879         * testsuite/23_containers/vector/ext_pointer/modifiers/erase.cc:
1880         Likewise.
1881         * testsuite/23_containers/vector/ext_pointer/modifiers/insert.cc:
1882         Likewise.
1883         * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
1884         1.cc: Likewise.
1885         * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
1886         3.cc: Likewise.
1887
1888 2008-11-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1889
1890         PR libstdc++/38017
1891         Revert:
1892         * include/tr1_impl/functional (result_of,reference_wrapper): Update
1893         to use C++0x features.
1894         * testsuite/20_util/function_objects/return_types/result_of.cc: New.
1895         * testsuite/20_util/function_objects/return_types/result_of_neg.cc:
1896         New.
1897         * testsuite/20_util/function_objects/return_types/result_of_ref.cc:
1898         New.
1899         * testsuite/20_util/reference_wrapper/24803.cc: Uncomment FIXMEs.
1900
1901 2008-11-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1902
1903         PR libstdc++/24803
1904         PR libstdc++/37351
1905         * include/tr1_impl/functional (result_of,reference_wrapper): Update
1906         to use C++0x features.
1907         * testsuite/20_util/function_objects/return_types/result_of.cc: New.
1908         * testsuite/20_util/function_objects/return_types/result_of_neg.cc:
1909         New.
1910         * testsuite/20_util/function_objects/return_types/result_of_ref.cc:
1911         New.
1912         * testsuite/20_util/reference_wrapper/24803.cc: Uncomment FIXMEs.
1913
1914 2008-11-03  Paolo Carlini  <paolo.carlini@oracle.com>
1915
1916         * include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
1917         iter_type, ios_base&, ios_base::iostate&, bool&): Tidy.
1918         * testsuite/22_locale/num_get/get/char/37958.cc: Extend.
1919         * testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
1920
1921 2008-11-01  Paolo Carlini  <paolo.carlini@oracle.com>
1922
1923         PR libstdc++/37958 (cont again)
1924         * include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
1925         iter_type, ios_base&, ios_base::iostate&, bool&): Fix again.
1926         * testsuite/22_locale/num_get/get/char/37958.cc: Extend.
1927         * testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
1928
1929 2008-11-01  Paolo Carlini  <paolo.carlini@oracle.com>
1930
1931         * include/bits/locale_facets.tcc (num_get<>::do_get(, long&),
1932         num_get<>::do_get(, unsigned short&),
1933         num_get<>::do_get(, unsigned int&),
1934         num_get<>::do_get(, unsigned long&),
1935         num_get<>::do_get(, long long&),
1936         num_get<>::do_get(, unsigned long long&),
1937         num_put<>::do_put(, long), num_put<>::do_put(, unsigned long),
1938         num_put<>::do_put(, long long),
1939         num_put<>::do_put(, unsigned long long)): Move inline...
1940         * include/bits/locale_facets.h: ... here.
1941
1942 2008-11-01  Paolo Carlini  <paolo.carlini@oracle.com>
1943
1944         PR libstdc++/37958 (cont)
1945         * include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
1946         iter_type, ios_base&, ios_base::iostate&, bool&): Fix again.
1947
1948 2008-11-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
1949
1950         * include/bits/shared_ptr.h: Update comparisons to match WP.
1951         (_Sp_counted_ptr): Make copy and assignment members deleted.
1952         (_Sp_counted_deleter): Remove private copy and assignment members.
1953         (__shared_count::_M_less,__weak_count::_M_less,operator<): Replace
1954         friend operator< with overloaded _M_less member functions to allow
1955         comparison with either shared_count or weak_count.
1956         (__shared_ptr::_M_less,__weak_ptr::_M_less): Replace with...
1957         (__shared_ptr::owner_before,__weak_ptr::owner_before): New overloads
1958         for ownership-based ordering.
1959         (operator<(__shared_ptr,__shared_ptr)): Compare stored pointers,
1960         make non-friend.
1961         (operator==(__shared_ptr,__shared_ptr)): Make non-friend.
1962         (operator!=(__shared_ptr,__shared_ptr)): Likewise.
1963         (less<__shared_ptr<>>,less<shared_ptr<>>,_Sp_less): Explicitly call
1964         pointer specialization.
1965         (__weak_ptr::operator<,weak_ptr::operator<=,weak_ptr::operator>,
1966         weak_ptr::operator>=): Remove operator< and delete all comparisons.
1967         (_Sp_owner_less,owner_less): Predicate for ownership-based ordering.
1968         (operator<(shared_ptr,shared_ptr): Overload for derived shared_ptr.
1969         (operator==(shared_ptr,shared_ptr): Likewise.
1970         (operator!=(shared_ptr,shared_ptr): Likewise.
1971         (swap(shared_ptr,shared_ptr)): Fix parameter types.
1972         (swap(weak_ptr,weak_ptr)): Add missing overload.
1973         * testsuite/20_util/owner_less/cmp.cc: New.
1974         * testsuite/20_util/shared_ptr/comparison/cmp.cc: Test other ops.
1975         * testsuite/20_util/shared_ptr/comparison/less.cc: New.
1976         * testsuite/20_util/shared_ptr/observers/owner_before.cc: New.
1977         * testsuite/20_util/weak_ptr/observers/owner_before.cc: New.
1978         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: New.
1979
1980 2008-10-31  Paolo Carlini  <paolo.carlini@oracle.com>
1981
1982         PR libstdc++/37958
1983         * include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
1984         iter_type, ios_base&, ios_base::iostate&, bool&): Fix.
1985         * testsuite/22_locale/num_get/get/char/37958.cc: New.
1986         * testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
1987
1988 2008-10-27  Paolo Carlini  <paolo.carlini@oracle.com>
1989
1990         PR libstdc++/37919
1991         Revert:
1992         2008-10-18  Douglas Gregor  <doug.gregor@gmail.com>
1993
1994         * include/bits/stl_pair.h (__may_be_null_pointer_init): New.
1995         (pair::pair): Eliminate the redundant pair(U1&&, U2&&) constructor.
1996         Add lvalue pair<U1, U2> constructor to handle non-const pair lvalues.
1997         Remove the old variadic constructor, and instead provide several
1998         variadic constructors that avoid failing when attempting to
1999         initialize a pointer from a null pointer constant.
2000         * testsuite/20_util/pair/moveable.cc (test3): Add new tests with
2001         initialization of pointers from the null pointer constant.
2002
2003 2008-10-27  Paolo Carlini  <paolo.carlini@oracle.com>
2004
2005         PR libstdc++/37522
2006         * config/os/mingw32/os_defines.h: Define _GLIBCXX_HAVE_BROKEN_VSWPRINTF
2007         * include/bits/basic_string.h: Guard string conversions with
2008         !defined(_GLIBCXX_HAVE_BROKEN_VSWPRINTF) too.
2009         * testsuite/lib/libstdc++.exp (check_v3_target_string_conversions):
2010         New.
2011         * testsuite/lib/dg-options.exp (dg-require-string-conversions): New.
2012         * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
2013         Use the latter.
2014         * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
2015         Likewise.
2016         * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
2017         Likewise.
2018         * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
2019         Likewise.
2020         * testsuite/21_strings/basic_string/numeric_conversions/char/
2021         stoull.cc: Likewise.
2022         * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
2023         Likewise.
2024         * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
2025         Likewise.
2026         * testsuite/21_strings/basic_string/numeric_conversions/char/
2027         to_string.cc: Likewise.
2028         * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
2029         Likewise.
2030
2031 2008-10-24  Paolo Carlini  <paolo.carlini@oracle.com>
2032
2033         * config/os/generic/error_constants.h (enum errc): Remove
2034         no_posix_equivalent.
2035         * config/os/mingw32/error_constants.h (enum errc): Likewise.
2036         * testsuite/19_diagnostics/headers/system_error/errc_std_c++0x.cc:
2037         Adjust.
2038
2039 2008-10-24  Jakub Jelinek  <jakub@redhat.com>
2040
2041         * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Remove dejagnu.
2042         (RUNTESTDEFAULTFLAGS, EXPECT, check_DEJAGNU_normal_targets): New
2043         variables.
2044         (%/site.exp, check-DEJAGNU%): New targets.
2045         (check-am): Run $(MAKE) check-DEJAGNU.
2046         * testsuite/Makefile.in: Regenerated.
2047
2048 2008-10-23  Chris Fairles  <cfairles@gcc.gnu.org>
2049
2050         * config/os/generic/error_constants.h (errc): Use long type.
2051         * config/os/mingw32/error_constants.h (errc): Likewise.
2052
2053 2008-10-22  Chris Fairles  <cfairles@gcc.gnu.org>
2054
2055         * include/std/system_error (is_error_code_enum): Specialize for errc.
2056         (error_category::error_category): Defaulted and protected.
2057         (error_category::~error_category): New, virtual.
2058         (error_category::error_category(const error_category&),
2059         error_category::operator=(const error_category&)): Deleted.
2060         (get_system_category, get_posix_category): Remove (DR 890).
2061         (system_category): External linkage (DR 890).
2062         (posix_category): Remove.
2063         (generic_category): Add. External linkage (DR 890).
2064         (error_code::error_code<>(_ErrorCodeEnum)): Use generic_category.
2065         (error_code::clear, error_code::operator=<>(_ErrorCodeEnum)): Forward to
2066         error_code::assign, use generic_category.
2067         (error_condition::error_condition,
2068         error_condition::error_condition<>(_ErrorConditionEnum)): Use
2069         generic_category.
2070         (error_condition::clear,
2071         error_condition::operator=<>(_ErrorConditionEnum)): Forward to
2072         error_code::assign, use generic_category.
2073         (make_error_code, make_error_condition): Define in namespace std.
2074         * include/std/mutex (unique_lock<>::lock, unique_lock<>::try_lock,
2075         unique_lock<>::try_lock_until<>(duration),
2076         unique_lock<>::try_lock_for<>(duration)): Replace posix_error with errc.
2077         * src/system_error.cc (system_error_category, generic_error_category):
2078         New.
2079         (gnu_error_category): Remove.
2080         (get_system_category, get_posix_category): Remove (DR 890).
2081         (system_category, generic_category): Define.
2082         * src/functexcept.cc (__throw_system_error): Use generic_category.
2083         * config/abi/pre/gnu.ver: Export system_category and generic_category,
2084         remove get_system_category and get_generic_category (DR 890).
2085         * config/os/generic/error_constants.h (posix_errno): Rename to errc, use
2086         enum class type. Fix spelling.
2087         * config/os/mingw32/error_constants.h (posix_errno): Likewise.
2088         * testsuite/19_diagnostics/error_code/cons/1.cc: Use errc and
2089         generic_category.
2090         * testsuite/19_diagnostics/error_code/operators/bool.cc: Use errc.
2091         * testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
2092         * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Likewise.
2093         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Update
2094         dg-error line numbers.
2095         * testsuite/19_diagnostics/error_condition/cons/1.cc: Use
2096         generic_category.
2097         * testsuite/19_diagnostics/error_condition/operators/bool.cc: Use errc.
2098         * testsuite/19_diagnostics/error_condition/operators/equal.cc: Likewise.
2099         * testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
2100         Likewise.
2101         * testsuite/19_diagnostics/headers/system_error/errc_std_c++0x.cc: New.
2102         * testsuite/19_diagnostics/headers/system_error/types_std_c++0x.cc:
2103         Remove using tests since errc is not a namespace.
2104         * testsuite/19_diagnostics/system_error/cons-1.cc: Use errc.
2105         * testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
2106         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc:
2107         Likewise.
2108         * testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
2109         Likewise.
2110         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
2111
2112 2008-10-20  Paolo Carlini  <paolo.carlini@oracle.com>
2113
2114         * include/tr1_impl/hashtable_policy.h (_Hash_node<>::_Hash_node<>
2115         (_Args&&...)): Add in C++0x mode.
2116         * include/tr1_impl/hashtable (_Hashtable<>::_M_allocate_node,
2117         _Hashtable<>::_M_deallocate_node): Use _M_get_Node_allocator in
2118         C++0x mode.
2119
2120         * include/tr1_impl/hashtable (_Hashtable<>::max_size): Use
2121         Node_allocator for improved accuracy.
2122         * testsuite/tr1/6_containers/unordered_multimap/capacity/
2123         29134-multimap.cc: Adjust.
2124         * testsuite/tr1/6_containers/unordered_multimap/capacity/
2125         29134-map.cc: Likewise.
2126         * testsuite/tr1/6_containers/unordered_multimap/capacity/
2127         29134-multiset.cc: Adjust.
2128         * testsuite/tr1/6_containers/unordered_multimap/capacity/
2129         29134-set.cc: Likewise.
2130
2131 2008-10-19  Paolo Carlini  <paolo.carlini@oracle.com>
2132
2133         * include/bits/stl_tree.h (_Rb_tree_node<>::_Rb_tree_node<>
2134         (_Args&&...)): Add in C++0x mode.
2135         (_Rb_tree<>::_M_create_node<>(_Args&&...)): Add in C++0x mode,
2136         use _M_get_Node_allocator.
2137         (_Rb_tree<>::_M_destroy_node(_Link_type): Use _M_get_Node_allocator
2138         in C++0x mode.
2139         * testsuite/23_containers/set/operators/1_neg.cc: Adjust dg-error
2140         line numbers.
2141         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
2142
2143 2008-10-18  Douglas Gregor  <doug.gregor@gmail.com>
2144
2145         * include/bits/stl_pair.h (__may_be_null_pointer_init): New.
2146         (pair::pair): Eliminate the redundant pair(U1&&, U2&&) constructor.
2147         Add lvalue pair<U1, U2> constructor to handle non-const pair lvalues.
2148         Remove the old variadic constructor, and instead provide several
2149         variadic constructors that avoid failing when attempting to
2150         initialize a pointer from a null pointer constant.
2151         * testsuite/20_util/pair/moveable.cc (test3): Add new tests with
2152         initialization of pointers from the null pointer constant.
2153
2154 2008-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
2155
2156         * include/bits/forward_list.tcc (forward_list<>::
2157         _M_initialize_dispatch(_InputIterator, _InputIterator, __false_type)):
2158         Simplify.
2159
2160 2008-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
2161
2162         * include/bits/forward_list.h (forward_list<>::
2163         forward_list(size_type)): Tweak, use _Base default constructor.
2164
2165 2008-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
2166
2167         * include/bits/forward_list.h (forward_list<>::insert_after): Minor
2168         cosmetic changes.
2169
2170 2008-10-16  Edward Smith-Rowland  <3dw4rd@verizon.net>
2171
2172         * include/bits/forward_list.h: Factor list construction to dispatch
2173         routines.
2174         * include/bits/forward_list.tcc: Likewise.
2175         * testsuite/23_containers/forward_list/modifiers/2.cc:
2176
2177 2008-10-16  Paolo Carlini  <paolo.carlini@oracle.com>
2178
2179         * include/bits/forward_list.tcc (operator==): Use auto.
2180
2181 2008-10-16  Paolo Carlini  <paolo.carlini@oracle.com>
2182
2183         * include/bits/forward_list.h (_Fwd_list_base<>::_M_insert_after):
2184         Move out of line, tweak to return _Fwd_list_node_base*.
2185         (forward_list<>::insert_after(const_iterator, const _Tp&),
2186         forward_list<>::insert_after(const_iterator, _Tp&&)): Use it.
2187         * include/bits/forward_list.tcc (_Fwd_list_base<>::_M_insert_after):
2188         Define.
2189
2190         * include/bits/forward_list.h (forward_list<>): Consistently qualify
2191         calls of base class functions with this->.
2192         * include/bits/forward_list.tcc (forward_list<>): Likewise.
2193
2194         * include/bits/forward_list.h: Move some functions out of line...
2195         * include/bits/forward_list.tcc: ... here.
2196
2197         * include/bits/forward_list.h (forward_list<>::resize(size_type)): Fix.
2198
2199 2008-10-15  Paolo Carlini  <paolo.carlini@oracle.com>
2200
2201         * include/bits/forward_list.h: Remove pointless const qualifiers in
2202         const_casts.
2203         * include/bits/forward_list.tcc: Likewise.
2204
2205         * include/bits/forward_list.h (forward_list<>::pointer,
2206         const_pointer, reference, const_reference): Fix, use _Tp_alloc_type.
2207         * testsuite/23_containers/forward_list/requirements/
2208         explicit_instantiation/1.cc: New.
2209         * testsuite/23_containers/forward_list/requirements/
2210         explicit_instantiation/1.cc: Likewise.
2211
2212 2008-10-15  Paolo Carlini  <paolo.carlini@oracle.com>
2213
2214         * include/bits/forward_list.h (forward_list<>::max_size): Use
2215         Node_allocator; minor cosmetic changes.
2216         * testsuite/23_containers/forward_list/capacity/1.cc: Adjust.
2217
2218 2008-10-15  Edward Smith-Rowland  <3dw4rd@verizon.net>
2219
2220         * include/std/forward_list: New.
2221         * include/bits/forward_list.h: Likewise.
2222         * include/bits/forward_list.tcc: Likewise.
2223         * include/precompiled/stdc++.h: Modified to include forward_list.
2224         * include/Makefile.am: Add forward_list, forward_list.h, and
2225         forward_list.tcc.
2226         * include/Makefile.in: Regenerate.
2227         * testsuite/23_containers/forward_list/modifiers/1.cc: New.
2228         * testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
2229         * testsuite/23_containers/forward_list/modifiers/3.cc: Likewise.
2230         * testsuite/23_containers/forward_list/modifiers/4.cc: Likewise.
2231         * testsuite/23_containers/forward_list/modifiers/5.cc: Likewise.
2232         * testsuite/23_containers/forward_list/cons/1.cc: Likewise.
2233         * testsuite/23_containers/forward_list/cons/2.cc: Likewise.
2234         * testsuite/23_containers/forward_list/cons/3.cc: Likewise.
2235         * testsuite/23_containers/forward_list/cons/4.cc: Likewise.
2236         * testsuite/23_containers/forward_list/cons/5.cc: Likewise.
2237         * testsuite/23_containers/forward_list/cons/6.cc: Likewise.
2238         * testsuite/23_containers/forward_list/cons/7.cc: Likewise.
2239         * testsuite/23_containers/forward_list/cons/8.cc: Likewise.
2240         * testsuite/23_containers/forward_list/cons/9.cc: Likewise.
2241         * testsuite/23_containers/forward_list/requirements/1.cc: Likewise.
2242         * testsuite/23_containers/forward_list/operations/1.cc: Likewise.
2243         * testsuite/23_containers/forward_list/operations/2.cc: Likewise.
2244         * testsuite/23_containers/forward_list/operations/3.cc: Likewise.
2245         * testsuite/23_containers/forward_list/operations/4.cc: Likewise.
2246         * testsuite/23_containers/forward_list/operations/5.cc: Likewise.
2247         * testsuite/23_containers/forward_list/operations/6.cc: Likewise.
2248         * testsuite/23_containers/forward_list/operations/7.cc: Likewise.
2249         * testsuite/23_containers/forward_list/capacity/1.cc: Likewise.
2250         * testsuite/23_containers/forward_list/comparable.cc: Likewise.
2251         * testsuite/23_containers/forward_list/moveable.cc: Likewise.
2252         * testsuite/23_containers/headers/forward_list/synopsis.cc: Likewise.
2253         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Update.
2254         * testsuite/17_intro/headers/c++200x/all: Likewise.
2255
2256 2008-10-14  Paolo Carlini  <paolo.carlini@oracle.com>
2257
2258         * include/bits/stl_list.h (_List_node<>::_List_node<>(_Args&&...)):
2259         Add in C++0x mode.
2260         (list<>::_M_create_node<>(_Args&&...)): Use _M_get_Node_allocator.
2261         (list<>::_M_erase(iterator): Likewise, in C++0x mode.
2262         * include/bits/list.tcc (_List_base<>::_M_clear): Likewise.
2263         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2264         Adjust dg-error line number.
2265         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2266         Likewise.
2267         * testsuite/23_containers/list/requirements/dr438/
2268         constructor_1_neg.cc: Likewise.
2269         * testsuite/23_containers/list/requirements/dr438/
2270         constructor_2_neg.cc: Likewise.
2271
2272 2008-10-14  Paolo Carlini  <paolo.carlini@oracle.com>
2273
2274         * include/bits/stl_tree.h (_Rb_tree<>::max_size): Use Node_allocator
2275         for improved accuracy.
2276         * include/bits/stl_list.h (list<>::max_size): Likewise.
2277         * testsuite/23_containers/multimap/capacity/29134.cc: Adjust.
2278         * testsuite/23_containers/set/capacity/29134.cc: Likewise.
2279         * testsuite/23_containers/multiset/capacity/29134.cc: Likewise.
2280         * testsuite/23_containers/list/capacity/29134.cc: Likewise.
2281         * testsuite/23_containers/map/capacity/29134.cc: Likewise.
2282
2283 2008-10-10  Paolo Carlini  <paolo.carlini@oracle.com>
2284
2285         * testsuite/20_util/reference_wrapper/24803.cc: Avoid uninitialized
2286         warnings.
2287
2288 2008-10-10  Paolo Carlini  <paolo.carlini@oracle.com>
2289
2290         * include/std/system_error (native_category): Remove.
2291         (posix_category): Add.
2292         (error_code::error_code(_ErrorCodeEnum, typename enable_if<>:type*):
2293         Fix _M_cat initialization.
2294         (error_code::operator=(_ErrorCodeEnum)): Assign _M_cat too.
2295         (error_condition::_M_cat, error_condtion::operator=
2296         (_ErrorConditionEnum)): Implement resolution of DR 804.
2297         (error_condition::error_condition(_ErrorConditionEnum, typename
2298         enable_if<>:type*): Fix.
2299         (error_condition::clear, error_condition::assign): Implement.
2300         (operator==, operator!=): Fix uglification of parameters.
2301         (make_error_code, make_error_condition): Define in namespace
2302         posix_error.
2303         (operator<<(basic_ostream<>&, const error_code&)): Define here.
2304         * include/std/ostream (operator<<(basic_ostream<>&,
2305         const error_code&)): Do not define here.
2306         * testsuite/19_diagnostics/error_condition/cons/1.cc: New.
2307         * testsuite/19_diagnostics/error_condition/operators/bool.cc: Likewise.
2308         * testsuite/19_diagnostics/error_condition/operators/bool_neg.cc:
2309         Likewise.
2310         * testsuite/19_diagnostics/error_condition/operators/equal.cc:
2311         Likewise.
2312         * testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
2313         Likewise.
2314         * testsuite/19_diagnostics/error_code/cons/1.cc: Tweak.
2315         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
2316         dg-error line numbers.
2317         * testsuite/30_threads/unique_lock/locking/2.cc: Tweak.
2318
2319         * testsuite/util/testsuite_error.h: Minor tweaks.
2320         * testsuite/util/testsuite_hooks.cc: Avoid uninitialized warning.
2321
2322 2008-10-10  Chris Fairles  <cfairles@gcc.gnu.org>
2323
2324         * testsuite/20_util/duration/cons/1.cc: Remove invalid check of
2325         uninitialized duration.
2326
2327 2008-10-08  Bob Walters  <bob.s.walters@gmail.com>
2328
2329         * include/bits/stl_vector.h (_Vector_base<>::_Vector_impl::_M_start,
2330         _M_finish, _M_end_of_storage, _Vector_base<>::_M_allocate,
2331         _M_deallocate): Use _Tp_alloc_type::pointer.
2332
2333 2008-10-07  Jason Merrill  <jason@redhat.com>
2334
2335         PR libstdc++/37761
2336         * testsuite/abi/demangle/abi_examples/20.cc: Adjust expected spacing.
2337         * testsuite/abi/demangle/abi_text/02.cc: Likewise.
2338         * testsuite/abi/demangle/regression/cw-16.cc: Likewise.
2339
2340 2008-10-07  Paolo Carlini  <paolo.carlini@oracle.com>
2341
2342         * include/bits/stl_iterator.h (operator-(const reverse_iterator<>&,
2343         const reverse_iterator<>&), operator-(const __normal_iterator<>&,
2344         const __normal_iterator<>&), operator-(const move_iterator<>&,
2345         const move_iterator<>&)): Use the auto -> return type syntax,
2346         implement DR 685.
2347
2348 2008-10-06  Jason Merrill  <jason@redhat.com>
2349
2350         * config/abi/pre/gnu.ver: Update char16/32_t manglings.
2351
2352 2008-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
2353
2354         * testsuite/20_util/reference_wrapper/invoke.cc: New.
2355         * testsuite/20_util/reference_wrapper/24803.cc: Likewise.
2356         * testsuite/20_util/reference_wrapper/typedefs.cc: Likewise.
2357
2358 2008-10-01  Andrew Pinski  <andrew_pinski@playstation.sony.com>
2359
2360         * config/locale/generic/c_locale.cc (__convert_to_v): Fix
2361         !__FLT_HAS_INFINITY__ case.
2362
2363 2008-09-30  Chris Fairles  <cfairles@gcc.gnu.org>
2364
2365         * include/std/tuple (tuple<>::swap): Implement swap for tuple as per
2366         DR 522 [Ready].
2367         * testsuite/20_util/tuple/swap.cc: New.
2368
2369 2008-09-30  Paolo Carlini  <paolo.carlini@oracle.com>
2370
2371         PR libstdc++/30085 (again)
2372         * include/debug/unordered_map (unordered_map<>, unordered_multimap<>):
2373         Do not derive from _Safe_association, derive from _GLIBCXX_STD_D::
2374         unordered_map / unordered_multimap; add missing member functions.
2375         * include/debug/unordered_set (unordered_set<>, unordered_multiset<>):
2376         Likewise for _GLIBCXX_STD_D::unordered_set / unordered_multiset.
2377         * include/debug/safe_association.h: Remove.
2378         * include/Makefile.am: Adjust.
2379         * include/Makefile.in: Regenerate.
2380         * testsuite/23_containers/unordered_multimap/init-list.cc: Remove
2381         xfail.
2382
2383 2008-09-28  Paolo Carlini  <paolo.carlini@oracle.com>
2384
2385         * include/bits/unique_ptr.h (unique_ptr<_Tp[]>::template<typename U>
2386         void reset(U)): Add as deleted function, per DR 821 [Ready].
2387         * include/bits/unique_ptr.h: Prefer everywhere deleted to private
2388         member function declarations; minor formatting tweaks.
2389         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: New.
2390         * testsuite/20_util/unique_ptr/assign/assign.cc: Adjust DejaGNU
2391         directives.
2392
2393 2008-09-28  Chris Fairles  <cfairles@gcc.gnu.org>
2394
2395         * include/std/mutex (try_lock): Implement generic try_lock.
2396         * testsuite/30_threads/try_lock/1.cc: New.
2397         * testsuite/30_threads/try_lock/2.cc: Likewise.
2398         * testsuite/30_threads/try_lock/3.cc: Likewise.
2399         * testsuite/30_threads/mutex/cons/assign_neg.cc: Adjust line numbers.
2400         * testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
2401         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
2402         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
2403         * testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
2404         * testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
2405         * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
2406         Likewise.
2407         * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Likewise.
2408
2409 2008-09-26  Peter O'Gorman  <pogma@thewrittenword.com>
2410             Steve Ellcey  <sje@cup.hp.com>
2411
2412         * configure: Regenerate for new libtool.
2413         * aclocal.m4: Ditto.
2414         * Makefile.in: Ditto.
2415         * src/Makefile.in: Ditto.
2416         * doc/Makefile.in: Ditto.
2417         * po/Makefile.in: Ditto.
2418         * libmath/Makefile.in: Ditto.
2419         * include/Makefile.in: Ditto.
2420         * libsupc++/Makefile.in: Ditto.
2421         * testsuite/Makefile.in: Ditto.
2422
2423 2008-09-24  Paolo Carlini  <paolo.carlini@oracle.com>
2424
2425         * include/std/bitset: Adjust comment to reflect DR 853.
2426         * include/debug/bitset: Likewise.
2427         * doc/xml/manual/intro.xml: Add an entry for DR 853.
2428
2429 2008-09-23  Paolo Carlini  <paolo.carlini@oracle.com>
2430
2431         Implement DR 396 [Ready].
2432         * include/std/bitset (bitset<>::bitset(const std::basic_string<>&,
2433         size_t, size_t, _CharT, _CharT), bitset<>::bitset(const char*,
2434         char, char), bitset<>::to_string(_CharT, _CharT),
2435         bitset<>::_M_copy_from_string(const std::basic_string<>&, size_t,
2436         size_t, _CharT, _CharT), bitset<>::_M_copy_to_string
2437         (std::basic_string<>&, _CharT, _CharT), bitset<>::_M_copy_from_ptr(
2438         const _CharT*, size_t, size_t, size_t, _CharT, _CharT)): Add.
2439         (operator>>(std::basic_istream<>&, bitset<_Nb>&), operator<<(
2440         std::basic_ostream<>&, const bitset<_Nb>&)): Adjust.
2441         * include/debug/bitset (bitset<>::bitset(const std::basic_string<>&,
2442         size_t, size_t, _CharT, _CharT), bitset<>::bitset(const char*,
2443         char, char), bitset<>::to_string(_CharT, _CharT)): Add.
2444         * doc/xml/manual/intro.xml: Add an entry for DR 396.
2445         * testsuite/23_containers/bitset/cons/dr396.cc: Add.
2446         * testsuite/23_containers/bitset/to_string/dr396.cc: Likewise.
2447
2448 2008-09-23  Chris Fairles  <cfairles@gcc.gnu.org>
2449
2450         * testsuite/25_algorithms/min/37547.cc: Return void to avoid warnings.
2451         * testsuite/25_algorithms/max/37547.cc: Likewise.
2452         * testsuite/25_algorithms/minmax/37547.cc: Likewise.
2453
2454 2008-09-23  Chris Fairles  <cfairles@gcc.gnu.org>
2455
2456         * include/std/chrono: If _GLIBCXX_USE_MONOTONIC_CLOCK is defined, don't
2457         typedef monotonic_clock to system_clock and instead declare new class.
2458         * src/chrono.cc: Conditionally define monotonic_clock::now().
2459         * include/std/condition_variable (wait_until): Throw exception if
2460         __gthread_cond_timedwait returns with error other than timed_out. Use
2461         system_clock as known clock type (__clock_t) and add overloads for known
2462         and unknown clocks. In the unknown case, sync to the known clock.
2463         Implement overload taking a predicate.
2464         (wait_for): Implement overload taking a predicate.
2465         * config/abi/pre/gnu.ver: Add exports for monotonic_clock.
2466         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc: Modify
2467         line numbers.
2468         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
2469         Likewise.
2470         * testsuite/30_threads/condition_variable/cons/assign_neg.cc: Likewise.
2471         * testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise.
2472         * testsuite/30_threads/condition_variable/member/1.cc: New.
2473         * testsuite/30_threads/condition_variable/member/2.cc: Likewise.
2474
2475 2008-09-23  Paolo Carlini  <paolo.carlini@oracle.com>
2476
2477         PR libstdc++/37624
2478         * testsuite/22_locale/num_get/get/char/10.cc: Skip long double case
2479         when strtold is not available.
2480         * testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
2481
2482 2008-09-23  Benjamin Kosnik  <bkoz@redhat.com>
2483
2484         PR libstdc++/37391 continued.
2485         * doc/html/ext/pb_ds/assoc_examples.html: Don't use base tag,
2486         specify full path for source file links.
2487         * doc/html/ext/pb_ds/pq_examples.html: Same.
2488
2489 2008-09-23  Paolo Carlini  <paolo.carlini@oracle.com>
2490
2491         * include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't use const
2492         by value parameters.
2493         * include/bits/locale_facets.h (__pad<>::_S_pad): Likewise.
2494
2495 2008-09-22  Paolo Carlini  <paolo.carlini@oracle.com>
2496
2497         PR libstdc++/32422, DR 23 [Ready in R60]
2498         * config/locale/gnu/c_locale.cc (__convert_to_v(const char*, float&,
2499         ios_base::iostate&, const __c_locale&), __convert_to_v(const char*,
2500         double&, ios_base::iostate&, const __c_locale&), __convert_to_v(const
2501         char*, long double&, ios_base::iostate&, const __c_locale&)): Implement
2502         DR 23 and deal correctly with broken exponents.
2503         * config/locale/generic/c_locale.cc (__convert_to_v(const char*,
2504         float&, ios_base::iostate&, const __c_locale&), __convert_to_v(const
2505         char*, double&, ios_base::iostate&, const __c_locale&),
2506         __convert_to_v(const char*, long double&, ios_base::iostate&, const
2507         __c_locale&)): Likewise.
2508         * include/bits/locale_facets.tcc (num_get<>::_M_extract_int(_InIter,
2509         _InIter, ios_base&, ios_base::iostate&, _ValueT&)): Likewise.
2510         (num_get<>::_M_extract_float(_InIter, _InIter, ios_base&,
2511         ios_base::iostate&, string&): Change grouping check to set instead of
2512         OR failbit; do not check for eofbit here...
2513         (num_get<>::do_get(iter_type, iter_type, ios_base&,
2514         ios_base::iostate&, float&), num_get<>::do_get(iter_type, iter_type,
2515         ios_base&, ios_base::iostate&, double&), num_get<>::do_get(iter_type,
2516         iter_type, ios_base&, ios_base::iostate&, long double&),
2517         num_get<>::__do_get(iter_type, iter_type, ios_base&,
2518         ios_base::iostate&, double&)): ... do it here instead.
2519         (num_get<>::do_get(iter_type, iter_type, ios_base&,
2520         ios_base::iostate&, bool&)): Implement DR 23.
2521         (num_get<>::do_get(iter_type, iter_type, ios_base&,
2522         ios_base::iostate&, void*&)): Adjust.
2523         * doc/xml/manual/intro.xml: Add and entry for DR 23.
2524         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/10.cc:
2525         Adjust.
2526         * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
2527         Likewise.
2528         * testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
2529         * testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
2530         * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
2531         * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
2532         * testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
2533         * testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
2534         * testsuite/22_locale/num_get/get/char/10.cc: Likewise.
2535         * testsuite/22_locale/num_get/get/char/12.cc: Likewise.
2536         * testsuite/22_locale/num_get/get/char/15.cc: Likewise.
2537         * testsuite/22_locale/num_get/get/char/16.cc: Likewise.
2538
2539 2008-09-22  Benjamin Kosnik  <bkoz@redhat.com>
2540
2541         PR libstdc++/37391
2542         * doc/html/ext/pb_ds/*.html: Fix external links.
2543
2544 2008-09-22  Benjamin Kosnik  <bkoz@redhat.com>
2545
2546         * doc/doxygen/user.cfg.in: Define _GLIBCXX_HAS_GTHREADS for mutex,
2547         condition_variable, and thread output.
2548
2549 2008-09-22  Paolo Carlini  <paolo.carlini@oracle.com>
2550
2551         * doc/html/ext/lwg-closed.html: Update to Revision R59.
2552         * doc/html/ext/lwg-active.html: Likewise.
2553         * doc/html/ext/lwg-defects.html: Likewise.
2554         * doc/xml/manual/intro.xml: Adjust.
2555
2556 2008-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
2557
2558         * include/bits/stl_algo.h (minmax(initializer_list<>): Use make_pair,
2559         consistently with the other overload for initializer_list.
2560
2561 2008-09-19  Johannes Singler  <singler@ira.uka.de>
2562
2563         PR libstdc++/37470
2564         * include/parallel/base.h: Rename log2 to __log2.
2565           (__log2) Avoid infinite loop for n <= 0, return 0.
2566         * include/parallel/losertree.h: Rename log2 to __log2.
2567         * include/parallel/multiseq_selection.h: Likewise.
2568         * include/parallel/random_shuffle.h: Likewise.
2569
2570 2008-09-18  Paolo Carlini  <paolo.carlini@oracle.com>
2571
2572         * include/bits/shared_ptr.h (__shared_count<>::
2573         __shared_count(_Ptr, _Deleter), __shared_count<>::
2574         __shared_count(_Ptr, _Deleter, _Alloc), __shared_count<>::
2575         __shared_count(_Sp_make_shared_tag, _Tp*, _Alloc, _Args&&...)):
2576         Qualify new with ::.
2577
2578 2008-09-17  Paolo Carlini  <paolo.carlini@oracle.com>
2579
2580         PR libstdc++/37547
2581         * include/bits/stl_algo.h (min(initializer_list<>),
2582         min(initializer_list<>, Compare), max(initializer_list<>),
2583         max(initializer_list<>, Compare), minmax(initializer_list<>),
2584         minmax(initializer_list<>, Compare)): Fix return type.
2585         * include/bits/algorithmfwd.h: Adjust.
2586         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Likewise.
2587         * testsuite/25_algorithms/max/requirements/explicit_instantiation/3.cc:
2588         Likewise.
2589         * testsuite/25_algorithms/max/requirements/explicit_instantiation/
2590         pod2.cc: Likewise.
2591         * testsuite/25_algorithms/min/requirements/explicit_instantiation/3.cc:
2592         Likewise.
2593         * testsuite/25_algorithms/min/requirements/explicit_instantiation/
2594         pod2.cc: Likewise.
2595         * testsuite/25_algorithms/minmax/requirements/explicit_instantiation/
2596         3.cc: Likewise.
2597         * testsuite/25_algorithms/minmax/requirements/explicit_instantiation/
2598         pod2.cc: Likewise.
2599         * testsuite/25_algorithms/max/37547.cc: New.
2600         * testsuite/25_algorithms/min/37547.cc: Likewise.
2601         * testsuite/25_algorithms/minmax/37547.cc: Likewise.
2602
2603 2008-09-16  Chris Fairles  <chris.fairles@gmail.com>
2604
2605         * testsuite/25_algorithms/min/requirements/explicit_instantiation/3.cc:
2606         New.
2607         * testsuite/25_algorithms/min/requirements/explicit_instantiation/
2608         pod2.cc: Likewise.
2609         * testsuite/25_algorithms/min/3.cc: Likewise.
2610         * testsuite/25_algorithms/min/4.cc: Likewise.
2611         * testsuite/25_algorithms/max/requirements/explicit_instantiation/3.cc:
2612         Likewise.
2613         * testsuite/25_algorithms/max/requirements/explicit_instantiation/
2614         pod2.cc: Likewise.
2615         * testsuite/25_algorithms/max/3.cc: Likewise.
2616         * testsuite/25_algorithms/max/4.cc: Likewise.
2617         * testsuite/25_algorithms/minmax/requirements/explicit_instantiation/
2618         3.cc: Likewise.
2619         * testsuite/25_algorithms/minmax/requirements/explicit_instantiation/
2620         pod2.cc: Likewise.
2621         * testsuite/25_algorithms/minmax/2.cc: Likewise.
2622         * testsuite/25_algorithms/minmax/3.cc: Likewise.
2623
2624 2008-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
2625
2626         * include/bits/stl_algo.h (min(initializer_list<>),
2627         min(initializer_list<>, Compare), max(initializer_list<>),
2628         max(initializer_list<>, Compare), minmax(initializer_list<>),
2629         minmax(initializer_list<>, Compare)): Add in C++0x mode.
2630         * include/bits/algorithmfwd.h: Add.
2631         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Likewise.
2632
2633 2008-09-13  Chris Fairles  <chris.fairles@gmail.com>
2634
2635         * testsuite/30_threads/thread/algorithm/1.cc: Join thread before
2636         program exits.
2637         * testsuite/30_threads/thread/algorithm/2.cc: Likewise.
2638         * testsuite/30_threads/thread/this_thread/3.cc: Define test variable.
2639         * testsuite/30_threads/thread/this_thread/4.cc: Likewise.
2640
2641 2008-09-12  Chris Fairles  <chris.fairles@gmail.com>
2642             Benjamin Kosnik  <bkoz@redhat.com>
2643
2644         * include/std/thread: New.
2645         * include/Makefile.am: Update.
2646         * include/Makefile.in: Regenerate.
2647         * src/thread.cc: New.
2648         * src/Makefile.am: Update.
2649         * src/Makefile.in: Regenerate.
2650         * acinclude.m4: Add check for nanosleep.
2651         * configure.ac: Call it.
2652         * configure: Regenerate.
2653         * config.h.in: Likewise.
2654         * config/abi/pre/gnu.ver: Add exports.
2655         * doc/doxygen/user.cfg.in: Add thread header.
2656         * testsuite/lib/libstdc++.exp (check_v3_target_nanosleep): Add.
2657         * testsuite/lib/dg-options.exp (dg-require-nanosleep): Add.
2658         * testsuite/30_threads/thread/cons/1.cc: New.
2659         * testsuite/30_threads/thread/cons/2.cc: Likewise.
2660         * testsuite/30_threads/thread/cons/3.cc: Likewise.
2661         * testsuite/30_threads/thread/cons/4.cc: Likewise.
2662         * testsuite/30_threads/thread/algorithm/1.cc: Likewise.
2663         * testsuite/30_threads/thread/algorithm/2.cc: Likewise.
2664         * testsuite/30_threads/thread/member/1.cc: Likewise.
2665         * testsuite/30_threads/thread/member/2.cc: Likewise.
2666         * testsuite/30_threads/thread/member/3.cc: Likewise.
2667         * testsuite/30_threads/thread/this_thread/1.cc: Likewise.
2668         * testsuite/30_threads/thread/this_thread/2.cc: Likewise.
2669         * testsuite/30_threads/thread/this_thread/3.cc: Likewise.
2670         * testsuite/30_threads/thread/this_thread/4.cc: Likewise.
2671         * testsuite/30_threads/headers/thread/types_std_c++0x.cc: Likewise.
2672         * testsuite/30_threads/headers/thread/std_c++0x_neg.cc: Likewise.
2673         * testsuite/17_intro/headers/c++200x/all.cc: Add thread.
2674         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc:
2675         Add thread, condition_variable and mutex.
2676
2677 2008-09-10  Paolo Carlini  <paolo.carlini@oracle.com>
2678
2679         * src/ctype.cc (use_facet<ctype<char> >, use_facet<ctype<wchar_t>):
2680         Remove specializations.
2681         * src/locale-inst.cc (use_facet<ctype<C> >): Instantiate.
2682         * include/bits/locale_facets.tcc (use_facet<ctype<char> >,
2683         use_facet<ctype<wchar_t>): Declare as extern template.
2684         * include/bits/locale_facets.h (use_facet<ctype<char> >,
2685         use_facet<ctype<wchar_t>): Do not declare as specializations.
2686
2687 2008-09-10  Paolo Carlini  <paolo.carlini@oracle.com>
2688
2689         * config/locale/darwin/ctype_members.cc (ctype<char>::_M_narrow_init,
2690         ctype<char>::_M_widen_init): Don't define here.
2691         * config/locale/gnu/ctype_members.cc: Likewise.
2692         * config/locale/generic/ctype_members.cc: Likewise.
2693         * src/ctype.cc: Define here.
2694
2695 2008-09-10  Paolo Carlini  <paolo.carlini@oracle.com>
2696
2697         PR libstdc++/37455
2698         * include/bits/locale_facets.h (ctype<char>::_M_narrow_init,
2699         ctype<char>::_M_widen_init): Don't define inline.
2700         * config/locale/darwin/ctype_members.cc: ... define here.
2701         * config/locale/gnu/ctype_members.cc: ... likewise.
2702         * config/locale/generic/ctype_members.cc: ... likewise.
2703         * config/abi/pre/gnu.ver: Export.
2704
2705 2008-09-09  Benjamin Kosnik  <bkoz@redhat.com>
2706
2707         * doc/xml/manual/abi.xml: Update for new releases.
2708         * doc/doxygen/user.cfg.in: Include C compatibility headers.
2709         * doc/html/*: Regenerate.
2710
2711 2008-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
2712
2713         * include/tr1_impl/cinttypes: Restore __STDC_FORMAT_MACROS after
2714         inclusion of <inttypes.h>.
2715         * include/tr1_impl/cstdint: Likewise for __STDC_LIMIT_MACROS and
2716         __STDC_CONSTANT_MACROS after <stdint.h>.
2717         * include/bits/postypes.h: Likewise.
2718
2719 2008-09-09  Andreas Schwab  <schwab@suse.de>
2720
2721         * acinclude.m4 (GLIBCXX_CHECK_STANDARD_LAYOUT): Fix compile check
2722         not to redefine main.
2723
2724 2008-09-07  Paolo Carlini  <paolo.carlini@oracle.com>
2725
2726         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Check wcstoimax and
2727         wcstoumax, define _GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1.
2728         * include/tr1_impl/cinttypes: Use the latter.
2729         * testsuite/tr1/8_c_compatibility/cinttypes/functions.cc: Likewise.
2730         * configure: Regenerate.
2731         * config.h.in: Likewise.
2732
2733 2008-09-05  Peter Dimov  <pdimov@mmltd.net>
2734
2735         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_2.cc: New.
2736
2737 2008-09-05  Paolo Carlini  <paolo.carlini@oracle.com>
2738
2739         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref.cc: Rename
2740         to...
2741         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_1.cc: ...
2742         this.
2743
2744 2008-09-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
2745
2746         PR libstdc++/36962
2747         * include/Makefile.am: Update headers.
2748         * include/Makefile.in: Regenerate.
2749         * include/std/memory: Update headers.
2750         * include/tr1/memory: Likewise.
2751         * include/tr1_impl/boost_shared_ptr.h: Remove, splitting into
2752         separate implementations for std and tr1.
2753         * include/bits/boost_sp_shared_count.h: Remove.
2754         * include/tr1/boost_sp_shared_count.h: Remove.
2755         * include/bits/shared_ptr.h: New. Combines boost_sp_shared_count.h
2756         and boost_shared_ptr.h into one file.
2757         (__shared_count,__shared_ptr,shared_ptr,swap): Add unique_ptr
2758         and rvalue-reference support as per current WP.
2759         * include/tr1/shared_ptr.h: New. Combines boost_sp_shared_count.h
2760         and boost_shared_ptr.h into one file.
2761         * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: New.
2762         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: New.
2763         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref.cc: New.
2764         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: New.
2765         * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: New.
2766         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc: New.
2767         * testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: New.
2768         * testsuite/20_util/shared_ptr/modifiers/swap_rvalue.cc: New.
2769         * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Remove.
2770
2771 2008-09-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
2772
2773         * doc/xml/manual/locale.xml: Fix typo.
2774
2775 2008-09-04  Paolo Carlini  <paolo.carlini@oracle.com>
2776
2777         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Tidy checks in case of
2778         POSIX threads.
2779         * configure: Regenerate.
2780
2781 2008-09-04  Chris Fairles  <chris.fairles@gmail.com>
2782
2783         * include/std/mutex (once_flag): Construct __gthread_once_t in a
2784         temporary variable before assigning to _M_once to avoid initialization
2785         errors.
2786
2787 2008-09-03  Paolo Carlini  <paolo.carlini@oracle.com>
2788
2789         * config/abi/pre/gnu.ver: Also export __once_functor_lock; tighten
2790         GLIBCXX_3.4 exports (necessary in case of undef _GLIBCXX_HAVE_TLS).
2791
2792         * Makefile.in: Regenerate.
2793         * src/Makefile.in: Likewise.
2794         * doc/Makefile.in: Likewise.
2795         * po/Makefile.in: Likewise.
2796         * libmath/Makefile.in: Likewise.
2797         * include/Makefile.in: Likewise.
2798         * libsupc++/Makefile.in: Likewise.
2799         * testsuite/Makefile.in: Likewise.
2800
2801 2008-09-03  Paolo Carlini  <paolo.carlini@oracle.com>
2802
2803         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Fix typo in last commit,
2804         check _POSIX_TIMEOUTS, not _POSIX_TIMERS.
2805         * configure: Regenerate.
2806
2807 2008-09-03  Paolo Carlini  <paolo.carlini@oracle.com>
2808
2809         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check _POSIX_TIMERS too.
2810         * configure: Regenerate.
2811
2812 2008-09-03  Chris Fairles  <chris.fairles@gmail.com>
2813
2814         * include/std/condition_variable: Use new deleted ctors.
2815         * include/std/mutex: Likewise plus implement timed_mutex,
2816         recursive_timed_mutex and call_once.
2817         * src/condition_variable.cc: Implement wait(). Use gthread types.
2818         Remove _GTHREADS_HAS_COND checks in favor of global
2819         _GLIBCXX_HAS_GTHREADS.
2820         * src/mutex.cc (call_once): Implementation using TLS with mutex
2821         fallback.
2822         * config/abi/pre/gnu.ver: Add exported symbols.
2823         * testsuite/lib/libstdc++.exp (check_v3_target_gthreads): New.
2824         * testsuite/lib/dg-options.exp (dg-require-gthreads): Likewise.
2825         * testsuite/30_threads/lock_guard/requirements/typedefs.cc: Use
2826         dg-require-gthreads and dg-require-cstdint.
2827         * testsuite/30_threads/lock_guard/requirements/
2828         explicit_instantiation.cc: Likewise.
2829         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
2830         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
2831         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
2832         * testsuite/30_threads/mutex/requirements/typedefs.cc: Likewise.
2833         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
2834         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
2835         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
2836         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
2837         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
2838         Likewise.
2839         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
2840         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
2841         * testsuite/30_threads/recursive_mutex/requirements/typedefs.cc:
2842         Likewise.
2843         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
2844         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
2845         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
2846         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
2847         * testsuite/30_threads/unique_lock/requirements/
2848         explicit_instantiation.cc: Likewise.
2849         * testsuite/30_threads/unique_lock/requirements/typedefs.cc: Likewise.
2850         * testsuite/30_threads/mutex/cons/assign_neg.cc: Also adjust dg-error
2851         lines for deleted members.
2852         * testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
2853         * testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
2854         * testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
2855         * testsuite/30_threads/call_once/once_flag.cc: New.
2856         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
2857         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
2858         * testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise
2859         * testsuite/30_threads/condition_variable/cons/assign_neg.cc: Likewise.
2860         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
2861         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
2862         Likewise.
2863         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
2864         Likewise.
2865         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
2866         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
2867         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
2868         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
2869         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
2870         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
2871         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
2872         * testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
2873         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
2874         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
2875         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
2876         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
2877         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
2878         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
2879         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
2880         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
2881         Likewise.
2882         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
2883         Likewise.
2884         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
2885         Likewise.
2886         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
2887         Likewise.
2888         * testsuite/30_threads/recursive_timed_mutex/cons: Likewise.
2889         * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
2890         Likewise.
2891         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
2892         * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
2893         Likewise.
2894         * testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
2895         Likewise.
2896         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
2897         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
2898         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
2899         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
2900         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
2901         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
2902         Likewise.
2903         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
2904         Likewise.
2905         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
2906         Likewise.
2907         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
2908         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
2909         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
2910         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
2911         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
2912         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
2913         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
2914         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
2915         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
2916         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
2917         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
2918         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
2919
2920 2008-09-01  Mark Mitchell  <mark@codesourcery.com>
2921
2922         * include/std/type_traits (__make_unsigned_selector<>): Consider
2923         enums of size smaller than short.
2924         (__make_signed_selector<>): Likewise.
2925         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2926         Adjust line numbers.
2927         * testsuite/20_util/make_usigned/requirements/typedefs_neg.cc:
2928         Adjust line numbers.
2929         * testsuite/20_util/make_signed/requirements/typedefs-2.cc:
2930         Ensure test_enum is the same size as short.
2931         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
2932         Ensure test_enum is the same size as short.
2933
2934 2008-08-31  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
2935
2936         * acinclude.m4 <enable_symvers>: Don't use symvers on Windows.
2937         * configure: Regenerated.
2938         * Makefile.in: Regenerated.
2939         * src/Makefile.in: Regenerated.
2940         * doc/Makefile.in: Regenerated.
2941         * po/Makefile.in: Regenerated.
2942         * libmath/Makefile.in: Regenerated.
2943         * include/Makefile.in: Regenerated.
2944         * libsupc++/Makefile.in: Regenerated.
2945         * testsuite/Makefile.in: Regenerated.
2946
2947 2008-08-29  Mark Mitchell  <mark@codesourcery.com>
2948
2949         * testsuite/25_algorithms/nth_element/2.cc: Constrain iterations
2950         when testing on a simultor.
2951
2952 2008-08-28  Paolo Carlini  <paolo.carlini@oracle.com>
2953
2954         * testsuite/tr1/6_containers/unordered_set/requirements/typedef.cc:
2955         Rename to .../typedefs.cc.
2956         * testsuite/tr1/6_containers/unordered_map/requirements/typedef.cc:
2957         Likewise.
2958         * testsuite/tr1/6_containers/unordered_multiset/requirements/
2959         typedef.cc: Likewise.
2960         * testsuite/tr1/6_containers/unordered_multimap/requirements/
2961         typedef.cc: Likewise.
2962         * testsuite/23_containers/unordered_set/requirements/typedef.cc:
2963         Likewise.
2964         * testsuite/23_containers/unordered_map/requirements/typedef.cc:
2965         Likewise.
2966         * testsuite/23_containers/unordered_multiset/requirements/typedef.cc:
2967         Likewise.
2968         * testsuite/23_containers/unordered_multimap/requirements/typedef.cc:
2969         Likewise.
2970
2971 2008-08-28  Chris Fairles  <chris.fairles@gmail.com>
2972
2973         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): New. Checks for gthread
2974         support used by c++0x thread library.
2975         * configure.ac: Test unconditionally.
2976         * configure: Regenerate.
2977         * config.h.in: Regenerate.
2978
2979 2008-08-27  Benjamin Kosnik  <bkoz@redhat.com>
2980
2981         * doc/Makefile.am: Edit xml file list.
2982         * doc/Makefile.in: Regenerate.
2983         * configure: Regenerate.
2984         * doc/xml/manual/intro.xml: Edit, correct links, structure.
2985         * doc/xml/manual/configure.xml: Same.
2986         * doc/xml/manual/debug.xml: Same.
2987         * doc/xml/manual/test.xml: Same.
2988         * doc/xml/manual/build.xml: Remove.
2989         * doc/xml/manual/prerequisites.xml: Add.
2990         * doc/html/*: Regenerate.
2991
2992 2008-08-27  Paolo Carlini  <paolo.carlini@oracle.com>
2993
2994         * include/tr1_impl/hashtable (_Hashtable<>): Add missing pointer and
2995         const_pointer typedefs.
2996         * testsuite/tr1/6_containers/unordered_set/requirements/typedef.cc:
2997         Add.
2998         * testsuite/tr1/6_containers/unordered_map/requirements/typedef.cc:
2999         Likewise.
3000         * testsuite/tr1/6_containers/unordered_multiset/requirements/
3001         typedef.cc: Likewise.
3002         * testsuite/tr1/6_containers/unordered_multimap/requirements/
3003         typedef.cc: Likewise.
3004         * testsuite/23_containers/unordered_set/requirements/typedef.cc:
3005         Likewise.
3006         * testsuite/23_containers/unordered_map/requirements/typedef.cc:
3007         Likewise.
3008         * testsuite/23_containers/unordered_multiset/requirements/typedef.cc:
3009         Likewise.
3010         * testsuite/23_containers/unordered_multimap/requirements/typedef.cc:
3011         Likewise.
3012
3013 2008-08-27  Paul Brook  <paul@codesourcery.com>
3014
3015         * libsupc++/eh_call.cc (__cxa_call_unexpected): Fix name of
3016         __get_object_from_ambiguous_exception.
3017
3018 2008-08-26  Ben Elliston  <bje@au.ibm.com>
3019
3020         * src/mt_allocator.cc (__pool): Fix error in comment.
3021
3022 2008-08-25  Paolo Carlini  <paolo.carlini@oracle.com>
3023
3024         * linkage.m4 ([GLIBCXX_CHECK_BUILTIN_MATH_DECL_AND_LINKAGE_1],
3025         [GLIBCXX_CHECK_BUILTIN_MATH_SUPPORT]): Remove
3026         * configure.ac: Do not call the latter.
3027         * crossconfig.m4: Likewise.
3028         * libmath/mathconf.h: Adjust.
3029         * configure: Regenerate.
3030         * config.h.in: Likewise.
3031
3032 2008-08-24  Paolo Carlini  <paolo.carlini@oracle.com>
3033
3034         * acinclude.m4 ([GLIBCXX_CHECK_RANDOM_TR1]): Simplify, just use
3035         two test -r instead of an AC_TRY_RUN.
3036         * configure: Regenerate.
3037         * config.h.in: Likewise.
3038
3039 2008-08-24  Paolo Carlini  <paolo.carlini@oracle.com>
3040
3041         * acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Improve documentation.
3042         * doc/xml/manual/configure.xml: Likewise.
3043
3044 2008-08-23  Paolo Carlini  <paolo.carlini@oracle.com>
3045
3046         * acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Use [=KIND] in
3047         GLIBCXX_ENABLE.
3048         * configure: Regenerate.
3049
3050 2008-08-23  Paolo Carlini  <paolo.carlini@oracle.com>
3051
3052         * acinclude.m4 ([GLIBCXX_CHECK_GETTIMEOFDAY]): Change to use
3053         GCC_TRY_COMPILE_OR_LINK.
3054         ([GLIBCXX_CHECK_CLOCK_GETTIME]): Rename to
3055         [GLIBCXX_ENABLE_CLOCK_GETTIME], a versatile configure-time option,
3056         [no] by default, since it includes TRY_LINK checks.  librt is also
3057         searched, if requested.
3058         * doc/xml/manual/configure.xml: Document the latter.
3059         * configure.ac: Move the above checks outside native-only.
3060         * configure: Regenerate.
3061
3062 2008-08-23  Paolo Carlini  <paolo.carlini@oracle.com>
3063
3064         * testsuite/lib/libstdc++.exp (check_v3_target_atomic_builtins): Add.
3065         * testsuite/lib/dg-options.exp (dg-require-atomic-builtins): Likewise.
3066         * testsuite/18_support/exception_ptr/current_exception.cc: Use it.
3067         * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
3068         * testsuite/18_support/exception_ptr/lifespan.cc: Likewise.
3069
3070 2008-08-23  Sebastian Redl <sebastian.redl@getdesigned.at>
3071
3072         Add (again) exception propagation support as per N2179.  Feature is
3073         available only when _GLIBCXX_ATOMIC_BUILTINS_4 is defined.
3074         * libsupc++/exception_ptr.h (exception_ptr, current_exception,
3075         copy_exception, rethrow_exception): New file, implement exception
3076         propagation.
3077         * libsupc++/eh_ptr.cc (exception_ptr, current_exception,
3078         rethrow_exception, __gxx_dependent_exception_cleanup): Likewise.
3079         * libsupc++/unwind-cxx.h (__cxa_exception): Add reference count.
3080         (__cxa_dependent_exception, __cxa_allocate_dependent_exception,
3081         __cxa_free_dependent_exception, __get_dependent_exception_from_ue,
3082         __GXX_INIT_DEPENDENT_EXCEPTION_CLASS, __is_dependent_exception,
3083         __gxx_dependent_exception_class, __get_object_from_ue,
3084         __get_object_from_ambiguous_exception): Add.
3085         (__GXX_INIT_EXCEPTION_CLASS, __gxx_exception_class): Rename.
3086         (__is_gxx_exception_class): Handle dependent exceptions.
3087         * libsupc++/eh_arm.cc (__cxa_type_match): Likewise.
3088         * libsupc++/eh_call.cc (__cxa_call_unexpected): Likewise.
3089         * libsupc++/eh_personality.cc (__gxx_personality_*): Likewise.
3090         * libsupc++/eh_type.cc (__cxa_current_exception_type): Likewise.
3091         * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception,
3092         __cxa_free_dependent_exception): Add.
3093         * libsupc++/eh_throw.cc (__gxx_exception_cleanup): Handle reference
3094         counting.
3095         * libsupc++/exception: Conditionally include exception_ptr.h.
3096         * libsupc++/Makefile.am: Register new files.
3097         * libsupc++/Makefile.in: Regenerate.
3098         * config/abi/pre/gnu.ver: Add new symbols.
3099         * testsuite/18_support/exception_ptr/current_exception.cc: Test the
3100         core functionality of current_exception().
3101         * testsuite/18_support/exception_ptr/rethrow_exception.cc: Test the
3102         core functionality of rethrow_exception().
3103         * testsuite/18_support/exception_ptr/lifespan.cc: Test the life span of
3104         exception objects during exception propagation.
3105
3106 2008-08-22  Paolo Carlini  <paolo.carlini@oracle.com>
3107
3108         Revert again the N2179 patch.
3109
3110 2008-08-21  Sebastian Redl <sebastian.redl@getdesigned.at>
3111
3112         * libsupc++/eh_ptr.cc (__gxx_dependent_exception_cleanup): Call
3113         __cxa_free_dependent_exception.
3114
3115 2008-08-20  Paolo Carlini  <paolo.carlini@oracle.com>
3116
3117         * include/bits/char_traits.h (char_traits<char16_t>::
3118         assign(char_type*, size_t, char_type), char_traits<char32_t>::
3119         assign(char_type*, size_t, char_type)): For now, just open-code.
3120
3121 2008-08-20  Paolo Carlini  <paolo.carlini@oracle.com>
3122
3123         PR c++/33979 (partial)
3124         * include/bits/postypes.h (u16streampos, u32streampos): Add.
3125         * include/bits/char_traits.h (char_traits<char16_t>,
3126         char_traits<char32_t>): Add.
3127         * include/bits/stringfwd.h (u16string, u32string): Add.
3128         * include/ext/vstring_fwd.h: Add typedefs for char16_t/char32_t.
3129         * testsuite/21_strings/char_traits/requirements/char32_t/typedefs.cc:
3130         New.
3131         * testsuite/21_strings/char_traits/requirements/
3132         explicit_instantiation/short/1.cc: Likewise.
3133         * testsuite/21_strings/char_traits/requirements/
3134         explicit_instantiation/char32_t/1.cc: Likewise.
3135         * testsuite/21_strings/char_traits/requirements/
3136         explicit_instantiation/wchar_t/1.cc: Likewise.
3137         * testsuite/21_strings/char_traits/requirements/
3138         explicit_instantiation/char16_t/1.cc: Likewise.
3139         * testsuite/21_strings/char_traits/requirements/
3140         explicit_instantiation/char/1.cc: Likewise.
3141         * testsuite/21_strings/char_traits/requirements/char16_t/typedefs.cc:
3142         Likewise.
3143         * testsuite/21_strings/basic_string/requirements/
3144         explicit_instantiation/char32_t/1.cc: Likewise.
3145         * testsuite/21_strings/basic_string/requirements/
3146         explicit_instantiation/wchar_t/1.cc: Likewise.
3147         * testsuite/21_strings/basic_string/requirements/
3148         explicit_instantiation/char16_t/1.cc: Likewise.
3149         * testsuite/21_strings/basic_string/requirements/
3150         explicit_instantiation/char/1.cc: Likewise.
3151         * testsuite/21_strings/headers/string/types_std_c++0x.cc: Likewise.
3152         * testsuite/ext/vstring/requirements/explicit_instantiation/
3153         char32_t/1.cc: Likewise.
3154         * testsuite/ext/vstring/requirements/explicit_instantiation/
3155         char16_t/1.cc: Likewise.
3156
3157 2008-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
3158
3159         PR libstdc++/37149
3160         * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Include
3161         <cstdio>.
3162         * testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
3163         Likewise.
3164         * testsuite/27_io/objects/char/12048-1.cc: Likewise.
3165         * testsuite/27_io/objects/char/12048-3.cc: Likewise.
3166         * testsuite/27_io/objects/wchar_t/12048-1.cc: Likewise.
3167         * testsuite/27_io/objects/wchar_t/12048-3.cc: Likewise.
3168         * testsuite/ext/malloc_allocator/deallocate_global.cc: Likewise.
3169         * testsuite/ext/malloc_allocator/deallocate_local.cc: Likewise.
3170         * testsuite/ext/mt_allocator/deallocate_global-2.cc: Likewise.
3171         * testsuite/ext/mt_allocator/deallocate_global-4.cc: Likewise.
3172         * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Likewise.
3173         * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Likewise.
3174         * testsuite/ext/mt_allocator/deallocate_local-2.cc: Likewise.
3175         * testsuite/ext/mt_allocator/deallocate_local-4.cc: Likewise.
3176         * testsuite/ext/mt_allocator/deallocate_local-6.cc: Likewise.
3177         * testsuite/ext/mt_allocator/deallocate_local-8.cc: Likewise.
3178         * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Likewise.
3179         * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Likewise.
3180         * testsuite/ext/mt_allocator/deallocate_local_thread-5.cc: Likewise.
3181         * testsuite/ext/mt_allocator/deallocate_local_thread-7.cc: Likewise.
3182         * testsuite/ext/new_allocator/deallocate_global.cc: Likewise.
3183         * testsuite/ext/new_allocator/deallocate_local.cc: Likewise.
3184         * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
3185         * include/std/regex: Include <sstream>.
3186         * include/tr1/regex: Likewise.
3187
3188 2008-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
3189
3190         * configure.ac: Do not hardcode HAVE_S_ISREG and HAVE_S_IFREG for
3191         newlib.
3192         * configure: Regenerate.
3193
3194 2008-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
3195
3196         PR libstdc++/37147
3197         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Tighten checks on stdint.h,
3198         check the macros too.
3199         * configure: Regenerate.
3200
3201 2008-08-17  Paolo Carlini  <paolo.carlini@oracle.com>
3202
3203         * acinclude.m4 ([AC_LC_MESSAGES]): Use AC_TRY_COMPILE instead of
3204         AC_TRY_LINK.
3205         * configure.ac: Run unconditionally AC_LC_MESSAGES.
3206         * crossconfig.m4: Adjust.
3207         * configure: Regenerate.
3208
3209 2008-08-17  Paolo Carlini  <paolo.carlini@oracle.com>
3210
3211         * acinclude.m4 ([GLIBCXX_CHECK_LFS], [GLIBCXX_CHECK_POLL],
3212         [GLIBCXX_CHECK_S_ISREG_OR_S_IFREG], [GLIBCXX_CHECK_WRITEV]):
3213         Use GCC_TRY_COMPILE_OR_LINK instead of AC_TRY_LINK, in C++,
3214         with -fno-exceptions as flags.
3215         * configure.ac: Run unconditionally GLIBCXX_CHECK_LFS,
3216         GLIBCXX_CHECK_POLL, GLIBCXX_CHECK_S_ISREG_OR_S_IFREG,
3217         GLIBCXX_CHECK_WRITEV and commonized AC_CHECK_HEADERS.
3218         * crossconfig.m4: Adjust; remove AC_CHECK_HEADERS commonized
3219         in configure.ac.
3220         * configure: Regenerate.
3221
3222 2008-08-13  Paolo Carlini  <paolo.carlini@oracle.com>
3223
3224         Re-instate last patch, amended to use __exchange_and_add_dispatch
3225         and __atomic_add_dispatch in eh_ptr.cc and eh_throw.cc.
3226
3227 2008-08-13  Paolo Carlini  <paolo.carlini@oracle.com>
3228
3229         Revert the last patch.
3230
3231 2008-08-13  Sebastian Redl <sebastian.redl@getdesigned.at>
3232
3233         Add exception propagation support as per N2179.
3234         * libsupc++/exception_ptr.h (exception_ptr, current_exception,
3235         copy_exception, rethrow_exception): New file, implement exception
3236         propagation.
3237         * libsupc++/eh_ptr.cc (exception_ptr, current_exception,
3238         rethrow_exception, __gxx_dependent_exception_cleanup): Likewise.
3239         * libsupc++/unwind-cxx.h (__cxa_exception): Add reference count.
3240         (__cxa_dependent_exception, __cxa_allocate_dependent_exception,
3241         __cxa_free_dependent_exception, __get_dependent_exception_from_ue,
3242         __GXX_INIT_DEPENDENT_EXCEPTION_CLASS, __is_dependent_exception,
3243         __gxx_dependent_exception_class, __get_object_from_ue,
3244         __get_object_from_ambiguous_exception): Add.
3245         (__GXX_INIT_EXCEPTION_CLASS, __gxx_exception_class): Rename.
3246         (__is_gxx_exception_class): Handle dependent exceptions.
3247         * libsupc++/eh_arm.cc (__cxa_type_match): Likewise.
3248         * libsupc++/eh_call.cc (__cxa_call_unexpected): Likewise.
3249         * libsupc++/eh_personality.cc (__gxx_personality_*): Likewise.
3250         * libsupc++/eh_type.cc (__cxa_current_exception_type): Likewise.
3251         * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception,
3252         __cxa_free_dependent_exception): Add.
3253         * libsupc++/eh_throw.cc (__gxx_exception_cleanup): Handle reference
3254         counting.
3255         * libsupc++/exception: Conditionally include exception_ptr.h.
3256         * libsupc++/Makefile.am: Register new files.
3257         * libsupc++/Makefile.in: Regenerate.
3258         * config/abi/pre/gnu.ver: Add new symbols.
3259         * testsuite/18_support/exception_ptr/current_exception.cc: Test the
3260         core functionality of current_exception().
3261         * testsuite/18_support/exception_ptr/rethrow_exception.cc: Test the
3262         core functionality of rethrow_exception().
3263         * testsuite/18_support/exception_ptr/lifespan.cc: Test the life span of
3264         exception objects during exception propagation.
3265
3266 2008-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
3267
3268         PR libstdc++/37100
3269         * include/bits/stl_pair.h: Fix documentation URL in comment.
3270
3271 2008-08-12  Johannes Singler  <singler@ira.uka.de>
3272
3273         * include/paralle/losertree.h
3274         (LoserTreePointerBase<>::~LoserTreePointerBase):
3275         Replace delete by appropriate delete[].
3276
3277 2008-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
3278
3279         * configure.ac: Run unconditionally GLIBCXX_CHECK_INT64_T and
3280         GLIBCXX_CHECK_C99_TR1; remove sigsetjmp and mmap checks (unused).
3281         * crossconfig.m4: Adjust; remove HAVE_GETPAGESIZE defines (unused).
3282         * configure: Regenerate.
3283         * config.h.in: Likewise.
3284
3285         * acinclude.m4: Minor formatting fixes.
3286
3287 2008-08-11  Stephen M. Webb  <stephenw@xandros.com>
3288
3289         * include/tr1_impl/regex: Formatting fixes.
3290         * testsuite/tr1/7_regular_expressions/regex_traits/char/value.cc:
3291           New test.
3292         * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/value.cc:
3293           New test.
3294
3295 2008-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
3296
3297         * config/locale/generic/c_locale.cc: Include <cstdio>.
3298
3299 2008-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
3300
3301         * configure.ac: Run GLIBCXX_CHECK_STDIO_MACROS unconditionally.
3302         * configure: Regenerate.
3303
3304 2008-08-10  Paolo Carlini  <paolo.carlini@oracle.com>
3305
3306         * include/tr1_impl/type_traits (_DEFINE_SPEC*): Simplify.
3307         (_DEFINE_SPEC_BODY): Remove.
3308         (__is_void_helper, __is_integral_helper, __is_floating_point_helper,
3309         __is_member_object_pointer_helper, __is_member_function_pointer_helper,
3310         __remove_pointer_helper): Add.
3311         (is_void, is_integral, is_floating_point, is_member_object_pointer,
3312         is_member_function_pointer, remove_pointer): Use the latter.
3313         * include/tr1/type_traits (_DEFINE_SPEC): Simplify.
3314         (_DEFINE_SPEC_HELPER): Remove.
3315         (__is_signed_helper, __is_unsigned_helper): Add.
3316         (is_signed, is_unsigned): Use the latter.
3317
3318 2008-08-09  Paolo Carlini  <paolo.carlini@oracle.com>
3319
3320         Revert fix for libstdc++/35637, thanks to other/36901.
3321         * include/tr1_impl/type_traits (__is_function_helper): New, uses
3322         variadic templates.
3323         (is_function): Forward to the latter.
3324         (__in_array): Remove.
3325
3326 2008-08-09  Paolo Carlini  <paolo.carlini@oracle.com>
3327
3328         * config/locale/darwin/ctype_members.cc: Include <cstdio>.
3329
3330 2008-08-08  Paolo Carlini  <paolo.carlini@oracle.com>
3331
3332         * include/bits/ios_base.h: Undef _IOS_BASE_SEEK_CUR and
3333         _IOS_BASE_SEEK_END at the end of the file.
3334         * include/bits/char_traits.h: Likewise for _CHAR_TRAITS_EOF.
3335
3336 2008-08-07  Stephen M. Webb  <stephenw@xandros.com>
3337
3338         * include/tr1_impl/regex (match_results<>::cbegin, cend): Add, per
3339         N2691 WD.
3340
3341 2008-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
3342
3343         * acinclude.m4 ([GLIBCXX_CHECK_STDIO_MACROS]): New, checks for
3344         common values of EOF, SEEK_CUR, SEEK_END.
3345         * configure.ac: Use it.
3346         * include/bits/ios_base.h: Likewise.
3347         * include/bits/char_traits.h: Likewise.
3348         * config/locale/gnu/ctype_members.cc: Include <cstdio>.
3349         * config/locale/generic/ctype_members.cc: Likewise.
3350         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust dg-error lines.
3351         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
3352         * configure: Regenerate.
3353         * config.h.in: Likewise.
3354
3355 2008-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
3356
3357         * acinclude.m4 ([GLIBCXX_CHECK_INT64_T]): Also check whether int64_t
3358         is actually a typedef to long or long long.
3359         * include/bits/postypes.h: If int64_t is actually a typedef for
3360         long or long long don't include <stdint.h> unnecessarily.
3361         * configure: Regenerate.
3362         * config.h.in: Likewise.
3363
3364 2008-08-05  Paolo Carlini  <paolo.carlini@oracle.com>
3365
3366         * testsuite/util/testsuite_api.h (diamond_derivation<>::test):
3367         Expect ambiguity together with the standard exception classes.
3368         * testsuite/27_io/ios_base/failure/cons_virtual_derivation.cc: Remove
3369         xfail.
3370         * testsuite/19_diagnostics/logic_error/cons_virtual_derivation.cc:
3371         Likewise.
3372         * testsuite/19_diagnostics/runtime_error/cons_virtual_derivation.cc:
3373         Likewise.
3374         * testsuite/19_diagnostics/system_error/cons_virtual_derivation.cc:
3375         Likewise.
3376         * testsuite/18_support/bad_alloc/cons_virtual_derivation.cc: Likewise.
3377         * testsuite/18_support/bad_cast/cons_virtual_derivation.cc: Likewise.
3378         * testsuite/18_support/bad_exception/cons_virtual_derivation.cc:
3379         Likewise.
3380         * testsuite/18_support/bad_typeid/cons_virtual_derivation.cc:
3381         Likewise.
3382         * testsuite/ext/concurrence_lock_error/cons_virtual_derivation.cc:
3383         Likewise.
3384         * testsuite/ext/forced_exception_error/cons_virtual_derivation.cc:
3385         Likewise.
3386         * testsuite/ext/concurrence_unlock_error/cons_virtual_derivation.cc:
3387         Likewise.
3388         * testsuite/20_util/bad_function_call/cons_virtual_derivation.cc:
3389         Likewise.
3390
3391 2008-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
3392
3393         * include/bits/postypes.h: Reinstate inclusion of <stdint.h>;
3394         also define the __STDC_* macros.
3395         (streamoff): Adjust.
3396
3397         * include/tr1_impl/cstdint: Check that the __STDC_* macros are
3398         not defined before defining.
3399
3400 2008-08-01  Paolo Bonzini  <bonzini@gnu.org>
3401             Chris Fairles  <chris.fairles@gmail.com>
3402
3403         * acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Reinstate clock_gettime
3404         search, but only in libposix4, never link librt.
3405         * src/Makefile.am: Reinstate previous change to add GLIBCXX_LIBS.
3406         * configure: Regenerate.
3407         * configure.in: Likewise.
3408         * Makefile.in: Likewise.
3409         * src/Makefile.in: Likewise.
3410         * libsup++/Makefile.in: Likewise.
3411         * po/Makefile.in: Likewise.
3412         * doc/Makefile.in: Likewise.
3413
3414 2008-07-31  Chris Fairles <chris.fairles@gmail.com>
3415
3416         * include/std/chrono (duration): Use explicitly defaulted ctor, cctor,
3417         dtor and assignment. Add diagnostics as per 20.8.3 paragraphs 2, 3
3418         and 4 in WD. Other minor tweaks.
3419         * testsuite/20_util/duration/cons/1_neg.cc: Adjust line numbers.
3420         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: New.
3421         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
3422         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
3423
3424 2008-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
3425
3426         * testsuite/lib/libstdc++.exp (libstdc++_init): Set v3-libgomp.
3427         (check_v3_target_parallel_mode): Robustify, just follow the
3428         structure of testsuite/Makefile.am.
3429
3430 2008-07-29  Paolo Carlini  <paolo.carlini@oracle.com>
3431
3432         * include/debug/set.h: Minor formatting fixes.
3433         * include/debug/multiset.h: Likewise.
3434         * include/debug/safe_association.h: Likewise.
3435         * include/debug/vector: Likewise.
3436         * include/debug/map.h: Likewise.
3437         * include/debug/string: Likewise.
3438         * include/debug/multimap.h: Likewise.
3439         * include/bits/stl_list.h: Likewise.
3440         * include/bits/stl_map.h: Likewise.
3441         * include/bits/stl_set.h: Likewise.
3442         * include/bits/stl_multimap.h: Likewise.
3443         * include/bits/stl_vector.h: Likewise.
3444         * include/bits/stl_multiset.h: Likewise.
3445         * include/bits/stl_bvector.h: Likewise.
3446
3447 2008-07-29  Paolo Carlini  <paolo.carlini@oracle.com>
3448
3449         * include/std/utility: Include <initializer_list>, per the current WP.
3450
3451         * testsuite/lib/libstdc++.exp (check_v3_target_cstdint): Tweak,
3452         don't use -std=gnu++0x unnecessarily.
3453         * testsuite/18_support/numeric_limits/char16_32_t.cc: Use
3454         dg-require-cstdint.
3455         * testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Likewise.
3456         * testsuite/tr1/8_c_compatibility/cstdint/types_std_tr1.cc: Likewise.
3457
3458 2008-07-28  Paolo Carlini  <paolo.carlini@oracle.com>
3459
3460         PR libstdc++/36949
3461         * include/tr1_impl/boost_shared_ptr.h
3462         (__shared_ptr(_Sp_make_shared_tag, _Alloc, _Args&&...): Call
3463         __enable_shared_from_this_helper.
3464         * testsuite/20_util/shared_ptr/creation/36949.cc: New.
3465
3466 2008-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
3467
3468         PR libstdc++/36924
3469         Revert:
3470         2008-07-23  Chris Fairles <chris.fairles@gmail.com>
3471
3472         * acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Define GLIBCXX_LIBS.
3473         Holds the lib that defines clock_gettime (-lrt or -lposix4).
3474         * src/Makefile.am: Use it.
3475         * configure: Regenerate.
3476         * configure.in: Likewise.
3477         * Makefile.in: Likewise.
3478         * src/Makefile.in: Likewise.
3479         * libsup++/Makefile.in: Likewise.
3480         * po/Makefile.in: Likewise.
3481         * doc/Makefile.in: Likewise.
3482
3483 2008-07-23  Chris Fairles <chris.fairles@gmail.com>
3484
3485         * include/std/condition_variable: Update to N2691 WD.
3486         * include/std/mutex: Likewise.
3487         * testsuite/30_threads/mutex/cons/assign_neg.cc: Adjust line numbers.
3488         * testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
3489         * testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
3490         * testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
3491
3492 2008-07-23  Chris Fairles <chris.fairles@gmail.com>
3493
3494         * acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Define GLIBCXX_LIBS.
3495         Holds the lib that defines clock_gettime (-lrt or -lposix4).
3496         * src/Makefile.am: Use it.
3497         * configure: Regenerate.
3498         * configure.in: Likewise.
3499         * Makefile.in: Likewise.
3500         * src/Makefile.in: Likewise.
3501         * libsup++/Makefile.in: Likewise.
3502         * po/Makefile.in: Likewise.
3503         * doc/Makefile.in: Likewise.
3504
3505 2008-07-22  Paolo Carlini  <paolo.carlini@oracle.com>
3506
3507         * include/ext/sso_string_base.h
3508         (__sso_string_base<>::__sso_string_base(std::initializer_list<_CharT>,
3509         const _Alloc&)): Remove.
3510         * include/ext/rc_string_base.h
3511         (__rc_string_base<>::__rc_string_base(std::initializer_list<_CharT>,
3512         const _Alloc&)): Likewise.
3513         * include/ext/vstring.h
3514         (__versa_string<>::__versa_string(std::initializer_list<_CharT>,
3515         const _Alloc&)): Adjust.
3516
3517 2008-07-21  Jason Merrill  <jason@redhat.com>
3518
3519         Add initializer_list support as per N2679.
3520         * include/debug/unordered_map: Add initializer_list support.
3521         * include/debug/safe_association.h: Likewise.
3522         * include/debug/unordered_set: Likewise.
3523         * include/debug/vector: Likewise.
3524         * include/debug/deque: Likewise.
3525         * include/debug/map.h: Likewise.
3526         * include/debug/set.h: Likewise.
3527         * include/debug/string: Likewise.
3528         * include/debug/list: Likewise.
3529         * include/debug/multimap.h: Likewise.
3530         * include/tr1_impl/unordered_map: Likewise.
3531         * include/tr1_impl/hashtable: Likewise.
3532         * include/tr1_impl/unordered_set: Likewise.
3533         * include/tr1_impl/regex: Likewise.
3534         * include/std/valarray: Likewise.
3535         * include/std/unordered_map: Likewise.
3536         * include/std/unordered_set: Likewise.
3537         * include/bits/stl_list.h: Likewise.
3538         * include/bits/stl_map.h: Likewise.
3539         * include/bits/stl_set.h: Likewise.
3540         * include/bits/basic_string.h: Likewise.
3541         * include/bits/basic_string.tcc: Likewise.
3542         * include/bits/stl_multimap.h: Likewise.
3543         * include/bits/stl_vector.h: Likewise.
3544         * include/bits/stl_deque.h: Likewise.
3545         * include/bits/stl_multiset.h: Likewise.
3546         * include/bits/stl_bvector.h: Likewise.
3547         * include/ext/vstring.h: Likewise.
3548         * include/ext/rc_string_base.h: Likewise.
3549         * include/ext/sso_string_base.h: Likewise.
3550         * src/Makefile.am (w?string-inst): Build with -std=gnu++0x.
3551         * src/Makefile.in: Likewise.
3552         * config/abi/pre/gnu.ver: Add new w?string exports.
3553         * testsuite/21_strings/basic_string/init-list.cc: New test.
3554         * testsuite/23_containers/vector/init-list.cc: New test.
3555         * testsuite/23_containers/deque/init-list.cc: New test.
3556         * testsuite/23_containers/list/init-list.cc: New test.
3557         * testsuite/23_containers/map/init-list.cc: New test.
3558         * testsuite/23_containers/multimap/init-list.cc: New test.
3559         * testsuite/23_containers/set/init-list.cc: New test.
3560         * testsuite/23_containers/multiset/init-list.cc: New test.
3561         * testsuite/23_containers/unordered_map/init-list.cc: New test.
3562         * testsuite/23_containers/unordered_multimap/init-list.cc: New test.
3563         * testsuite/23_containers/unordered_set/init-list.cc: New test.
3564         * testsuite/23_containers/unordered_multiset/init-list.cc: New test.
3565         * testsuite/26_numerics/valarray/init-list.cc: New test.
3566         * testsuite/28_regex/init-list.cc: New test.
3567         * testsuite/ext/vstring/init-list.cc: New test.
3568         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
3569         Update error lineno.
3570         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
3571         Update error lineno.
3572         * testsuite/23_containers/vector/requirements/dr438/
3573         constructor_1_neg.cc: Update error lineno.
3574         * testsuite/23_containers/vector/requirements/dr438/
3575         constructor_2_neg.cc: Update error lineno.
3576         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
3577         Update error lineno.
3578         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
3579         Update error lineno.
3580         * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
3581         Update error lineno.
3582         * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
3583         Update error lineno.
3584         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
3585         Update error lineno.
3586         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
3587         Update error lineno.
3588         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
3589         Update error lineno.
3590         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
3591         Update error lineno.
3592
3593 2008-07-21  Mark Mitchell  <mark@codesourcery.com>
3594
3595         * config/os/gnu-linux/arm-eabi-extra.ver: New file.
3596         * configure.host: Use it for arm*-*-linux-*eabi.
3597
3598 2008-07-19  Paolo Carlini  <paolo.carlini@oracle.com>
3599
3600         * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp
3601         (assert_node_consistent): Avoid ambiguous else warning.
3602
3603         * include/ext/pb_ds/detail/debug_map_base.hpp: Include <iostream>.
3604
3605         * include/bits/c++config: In debug-mode (and parallel-mode) set
3606         _GLIBCXX_EXTERN_TEMPLATE to -1, not 0, thus disabling extern
3607         templates only for basic_string (per libstdc++/21674).
3608         * include/bits/basic_string.tcc: Use extern templates when
3609         _GLIBCXX_EXTERN_TEMPLATE > 0.
3610
3611 2008-07-18  Kris Van Hees  <kris.van.hees@oracle.com>
3612             Holger Hopp  <holger.hopp@sap.com>
3613
3614         * config/abi/pre/gnu.ver: Support char16_t and char32_t.
3615         * testsuite/util/testsuite_abi.cc (check_version): Add
3616         CXXABI_1.3.3 to known_versions.
3617
3618 2008-07-16  Paolo Carlini  <paolo.carlini@oracle.com>
3619
3620         * include/debug/vector (insert(iterator, _Tp&&), push_back(_Tp&&)):
3621         Enable only when _Tp != bool.
3622
3623         * testsuite/25_algorithms/heap/1.cc: Avoid unused variable warnings.
3624
3625 2008-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
3626
3627         * testsuite/lib/libstdc++.exp (check_v3_target_c_std): Avoid unused
3628         variable warnings leading to spurious fails of the test.
3629
3630 2008-07-16  Paolo Carlini  <paolo.carlini@oracle.com>
3631
3632         * testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Adjust
3633         dg-error lines.
3634         * testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
3635         * testsuite/20_util/duration/cons/1_neg.cc: Likewise.
3636
3637         * include/tr1_impl/type_traits: Fix comment typo.
3638
3639 2008-07-16  Paolo Carlini  <paolo.carlini@oracle.com>
3640
3641         * include/bits/unique_ptr.h: Remove stray character.
3642
3643 2008-07-15  Benjamin Kosnik  <bkoz@redhat.com>
3644
3645         * doc/doxygen/user.cfg.in: Add complex, ratio,
3646         intializer_list.
3647         (PREDEFINED): Add _GLIBCXX_USE_C99_STDINT_TR1.
3648         * doc/doxygen/doxygroups.cc: Add std::chrono.
3649         * include/bits/unique_ptr.h (default_delete, unique_ptr): Add markup.
3650         * libsupc++/initializer_list (initializer_list): Same.
3651         * include/std/ratio: Same.
3652         * include/std/chrono: Same.
3653         * include/std/complex: Disambiguate file markup.
3654
3655 2008-07-15  Chris Fairles  <chris.fairles@gmail.com>
3656
3657         * include/std/chrono: New, as per N2661.
3658         * src/chrono.cc: New.
3659         * include/Makefile.am: Update.
3660         * src/Makefile.am: Likewise.
3661         * include/Makefile.in: Regenerate.
3662         * src/Makefile.in: Likewise.
3663         * acinclude.m4: Add tests for clock_gettime and gettimeofday that
3664         define _GLIBCXX_HAS_CLOCK_GETTIME and/or _GLIBCXX_HAS_GETTIMEOFDAY.
3665         * configure.ac: Use them.
3666         * configure: Regenerate.
3667         * config.h.in: Likewise.
3668         * config/abi/pre/gnu.ver: Add symbols for system_clock::now() and
3669         system_clock::is_monotonic.
3670         * testsuite/20_util/duration/cons/1.cc: New.
3671         * testsuite/20_util/duration/cons/2.cc: Likewise.
3672         * testsuite/20_util/duration/cons/1_neg.cc: Likewise.
3673         * testsuite/20_util/duration/requirements/explicit_instantiation/
3674         explicit_instantiation.cc: Likewise.
3675         * testsuite/20_util/duration/arithmetic/1.cc: Likewise.
3676         * testsuite/20_util/duration/arithmetic/2.cc: Likewise.
3677         * testsuite/20_util/duration/comparisons/1.cc: Likewise.
3678         * testsuite/20_util/time_point/requirements/explicit_instantiation/
3679         explicit_instantiation.cc: Likewise.
3680         * testsuite/20_util/time_point/1.cc: Likewise.
3681         * testsuite/20_util/time_point/2.cc: Likewise.
3682         * testsuite/20_util/time_point/3.cc: Likewise.
3683         * testsuite/20_util/clocks/1.cc: Likewise.
3684         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Add
3685         missing headers.
3686         * testsuite/17_intro/headers/c++200x/all.cc: Likewise.
3687         * include/precompiled/stdc++.h: Likewise and remove <date_time>.
3688         * doc/doxygen/user.cfg.in: Likewise.
3689
3690 2008-07-15  Paolo Carlini  <paolo.carlini@oracle.com>
3691
3692         PR libstdc++/36832
3693         * include/ext/rope (_Destroy_const): Add.
3694         (rope<>::copy): Call it.
3695         * testsuite/ext/rope/36832.cc: New.
3696
3697 2008-07-15  Johannes Singler  <singler@ira.uka.de>
3698
3699         * include/parallel/find_selectors.h:
3700         Correct name for include guard #ifndef.
3701         * include/parallel/balanced_quicksort.h: Likewise.
3702         * include/parallel/unique_copy.h: Likewise.
3703         * include/parallel/multiway_mergesort.h: Likewise.
3704         * include/parallel/checkers.h: Likewise.
3705         * include/parallel/[various files]:
3706         Add/correct comment for #endif of include guard (at end of file)
3707
3708 2008-07-12  Paolo Carlini  <paolo.carlini@oracle.com>
3709
3710         * include/std/date_time: Remove, per N2549, in WP.
3711         * src/date_time.cc: Likewise.
3712         * config/abi/pre/gnu.ver: Remove <date_time> symbols.
3713         * include/Makefile.am: Remove date_time in std headers.
3714         * src/Makefile.am: Remove date_time.cc to source files.
3715         * include/Makefile.in: Regenerate.
3716         * src/Makefile.in: Likewise.
3717         * testsuite/31_date_time/headers/date_time/types_std.cc: Remove.
3718         * testsuite/31_date_time/headers/date_time/std_c++0x_neg.cc: Likewise.
3719         * testsuite/31_date_time/headers/date_time/functions_std.cc: Likewise.
3720         * testsuite/31_date_time/headers/date_time/synopsis.cc: Likewise.
3721         * testsuite/31_date_time/nanoseconds/requirements/traits.cc: Likewise.
3722         * testsuite/31_date_time/nanoseconds/requirements/duration.cc: Likewise.
3723         * testsuite/31_date_time/system_time/requirements: Likewise.
3724         * testsuite/31_date_time/system_time/requirements/traits.cc: Likewise.
3725         * testsuite/17_intro/headers/c++200x/all.cc: Adjust.
3726         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Adjust.
3727
3728 2008-07-10  Johannes Singler  <singler@ira.uka.de>
3729
3730         * include/parallel/balanced_quicksort.h:
3731         (qsb_divide) Replace "*end" by "*(end - 1)" in assertion.
3732
3733 2008-07-09  Benjamin Kosnik  <bkoz@redhat.com>
3734
3735         PR libstdc++/36451
3736         * doc/xml/manual/allocator.xml: Fix links.
3737         * doc/html/*: Regenerate.
3738
3739 2008-07-09  Joseph Myers  <joseph@codesourcery.com>
3740
3741         * libsupc++/unwind-cxx.h (__is_gxx_forced_unwind_class,
3742         __GXX_INIT_FORCED_UNWIND_CLASS): Define for ARM EABI unwinder.
3743         * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Call
3744         __GXX_INIT_FORCED_UNWIND_CLASS for forced unwind with ARM EABI
3745         unwinder.
3746         * libsupc++/eh_arm.cc (__cxa_type_match): Use
3747         __is_gxx_forced_unwind_class to check for forced unwind.
3748
3749 2008-07-09  Andreas Beckmann  <gcc@abeckmann.de>
3750
3751         PR libstdc++/36552
3752         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3753         null_metadata.hpp: Remove self-include.
3754
3755 2008-07-09  Joseph Myers  <joseph@codesourcery.com>
3756
3757         * testsuite/20_util/make_signed/requirements/typedefs-2.cc,
3758         testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Use
3759         -Wl,--no-enum-size-warning for arm*-*-linux*eabi.
3760
3761 2008-07-09  Johannes Singler  <singler@ira.uka.de>
3762
3763         PR libstdc++/36729
3764         * include/parallel/random_shuffle.h:
3765         (sequential_random_shuffle) Copy data back.
3766         * testsuite/25_algorithms/random_shuffle/1.cc:
3767         New. Generic random_shuffle functionality test.
3768
3769 2008-07-08  Chris Fairles  <chris.fairles@gmail.com>
3770
3771         * include/std/type_traits: Add common_type.
3772         * testsuite/20_util/common_type/requirements/
3773         explicit_instantiation.cc: New.
3774         * testsuite/20_util/common_type/requirements/
3775         typedefs-1.cc: Likewise.
3776
3777 2008-07-07  Paolo Carlini  <paolo.carlini@oracle.com>
3778
3779         * testsuite/lib/libstdc++.exp (check_v3_target_stdint): New.
3780         * testsuite/lib/dg-options.exp (dg-require-cstdint): New.
3781         * testsuite/20_util/ratio/cons/cons1.cc: Use it.
3782         * testsuite/20_util/ratio/cons/cons_overflow.cc: Likewise.
3783         * testsuite/20_util/ratio/operations/ops1.cc: Likewise.
3784         * testsuite/20_util/ratio/operations/ops2.cc: Likewise.
3785         * testsuite/20_util/ratio/operations/ops3.cc: Likewise.
3786         * testsuite/20_util/ratio/operations/ops_overflow.cc: Likewise.
3787         * testsuite/20_util/ratio/comparisons/comp1.cc: Likewise.
3788         * testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.
3789
3790         * include/std/type_traits: Fix comment typo.
3791
3792 2008-07-06  Roger Sayle  <roger@eyesopen.com>
3793
3794         * include/std/system_error (is_error_code_enum): Use identifier
3795         _Tp instead of _T to avoid conflict with system macro on Darwin.
3796         (is_error_condition_enum): Likewise.
3797
3798 2008-07-05  Paolo Carlini  <paolo.carlini@oracle.com>
3799
3800         * include/bits/postypes.h: Do not include <stdint.h>.
3801
3802         * include/Makefile.am: Reorder.
3803
3804 2008-07-05  Paolo Carlini  <paolo.carlini@oracle.com>
3805
3806         * include/std/ratio: Prefer __INTMAX_MAX__ to INTMAX_MAX (INTMAX_MIN).
3807
3808 2008-07-05  Chris Fairles  <chris.fairles@gmail.com>
3809
3810         * include/std/ratio: Documentation for std::ratio class. Add conditions
3811         to ratio_less to prevent overflow.
3812         * testsuite/20_util/ratio/comparisons/comp2.cc: New.
3813         * testsuite/20_util/ratio/cons/cons_overflow.cc: Update dg-error line
3814         numbers.
3815
3816 2008-07-04  Chris Fairles  <chris.fairles@gmail.com>
3817
3818         * include/std/ratio: New, per N2661.
3819         * include/Makefile.am: Update.
3820         * include/Makefile.in: Regenerate.
3821         * testsuite/20_util/ratio/cons/cons1.cc: New.
3822         * testsuite/20_util/ratio/cons/cons_overflow.cc: Likewise.
3823         * testsuite/20_util/ratio/operations/ops1.cc: Likewise.
3824         * testsuite/20_util/ratio/operations/ops2.cc: Likewise.
3825         * testsuite/20_util/ratio/operations/ops3.cc: Likewise.
3826         * testsuite/20_util/ratio/operations/ops_overflow.cc: Likewise.
3827         * testsuite/20_util/ratio/comparisons/comp1.cc: Likewise.
3828
3829 2008-07-04  Paolo Carlini  <paolo.carlini@oracle.com>
3830
3831         PR libstdc++/36616
3832         * testsuite/22_locale/time_put/put/char/4.cc: Just use es_ES instead.
3833         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
3834
3835 2008-07-03  Paolo Carlini  <paolo.carlini@oracle.com>
3836
3837         * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
3838         Improve check on long double limits.
3839         * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
3840         Likewise.
3841         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3842         stof.cc: Likewise.
3843         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
3844         stod.cc: Likewise.
3845
3846 2008-07-03  Paolo Carlini  <paolo.carlini@oracle.com>
3847
3848         * libsupc++/Makefile.am: Add initializer_list to the headers.
3849         * libsupc++/Makefile.in: Regenerate.
3850
3851         * libsupc++/initializer_list: Minor cosmetic changes.
3852
3853 2008-07-02  Jason Merrill  <jason@redhat.com>
3854
3855         * libsupc++/initializer_list: Uglify and wrap in
3856         __GXX_EXPERIMENTAL_CXX0X__.
3857         * include/bits/stl_map.h (insert(initializer_list)): Wrap.
3858
3859 2008-07-02  Jason Merrill  <jason@redhat.com>
3860
3861         * libsupc++/initializer_list: New file.
3862         * include/bits/stl_map.h (insert(initializer_list)): New method.
3863
3864 2008-06-30  Alfred E. Heggestad  <aeh@db.org>
3865
3866         * include/backward/backward_warning.h: Fix typo.
3867
3868 2008-06-29  Paolo Carlini  <paolo.carlini@oracle.com>
3869
3870         * src/string_conversions.cc: Remove.
3871         * config/abi/pre/gnu.ver: Delete exports.
3872         * src/Makefile.am: Update.
3873         * include/ext/string_conversions.h: Add.
3874         * include/Makefile.am: Update.
3875         * include/bits/basic_string.h: Include string_conversions.h,
3876         define numeric conversion functions.
3877         * include/ext/vstring.h: Likewise.
3878         * src/Makefile.in: Regenerate.
3879         * include/Makefile.in: Regenerate.
3880
3881 2008-06-29  Paolo Carlini  <paolo.carlini@oracle.com>
3882
3883         * include/bits/stl_algo.h (copy_n): Add in C++0x mode.
3884         * include/bits/algorithmfwd.h: Add.
3885         * include/bits/stl_uninitialized.h (uninitialized_copy_n): Add
3886         in C++0x mode.
3887         * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
3888         move_iterators/1.cc: New
3889         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Update.
3890         * testsuite/25_algorithms/copy_n/1.cc: New.
3891         * testsuite/25_algorithms/copy_n/2.cc: Likewise.
3892         * testsuite/25_algorithms/copy_n/3.cc: Likewise.
3893         * testsuite/25_algorithms/copy_n/4.cc: Likewise.
3894         * testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
3895         * testsuite/25_algorithms/copy_n/requirements/
3896         explicit_instantiation/2.cc: Likewise.
3897         * testsuite/25_algorithms/partition_point/requirements/
3898         explicit_instantiation/pod.cc: Likewise.
3899
3900 2008-06-28  Paolo Carlini  <paolo.carlini@oracle.com>
3901
3902         * include/bits/stl_algo.h (partition_point): Add in C++0x mode.
3903         * include/bits/algorithmfwd.h: Add.
3904         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Update.
3905         * testsuite/25_algorithms/partition_point/1.cc: New.
3906         * testsuite/25_algorithms/partition_point/check_type.cc: Likewise.
3907         * testsuite/25_algorithms/partition_point/requirements/
3908         explicit_instantiation/2.cc: Likewise.
3909         * testsuite/25_algorithms/partition_point/requirements/
3910         explicit_instantiation/pod.cc: Likewise.
3911
3912 2008-06-28  Paolo Carlini  <paolo.carlini@oracle.com>
3913
3914         PR libstdc++/36660
3915         * include/ext/pb_ds/detail/resize_policy/
3916         sample_resize_trigger.hpp: Remove spurious namespace end.
3917
3918 2008-06-27  Mark Mitchell  <mark@codesourcery.com>
3919
3920         * libsupc++/vec.cc (__aeabi_vec_dtor_cookie): Handle NULL array
3921         address.
3922         (__aeabi_vec_delete): Likewise.
3923         (__aeabi_vec_delete3): Likewise.
3924         (__aeabi_vec_delete3_nodtor): Likewise.
3925
3926 2008-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
3927
3928         * include/bits/stl_algo.h (is_partitioned): Add in C++0x mode.
3929         * include/bits/algorithmfwd.h: Add.
3930         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Update.
3931         * testsuite/25_algorithms/is_partitioned/1.cc: New.
3932         * testsuite/25_algorithms/is_partitioned/check_type.cc: Likewise.
3933         * testsuite/25_algorithms/is_partitioned/requirements/
3934         explicit_instantiation/2.cc: Likewise.
3935         * testsuite/25_algorithms/is_partitioned/requirements/
3936         explicit_instantiation/pod.cc: Likewise.
3937
3938 2008-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
3939
3940         * include/bits/stl_numeric.h (iota): Add in C++0x mode.
3941         * testsuite/util/testsuite_character.h (pod_int): Add operator++
3942         in C++0x mode.
3943         * testsuite/util/testsuite_api.h (NonDefaultConstructible): Likewise.
3944         * testsuite/26_numerics/iota/1.cc: New.
3945         * testsuite/26_numerics/iota/requirements/explicit_instantiation/
3946         2.cc: Likewise.
3947         * testsuite/26_numerics/iota/requirements/explicit_instantiation/
3948         pod.cc: Likewise.
3949
3950         * include/ext/algorithm: Do not fiddle with the legacy headers.
3951
3952         * testsuite/26_numerics/partial_sum/1.cc: Minor changes, comments,
3953         style.
3954         * testsuite/26_numerics/accumulate/1.cc: Likewise.
3955         * testsuite/26_numerics/adjacent_difference/1.cc: Likewise.
3956         * testsuite/26_numerics/inner_product/1.cc: Likewise.
3957
3958 2008-06-26  Paolo Carlini  <paolo.carlini@oracle.com>
3959
3960         * include/bits/stl_algo.h (partition_copy): Add in C++0x mode.
3961         * include/bits/algorithmfwd.h: Add.
3962         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Update.
3963         * testsuite/25_algorithms/partition_copy/1.cc: New.
3964         * testsuite/25_algorithms/partition_copy/check_type.cc: Likewise.
3965         * testsuite/25_algorithms/partition_copy/requirements/
3966         explicit_instantiation/2.cc: Likewise.
3967         * testsuite/25_algorithms/partition_copy/requirements/
3968         explicit_instantiation/pod.cc: Likewise.
3969
3970 2008-06-26  Chris Fairles  <chris.fairles@gmail.com>
3971
3972         * testsuite/20_util/unique_ptr/cons/pointer_array.cc: New.
3973         * testsuite/20_util/unique_ptr/cons/pointer.cc: Likewise.
3974         * testsuite/20_util/unique_ptr/cons/pointer_array_convertible.cc:
3975         Likewise.
3976         * testsuite/20_util/unique_ptr/assign/move_array.cc: Likewise.
3977         * testsuite/20_util/unique_ptr/assign/move.cc: Likewise.
3978         * testsuite/20_util/unique_ptr/specialized_algorithms/
3979         comparisons_array.cc: Likewise.
3980         * testsuite/20_util/unique_ptr/specialized_algorithms/comparisons.cc:
3981         Likewise
3982         * testsuite/20_util/unique_ptr/specialized_algorithms/swap.cc:
3983         Likewise.
3984
3985 2008-06-26  Paolo Carlini  <paolo.carlini@oracle.com>
3986
3987         * include/parallel/base.h (plus, multiplies): Use __typeof__,
3988         not typeof.
3989
3990 2008-06-25  Paolo Carlini  <paolo.carlini@oracle.com>
3991
3992         * testsuite/29_atomics/atomic_flag/cons/default.cc: Avoid -Wall
3993         warnings.
3994         * testsuite/29_atomics/atomic_flag/cons/aggregate.cc: Likewise.
3995         * testsuite/29_atomics/headers/cstdatomic/types_std_c++0x.cc:
3996         Likewise.
3997         * testsuite/29_atomics/headers/stdatomic.h/types.c: Likewise.
3998         * testsuite/util/testsuite_common_types.h (struct assignable,
3999         struct default_constructible, struct copy_constructible,
4000         struct explicit_value_constructible): Use a tad of simulated
4001         concept checking techniques to avoid spurious warnings.
4002         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
4003         markers.
4004         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
4005
4006 2008-06-25  Paolo Carlini  <paolo.carlini@oracle.com>
4007
4008         * include/bits/stl_algo.h (__find_if_not, find_if_not, all_of,
4009         any_of, none_of): Add in C++0x, per N2666.
4010         * include/bits/algorithmfwd.h: Update.
4011         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Likewise.
4012         * testsuite/25_algorithms/all_of/check_type.cc: New.
4013         * testsuite/25_algorithms/all_of/1.cc: Likewise.
4014         * testsuite/25_algorithms/all_of/requirements/explicit_instantiation/
4015         2.cc: Likewise.
4016         * testsuite/25_algorithms/all_of/requirements/explicit_instantiation/
4017         pod.cc: Likewise.
4018         * testsuite/25_algorithms/any_of/check_type.cc: Likewise.
4019         * testsuite/25_algorithms/any_of/1.cc: Likewise.
4020         * testsuite/25_algorithms/any_of/requirements/explicit_instantiation/
4021         2.cc: Likewise.
4022         * testsuite/25_algorithms/any_of/requirements/explicit_instantiation/
4023         pod.cc: Likewise.
4024         * testsuite/25_algorithms/none_of/check_type.cc: Likewise.
4025         * testsuite/25_algorithms/none_of/1.cc: Likewise.
4026         * testsuite/25_algorithms/none_of/requirements/explicit_instantiation/
4027         2.cc: Likewise.
4028         * testsuite/25_algorithms/none_of/requirements/explicit_instantiation/
4029         pod.cc: Likewise.
4030         * testsuite/25_algorithms/find_if_not/check_type.cc: Likewise.
4031         * testsuite/25_algorithms/find_if_not/1.cc: Likewise.
4032         * testsuite/25_algorithms/find_if_not/requirements/
4033         explicit_instantiation/2.cc: Likewise.
4034         * testsuite/25_algorithms/find_if_not/requirements/
4035         explicit_instantiation/pod.cc: Likewise.
4036         * testsuite/25_algorithms/copy_if/check_type.cc: Likewise.
4037         * testsuite/25_algorithms/remove_copy_if/check_type.cc: Likewise.
4038         * testsuite/25_algorithms/find_if/1.cc: Minor tweaks.
4039
4040 2008-06-24  Benjamin Kosnik  <bkoz@redhat.com>
4041
4042         * doc/xml/manual/parallel_mode.xml: Clarify use of explicit
4043         parallel algorithms.
4044         * doc/xml/manual/using.xml: Markup fixes caught by validation check.
4045         * doc/xml/manual/test.xml: Remove empty para tags.
4046
4047         * doc/html/*: Regenerate.
4048
4049 2008-06-24  Paolo Carlini  <paolo.carlini@oracle.com>
4050
4051         * include/bits/stl_algo.h (remove_if): Cast __pred result to bool.
4052         (copy_if): Add, per N2666.
4053         * testsuite/25_algorithms/copy_if/requirements/explicit_instantiation/
4054         2.cc: New.
4055         * testsuite/25_algorithms/copy_if/requirements/explicit_instantiation/
4056         pod.cc: Likewise.
4057         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Update.
4058
4059 2008-06-24  Paolo Carlini  <paolo.carlini@oracle.com>
4060             Chalathip Thumkanon  <chalathip@gmail.com>
4061
4062         PR libstdc++/36612
4063         * include/ext/pb_ds/exception.hpp (__throw_container_error,
4064         __throw_insert_error, __throw_join_error, __throw_resize_error):
4065         Mark inline.
4066
4067 2008-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
4068
4069         * include/bits/move.h (swap(_Tp (&)[_Nm], _Tp (&)[_Nm])): Add,
4070         per DR 809.
4071         * include/bits/algorithmfwd.h: Add.
4072         * doc/xml/manual/intro.xml: Add an entry for DR 809.
4073         * testsuite/25_algorithms/swap/dr809.cc: New.
4074
4075         * testsuite/25_algorithms/swap/requirements/explicit_instantiation/
4076         2.cc: Remove stray empty line.
4077
4078 2008-06-21  Paolo Carlini  <paolo.carlini@oracle.com>
4079
4080         * include/bits/stl_move.h: Rename to move.h.
4081         * include/std/utility: Adjust.
4082         * include/ext/vstring_util.h: Likewise.
4083         * include/ext/throw_allocator.h: Likewise.
4084         * include/ext/pool_allocator.h: Likewise.
4085         * include/ext/bitmap_allocator.h: Likewise.
4086         * include/ext/new_allocator.h: Likewise.
4087         * include/ext/malloc_allocator.h: Likewise.
4088         * include/ext/array_allocator.h: Likewise.
4089         * include/ext/mt_allocator.h: Likewise.
4090         * include/bits/stl_algobase.h: Likewise.
4091         * include/bits/stl_heap.h: Likewise.
4092         * include/bits/stl_pair.h: Likewise.
4093         * include/bits/stl_iterator.h: Likewise.
4094         * testsuite/util/testsuite_allocator.h: Likewise.
4095         * testsuite/util/testsuite_iterators.h: Likewise.
4096         * include/Makefile.am: Likewise.
4097         * include/Makefile.in: Regenerate.
4098
4099 2008-06-21  Chris Fairles  <chris.fairles@gmail.com>
4100
4101         * include/bits/unique_ptr.h: New.
4102         * include/std/memory: Adjust.
4103         * include/Makefile.am: Add.
4104         * testsuite/20_util/unique_ptr/requirements/explicit_instantiation/
4105         explicit_instantiation.cc: New.
4106         * testsuite/20_util/unique_ptr/assign/assign.cc: Likewise.
4107         * include/Makefile.in: Regenerate.
4108
4109 2008-06-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
4110
4111         * include/c_global/climits, include/tr1/climits: Add parentheses.
4112
4113 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4114
4115         * configure: Regenerate.
4116
4117 2008-06-17  Chris Fairles  <chris.fairles@gmail.com>
4118
4119         * include/bits/stl_iterator_base_funcs.h (next, prev): Add in
4120         C++0x mode.
4121         * testsuite/24_iterators/operations/next.cc: New.
4122         * testsuite/24_iterators/operations/prev.cc: Likewise.
4123
4124 2008-06-17  Paolo Carlini  <paolo.carlini@oracle.com>
4125
4126         * src/string_conversions.cc (__to_xstring<>): New.
4127         (to_string, to_wstring): Use it.
4128
4129 2008-06-16  Paolo Carlini  <paolo.carlini@oracle.com>
4130
4131         * include/bits/basic_string.h (stod, stof, stoi, stol, stold, stoll,
4132         stoul, stoull, to_string, to_wstring): Declare in C++0x mode.
4133         * src/string_conversions.cc: Add.
4134         * src/Makefile.am: Update.
4135         * config/abi/pre/gnu.ver: Adjust exports.
4136         * src/Makefile.in: Regenerate.
4137         * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
4138         New.
4139         * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
4140         Likewise.
4141         * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
4142         Likewise.
4143         * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
4144         Likewise.
4145         * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
4146         Likewise.
4147         * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
4148         Likewise.
4149         * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
4150         Likewise.
4151         * testsuite/21_strings/basic_string/numeric_conversions/char/stoull.cc:
4152         Likewise.
4153         * testsuite/21_strings/basic_string/numeric_conversions/char/
4154         to_string.cc: Likewise.
4155         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4156         stod.cc: New.
4157         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4158         stof.cc: Likewise.
4159         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4160         stoi.cc: Likewise.
4161         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4162         stol.cc: Likewise.
4163         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4164         stold.cc: Likewise.
4165         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4166         stoll.cc: Likewise.
4167         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4168         stoul.cc: Likewise.
4169         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4170         stoull.cc: Likewise.
4171         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4172         to_wstring.cc: Likewise.
4173
4174 2008-06-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4175
4176         * include/Makefile.am: Remove trailing white space, fix typo.
4177         (parallel_headers): Remove duplicate file, sort entries.
4178         * include/Makefile.in: Regenerate.
4179
4180 2008-06-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4181
4182         * src/condition_variable.cc (~condition_variable): Drop unused
4183         variable.
4184
4185 2008-06-13  Paolo Carlini  <paolo.carlini@oracle.com>
4186
4187         * include/bits/stl_deque.h (deque<>::push_back(_Args&&...),
4188         deque<>::push_front(_Args&&...)): Remove.
4189         (deque<>::push_back(value_type&&),
4190         deque<>::push_front(value_type&&)): Add.
4191         (deque<>::push_back(const value_type&),
4192         deque<>::push_front(const value_type&)): Add back.
4193         (deque<>::emplace_back(_Args&&...),
4194         deque<>::emplace_front(_Args&&...)): Declare...
4195         * include/bits/deque.tcc: ... and define.
4196         * include/bits/stl_list.h (list<>::push_back(_Args&&...),
4197         list<>::push_front(_Args&&...)): Remove.
4198         (list<>::push_back(value_type&&), list<>::push_front(value_type&&),
4199         list<>::emplace_back(_Args&&...), list<>::emplace_front(_Args&&...)):
4200         Add.
4201         (list<>::push_back(const value_type&),
4202         list<>::push_front(const value_type&)): Add back.
4203         * include/bits/stl_vector.h (vector<>::push_back(_Args&&...)): Remove.
4204         (vector<>::push_back(value_type&&)): Add.
4205         (vector<>::push_back(const value_type&)): Add back.
4206         (vector<>::emplace_back(_Args&&...)): Declare...
4207         * include/bits/vector.tcc: ... and define.
4208         * include/bits/stl_queue.h (queue<>::push(_Args&&...),
4209         priority_queue<>::push(_Args&&...)): Remove.
4210         (queue<>::push(value_type&&), queue<>::emplace(_Args&&...),
4211         priority_queue<>::push(value_type&&),
4212         priority_queue<>::emplace(_Args&&...)): Add.
4213         (queue<>::push(const value_type&),
4214         priority_queue<>::push(const value_type&)): Add back.
4215         * include/bits/stl_stack.h (stack<>::push(_Args&&...)): Remove.
4216         (stack<>::push(value_type&&), stack<>::emplace(_Args&&...)): Add.
4217         (stack<>::push(const value_type&)): Add back.
4218         * include/debug/deque (deque<>::push_back(_Args&&...),
4219         deque<>::push_front(_Args&&...)): Remove.
4220         (deque<>::push_back(value_type&&), deque<>::push_front(value_type&&),
4221         deque<>::emplace_back(_Args&&...), deque<>::emplace_front(_Args&&...)):
4222         Add.
4223         (deque<>::push_back(const value_type&),
4224         deque<>::push_front(const value_type&)): Add back.
4225         * include/debug/list (list<>::push_back(_Args&&...),
4226         list<>::push_front(_Args&&...)): Remove.
4227         (list<>::push_back(value_type&&), list<>::push_front(value_type&&),
4228         list<>::emplace_back(_Args&&...), list<>::emplace_front(_Args&&...)):
4229         Add.
4230         (list<>::push_back(const value_type&),
4231         list<>::push_front(const value_type&)): Add back.
4232         * include/debug/vector (vector<>::push_back(_Args&&...)): Remove.
4233         (vector<>::push_back(value_type&&),
4234         vector<>::emplace_back(_Args&&...)): Add.
4235         (vector<>::push_back(const value_type&)): Add back.
4236         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
4237         Adjust dg-error line numbers.
4238         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
4239         Likewise.
4240         * testsuite/23_containers/deque/requirements/dr438/
4241         constructor_1_neg.cc: Likewise.
4242         * testsuite/23_containers/deque/requirements/dr438/
4243         constructor_2_neg.cc: Likewise.
4244         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
4245         Adjust dg-error line numbers.
4246         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
4247         Likewise.
4248         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
4249         Likewise.
4250         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
4251         Likewise.
4252         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
4253         Adjust dg-error line numbers.
4254         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
4255         Likewise.
4256         * testsuite/23_containers/vector/requirements/dr438/
4257         constructor_1_neg.cc: Likewise.
4258         * testsuite/23_containers/vector/requirements/dr438/
4259         constructor_2_neg.cc: Likewise.
4260
4261 2008-06-13  Paolo Carlini  <paolo.carlini@oracle.com>
4262
4263         * include/tr1_impl/array (array<>::assign): Do not define in
4264         C++0x mode, per DR 776...
4265         (array<>::fill): ... define instead.
4266         * doc/xml/manual/intro.xml: Add an entry for DR 776.
4267         * testsuite/23_containers/array/requirements/fill.cc: New.
4268
4269 2008-06-12  Paolo Carlini  <paolo.carlini@oracle.com>
4270
4271         * include/std/complex (pow(const complex<>&, int)): Do not define in
4272         C++0x mode, per DR 844.
4273         * include/tr1/complex (pow(const complex<>&, int)): Remove.
4274         * doc/xml/manual/intro.xml: Add an entry for DR 844.
4275         * testsuite/26_numerics/complex/dr844.cc: New.
4276         * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: Adjust.
4277
4278 2008-06-11  Paolo Carlini  <paolo.carlini@oracle.com>
4279
4280         * include/tr1_impl/hashtable (_Hashtable<>::cbegin(size_type),
4281         cend(size_type)): Add per DR 691.
4282         * testsuite/23_containers/unordered_map/requirements/cliterators.cc:
4283         New.
4284         * testsuite/23_containers/unordered_multimap/requirements/
4285         cliterators.cc: Likewise.
4286         * testsuite/23_containers/unordered_set/requirements/cliterators.cc:
4287         Likewise.
4288         * testsuite/23_containers/unordered_multiset/requirements/
4289         cliterators.cc: Likewise.
4290         * doc/xml/manual/intro.xml: Add an entry for DR 691.
4291
4292 2008-06-11  Matthias Klose  <doko@ubuntu.com>
4293
4294         * testsuite/30_threads/lock_error, testsuite/30_threads/once_flag:
4295         Remove empty directories.
4296
4297 2008-06-07  Joseph Myers  <joseph@codesourcery.com>
4298
4299         * configure.host (xscale, ep9312, m680[246]0, solaris2.5,
4300         solaris2.5.[0-9], solaris2.6, windiss*): Remove.
4301         * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove.
4302         * configure: Regenerate.
4303         * config/os/solaris/solaris2.5: Remove directory.
4304         * config/os/solaris/solaris2.6: Remove directory.
4305         * config/os/windiss: Remove directory.
4306
4307 2008-06-06  Benjamin Kosnik  <bkoz@redhat.com>
4308
4309         * doc/xml/manual/using.xml: Outline exception topics.
4310
4311         * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Format.
4312         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4313         policy_access_fn_imps.hpp: Same.
4314         * include/ext/pb_ds/priority_queue.hpp: Same.
4315         * include/ext/throw_allocator.h: Same.
4316
4317         * include/ext/pb_ds/tag_and_trait.hpp (string_tag): New tag.
4318         (sequence_tag): New tag. Doxygen markup fixes.
4319
4320         * testsuite/lib/libstdc++.exp: Remove twister_ran_gen.cc source file.
4321
4322         * testsuite/performance/ext/pb_ds/text_find_timing.cc: Fix
4323         comment typo, include paths, format.
4324         * testsuite/performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
4325         * testsuite/performance/ext/pb_ds/
4326         hash_random_int_erase_mem_usage.cc: Same.
4327         * testsuite/performance/ext/pb_ds/
4328         random_int_subscript_find_timing.cc: Same.
4329         * testsuite/performance/ext/pb_ds/
4330         priority_queue_text_push_timing.cc: Same.
4331         * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
4332         * testsuite/performance/ext/pb_ds/random_int_find_timing.cc: Same.
4333         * testsuite/performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
4334         * testsuite/performance/ext/pb_ds/multimap_text_find_timing.hpp
4335         * testsuite/performance/ext/pb_ds/
4336         priority_queue_random_int_push_timing.cc: Same.
4337         * testsuite/performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
4338         * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
4339         * testsuite/performance/ext/pb_ds/
4340         priority_queue_text_push_pop_timing.cc: Same.
4341         * testsuite/performance/ext/pb_ds/
4342         priority_queue_text_join_timing.cc: Same.
4343         * testsuite/performance/ext/pb_ds/
4344         priority_queue_random_int_push_pop_timing.cc: Same.
4345         * testsuite/performance/ext/pb_ds/
4346         random_int_subscript_insert_timing.cc: Same.
4347         * testsuite/performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
4348         * testsuite/performance/ext/pb_ds/multimap_text_insert_timing.hpp
4349         * testsuite/performance/ext/pb_ds/
4350         priority_queue_text_pop_mem_usage.cc: Same.
4351         * testsuite/performance/ext/pb_ds/
4352         hash_zlob_random_int_find_timing.cc: Same.
4353         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Same.
4354         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
4355         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Same.
4356         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
4357         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Same.
4358         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
4359         * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Same.
4360         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
4361         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
4362         * testsuite/util/regression/trait/priority_queue/trait.hpp: Same.
4363         * testsuite/util/regression/trait/erase_if_fn.hpp: Same.
4364         * testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
4365         * testsuite/util/regression/trait/assoc/node_update_trait.hpp: Same.
4366         * testsuite/util/regression/trait/assoc/get_set_load_trait.hpp: Same.
4367         * testsuite/util/regression/trait/assoc/get_set_loads_trait.hpp: Same.
4368         * testsuite/util/regression/trait/assoc/trait.hpp: Same.
4369         * testsuite/util/regression/trait/assoc/resize_trait.hpp: Same.
4370         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
4371         * testsuite/util/regression/trait/assoc/to_string.hpp: Same.
4372         * testsuite/util/regression/basic_type.hpp: Same.
4373         * testsuite/util/common_type/priority_queue/string_form.hpp: Same.
4374         * testsuite/util/common_type/priority_queue/detail/
4375         ds_string_form.hpp: Same.
4376         * testsuite/util/common_type/assoc/string_form.hpp: Same.
4377         * testsuite/util/common_type/assoc/detail/
4378         resize_policy_string_form.hpp: Same.
4379         * testsuite/util/common_type/assoc/detail/
4380         trigger_policy_string_form.hpp: Same.
4381         * testsuite/util/common_type/assoc/detail/
4382         comb_hash_fn_string_form.hpp: Same.
4383         * testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
4384         * testsuite/util/common_type/assoc/detail/
4385         size_policy_string_form.hpp: Same.
4386         * testsuite/util/common_type/assoc/detail/
4387         probe_fn_string_form.hpp: Same.
4388         * testsuite/util/common_type/assoc/detail/
4389         list_update_policy_string_form.hpp: Same.
4390         * testsuite/util/common_type/assoc/detail/
4391         store_hash_string_form.hpp: Same.
4392         * testsuite/util/common_type/assoc/native_set.hpp: Same.
4393         * testsuite/util/io/prog_bar.cc: Same.
4394
4395         * testsuite/util/regression/rand/io: Remove.
4396         * testsuite/util/regression/rand/io/priority_queue: Same.
4397         * testsuite/util/regression/rand/io/assoc: Same.
4398         * testsuite/util/regression/rand/io/priority_queue/
4399         xml_formatter.hpp: Consolidate this...
4400         * testsuite/util/regression/rand/io/assoc/xml_formatter.hpp: ...this
4401         * testsuite/util/regression/rand/io/xml_formatter.hpp: ... and this
4402         * testsuite/util/regression/rand/xml_formatter.hpp: ...here.
4403
4404         * testsuite/util/regression/rand/priority_queue/
4405         container_rand_regression_test.hpp:To ...
4406         container_rand_regression_test.h: ... this.
4407         * testsuite/util/regression/rand/priority_queue/detail/*.hpp:To ...
4408         * testsuite/util/regression/rand/priority_queue/
4409         container_rand_regression_test.tcc: ... this.
4410         PB_DS_THROW_IF_FAIL: Change to _GLIBCXX_THROW_IF, adjust predicate.
4411         PB_DS_SET_DESTRUCT_PRINT: Fold inline.
4412         PB_DS_CANCEL_DESTRUCT_PRINT: Fold inline.
4413         * testsuite/util/regression/rand/priority_queue/
4414         rand_regression_test.hpp: Adjust includes.
4415
4416         * testsuite/util/regression/rand/assoc/
4417         container_rand_regression_test.hpp: To ...
4418         * testsuite/util/regression/rand/assoc/
4419         container_rand_regression_test.h: ... this.
4420         * testsuite/util/regression/rand/assoc/detail/*.hpp:To ...
4421         * testsuite/util/regression/rand/assoc/
4422         container_rand_regression_test.tcc: ...this.
4423         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Adjust
4424         includes.
4425
4426         * testsuite/util/regression/priority_queue: Remove.
4427         * testsuite/util/regression/assoc: Remove.
4428         * testsuite/util/regression/priority_queue/
4429         common_type.hpp: Consolidate this...
4430         * testsuite/util/regression/assoc/common_type.hpp: ... and this
4431         * testsuite/util/regression/common_type.hpp: ...here.
4432
4433         * testsuite/util/rng: Remove.
4434         * testsuite/util/rng/twister_rand_gen.cc: Consolidate...
4435         * testsuite/util/rng/twister_rand_gen.hpp: ... and this
4436         * testsuite/util/testsuite_rng.h: ...here.
4437
4438         * testsuite/util/native_type/priority_queue: Remove.
4439         * testsuite/util/native_type/priority_queue/
4440         native_priority_queue.hpp: To...
4441         * testsuite/util/native_type/native_priority_queue.hpp: ...here.
4442
4443         * testsuite/util/native_type/assoc: Remove.
4444         * testsuite/util/native_type/assoc/native_multimap.hpp: To...
4445         * testsuite/util/native_type/assoc/native_tree_tag.hpp: To...
4446         * testsuite/util/native_type/assoc/native_hash_multimap.hpp: To...
4447         * testsuite/util/native_type/assoc/native_set.hpp: To...
4448         * testsuite/util/native_type/assoc/native_map.hpp: To...
4449         * testsuite/util/native_type/assoc/native_hash_set.hpp: To...
4450         * testsuite/util/native_type/assoc/native_hash_tag.hpp: To...
4451         * testsuite/util/native_type/assoc/native_hash_map.hpp: To...
4452         * testsuite/util/native_type/native_multimap.hpp: ...here.
4453         * testsuite/util/native_type/native_tree_tag.hpp: ...here.
4454         * testsuite/util/native_type/native_hash_multimap.hpp: ...here.
4455         * testsuite/util/native_type/native_set.hpp: ...here.
4456         * testsuite/util/native_type/native_map.hpp: ...here.
4457         * testsuite/util/native_type/native_hash_set.hpp: ...here.
4458         * testsuite/util/native_type/native_hash_tag.hpp: ...here.
4459         * testsuite/util/native_type/native_hash_map.hpp: ...here.
4460
4461         * testsuite/util/common_type/priority_queue/common_type.hpp:
4462         Make include guard distinct.
4463         * testsuite/util/common_type/assoc/common_type.hpp: Same.
4464
4465 2008-06-06  Joseph Myers  <joseph@codesourcery.com>
4466
4467         * configure.ac: Do not check for gconv.h.
4468         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Do not test for gconv.h or
4469         gconf.h.  For glibc and uClibc systems, define
4470         _GLIBCXX_USE_RANDOM_TR1 and HAVE_MMAP and use AC_LC_MESSAGES and
4471         AM_ICONV.
4472         * configure, config.h.in: Regenerate.
4473
4474 2008-06-06  Joseph Myers  <joseph@codesourcery.com>
4475
4476         * testsuite/17_intro/headers/all.cc,
4477         testsuite/17_intro/headers/all_c++200x_compatibility.cc,
4478         testsuite/17_intro/headers/all_pedantic_errors.cc,
4479         testsuite/ext/headers.cc: Only include
4480         <ext/codecvt_specializations.h> and <ext/enc_filebuf.h> if
4481         _GLIBCXX_HAVE_ICONV.
4482
4483 2008-06-05  Johannes Singler  <singler@ira.uka.de>
4484
4485         * include/parallel/random_shuffle.h:
4486         (parallel_random_shuffle_drs) Get the actual number of
4487         threads after entering the parallel region. Indentation.
4488         * include/parallel/algo.h: (random_shuffle(begin, end))
4489         Add namespace qualification to avoid ambiguity.
4490
4491 2008-06-04  Benjamin Kosnik  <bkoz@redhat.com>
4492
4493         * include/ext/pb_ds/assoc_container.hpp: Change allocator typedef
4494         to allocator_type, as per existing conventions.
4495         * include/ext/pb_ds/detail/binomial_heap_base_/
4496         binomial_heap_base_.hpp: Same.
4497         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
4498         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
4499         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
4500         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
4501         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
4502         * include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
4503         * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
4504         * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
4505         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4506         left_child_next_sibling_heap_.hpp: Same.
4507         * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
4508         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
4509         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
4510         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
4511         * include/ext/pb_ds/detail/rc_binomial_heap_/
4512         rc_binomial_heap_.hpp: Same.
4513         * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
4514         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
4515         * include/ext/pb_ds/list_update_policy.hpp: Same.
4516         * include/ext/pb_ds/exception.hpp: Same.
4517         * include/ext/pb_ds/tree_policy.hpp: Same.
4518         * include/ext/pb_ds/trie_policy.hpp: Same.
4519         * include/ext/pb_ds/priority_queue.hpp: Same.
4520         * testsuite/util/regression/trait/assoc/trait.hpp: Same.
4521         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
4522         * testsuite/util/regression/rand/priority_queue/detail/
4523         defs_fn_imps.hpp: Same.
4524         * testsuite/util/regression/rand/priority_queue/detail/
4525         operator_fn_imps.hpp: Same.
4526         * testsuite/util/regression/rand/priority_queue/
4527         container_rand_regression_test.hpp: Same.
4528         * testsuite/util/regression/rand/assoc/detail/defs_fn_imps.hpp: Same.
4529         * testsuite/util/regression/rand/assoc/detail/
4530         operator_fn_imps.hpp: Same.
4531         * testsuite/util/regression/rand/assoc/
4532         container_rand_regression_test.hpp: Same.
4533         * testsuite/util/native_type/assoc/native_multimap.hpp: Same.
4534         * testsuite/util/native_type/assoc/native_hash_multimap.hpp: Same.
4535         * testsuite/util/common_type/assoc/detail/
4536         tree_supports_order_statistics.hpp: Same.
4537         * testsuite/util/common_type/assoc/detail/
4538         trie_supports_prefix_search.hpp: Same.
4539         * testsuite/util/common_type/assoc/detail/
4540         trie_supports_order_statistics.hpp: Same.
4541
4542 2008-06-02  Sandra Loosemore  <sandra@codesourcery.com>
4543             Daniel Jacobowitz  <dan@codesourcery.com>
4544
4545         * testsuite/27_io/basic_filebuf/sputbackc/char/9425.cc: Use
4546         dg-require-fileio.
4547         * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Likewise.
4548         * testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: Likewise.
4549
4550 2008-06-02  Paolo Carlini  <paolo.carlini@oracle.com>
4551
4552         * include/bits/vector.tcc (vector<>::_M_insert_aux): In C++0x mode,
4553         avoid a memory leak if the first __uninitialized_move_a throws.
4554         (vector<>::_M_fill_insert): Do not always copy to __x_copy, similarly
4555         to _M_insert_aux.
4556         * testsuite/23_containers/vector/modifiers/moveable.cc: Adjust.
4557         * testsuite/23_containers/vector/resize/moveable.cc: Likewise.
4558
4559 2008-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
4560             Chris Jefferson  <chris@bubblescope.net>
4561
4562         PR libstdc++/36338
4563         * include/bits/stl_heap.h (sort_heap): Use __pop_heap directly.
4564         (pop_heap): Slightly tweak.
4565
4566 2008-05-29  Paolo Carlini  <paolo.carlini@oracle.com>
4567
4568         * include/debug/bitset (bitset(const char*)): Implement DR 778
4569         in debug-mode too.
4570
4571         * include/bits/cpp_type_traits.h (__is_integer): In C++0x mode
4572         deal with char16_t and char32_t.
4573
4574 2008-05-26  Paolo Carlini  <paolo.carlini@oracle.com>
4575
4576         * include/c_global/cmath (pow(float, int), pow(double, int),
4577         pow(long double, int)): Do not define in C++0x mode, per DR 550.
4578         * include/tr1_impl/cmath (pow): Do not bring in unconditionally
4579         from namespace std.
4580         * include/tr1/cmath (pow(double, double), pow(float, float),
4581         pow(long double, long double), pow(_Tp, _Up)): Define.
4582         * include/tr1/complex (pow): Do not bring in from namespace std.
4583         (pow(const std::complex<_Tp>&, int), pow(const std::complex<_Tp>&,
4584         const _Tp&), pow(const _Tp&, const std::complex<_Tp>&),
4585         pow(const std::complex<_Tp>&, const std::complex<_Tp>&)): Define.
4586         * include/tr1_impl/complex (pow(const std::complex<_Tp>&,
4587         const _Up&), pow(const _Tp&, const std::complex<_Up>&),
4588         pow(const std::complex<_Tp>&, const std::complex<_Up>&)): Always
4589         define.
4590         * doc/xml/manual/intro.xml: Add an entry for DR 550.
4591         * testsuite/26_numerics/headers/cmath/dr550.cc: New.
4592         * testsuite/tr1/8_c_compatibility/cmath/overloads.cc: Adjust.
4593
4594 2008-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
4595
4596         * include/std/tuple: Ifndef __GXX_EXPERIMENTAL_CXX0X__ just error out.
4597         * include/std/date_time: Likewise.
4598         * include/std/system_error: Likewise.
4599         * include/std/type_traits: Likewise; fix typo in macro name.
4600         * include/std/regex: Likewise.
4601         * include/std/random: Likewise.
4602         * include/std/unordered_map: Likewise.
4603         * include/std/condition_variable: Likewise.
4604         * include/std/unordered_set: Likewise.
4605         * include/std/mutex: Likewise.
4606         * include/std/array: Likewise.
4607
4608         * include/c_std/cmath: Fix obsolete comment.
4609         * include/c_global/cmath: Likewise.
4610
4611 2008-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
4612
4613         * include/std/complex (complex<>::real(_Tp), complex<>::imag(_Tp),
4614         complex<float>::real(float), complex<float>::imag(float),
4615         complex<double>::real(double), complex<double>::imag(double),
4616         complex<long double>::real(long double),
4617         complex<long double>::imag(long double)): Add per DR 387.
4618         (complex<>::real(), complex<>::imag(), complex<float>::real(),
4619         complex<float>::imag(), complex<double>::real(),
4620         complex<double>::imag(), complex<long double>::real(),
4621         complex<long double>::imag(long double)): Adjust in C++0x mode.
4622         (real(complex<>&), imag(complex<>&), real(const complex<>&),
4623         imag(const complex<>&)): Likewise.
4624         * testsuite/26_numerics/complex/dr387.cc: New.
4625         * doc/xml/manual/intro.xml: Add an entry for DR 387.
4626
4627 2008-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
4628
4629         * include/std/complex: Trivial stylistic changes, define inline
4630         members inline, consistently with the rest of the library.
4631         (pow(const _Tp&, const complex<>&)): Minor tweak.
4632
4633 2008-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
4634
4635         * src/atomic.cc (atomic_flag_test_and_set_explicit,
4636         atomic_flag_clear_explicit): Suppress unused parameter warnings.
4637
4638 2008-05-23  Paolo Carlini  <paolo.carlini@oracle.com>
4639
4640         * include/std/tuple: Replace int -> size_t throughout per DR 775.
4641         * include/tr1_impl/array: Likewise.
4642         * include/tr1_impl/utility: Likewise.
4643         * doc/xml/manual/intro.xml: Add an entry for DR 775.
4644
4645 2008-05-23  Paolo Carlini  <paolo.carlini@oracle.com>
4646
4647         * doc/xml/manual/intro.xml: Adjust links to ISO documents.
4648
4649 2008-05-23  Paolo Carlini  <paolo.carlini@oracle.com>
4650
4651         * include/c_std/cmath (fpclassify): Use __builtin_fpclassify.
4652         * include/c_global/cmath (fpclassify): Likewise.
4653
4654 2008-05-22  Paolo Carlini  <paolo.carlini@oracle.com>
4655
4656         * include/tr1_impl/hashtable_policy.h (_Map_base<,,
4657         std::_Select1st<_Pair>, true,>::at): Add per DR 761.
4658         * testsuite/23_containers/unordered_map/dr761.cc: New.
4659         * doc/xml/manual/intro.xml: Add an entry for DR 761.
4660
4661 2008-05-22  Paolo Carlini  <paolo.carlini@oracle.com>
4662
4663         * testsuite/26_numerics/complex/dr781.cc: Add test variable.
4664
4665 2008-05-22  Paolo Carlini  <paolo.carlini@oracle.com>
4666
4667         * include/std/complex (proj(const std::complex<>&), proj(_Tp)):
4668         Add per DR 781.
4669         * include/tr1_impl/complex(polar(const _Tp&, const _Up&)): Move to...
4670         * include/tr1/complex: ... here.
4671         * doc/xml/manual/intro.xml: Add an entry for DR 781.
4672         * testsuite/26_numerics/complex/dr781.cc: Add.
4673         * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Update.
4674         * configure: Regenerate.
4675
4676 2008-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
4677
4678         * include/std/bitset (bitset<>::bitset(const char*)): Add per DR 778.
4679         (bitset<>::_M_copy_from_ptr): Add.
4680         (bitset<>::_M_copy_from_string): Forward to the latter.
4681         * doc/xml/manual/intro.xml: Add an entry for DR 778.
4682         * testsuite/23_containers/bitset/cons/2.cc: Add.
4683
4684 2008-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
4685
4686         * doc/html/ext/lwg-active.html: Update to Revision R56.
4687         * doc/html/ext/lwg-closed.html: Likewise.
4688         * doc/html/ext/lwg-defects.html: Likewise.
4689
4690 2008-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
4691
4692         PR c++/33979 (partial)
4693         * include/tr1_impl/functional_hash.h (hash<char16_t>,
4694         hash<char32_t>): Add specializations.
4695         * include/tr1_impl/type_traits (is_integral<char16_t>,
4696         is_integral<char32_t>): Likewise.
4697         * include/std/limits (numeric_limits<char16_t>,
4698         numeric_limits<char32_t>): Likewise.
4699         * src/limits_c++0x.cc: Add.
4700         * src/Makefile.am: Update.
4701         * testsuite/20_util/hash/requirements/explicit_instantiation.cc:
4702         Update.
4703         * testsuite/20_util/is_integral/value.cc: New.
4704         * testsuite/20_util/is_integral/requirements/typedefs.cc: Likewise.
4705         * testsuite/20_util/is_integral/requirements/
4706         explicit_instantiation.cc: Likewise.
4707         * testsuite/18_support/numeric_limits/char16_32_t.cc: Likewise.
4708         * config/abi/pre/gnu.ver: Export new numeric_limits symbols at
4709         GLIBCXX_3.4.11.
4710         * configure: Regenerate.
4711         * src/Makefile.in: Likewise.
4712         * config.h.in: Likewise.
4713
4714 2008-05-16  Benjamin Kosnik  <bkoz@redhat.com>
4715
4716         * include/std/system_error: Align to current draft specifications.
4717         * src/system_error.cc: Same.
4718         * src/functexcept.cc: Adjust for corrected system_error construction.
4719         * include/std/ostream: Adjust error_code inserter.
4720         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Remove sys_nerr test.
4721         * config/abi/pre/gnu.ver: Add new exports.
4722
4723         * testsuite/util/testsuite_error.h: Consolidate error testing
4724         utilities here.
4725         * testsuite/19_diagnostics/error_code/cons/1.cc: Use
4726         testsuite_error, adjust line numbers and constructor calls.
4727         * testsuite/19_diagnostics/error_code/operators/equal.cc: Same.
4728         * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Same.
4729         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Same.
4730         * testsuite/19_diagnostics/error_category/cons/default.cc: Same.
4731         * testsuite/19_diagnostics/error_category/operators/equal.cc: Same.
4732         * testsuite/19_diagnostics/error_category/operators/not_equal.cc: Same.
4733         * testsuite/19_diagnostics/system_error/cons_virtual_derivation.cc:
4734         Same.
4735         * testsuite/19_diagnostics/system_error/cons-1.cc: Same.
4736         * testsuite/19_diagnostics/system_error/what-1.cc: Same.
4737         * testsuite/19_diagnostics/system_error/what-2.cc: Same.
4738         * testsuite/19_diagnostics/system_error/what-big.cc: Same.
4739         * testsuite/19_diagnostics/system_error/what-3.cc: Same.
4740         * testsuite/19_diagnostics/system_error/what-4.cc: Same.
4741
4742 2008-05-15  Bernd Schmidt  <bernd.schmidt@analog.com>
4743
4744         * configure.ac: Don't check AC_LIBTOOL_DLOPEN if using newlib.
4745         * configure: Regenerate.
4746
4747 2008-05-15  Johannes Singler  <singler@ira.uka.de>
4748
4749         * xml/manual/parallel_mode.xml:
4750         General revision and documentation of new compile-time
4751         options for sorting.
4752
4753 2008-05-14  Benjamin Kosnik  <bkoz@redhat.com>
4754
4755         * include/std/mutex (mutex::try_lock): Eat errors.
4756         (mutex::unlock): Same.
4757         (recursive_mutex::try_lock): Eat errors.
4758         (recursive_mutex::unlock): Same.
4759         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Add
4760         -pthreads, adjust line numbers.
4761         * testsuite/30_threads/mutex/native_handle/1.cc: Same.
4762         * testsuite/30_threads/mutex/cons/1.cc: Same.
4763         * testsuite/30_threads/mutex/try_lock/1.cc: Same.
4764         * testsuite/30_threads/mutex/try_lock/2.cc: Same.
4765         * testsuite/30_threads/mutex/lock/1.cc: Same.
4766         * testsuite/30_threads/mutex/unlock/1.cc: Same.
4767         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc: Same.
4768         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Same.
4769         * testsuite/30_threads/recursive_mutex/cons/1.cc: Same.
4770
4771 2008-05-14  Benjamin Kosnik  <bkoz@redhat.com>
4772
4773         * include/std/sstream: Adjust braces.
4774         * include/bits/fstream.tcc: Same.
4775         * testsuite/29_atomics/atomic_flag/test_and_set/explicit.c: Add
4776         -shared-libgcc.
4777         * testsuite/29_atomics/atomic_flag/test_and_set/implicit.c: Same.
4778
4779         * doc/doxygen/user.cfg.in: Remove thread include.
4780
4781 2008-05-13  David Daney  <ddaney@avtrex.com>
4782
4783         * config/cpu/mips/atomicity.h: Remove file.
4784         * config/cpu/mips: Remove directory.
4785         * configure.host: Remove host specific handling for mips*-*-*.
4786
4787 2008-05-12  Stefano Soffia  <soffia@cs.unipr.it>
4788             Paolo Carlini  <paolo.carlini@oracle.com>
4789
4790         * include/debug/vector (vector<>::_M_requires_reallocation): Just
4791         use this->capacity().
4792         (vector<>::capacity): Move non-pedantic / pedantic logic here.
4793         * testsuite/23_containers/vector/
4794         debug_mode_requires_reallocation-2.cc: New.
4795
4796         * testsuite/23_containers/vector/debug_mode_requires_reallocation.cc:
4797         Rename to debug_mode_requires_reallocation-1.cc
4798
4799 2008-05-10  Roberto Bagnara  <bagnara@cs.unipr.it>
4800             Paolo Carlini  <paolo.carlini@oracle.com>
4801
4802         * include/debug/vector (vector<>::_M_requires_reallocation): Fix macro.
4803         * testsuite/23_containers/vector/debug_mode_requires_reallocation.cc:
4804         New.
4805
4806 2008-05-07  Johannes Singler  <singler@ira.uka.de>
4807
4808         * include/parallel/quicksort.h:
4809         (parallel_sort_qs_conquer) Explicitly request number of threads
4810         in the parallel clause.
4811         (parallel_sort_qs) Remove setting the number of threads globally.
4812
4813 2008-05-06  Benjamin Kosnik  <bkoz@redhat.com>
4814
4815         * include/std/mutex (mutex::mutex): Fix usage of initializing macro.
4816         (recursive_mutex::recursive_mutex): Same.
4817         (once_flag::once_flag): Same.
4818         * testsuite/30_threads/mutex/cons/assign_neg.cc: Fix line numbers.
4819         * testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
4820         * testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
4821         * testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.
4822
4823 2008-05-06  Benjamin Kosnik  <bkoz@redhat.com>
4824
4825         * include/std/condition_variable: New.
4826         * include/std/mutex: New.
4827         * src/condition_variable.cc: New.
4828         * src/mutex.cc: New.
4829         * include/bits/functexcept.h: Add __throw_system_error varients.
4830         * src/functexcept.cc: Same.
4831         * config/abi/pre/gnu.ver: Add exports.
4832
4833         * doc/xml/manual/using.xml: Add new includes.
4834         * doc/doxygen/user.cfg.in: Doxygen support.
4835         * doc/doxygen/doxygroups.cc: Same.
4836
4837         * include/Makefile.am: Add mutex, condition_variable.
4838         * include/Makefile.in: Regenerated.
4839         * src/Makefile.am: Add mutex.cc, condition_variable.cc.
4840         * src/Makefile.in: Regenerated.
4841
4842         * testsuite/30_threads: New.
4843         * testsuite/30_threads/lock_error: New.
4844         * testsuite/30_threads/mutex: New.
4845         * testsuite/30_threads/mutex/dest: New.
4846         * testsuite/30_threads/mutex/dest/destructor_locked.cc: New.
4847         * testsuite/30_threads/mutex/native_handle: New.
4848         * testsuite/30_threads/mutex/native_handle/1.cc: New.
4849         * testsuite/30_threads/mutex/cons: New.
4850         * testsuite/30_threads/mutex/cons/assign_neg.cc: New.
4851         * testsuite/30_threads/mutex/cons/1.cc: New.
4852         * testsuite/30_threads/mutex/cons/copy_neg.cc: New.
4853         * testsuite/30_threads/mutex/requirements: New.
4854         * testsuite/30_threads/mutex/requirements/typedefs.cc: New.
4855         * testsuite/30_threads/mutex/try_lock: New.
4856         * testsuite/30_threads/mutex/try_lock/1.cc: New.
4857         * testsuite/30_threads/mutex/try_lock/2.cc: New.
4858         * testsuite/30_threads/mutex/lock: New.
4859         * testsuite/30_threads/mutex/lock/1.cc: New.
4860         * testsuite/30_threads/mutex/unlock: New.
4861         * testsuite/30_threads/mutex/unlock/1.cc: New.
4862         * testsuite/30_threads/recursive_mutex: New.
4863         * testsuite/30_threads/recursive_mutex/dest: New.
4864         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc: New.
4865         * testsuite/30_threads/recursive_mutex/native_handle: New.
4866         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: New.
4867         * testsuite/30_threads/recursive_mutex/cons: New.
4868         * testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: New.
4869         * testsuite/30_threads/recursive_mutex/cons/1.cc: New.
4870         * testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: New.
4871         * testsuite/30_threads/recursive_mutex/requirements: New.
4872         * testsuite/30_threads/recursive_mutex/requirements/typedefs.cc: New.
4873         * testsuite/30_threads/lock_guard: New.
4874         * testsuite/30_threads/lock_guard/requirements: New.
4875         * testsuite/30_threads/lock_guard/requirements/typedefs.cc: New.
4876         * testsuite/30_threads/lock_guard/requirements/
4877         explicit_instantiation.cc: New.
4878         * testsuite/30_threads/headers: New.
4879         * testsuite/30_threads/headers/mutex: New.
4880         * testsuite/30_threads/headers/mutex/types_std_c++0x.cc: New.
4881         * testsuite/30_threads/headers/mutex/std_c++0x_neg.cc: New.
4882         * testsuite/30_threads/headers/condition_variable: New.
4883         * testsuite/30_threads/headers/condition_variable/
4884         types_std_c++0x.cc: New.
4885         * testsuite/30_threads/headers/condition_variable/std_c++0x_neg.cc: New.
4886         * testsuite/30_threads/once_flag: New.
4887         * testsuite/30_threads/unique_lock: New.
4888         * testsuite/30_threads/unique_lock/requirements: New.
4889         * testsuite/30_threads/unique_lock/requirements/typedefs.cc: New.
4890         * testsuite/30_threads/unique_lock/requirements/
4891         explicit_instantiation.cc: New.
4892         * testsuite/17_intro/headers/c++200x/all.cc: Add new includes.
4893
4894 2008-05-06  Benjamin Kosnik  <bkoz@redhat.com>
4895
4896         PR libstdc++/36130
4897         * include/bits/c++config: Namespace macros and setup only in C++.
4898         * testsuite/29_atomics/headers/stdatomic.h/debug_mode.c: New.
4899
4900 2008-05-06  Johannes Singler  <singler@ira.uka.de>
4901
4902         * include/parallel/multiway_merge.h:
4903           (multiway_merge_*_unguarded):
4904           Pass sentinel directly, to allow correct determination.
4905           (multiway_merge_loser_tree_unguarded):
4906           Remove over-cautious assertion.
4907           (calls to multiway_merge_*_splitting):
4908           Parametrize with type that is correct in all cases.
4909         * include/parallel/losertree.h:
4910           (delete_min_insert (in many classes)):
4911           Correct and standardize assertions.
4912
4913 2008-05-05  Benjamin Kosnik  <bkoz@redhat.com>
4914
4915         * testsuite/util/testsuite_visualization.h: Move contents into...
4916         * testsuite/util/testsuite_performance.h: ...here.
4917         * testsuite/util/testsuite_common_types.h: Move
4918         performance-related test infrastructure into
4919         testsuite_performance.
4920         * testsuite/performance/25_algorithms/search_n.cc: Fix includes.
4921         * testsuite/performance/23_containers/find/map.cc: Same.
4922         * testsuite/performance/23_containers/create/map.cc: Same.
4923         * testsuite/performance/23_containers/insert_erase/associative.cc: Same.
4924         * testsuite/performance/23_containers/insert/sequence.cc: Same.
4925         * testsuite/performance/23_containers/insert/associative.cc: Same.
4926         * testsuite/performance/23_containers/create_from_sorted/set.cc: Same.
4927         * testsuite/performance/23_containers/index/map.cc: Same.
4928         * testsuite/performance/23_containers/insert_from_sorted/set.cc: Same.
4929         * testsuite/performance/23_containers/create_sort/list.cc: Same.
4930         * testsuite/performance/23_containers/sort_search/list.cc: Same.
4931         * testsuite/performance/23_containers/producer_consumer/sequence.cc:
4932         Same.
4933         * testsuite/performance/23_containers/producer_consumer/associative.cc:
4934         Same.
4935
4936         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers.
4937         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
4938
4939 2008-05-05  Benjamin Kosnik  <bkoz@redhat.com>
4940
4941         * 20_util/make_signed/requirements/typedefs-1.cc: Correct requirements.
4942         * 20_util/make_unsigned/requirements/typedefs-1.cc: Same.
4943
4944 2008-05-01  Benjamin Kosnik  <bkoz@redhat.com>
4945
4946         * include/bits/c++config: Revert _GLIBCXX_LONG_DOUBLE_COMPAT change.
4947
4948 2008-04-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4949
4950         * include/Makefile.am (install-headers): Cope with empty
4951         parallel_headers.
4952         * include/Makefile.in: Regenerate.
4953
4954 2008-04-29  Benjamin Kosnik  <bkoz@redhat.com>
4955
4956         * include/bits/c++config: Remove space between '#' and 'undef' for
4957         _GLIBCXX_LONG_DOUBLE_COMPAT.
4958
4959 2008-04-29  Joseph Myers  <joseph@codesourcery.com>
4960
4961         * Makefile.am (install-html, install-pdf): Add dummy targets.
4962         * Makefile.in: Regenerate.
4963         * doc/Makefile.am (install-html, install-pdf): Remove.
4964         * doc/Makefile.in: Regenerate.
4965
4966 2008-04-28  Benjamin Kosnik  <bkoz@redhat.com>
4967
4968         * include/bits/c++config: Move os_defines and cpu_defines after
4969         namespace definitions and base macros.
4970
4971 2008-04-28  Benjamin Kosnik  <bkoz@redhat.com>
4972
4973         PR libstdc++/35887
4974         * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Revert back to just
4975         checking for omp.h.
4976         * configure: Regenerate.
4977
4978 2008-04-25  Benjamin Kosnik  <bkoz@redhat.com>
4979
4980         PR libstdc++/35922
4981         * include/std/unordered_map: Include debug/unordered_map if
4982         _GLIBCXX_DEBUG.
4983         * testsuite/23_containers/unordered_map/requirements/debug.cc: Move...
4984         * testsuite/23_containers/unordered_map/requirements/
4985         debug_container.cc: ...here.
4986         * testsuite/23_containers/unordered_map/requirements/debug_mode.cc: New.
4987         * testsuite/23_containers/unordered_set/requirements/debug.cc: Move...
4988         * testsuite/23_containers/unordered_set/requirements/
4989         debug_container.cc: ...here.
4990         * testsuite/23_containers/unordered_set/requirements/debug_mode.cc: New.
4991
4992 2008-04-25  Benjamin Kosnik  <bkoz@redhat.com>
4993
4994         PR libstdc++/35887
4995         * acinclude.m4: (GLIBCXX_ENABLE_PARALLEL): Check for thread support.
4996         * configure.ac: Re-order compiler macros.
4997         * configure: Regenerated.
4998
4999 2008-04-24  Benjamin Kosnik  <bkoz@redhat.com>
5000
5001         PR libstdc++/35887
5002         * configure.ac: Add default argument to GLIBCXX_ENABLE_PARALLEL.
5003         Move atomic warnings to GLIBCXX_ENABLE_ATOMIC_BUILTINS.
5004         * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Check for --disable-libgomp.
5005         (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Add warning information.
5006         * configure: Regenerate.
5007         * include/Makefile.am (parallel_headers): Make conditional on
5008         ENABLE_PARALLEL.
5009         * include/Makefile.in: Regenerate.
5010
5011 2008-04-24  Paolo Carlini  <pcarlini@suse.de>
5012
5013         PR libstdc++/35969
5014         * include/debug/list (merge): Use _M_transfer_iter, consistently
5015         with the splice members.
5016         * testsuite/23_containers/list/operations/35969.cc: New.
5017
5018         * testsuite/23_containers/list/operators: Rename to
5019         testsuite/23_containers/list/operations.
5020
5021 2008-04-24  Benjamin Kosnik  <bkoz@redhat.com>
5022
5023         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Check for set of
5024         all used __sync builtins, in two sizes.
5025         * config.h.in: Regenerate.
5026         * configure: Regenerate.
5027         * src/atomic.cc: Use  _GLIBCXX_ATOMIC_BUILTINS_1.
5028         * include/ext/atomicity.h: Use  _GLIBCXX_ATOMIC_BUILTINS_4.
5029         * libsupc++/guard.cc: Use  _GLIBCXX_ATOMIC_BUILTINS_4.
5030         * doc/xml/manual/concurrency.xm: Update docs.
5031
5032 2008-04-23  Benjamin Kosnik  <bkoz@redhat.com>
5033
5034         * config/os/hpux/os_defines.h: Use _GLIBCXX_BEGIN_NAMESPACE,
5035         _GLIBCXX_BEGIN_EXTERN_C, etc.
5036
5037 2008-04-23  Johannes Singler  <singler@ira.uka.de>
5038
5039         * include/parallel/quicksort.h: Reformat,
5040         (parallel_sort_qs): Do not pass number of elements.
5041         * include/parallel/balanced_quicksort.h: Reformat,
5042         (parallel_sort_qsb): Do not pass number of elements.
5043         * include/parallel/tags.h:
5044         Introduce new tags for compile-time choice.
5045         * include/parallel/merge.h:
5046         (parallel_merge_advance):Beautified.
5047         * include/parallel/algo.h: Reformatting (spaces for tabs)
5048         New sort and stable_sort variants, corresponding to the tags.
5049         * include/parallel/sort.h:
5050         New sort and stable_sort variants, corresponding to the tags.
5051         Changed determining the desired number of threads.
5052
5053 2008-04-23  Johannes Singler  <singler@ira.uka.de>
5054
5055         * include/parallel/multiway_merge.h
5056         (multiway_merge_loser_tree):
5057         Leave checks to callers, add precondition instead.
5058         (multiway_merge_loser_tree_unguarded): Likewise.
5059         (multiway_merge_loser_tree_sentinel): Likewise.
5060         (sequential_multiway_merge): Added checks for total length 0.
5061         (parallel_multiway_merge): Skip empty sequences.
5062         (multiway_merge, all variants):
5063         Remove temporary variable, return directly.
5064         (stable_multiway_merge, all variants): Likewise.
5065         (multiway_merge_sentinels, all variants):  Likewise.
5066         (stable_multiway_merge_sentinels, all variants): Likewise.
5067         * include/parallel/multiseq_selection.h
5068         (multiseq_partition): More detailed assertions.
5069
5070 2008-04-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5071
5072         * acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT, GLIBCXX_ENABLE_C99)
5073         (GLIBCXX_CHECK_C99_TR1, GLIBCXX_CHECK_RANDOM_TR1)
5074         (GLIBCXX_ENABLE_VISIBILITY): Fix cache variable names.
5075         (GLIBCXX_CHECK_SYSTEM_ERROR): Likewise.  Factorize.
5076         * configure: Regenerate.
5077
5078 2008-04-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5079
5080         PR libstdc++/35954
5081         * include/Makefile.am (pch*_output): Do not touch pch*_output_anchor.
5082         Call 'mkdir -p' unconditionally, but ignore its return value.
5083         * include/Makefile.in: Regenerate.
5084
5085         * include/Makefile.am: Fix most stamp rules to regenerate
5086         the links for all sources newer than the stamp file.
5087         * include/Makefile.in: Regenerate.
5088         * Makefile.in: Likewise.
5089         * src/Makefile.in: Likewise.
5090         * doc/Makefile.in: Likewise.
5091         * po/Makefile.in: Likewise.
5092         * libmath/Makefile.in: Likewise.
5093         * libsupc++/Makefile.in: Likewise.
5094         * testsuite/Makefile.in: Likewise.
5095
5096 2008-04-18  Paolo Bonzini  <bonzini@gnu.org>
5097
5098         PR bootstrap/35457
5099         * aclocal.m4: Regenerate.
5100         * configure: Regenerate.
5101
5102 2008-04-16  Andreas Tobler  <a.tobler@schweiz.org>
5103
5104         PR libstdc++/35915
5105         * configure.ac: Use GCC_HEADER_STDINT.
5106         * src/atomic.cc: Include gstdint.h
5107         * configure: Regenerate.
5108         * Makefile.in: Likewise.
5109         * doc/Makefile.in: Likewise.
5110         * include/Makefile.in: Likewise.
5111         * libmath/Makefile.in: Likewise.
5112         * libsupc++/Makefile.in: Likewise.
5113         * po/Makefile.in: Likewise.
5114         * src/Makefile.in: Likewise.
5115         * testsuite/Makefile.in: Likewise.
5116         * aclocal.m4: Likewise.
5117
5118 2008-04-14  Benjamin Kosnik  <bkoz@redhat.com>
5119
5120         PR libstdc++/35816
5121         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Set CXXFLAGS to
5122         -O0 when checking for atomic builtins.
5123         * configure: Regenerate.
5124
5125 2008-04-14  Benjamin Kosnik  <bkoz@redhat.com>
5126
5127         * include/bits/c++config: Guard _LDBL_ macros with __cplusplus.
5128
5129 2008-04-10  Benjamin Kosnik  <bkoz@redhat.com>
5130
5131         * doc/html/*: Regenerate.
5132
5133 2008-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5134
5135         * doc/xml/manual/bitmap_allocator.xml: Improve wording a bit.
5136         * doc/xml/authors.xml: Fix typos.
5137         * doc/xml/faq.xml: Likewise.
5138         * doc/xml/manual/abi.xml: Likewise.
5139         * doc/xml/manual/allocator.xml: Likewise.
5140         * doc/xml/manual/appendix_contributing.xml: Likewise.
5141         * doc/xml/manual/backwards_compatibility.xml: Likewise.
5142         * doc/xml/manual/build_hacking.xml: Likewise.
5143         * doc/xml/manual/codecvt.xml: Likewise.
5144         * doc/xml/manual/concurrency.xml: Likewise.
5145         * doc/xml/manual/ctype.xml: Likewise.
5146         * doc/xml/manual/debug_mode.xml: Likewise.
5147         * doc/xml/manual/diagnostics.xml: Likewise.
5148         * doc/xml/manual/evolution.xml: Likewise.
5149         * doc/xml/manual/extensions.xml: Likewise.
5150         * doc/xml/manual/locale.xml: Likewise.
5151         * doc/xml/manual/messages.xml: Likewise.
5152         * doc/xml/manual/parallel_mode.xml: Likewise.
5153         * doc/xml/manual/status_cxx200x.xml: Likewise.
5154         * doc/xml/manual/strings.xml: Likewise.
5155         * doc/xml/manual/support.xml: Likewise.
5156         * doc/xml/manual/test.xml: Likewise.
5157         * doc/xml/manual/using.xml: Likewise.
5158
5159 2008-04-10  Benjamin Kosnik  <bkoz@redhat.com>
5160             Johannes Singler  <singler@ira.uka.de>
5161
5162         * doc/xml/manual/parallel_mode.xml: Remove map/set bulk
5163         insertors. Correct omp_set_num_threads example.
5164
5165 2008-04-10  Benjamin Kosnik  <bkoz@redhat.com>
5166
5167         * include/c_global/cstdatomic: C++ types only, format, doxygen markup.
5168         * include/c_compatibility/stdatomic.h: "C" only, format, doxygen markup.
5169         * src/atomic.c: Format, doxygen markup, edits.
5170
5171         * include/Makefile.am (cstdatomic, stdatomic.h): Add.
5172         * src/Makefile.am (atomic.c): Add.
5173         * acinclude.m4 (GLIBCXX_CHECK_STANDARD_LAYOUT): New.
5174         * configure.ac: Call it.
5175         * include/Makefile.in: Regenerate.
5176         * src/Makefile.in: Same.
5177         * Makefile.in: Same.
5178         * doc/Makefile.in: Same.
5179         * po/Makefile.in: Same.
5180         * libmath/Makefile.in: Same.
5181         * include/Makefile.in: Same.
5182         * testsuite/Makefile.in: Same.
5183         * libsupc++/Makefile.in: Same.
5184         * config.h.in: Same.
5185         * configure: Same.
5186
5187         * config/abi/pre/gnu.ver: Add atomics exports.
5188
5189         * include/ext/typelist.h (apply_generator): New.
5190         * include/bits/c++config (_GLIBCXX_BEGIN_EXTERN_C): New.
5191         (_GLIBCXX_END_EXTERN_C): New.
5192         Deal with _GLIBCXX_BEGIN_NAMESPACE, _GLIBCXX_END_NAMESPACE when
5193         compiling as C.
5194         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Add -L
5195         flag for libstdc++.
5196         * testsuite/util/testsuite_common_types.h (integral_types): New
5197         typelist.
5198         (atomics, atomics_tl): Same.
5199         (assignable, default_constructible, copy_constructible,
5200         explicit_value_constructible): New.
5201         * testsuite/17_intro/headers/c++200x/all.cc: Test new headers.
5202         * testsuite/29_atomics: New.
5203         * testsuite/29_atomics/atomic_address: Same.
5204         * testsuite/29_atomics/atomic_address/cons: Same.
5205         * testsuite/29_atomics/atomic_address/cons/explicit_value.cc: Same.
5206         * testsuite/29_atomics/atomic_address/cons/assign_neg.cc: Same.
5207         * testsuite/29_atomics/atomic_address/cons/copy_neg.cc: Same.
5208         * testsuite/29_atomics/atomic_address/cons/default.cc: Same.
5209         * testsuite/29_atomics/atomic_address/cons/aggregate.cc: Same.
5210         * testsuite/29_atomics/atomic_flag: Same.
5211         * testsuite/29_atomics/atomic_flag/cons: Same.
5212         * testsuite/29_atomics/atomic_flag/cons/assign_neg.cc: Same.
5213         * testsuite/29_atomics/atomic_flag/cons/copy_neg.cc: Same.
5214         * testsuite/29_atomics/atomic_flag/cons/default.cc: Same.
5215         * testsuite/29_atomics/atomic_flag/cons/aggregate.cc: Same.
5216         * testsuite/29_atomics/atomic_flag/requirements: Same.
5217         * testsuite/29_atomics/atomic_flag/requirements/standard_layout.cc:
5218         Same.
5219         * testsuite/29_atomics/atomic_flag/
5220         atomic_global_fence_compatibility.cc: Same.
5221         * testsuite/29_atomics/atomic_flag/test_and_set: Same.
5222         * testsuite/29_atomics/atomic_flag/test_and_set/explicit.c: Same.
5223         * testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Same.
5224         * testsuite/29_atomics/atomic_flag/test_and_set/implicit.c: Same.
5225         * testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Same.
5226         * testsuite/29_atomics/headers: Same.
5227         * testsuite/29_atomics/headers/cstdatomic: Same.
5228         * testsuite/29_atomics/headers/cstdatomic/types_std_c++0x.cc: Same.
5229         * testsuite/29_atomics/headers/cstdatomic/functions_std_c++0x.cc: Same.
5230         * testsuite/29_atomics/headers/cstdatomic/std_c++0x_neg.cc: Same.
5231         * testsuite/29_atomics/headers/cstdatomic/macros.cc: Same.
5232         * testsuite/29_atomics/headers/stdatomic.h: Same.
5233         * testsuite/29_atomics/headers/stdatomic.h/macros.c: Same.
5234         * testsuite/29_atomics/headers/stdatomic.h/types.c: Same.
5235         * testsuite/29_atomics/headers/stdatomic.h/functions.c: Same.
5236         * testsuite/29_atomics/atomic: Same.
5237         * testsuite/29_atomics/atomic/cons: Same.
5238         * testsuite/29_atomics/atomic/cons/explicit_value.cc: Same.
5239         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
5240         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
5241         * testsuite/29_atomics/atomic/cons/default.cc: Same.
5242         * testsuite/29_atomics/atomic/requirements: Same.
5243         * testsuite/29_atomics/atomic/requirements/explicit_instantiation: Same.
5244         * testsuite/29_atomics/atomic/requirements/explicit_instantiation/
5245         1.cc: Same.
5246
5247 2008-04-10  Lawrence Crowl  <crowl@google.com>
5248
5249         * include/c_global/cstdatomic: New.
5250         * include/c_compatibility/stdatomic.h: New.
5251         * src/atomic.c: New.
5252
5253 2008-04-10  Benjamin Kosnik  <bkoz@redhat.com>
5254
5255         * include/std/tuple: Consistency check for include guard, doxygen
5256         file markup.
5257         * include/std/date_time: Same.
5258         * include/std/type_traits: Same.
5259         * include/std/regex: Same.
5260         * include/std/array: Same.
5261         * include/std/system_error: Same, add error_code ctor.
5262
5263 2008-04-07  Johannes Singler  <singler@ira.uka.de>
5264
5265         * include/parallel/multiway_merge.h: Moved decisions to
5266         compile-time instead of run-time.
5267         * include/parallel/losertree.h: Removed obsolete variants, added
5268         variant that uses pointers in the loser tree.
5269         * include/parallel/types.h: Remove obsolete settings options from enum.
5270         * include/parallel/features.h: Remove obsolete compile-time switches.
5271         * include/parallel/compiletime_settings.h: Remove obsolete variant
5272         that copies back *after* sorting.
5273         * include/parallel/tags.h: Add one new tag for compile-time switch.
5274         * include/parallel/merge.h: Adapt to changes in multiway_merge.h.
5275         * include/parallel/multiway_mergesort.h: Adapt to changes in
5276         multiway_merge.h. Factor out splitting variants. Remove obsolete
5277         variant that copies back *after* sorting.
5278         * include/parallel/sort.h: Adapt to changes in multiway_mergesort.h.
5279         * testsuite/25_algorithms/sort/35588.cc: Added test case from /
5280         for PR 35588.
5281
5282 2008-03-29  Paolo Carlini  <pcarlini@suse.de>
5283
5284         PR libstdc++/35725
5285         * include/bits/stl_algobase.h (__fill_a(_ForwardIterator,
5286         _ForwardIterator, _Tp), __fill_a(_Tp*, _Tp*, _Tp),
5287         __fill_n_a(_OutputIterator, _Size, _Tp), __fill_n_a(_Tp*, _Size,
5288         _Tp)): Fix signatures.
5289         * testsuite/25_algorithms/fill/35725.cc: New.
5290         * testsuite/25_algorithms/fill_n/35725.cc: Likewise.
5291
5292 2008-03-29  Matthias Klose  <doko@ubuntu.com>
5293
5294         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
5295         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Likewise.
5296         * config/abi/post/mips-linux-gnu/baseline_symbols.txt: Likewise.
5297         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Likewise.
5298
5299 2008-03-27  Ian Lance Taylor  <iant@google.com>
5300
5301         * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Set
5302         glibcxx_ld_is_gold.  Check for gold in --gc-sections test.
5303         (GLIBCXX_ENABLE_SYMVERS): Check for gold.
5304         * aclocal.m4, configure: Rebuild.
5305
5306 2008-03-26  Benjamin Kosnik  <bkoz@redhat.com>
5307
5308         * testsuite/util/testsuite_abi.h: Remove symbol_objects,
5309         symbol_names typedefs.
5310         * testsuite/util/testsuite_abi.cc (compare_symbols): Correct check
5311         for long double compatiblity symbols, simplify data structures used.
5312
5313 2008-03-25  Benjamin Kosnik  <bkoz@redhat.com>
5314
5315         * scripts/run_doxygen: Remove html_output_dir. Downgrade to
5316         Doxygen 1.5.1.
5317         * doc/doxygen/style.css: Delete.
5318         * doc/doxygen/user.cfg.in: Regenerate with Doxygen 1.5.1.
5319         (INPUT): Update.
5320         (PREDEFINED): Update.
5321         (HTML_OUTPUT): Remove html_output_dir, use html.
5322         (HTML_STYLESHEET): Remove style.css.
5323         * doc/doxygen/tables.html: Remove style.css use.
5324         * doc/doxygen/mainpage.html: Nested lists for Namespaces and Classes.
5325         * doc/doxygen/doxygroups.cc: Namespace edits.
5326         * doc/doxygen/Intro.3: Correct typo.
5327
5328         * doc/xml/api.xml: Add gcc-4.3 links.
5329         * doc/html/api.html: Regenerate.
5330
5331         * include/debug/debug.h: Document namepaces here.
5332         * include/parallel/base.h: Same.
5333         * include/ext/typelist.h: Same.
5334         * include/ext/pb_ds/tag_and_trait.hpp: Same.
5335
5336         * include/tr1_impl/random: Adjust line break.
5337         * include/tr1_impl/unordered_map: Correct and or add markup.
5338         * include/tr1_impl/boost_shared_ptr.h: Correct and or add markup.
5339         * include/tr1_impl/functional_hash.h: Same.
5340         * include/tr1_impl/cmath: Same.
5341         * include/tr1_impl/functional: Same.
5342         * include/tr1_impl/unordered_set: Same.
5343         * include/tr1_impl/complex: Same.
5344         * include/tr1_impl/type_traits: Same.
5345         * include/tr1_impl/regex: Same.
5346         * include/tr1_impl/array: Same.
5347         * include/std/tuple: Same.
5348         * include/std/date_time: Same.
5349         * include/std/system_error: Same.
5350         * include/std/type_traits: Same.
5351         * include/ext/enc_filebuf.h: Same.
5352         * include/ext/throw_allocator.h: Same.
5353         * include/ext/pool_allocator.h: Same.
5354         * include/ext/bitmap_allocator.h: Same.
5355         * include/ext/concurrence.h: Same.
5356         * include/ext/codecvt_specializations.h: Same.
5357         * include/ext/stdio_sync_filebuf.h: Same.
5358         * include/ext/array_allocator.h: Same.
5359         * include/ext/mt_allocator.h: Same.
5360         * include/bits/locale_classes.h: Same.
5361         * include/bits/locale_facets.h: Same.
5362         * include/bits/codecvt.h: Same.
5363         * include/bits/char_traits.h: Same.
5364         * include/bits/allocator.h: Same.
5365         * include/bits/locale_facets_nonio.h: Same.
5366         * include/tr1/poly_laguerre.tcc: Same.
5367         * include/tr1/riemann_zeta.tcc: Same.
5368         * include/tr1/beta_function.tcc: Same.
5369         * include/tr1/tuple: Same.
5370         * include/tr1/exp_integral.tcc: Same.
5371         * include/tr1/gamma.tcc: Same.
5372         * include/tr1/hypergeometric.tcc: Same.
5373         * include/tr1/modified_bessel_func.tcc: Same.
5374         * include/tr1/legendre_function.tcc: Same.
5375         * include/tr1/type_traits: Same.
5376         * include/tr1/special_function_util.h: Same.
5377         * include/tr1/bessel_function.tcc: Same.
5378         * include/tr1/cmath: Same.
5379         * include/tr1/poly_hermite.tcc: Same.
5380         * include/tr1/ell_integral.tcc: Same.
5381         * config/abi/compatibility.h: Adjust file name.
5382
5383         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
5384         line numbers.
5385         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
5386         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
5387
5388 2008-03-23  Paolo Carlini  <pcarlini@suse.de>
5389
5390         * doc/xml/faq.xml: Fix various links.
5391         * doc/xml/api.xml: Likewise.
5392         * doc/xml/manual/parallel_mode.xml: Likewise.
5393         * doc/html/faq.html: Regenerate.
5394         * doc/html/api.html: Likewise.
5395         * doc/html/manual/bk01pt12ch31s03.html: Likewise.
5396
5397 2008-03-20  Benjamin Kosnik  <bkoz@redhat.com>
5398
5399         * testsuite/util/testsuite_abi.cc: Add support for not counting
5400         GLIBCXX_LDBL_* compat symbols missing if no long double compat
5401         symbols under test.
5402
5403 2008-03-20  Paolo Carlini  <pcarlini@suse.de>
5404
5405         PR libstdc++/35637
5406         * include/tr1_impl/type_traits (struct __in_array): Add back.
5407         (is_function): Use it.
5408         * testsuite/tr1/4_metaprogramming/is_function/35637.cc: New.
5409
5410 2008-03-20  Johannes Singler  <singler@ira.uka.de>
5411
5412         * include/parallel/set_operations.h (set_intersection): Remove.
5413
5414 2008-03-19  Benjamin Kosnik  <bkoz@redhat.com>
5415
5416         PR libstdc++/35256
5417         * doc/xml/manual/parallel_mode.xml: Correct configuration documentation.
5418         * doc/html/manual/bk01pt12ch31s04.html: Regenerate.
5419
5420 2008-03-18  Benjamin Kosnik  <bkoz@redhat.com>
5421
5422         * configure.ac (libtool_VERSION): To 6:11:0.
5423         * configure: Regenerate.
5424         * aclocal.m4: Regenerate.
5425
5426 2008-03-16  Paolo Carlini  <pcarlini@suse.de>
5427
5428         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc:
5429         Update.
5430         * testsuite/17_intro/headers/c++200x/all.cc: Likewise.
5431         * include/precompiled/stdc++.h: Likewise.
5432
5433 2008-03-16  Pedro Lamarão  <pedro.lamarao@gmail.com>
5434
5435         * include/std/date_time: New file.
5436         * src/date_time.cc: New file.
5437         * config/abi/pre/gnu.ver: Added <date_time> symbols in version
5438         GLIBCXX_3.4.11 and changed two patterns in version GLIBCXX_3.4
5439         that matched new symbols.
5440         * include/Makefile.am: Add date_time in std headers.
5441         * src/Makefile.am: Add date_time.cc to source files.
5442         * include/Makefile.in: Regenerate.
5443         * src/Makefile.in: Likewise.
5444
5445 2008-03-16  Pedro Lamarão  <pedro.lamarao@gmail.com>
5446
5447         * testsuite/31_date_time/headers/date_time/types_std.cc: New.
5448         * testsuite/31_date_time/headers/date_time/std_c++0x_neg.cc: Likewise.
5449         * testsuite/31_date_time/headers/date_time/functions_std.cc: Likewise.
5450         * testsuite/31_date_time/headers/date_time/synopsis.cc: Likewise.
5451         * testsuite/31_date_time/nanoseconds/requirements/traits.cc: Likewise.
5452         * testsuite/31_date_time/nanoseconds/requirements/duration.cc: Likewise.
5453         * testsuite/31_date_time/system_time/requirements: Likewise.
5454         * testsuite/31_date_time/system_time/requirements/traits.cc: Likewise.
5455
5456 2008-03-16  Paolo Carlini  <pcarlini@suse.de>
5457
5458         * config.h.in: Regenerate.
5459
5460 2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5461
5462         * aclocal.m4: Regenerate.
5463         * configure: Likewise.
5464         * Makefile.in: Likewise.
5465         * doc/Makefile.in: Likewise.
5466         * include/Makefile.in: Likewise.
5467         * libmath/Makefile.in: Likewise.
5468         * libsupc++/Makefile.in: Likewise.
5469         * po/Makefile.in: Likewise.
5470         * src/Makefile.in: Likewise.
5471         * testsuite/Makefile.in: Likewise.
5472
5473 2008-03-13  Dennis Czeremin  <dennis.czeremin@smiths-heimann.com>
5474
5475         PR libstdc++/35566
5476         * include/bits/stl_multimap.h (multimap<>::multimap(_InputIterator,
5477         _InputIterator)): Forward to _M_insert_equal, not _M_insert_unique.
5478
5479 2008-03-13  Paolo Carlini  <pcarlini@suse.de>
5480
5481         PR libstdc++/35541
5482         * include/debug/functions.h (__check_sorted_set_aux): Fix signature.
5483         * testsuite/25_algorithms/set_difference/35541.cc: New.
5484
5485 2008-03-07  Jakub Jelinek  <jakub@redhat.com>
5486
5487         * config/abi/pre/gnu.ver: Move <system_error> related
5488         symbols to GLIBCXX_3.4.11 symbol version.
5489         * testsuite/util/testsuite_abi.cc (check_version): Allow
5490         GLIBCXX_3.4.11.
5491
5492 2008-03-06  Chris Jefferson  <chris@bubblescope.net>
5493             Paolo Carlini  <pcarlini@suse.de>
5494
5495         PR libstdc++/35480
5496         * include/tr1/tuple (operator==, operator<): Fix.
5497         * include/std/tuple (operator==, operator<): Likewise.
5498         * testsuite/tr1/6_containers/tuple/comparison_operators/35480.cc: New.
5499         * testsuite/20_util/tuple/comparison_operators/35480.cc: Likewise.
5500
5501 2008-03-04  Joseph Myers  <joseph@codesourcery.com>
5502
5503         * crossconfig.m4 (*-mingw32*): Define HAVE_STRTOF and
5504         HAVE_STRTOLD.
5505         * configure: Regenerate.
5506
5507 2008-03-02  Hans-Peter Nilsson  <hp@axis.com>
5508
5509         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc,
5510         testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr_neg.cc:
5511         Mark changed error message prelude, adding "in file included from",
5512         using dg-excess-errors.
5513
5514 2008-03-01  Jakub Jelinek  <jakub@redhat.com>
5515
5516         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
5517         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
5518         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
5519         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
5520         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
5521         Likewise.
5522         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
5523         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
5524
5525 2008-02-29  Jakub Jelinek  <jakub@redhat.com>
5526
5527         * config/abi/pre/gnu.ver: Remove
5528         _ZNKSt3tr14hashIgEclEg@@GLIBCXX_3.4.10 and
5529         _ZNKSt4hashIgEclEg@@GLIBCXX_3.4.10 export.
5530         * config/os/gnu-linux/ldbl-extra.ver: Export
5531         _ZNKSt3tr14hashIgEclEg@@GLIBCXX_LDBL_3.4.10
5532         and _ZNKSt4hashIgEclEg@@GLIBCXX_LDBL_3.4.10.
5533         * src/hash.cc: Only define long double hash specialization if
5534         _GLIBCXX_LONG_DOUBLE_COMPAT_IMPL is defined.
5535         * src/compatibility-ldbl.cc: Include "hash.cc".
5536         (_GLIBCXX_LONG_DOUBLE_COMPAT_IMPL): Define.
5537         (_ZNKSt4hashIeEclEe): New alias.
5538         * testsuite/util/testsuite_abi.cc (check_version): Support
5539         GLIBCXX_LDBL_3.4.10.
5540
5541 2008-02-25  Jan Beulich  <jbeulich@novell.com>
5542
5543         * acinclude.m4: Also check for EIDRM and ETXTBSY.
5544         * configure: Re-generate.
5545         * config/os/generic/error_constants.h (namespace posix_error):
5546         Also wrap uses of EIDRM and ETXTBSY in conditionals.
5547         * testsuite/19_diagnostics/headers/system_error/types_std_c++0x.cc:
5548         Likewise.
5549
5550 2008-02-20  Jason Merrill  <jason@redhat.com>
5551
5552         * include/bits/c++config: Use 'inline namespace' instead of
5553         strong using.
5554
5555 2008-02-18  Pedro Lamarao <pedro.lamarao@mndfck.org>
5556
5557         * include/std/tuple: Fixes for moveable, non-copyable types.
5558         * testsuite/20_util/tuple/moveable2.cc: New.
5559
5560 2008-02-18  Paolo Carlini  <pcarlini@suse.de>
5561
5562         * include/std/tuple (operator+(tuple<>&&, tuple<>&&): Remove.
5563
5564 2008-02-17  Ed Smith-Rowland  <3dw4rd@verizon.net>
5565
5566         * include/tr1/poly_laguerre.tcc: Doxygen fixes.
5567         * include/tr1/exp_integral.tcc: Same.
5568         * include/tr1/gamma.tcc: Same.
5569         * include/tr1/hypergeometric.tcc: Same.
5570
5571 2008-02-17  Benjamin Kosnik  <bkoz@redhat.com>
5572
5573         PR libstdc++/34797
5574         * include/parallel/settings.h (_Settings): Reconstruct Settings class
5575         here, uglify, remove anonymous namespace and static
5576         members. Convert to datum.
5577         * include/parallel/types.h: Move Settings:: enumerations here, uglify.
5578         * src/parallel_settings.cc: New, definition for _Settings member
5579         functions.
5580         * include/parallel/multiway_merge.h: Same.
5581         * include/parallel/for_each.h: Same.
5582         * include/parallel/workstealing.h: Same.
5583         * include/parallel/base.h: Same.
5584         * include/parallel/numeric
5585         * include/parallel/features.h: Same.
5586         * include/parallel/quicksort.h: Same.
5587         * include/parallel/equally_split.h: Same.
5588         * include/parallel/algorithmfwd.h: Same.
5589         * include/parallel/omp_loop_static.h: Same.
5590         * include/parallel/random_shuffle.h: Same.
5591         * include/parallel/balanced_quicksort.h: Same.
5592         * include/parallel/tags.h: Same.
5593         * include/parallel/multiway_mergesort.h: Same.
5594         * include/parallel/numericfwd.h: Same.
5595         * include/parallel/partition.h: Same.
5596         * include/parallel/partial_sum.h: Same.
5597         * include/parallel/find.h: Same.
5598         * include/parallel/algo.h: Same.
5599         * include/parallel/omp_loop.h: Same.
5600         * include/parallel/sort.h: Same.
5601
5602         * src/Makefile.am (parallel_sources): Add parallel_settings.cc.
5603         * src/Makefile.in: Regenerate.
5604
5605         * config/abi/pre/gnu.ver: Export _Settings::get and _Settings::set.
5606
5607 2008-02-17  Paolo Carlini  <pcarlini@suse.de>
5608
5609         PR libstdc++/35221
5610         * include/parallel/types.h: Reinstate integer types typedefs.
5611         * include/parallel/multiseq_selection.h: Adjust.
5612         * include/parallel/compatibility.h: Likewise.
5613         * include/parallel/random_shuffle.h: Likewise.
5614         * include/parallel/random_number.h: Likewise.
5615         * include/parallel/base.h: Likewise.
5616
5617 2008-02-17  Paolo Carlini  <pcarlini@suse.de>
5618
5619         PR libstdc++/35209
5620         * config/abi/pre/gnu.ver: Export stdio_sync_filebuf symbols.
5621         * testsuite/ext/stdio_sync_filebuf/char/35209.cc: New.
5622         * testsuite/ext/stdio_sync_filebuf/wchar_t/35209.cc: Likewise.
5623
5624 2008-02-16  Benjamin Kosnik  <bkoz@redhat.com>
5625
5626         * include/parallel/random_number.h: Use TR1's mersenne_twister.
5627         (random_number::genrand_bits()): Remove.
5628         (random_number::set_seed): Remove.
5629
5630 2008-02-15  Benjamin Kosnik  <bkoz@redhat.com>
5631
5632         * include/parallel/types.h: Remove enum parallelism.
5633
5634 2008-02-15  Benjamin Kosnik  <bkoz@redhat.com>
5635
5636         * include/parallel/types.h: Move enum parallelism here.  Use
5637         tr1/cstdint's int16_t, uint16_t, int32_t, uint32_t, int64_t,
5638         uint64_t.
5639         * include/parallel/multiseq_selection.h: Adjust for cstdint.
5640         * include/parallel/compatibility.h: Same.
5641         * include/parallel/tags.h: Just compile-time tags.
5642         * include/parallel/base.h: Put namespace bits here.
5643
5644         * src/Makefile.am (PARALLEL_FLAGS): Use it.
5645         * src/Makefile.in: Regenerate.
5646
5647         * testsuite/25_algorithms/nth_element/1.cc: Add test variable.
5648
5649 2008-02-15  Hans-Peter Nilsson  <hp@axis.com>
5650
5651         * testsuite/config/default.exp: Load gcc dejapatches.exp.
5652
5653 2008-02-14  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
5654
5655         * testsuite/27_io/fpos/14320-1.cc: Check for "long long" and
5656         remove XFAIL.
5657
5658 2008-02-14  Benjamin Kosnik  <bkoz@redhat.com>
5659
5660         * config/os/generic/error_constants.h (posix_errno): Guard
5661         not_supported use of ENOTSUP.
5662         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add check for ENOTSUP
5663         for OpenBSD.
5664         * aclocal.m4: Regenerate.
5665         * configure: Rengerate.
5666         * config.h.in: Same.
5667
5668 2008-02-13  Benjamin Kosnik  <bkoz@redhat.com>
5669
5670         * doc/doxygen/mainpage.html: Correct links.
5671
5672 2008-02-11  Benjamin Kosnik  <bkoz@redhat.com>
5673
5674         * doc/html/*: Populate with regenerated files.
5675
5676 2008-02-11  Benjamin Kosnik  <bkoz@redhat.com>
5677
5678         * doc/html/*: Remove all but contents of ext/pb_ds.
5679         * doc/html/index.html: New.
5680         * doc/html/README: New.
5681
5682 2008-02-11  Benjamin Kosnik  <bkoz@redhat.com>
5683
5684         * doc/doxygen/mainpage.html: Add in corrected links.
5685         * README: Edit, move most into...
5686         * doc/xml/manual/appendix_contributing.xml (Directory Layout): ...here.
5687         (Documentation Style): Revise.
5688         * doc/xml/spine.xml: Edit file names.
5689         * doc/Makefile.am: Edit xml_sources.
5690         * doc/Makefile.in: Regenerate.
5691
5692 2008-02-11  Paolo Carlini  <pcarlini@suse.de>
5693
5694         * configure: Regenerate with documented autoconf and automake
5695         versions (i.e., 2.59 and 1.9.6).
5696         * Makefile.in: Likewise.
5697         * src/Makefile.in: Likewise.
5698         * doc/Makefile.in: Likewise.
5699         * po/Makefile.in: Likewise.
5700         * libmath/Makefile.in: Likewise.
5701         * include/Makefile.in: Likewise.
5702         * libsupc++/Makefile.in: Likewise.
5703         * testsuite/Makefile.in: Likewise.
5704         * aclocal.m4: Likewise.
5705
5706 2008-02-10  Benjamin Kosnik  <bkoz@redhat.com>
5707
5708         Convert documentation to DocBook.
5709         * doc/Makefile.am (doc-doxygen-html): Changed to doc-html-doxygen.
5710         (doc-doxygen-man): Changed to doc-man-doxygen.
5711         (doc-performance): Changed to doc-html-performance.
5712         (doc-xml-doxygen): New.
5713         (doc-xml-single): New.
5714         (doc-xml-validate): New.
5715         (doc-html): New.
5716         (doc-html-single): New.
5717         (doc-fo): New.
5718         (doc-pdf): New.
5719         (doc-pdf-fop-xml): New.
5720         (doc-pdf-fop-fo): New.
5721         (doc-pdf-xmlto): New.
5722         (doc-pdf-xmlroff): New.
5723         (doc-pdf-prince): New.
5724         * doc/xml: New directory.
5725         * doc/xml/authors.xml: New.
5726         * doc/xml/images: New directory.
5727         * doc/xml/images/confdeps.png: Add.
5728         * doc/xml/images/confdeps.dot: Add.
5729         * doc/xml/faq.xml: New.
5730         * doc/xml/api.xml: New.
5731         * doc/xml/gnu: New directory.
5732         * doc/xml/gnu/gpl-3.0.xml: New.
5733         * doc/xml/gnu/fdl-1.2.xml: New.
5734         * doc/xml/gnu/gpl-2.0.xml: New.
5735         * doc/xml/manual: New directory.
5736         * doc/xml/manual/mt_allocator.xml: New.
5737         * doc/xml/manual/allocator.xml: New.
5738         * doc/xml/manual/ctype.xml: New.
5739         * doc/xml/manual/numerics.xml: New.
5740         * doc/xml/manual/codecvt.xml: New.
5741         * doc/xml/manual/concurrency.xml: New.
5742         * doc/xml/manual/backwards_compatibility.xml: New.
5743         * doc/xml/manual/intro.xml: New.
5744         * doc/xml/manual/shared_ptr.xml: New.
5745         * doc/xml/manual/abi.xml: New.
5746         * doc/xml/manual/status_cxxtr1.xml: New.
5747         * doc/xml/manual/auto_ptr.xml: New.
5748         * doc/xml/manual/build.xml: New.
5749         * doc/xml/manual/internals.xml: New.
5750         * doc/xml/manual/parallel_mode.xml: New.
5751         * doc/xml/manual/status_cxx1998.xml: New.
5752         * doc/xml/manual/containers.xml: New.
5753         * doc/xml/manual/io.xml: New.
5754         * doc/xml/manual/appendix_porting.xml: New.
5755         * doc/xml/manual/utilities.xml: New.
5756         * doc/xml/manual/bitmap_allocator.xml: New.
5757         * doc/xml/manual/support.xml: New.
5758         * doc/xml/manual/configure.xml: New.
5759         * doc/xml/manual/build_hacking.xml: New.
5760         * doc/xml/manual/evolution.xml: New.
5761         * doc/xml/manual/using.xml: New.
5762         * doc/xml/manual/debug.xml: New.
5763         * doc/xml/manual/localization.xml: New.
5764         * doc/xml/manual/strings.xml: New.
5765         * doc/xml/manual/debug_mode.xml: New.
5766         * doc/xml/manual/locale.xml: New.
5767         * doc/xml/manual/extensions.xml: New.
5768         * doc/xml/manual/appendix_contributing.xml: New.
5769         * doc/xml/manual/messages.xml: New.
5770         * doc/xml/manual/diagnostics.xml: New.
5771         * doc/xml/manual/appendix_free.xml: New.
5772         * doc/xml/manual/algorithms.xml: New.
5773         * doc/xml/manual/iterators.xml: New.
5774         * doc/xml/manual/spine.xml: New.
5775         * doc/xml/manual/test.xml: New.
5776         * doc/xml/manual/status_cxx200x.xml: New.
5777         * doc/xml/spine.xml: New.
5778
5779         * doc/xml/book.txml: New. Template file.
5780         * doc/xml/chapter.txml: Same.
5781         * doc/xml/class.txml: Same.
5782
5783         * doc/doxygen/guide.html: Removed, integrated into other docs.
5784         * doc/doxygen/user.cfg.in: Clean up XML generation.
5785         * doc/doxygen/run_doxygen: Move to..
5786         * scripts/run_doxygen: ...here.
5787
5788         * configure: Regenerate.
5789         * Makefile.in: Regenerate.
5790         * src/Makefile.in: Regenerate.
5791         * doc/Makefile.in: Regenerate.
5792         * po/Makefile.in: Regenerate.
5793         * libmath/Makefile.in: Regenerate.
5794         * include/Makefile.in: Regenerate.
5795         * libsupc++/Makefile.in: Regenerate.
5796         * testsuite/Makefile.in: Regenerate.
5797         * aclocal.m4: Regenerate.
5798
5799 2008-02-10  Paolo Carlini  <pcarlini@suse.de>
5800
5801         PR libstdc++/16251
5802         * include/std/istream (basic_istream<>::basic_istream()): Call
5803         this->init().
5804         (basic_iostream<>::basic_iostream(basic_streambuf<>*)): Don't
5805         do it here, per 27.6.1.5.1/1.
5806         * include/std/ostream (basic_ostream<>::basic_ostream()): Call
5807         this->init().
5808         * testsuite/27_io/basic_iostream/cons/16251.C: New.
5809
5810         * testsuite/27_io/basic_iostream/cons/2020.cc: Minor tweaks.
5811
5812 2008-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5813
5814         * include/backward/auto_ptr.h: Fix comment typos.
5815         * include/bits/algorithmfwd.h: Likewise.
5816         * include/bits/basic_ios.h: Likewise.
5817         * include/bits/c++config: Likewise.
5818         * include/bits/char_traits.h: Likewise.
5819         * include/bits/codecvt.h: Likewise.
5820         * include/bits/gslice.h: Likewise.
5821         * include/bits/ios_base.h: Likewise.
5822         * include/bits/locale_facets.h: Likewise.
5823         * include/bits/locale_facets_nonio.tcc: Likewise.
5824         * include/bits/postypes.h: Likewise.
5825         * include/bits/sstream.tcc: Likewise.
5826         * include/bits/stl_algo.h: Likewise.
5827         * include/bits/stl_deque.h: Likewise.
5828         * include/bits/stl_iterator.h: Likewise.
5829         * include/bits/stl_iterator_base_types.h Likewise.
5830         * include/bits/stl_list.h: Likewise.
5831         * include/bits/stl_map.h: Likewise.
5832         * include/bits/stl_multimap.h: Likewise.
5833         * include/bits/stl_multiset.h: Likewise.
5834         * include/bits/stl_set.h: Likewise.
5835         * include/bits/stl_vector.h: Likewise.
5836         * include/bits/valarray_array.h: Likewise.
5837         * include/debug/safe_base.h: Likewise.
5838         * include/ext/bitmap_allocator.h: Likewise.
5839         * include/ext/codecvt_specializations.h Likewise.
5840         * include/ext/mt_allocator.h: Likewise.
5841         * include/ext/rc_string_base.h: Likewise.
5842         * include/ext/rope: Likewise.
5843         * include/parallel/checkers.h: Likewise.
5844         * include/parallel/find.h: Likewise.
5845         * include/parallel/multiseq_selection.h: Likewise.
5846         * include/parallel/partition.h: Likewise.
5847         * include/parallel/settings.h: Likewise.
5848         * include/std/bitset: Likewise.
5849         * include/std/complex: Likewise.
5850         * include/std/fstream: Likewise.
5851         * include/std/istream: Likewise.
5852         * include/std/limits: Likewise.
5853         * include/std/ostream: Likewise.
5854         * include/std/stdexcept: Likewise.
5855         * include/std/streambuf: Likewise.
5856         * include/tr1/bessel_function.tcc: Likewise.
5857         * include/tr1/cmath: Likewise.
5858         * include/tr1/ell_integral.tcc: Likewise.
5859         * include/tr1/hypergeometric.tcc: Likewise.
5860         * include/tr1/legendre_function.tcc: Likewise.
5861         * include/tr1_impl/random: Likewise.
5862         * include/tr1_impl/regex: Likewise.
5863
5864 2008-01-31  Paolo Carlini  <pcarlini@suse.de>
5865
5866         * testsuite/27_io/basic_istream/extractors_character/pod/3983-2.cc:
5867         Avoid -Wall warnings.
5868         * testsuite/22_locale/global_templates/user_facet_hierarchies.cc:
5869         Likewise.
5870         * testsuite/22_locale/global_templates/standard_facet_hierarchies.cc:
5871         Likewise.
5872         * testsuite/tr1/6_containers/hash/operators/size_t.cc: Likewise.
5873         * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Likewise.
5874         * testsuite/tr1/6_containers/tuple/cons/constructor.cc: Likewise.
5875         * testsuite/tr1/6_containers/array/cons/aggregate_initialization.cc:
5876         Likewise.
5877         * testsuite/tr1/6_containers/array/requirements/contiguous.cc:
5878         Likewise.
5879         * testsuite/tr1/6_containers/array/requirements/member_swap.cc:
5880         Likewise.
5881         * testsuite/tr1/6_containers/array/requirements/assign.cc: Likewise.
5882         * testsuite/tr1/6_containers/array/specialized_algorithms/swap.cc:
5883         Likewise.
5884         * testsuite/tr1/6_containers/array/comparison_operators/
5885         less_or_equal.cc: Likewise.
5886         * testsuite/tr1/6_containers/array/comparison_operators/
5887         greater_or_equal.cc: Likewise.
5888         * testsuite/tr1/6_containers/array/comparison_operators/less.cc:
5889         Likewise.
5890         * testsuite/tr1/6_containers/array/comparison_operators/equal.cc:
5891         Likewise.
5892         * testsuite/tr1/6_containers/array/comparison_operators/not_equal.cc:
5893         Likewise.
5894         * testsuite/tr1/6_containers/array/comparison_operators/greater.cc:
5895         Likewise.
5896         * testsuite/tr1/6_containers/array/tuple_interface/get.cc: Likewise.
5897         * testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc:
5898         Likewise.
5899         * testsuite/tr1/6_containers/array/element_access/back.cc: Likewise.
5900         * testsuite/tr1/6_containers/array/element_access/front.cc: Likewise.
5901         * testsuite/tr1/6_containers/array/element_access/data.cc: Likewise.
5902         * testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc:
5903         Likewise.
5904         * testsuite/tr1/6_containers/array/capacity/empty.cc: Likewise.
5905         * testsuite/tr1/6_containers/array/capacity/max_size.cc: Likewise.
5906         * testsuite/tr1/6_containers/array/capacity/size.cc: Likewise.
5907         * testsuite/thread/guard.cc: Likewise.
5908         * testsuite/20_util/tuple/cons/big_tuples.cc: Likewise.
5909         * testsuite/20_util/tuple/cons/constructor.cc: Likewise.
5910         * testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
5911         * testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
5912         * testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
5913         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
5914         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
5915         Likewise.
5916
5917 2008-01-26  David Edelsohn  <edelsohn@gnu.org>
5918
5919         PR target/34794
5920         * config/os/aix/os_defines.h: Define __COMPATMATH__.
5921
5922 2008-01-24  David Edelsohn  <edelsohn@gnu.org>
5923
5924         * configure: Regenerate.
5925
5926 2008-01-21  Matthias Klose  <doko@ubuntu.com>
5927
5928         * doc/doxygen/user.cfg.in: Set SHORT_NAMES to YES.
5929
5930 2008-01-19  Paolo Carlini  <pcarlini@suse.de>
5931
5932         * configure: Regenerate.
5933         * Makefile.in: Likewise.
5934         * src/Makefile.in: Likewise.
5935         * doc/Makefile.in: Likewise.
5936         * po/Makefile.in: Likewise.
5937         * libmath/Makefile.in: Likewise.
5938         * include/Makefile.in: Likewise.
5939         * libsupc++/Makefile.in: Likewise.
5940         * testsuite/Makefile.in: Likewise.
5941         * aclocal.m4: Likewise.
5942
5943 2008-01-18  Benjamin Kosnik  <bkoz@redhat.com>
5944
5945         * docs/*: To...
5946         * doc/*: ...here.
5947         * testsuite/Makefile.am: Move doc-performance to...
5948         * Makefile.am: Add doc to SUBDIRS, move doxygen-* rules to...
5949         * doc/Makefile.am: Consolidate documentation creation here.
5950         (doc-doxygen-html): New.
5951         (doc-doxygen-man): New.
5952         (doc-performance): New.
5953         * doc/Makefile.in: New.
5954         * acinclude.m4 (glibcxx_SUBDIRS): Add doc directory.
5955         * doc/doxygen/guide.html: Edit for unified html configuration.
5956         * doc/doxygen/mainpage.html: Same.
5957         * doc/doxygen/run_doxygen: Same, more namespace fixups for man
5958         generation.
5959         * doc/doxygen/user.cfg.in: Update for doxygen 1.5.4.
5960
5961         * include/tr1_impl/random: Remove maint from doxygen markup.
5962         * include/tr1_impl/functional: Same.
5963         * include/std/tuple: Same.
5964         * include/std/streambuf: Same.
5965         * include/std/bitset: Same.
5966         * include/std/limits: Same.
5967         * include/std/fstream: Same.
5968         * include/std/istream: Same.
5969         * include/std/sstream: Same.
5970         * include/ext/pool_allocator.h: Same.
5971         * include/ext/rc_string_base.h: Same.
5972         * include/bits/basic_ios.h: Same.
5973         * include/bits/stl_list.h: Same.
5974         * include/bits/stl_map.h: Same.
5975         * include/bits/locale_classes.h: Same.
5976         * include/bits/stl_set.h: Same.
5977         * include/bits/stl_iterator_base_types.h: Same.
5978         * include/bits/basic_string.h: Same.
5979         * include/bits/stl_multimap.h: Same.
5980         * include/bits/stl_vector.h: Same.
5981         * include/bits/ios_base.h: Same.
5982         * include/bits/stl_deque.h: Same.
5983         * include/bits/postypes.h: Same.
5984         * include/bits/stl_multiset.h: Same.
5985         * include/bits/stl_algo.h: Same.
5986         * include/bits/stl_iterator.h: Same.
5987         * include/bits/stl_tempbuf.h: Same.
5988         * include/bits/stl_construct.h: Same.
5989         * include/bits/stl_relops.h: Same.
5990         * include/tr1/tuple: Same.
5991         * include/backward/auto_ptr.h: Same.
5992
5993         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
5994         Fixups for line number changes.
5995         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
5996         * testsuite/23_containers/vector/requirements/dr438/
5997         constructor_1_neg.cc: Same.
5998         * testsuite/23_containers/vector/requirements/dr438/
5999         constructor_2_neg.cc: Same.
6000         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
6001         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
6002         * testsuite/23_containers/deque/requirements/dr438/
6003         constructor_1_neg.cc: Same.
6004         * testsuite/23_containers/deque/requirements/dr438/
6005         constructor_2_neg.cc: Same.
6006         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
6007         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
6008         * testsuite/23_containers/list/requirements/dr438/
6009         constructor_1_neg.cc: Same.
6010         * testsuite/23_containers/list/requirements/dr438/
6011         constructor_2_neg.cc: Same.
6012         * testsuite/20_util/auto_ptr/assign_neg.cc: Same.
6013
6014         * aclocal.m4: Regenerate.
6015         * config.h.in: Regenerate.
6016         * configure: Regenerate.
6017         * Makefile.in: Regenerate.
6018         * src/Makefile.in: Regenerate.
6019         * po/Makefile.in: Regenerate.
6020         * libmath/Makefile.in: Regenerate.
6021         * include/Makefile.in: Regenerate.
6022         * libsupc++/Makefile.in: Regenerate.
6023         * testsuite/Makefile.in: Regenerate.
6024
6025         * scripts/make_graphs.py: Correct paths for new layout.
6026
6027 2008-01-17  Benjamin Kosnik  <bkoz@redhat.com>
6028
6029         * acinclude.m4 (AC_LC_MESSAGES): Remove serial.
6030         * linkage.m4 (AC_REPLACE_MATHFUNCS): Same.
6031         * configure: Regenerate.
6032         * aclocal.m4: Regenerate.
6033
6034 2008-01-14  Paolo Carlini  <pcarlini@suse.de>
6035
6036         * include/parallel/list_partition.h: Formatting fixes, inline tweaks.
6037         * include/parallel/numeric: Likewise.
6038         * include/parallel/balanced_quicksort.h: Likewise.
6039         * include/parallel/unique_copy.h: Likewise.
6040         * include/parallel/algobase.h: Likewise.
6041         * include/parallel/algo.h: Likewise.
6042
6043 2008-01-14  Seongbae Park <seongbae.park@gmail.com>
6044
6045         * crossconfig.m4: Add missing header checks, C99 TR1 check,
6046         and sigsetjmp check.
6047
6048 2008-01-14  Paolo Carlini  <pcarlini@suse.de>
6049
6050         * include/parallel/tree.h: Remove.
6051         * include/Makefile.am: Update.
6052         * include/Makefile.in: Rebuild.
6053
6054         * src/Makefile.am: Remove spurious trailing backslash.
6055         * src/Makefile.in: Rebuild.
6056         * po/Makefile.in: Likewise.
6057         * libmath/Makefile.in: Likewise.
6058         * testsuite/Makefile.in: Likewise.
6059         * libsupc++/Makefile.in: Likewise.
6060         * aclocal.m4: Likewise.
6061         * Makefile.in: Likewise.
6062         * configure: Likewise.
6063
6064 2008-01-12  Paolo Carlini  <pcarlini@suse.de>
6065
6066         PR libstdc++/34730
6067         * include/debug/functions.h (__check_sorted_set,
6068         __check_sorted_set_aux): Add.
6069         (__check_sorted): Check StrictWeakOrdering.
6070         * include/debug/macros.h (__glibcxx_check_strict_weak_ordering,
6071         __glibcxx_check_strict_weak_ordering_pred): Remove.
6072         (__glibcxx_check_sorted, __glibcxx_check_sorted_pred): Adjust.
6073         (__glibcxx_check_sorted_set, __glibcxx_check_sorted_set_pred): Add.
6074         * include/debug/debug.h (__glibcxx_requires_sorted_set,
6075         __glibcxx_requires_sorted_set_pred): Add.
6076         * include/bits/stl_algo.h (merge, includes, set_union,
6077         set_intersection, set_difference, set_symmetric_difference):
6078         Adjust, use __glibcxx_requires_sorted_set* instead.
6079         * testsuite/25_algorithms/set_intersection/34730.cc: New.
6080
6081 2008-01-09  Paolo Carlini  <pcarlini@suse.de>
6082
6083         * include/parallel/multiway_merge.h: Reformat to 80 columns;
6084         adjust some inline specifiers; other minor style fixes.
6085         * include/parallel/losertree.h: Likewise.
6086         * include/parallel/list_partition.h: Likewise.
6087         * include/parallel/multiseq_selection.h: Likewise.
6088         * include/parallel/workstealing.h: Likewise.
6089         * include/parallel/base.h: Likewise.
6090         * include/parallel/par_loop.h: Likewise.
6091         * include/parallel/numeric: Likewise.
6092         * include/parallel/quicksort.h: Likewise.
6093         * include/parallel/algorithmfwd.h: Likewise.
6094         * include/parallel/for_each_selectors.h: Likewise.
6095         * include/parallel/omp_loop_static.h: Likewise.
6096         * include/parallel/random_shuffle.h: Likewise.
6097         * include/parallel/balanced_quicksort.h: Likewise.
6098         * include/parallel/set_operations.h: Likewise.
6099         * include/parallel/tree.h: Likewise.
6100         * include/parallel/merge.h: Likewise.
6101         * include/parallel/unique_copy.h: Likewise.
6102         * include/parallel/settings.h: Likewise.
6103         * include/parallel/multiway_mergesort.h: Likewise.
6104         * include/parallel/numericfwd.h: Likewise.
6105         * include/parallel/search.h: Likewise.
6106         * include/parallel/partition.h: Likewise.
6107         * include/parallel/compatibility.h: Likewise.
6108         * include/parallel/partial_sum.h: Likewise.
6109         * include/parallel/find.h: Likewise.
6110         * include/parallel/algo.h: Likewise.
6111         * include/parallel/queue.h: Likewise.
6112         * include/parallel/omp_loop.h: Likewise.
6113         * include/parallel/sort.h: Likewise.
6114         * include/parallel/random_number.h: Likewise.
6115
6116 2008-01-09  Benjamin Kosnik  <bkoz@redhat.com>
6117
6118         * docs/html/17_intro/api.html: Fix markup for rope.h.
6119
6120 2008-01-09  Paolo Carlini  <pcarlini@suse.de>
6121
6122         * include/parallel/iterator.h: Reformat to 80 columns; adjust some
6123         inline specifiers.
6124         * include/parallel/find_selectors.h: Likewise.
6125         * include/parallel/losertree.h: Likewise.
6126         * include/parallel/list_partition.h: Likewise.
6127         * include/parallel/for_each.h: Likewise.
6128         * include/parallel/multiseq_selection.h: Likewise.
6129         * include/parallel/algorithmfwd.h: Likewise.
6130         * include/parallel/for_each_selectors.h: Likewise.
6131         * include/parallel/balanced_quicksort.h: Likewise.
6132         * include/parallel/merge.h: Likewise.
6133         * include/parallel/algobase.h: Likewise.
6134         * include/parallel/find.h: Likewise.
6135         * include/parallel/algo.h: Likewise.
6136         * include/parallel/checkers.h: Likewise.
6137
6138 2008-01-09  Francesco Biscani  <bluescarni@gmail.com>
6139
6140         * include/tr1_impl/hashtable (_Hashtable): Fix friend declaration
6141         of __detail::_Map_base<>.
6142
6143 2008-01-08  Paolo Carlini  <pcarlini@suse.de>
6144
6145         * testsuite/22_locale/global_templates/user_facet_hierarchies.cc: Do
6146         not include <cassert>.
6147         * testsuite/22_locale/global_templates/standard_facet_hierarchies.cc:
6148         Likewise.
6149         * testsuite/util/testsuite_common_types.h: Include <algorithm>.
6150
6151 2008-01-08  Jakub Jelinek  <jakub@redhat.com>
6152
6153         * configure.ac (--enable-linux-futex): Add new configure option.
6154         (HAVE_LINUX_FUTEX): New AC_DEFINE.
6155         * Makefile.in: Rebuilt.
6156         * aclocal.m4: Rebuilt.
6157         * configure: Rebuilt.
6158         * config.h.in: Rebuilt.
6159         * config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_BIT,
6160         _GLIBCXX_GUARD_PENDING_BIT, _GLIBCXX_GUARD_WAITING_BIT): Define.
6161         * config/cpu/arm/cxxabi_tweaks.h (_GLIBCXX_GUARD_BIT,
6162         _GLIBCXX_GUARD_PENDING_BIT, _GLIBCXX_GUARD_WAITING_BIT): Define.
6163         * libsupc++/guard.cc: Include climits and syscall.h.
6164         (_GLIBCXX_USE_FUTEX): Define if futex syscall and atomic builtins
6165         are supported.
6166         (_GLIBCXX_FUTEX_WAIT, _GLIBCXX_FUTEX_WAKE): Likewise.
6167         (__guard_test_bit): New static inline.
6168         (__cxa_guard_acquire, __cxa_guard_release, __cxa_guard_abort): Use
6169         atomic builtins and futex syscall if _GLIBCXX_USE_FUTEX.
6170
6171 2008-01-07  Paolo Carlini  <pcarlini@suse.de>
6172
6173         PR libstdc++/34680
6174         * include/bits/locale_classes.h (has_facet<>, use_facet<>): Do not
6175         use dynamic_cast when run-time type identification is disabled; do
6176         not mark inline; only declare, define...
6177         * include/bits/locale_classes.tcc: ... here.
6178
6179 2008-01-06  Ted Phelps  <phelps@gnusto.com>
6180
6181         PR c++/34152
6182         * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Check
6183         _GLIBCXX_HAVE_GETIPINFO instead of HAVE_GETIPINFO.
6184
6185 2008-01-01  Paolo Carlini  <pcarlini@suse.de>
6186
6187         PR libstdc++/34095
6188         * include/parallel/multiway_merge.h (multiway_merge_bubble,
6189         parallel_multiway_merge): Together with ::operator new use
6190         ::operator delete.
6191         * include/parallel/losertree.h (LoserTree<>::~LoserTree): Likewise.
6192         * include/parallel/quicksort.h (parallel_sort_qs_divide): Likewise.
6193         * include/parallel/random_shuffle.h (parallel_random_shuffle_drs_pu,
6194         sequential_random_shuffle): Likewise.
6195         * include/parallel/tree.h (_M_not_sorted_bulk_insertion_construction):
6196         Likewise.
6197         * include/parallel/multiway_mergesort.h (parallel_sort_mwms_pu,
6198         parallel_sort_mwms): Likewise.
6199         * include/parallel/partial_sum.h (parallel_partial_sum_linear):
6200         Likewise.
6201         * testsuite/25_algorithms/sort/34095.cc: New.
6202
6203 2008-01-01  Paolo Carlini  <pcarlini@suse.de>
6204
6205         * testsuite/25_algorithms/sort/34636.cc: Fix Copyright year.
6206
6207 2008-01-01  Paolo Carlini  <pcarlini@suse.de>
6208
6209         PR libstdc++/34636
6210         * include/parallel/algobase.h (lexicographical_compare_switch(...,
6211         random_access_iterator_tag, random_access_iterator_tag)): Careful
6212         with undereferenceable iterators.
6213         * testsuite/25_algorithms/sort/34636.cc: New.