whatis.cc: New file.
[gcc.git] / libstdc++-v3 / ChangeLog
1 2012-11-16 Tom Tromey <tromey@redhat.com>
2
3 * testsuite/libstdc++-prettyprinters/whatis.cc: New file.
4 * testsuite/lib/gdb-test.exp (whatis-test): New proc.
5 (gdb-test): Handle 'whatis' tests.
6 (gdb_batch_check): New proc.
7 (gdb_version_check): Rewrite to use gdb_batch_check.
8 * python/libstdcxx/v6/printers.py: Import gdb.types.
9 (FilteringTypePrinter): New class.
10 (add_one_type_printer, register_type_printers): New functions.
11 (register_libstdcxx_printers): Call register_type_printers.
12
13 2012-11-15 Jonathan Wakely <jwakely.gcc@gmail.com>
14
15 PR libstdc++/53841
16 * include/std/condition_variable (condition_variable::wait_until):
17 Handle clocks with higher resolution than __clock_t.
18 (condition_variable::__wait_until_impl): Remove unnecessary _Clock
19 parameter.
20 * testsuite/30_threads/condition_variable/members/53841.cc: New.
21
22 2012-11-14 Jonathan Wakely <jwakely.gcc@gmail.com>
23
24 PR libstdc++/55320
25 * include/std/functional (function::function(F)): Set _M_manager after
26 operations that could throw.
27 (_Function_base::_Ref_manager::_M_init_functor): Use addressof.
28 * include/tr1/functional
29 (_Function_base::_Ref_manager::_M_init_functor): Use addressof.
30 (_Function_base::_Base_manager::_M_get_pointer): Likewise.
31 * testsuite/20_util/function/cons/55320.cc: New.
32 * testsuite/20_util/function/cons/addressof.cc: New.
33 * testsuite/20_util/function/cons/callable.cc: Remove header.
34 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
35 * testsuite/tr1/3_function_objects/function/10.cc: New.
36
37 2012-11-14 Uros Bizjak <ubizjak@gmail.com>
38
39 * testsuite/26_numerics/complex/abi_tag.cc: Adjust expected
40 demangling for 128bit long-double targets.
41
42 2012-11-12 Jonathan Wakely <jwakely.gcc@gmail.com>
43
44 * include/std/future (atomic_future): Remove declaration of
45 non-standard name.
46
47 2012-11-11 Jason Merrill <jason@redhat.com>
48
49 * include/std/complex (real, imag): Add ABI tag in C++11 mode.
50
51 2012-11-11 Andreas Schwab <schwab@linux-m68k.org>
52
53 * doc/xml/chapter.txml: Remove whitespace inside <keyword>.
54 * doc/xml/class.txml: Likewise.
55 * doc/xml/manual/abi.xml: Likewise.
56 * doc/xml/manual/algorithms.xml: Likewise.
57 * doc/xml/manual/allocator.xml: Likewise.
58 * doc/xml/manual/appendix_contributing.xml: Likewise.
59 * doc/xml/manual/appendix_free.xml: Likewise.
60 * doc/xml/manual/appendix_porting.xml: Likewise.
61 * doc/xml/manual/atomics.xml: Likewise.
62 * doc/xml/manual/auto_ptr.xml: Likewise.
63 * doc/xml/manual/backwards_compatibility.xml: Likewise.
64 * doc/xml/manual/bitmap_allocator.xml: Likewise.
65 * doc/xml/manual/build_hacking.xml: Likewise.
66 * doc/xml/manual/codecvt.xml: Likewise.
67 * doc/xml/manual/concurrency.xml: Likewise.
68 * doc/xml/manual/concurrency_extensions.xml: Likewise.
69 * doc/xml/manual/configure.xml: Likewise.
70 * doc/xml/manual/containers.xml: Likewise.
71 * doc/xml/manual/ctype.xml: Likewise.
72 * doc/xml/manual/debug.xml: Likewise.
73 * doc/xml/manual/debug_mode.xml: Likewise.
74 * doc/xml/manual/diagnostics.xml: Likewise.
75 * doc/xml/manual/extensions.xml: Likewise.
76 * doc/xml/manual/internals.xml: Likewise.
77 * doc/xml/manual/intro.xml: Likewise.
78 * doc/xml/manual/io.xml: Likewise.
79 * doc/xml/manual/iterators.xml: Likewise.
80 * doc/xml/manual/locale.xml: Likewise.
81 * doc/xml/manual/localization.xml: Likewise.
82 * doc/xml/manual/messages.xml: Likewise.
83 * doc/xml/manual/mt_allocator.xml: Likewise.
84 * doc/xml/manual/numerics.xml: Likewise.
85 * doc/xml/manual/parallel_mode.xml: Likewise.
86 * doc/xml/manual/policy_data_structures.xml: Likewise.
87 * doc/xml/manual/prerequisites.xml: Likewise.
88 * doc/xml/manual/profile_mode.xml: Likewise.
89 * doc/xml/manual/shared_ptr.xml: Likewise.
90 * doc/xml/manual/status_cxx1998.xml: Likewise.
91 * doc/xml/manual/status_cxx2011.xml: Likewise.
92 * doc/xml/manual/status_cxxtr1.xml: Likewise.
93 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
94 * doc/xml/manual/strings.xml: Likewise.
95 * doc/xml/manual/support.xml: Likewise.
96 * doc/xml/manual/test.xml: Likewise.
97 * doc/xml/manual/using_exceptions.xml: Likewise.
98 * doc/xml/manual/utilities.xml: Likewise.
99 * doc/xml/spine.xml: Likewise.
100
101 * acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Also check for
102 /usr/share/xml/docbook/stylesheet/nwalsh5/current.
103 * configure: Regenerate.
104
105 2012-11-11 Gerald Pfeifer <gerald@pfeifer.com>
106
107 * doc/xml/manual/policy_data_structures.xml: Update reference
108 for select.
109
110 2012-11-10 Jason Merrill <jason@redhat.com>
111
112 * many: Replace uses of __GXX_EXPERIMENTAL_CXX0X__ with __cplusplus.
113
114 2012-11-08 François Dumont <fdumont@gcc.gnu.org>
115
116 PR libstdc++/54075
117 * include/bits/hashtable.h (_Hashtable<>::rehash): Reset hash
118 policy state if no rehash.
119 * testsuite/23_containers/unordered_set/modifiers/reserve.cc
120 (test02): New.
121
122 2012-11-08 Paolo Carlini <paolo.carlini@oracle.com>
123
124 * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc:
125 Don't pass -D_GLIBCXX_DEBUG by hand (check-debug does).
126
127 2012-11-08 Florian Weimer <fweimer@redhat.com>
128
129 * testsuite/18_support/cxa_vec.cc: Fix typo in comment.
130
131 2012-11-08 Jonathan Wakely <jwakely.gcc@gmail.com>
132
133 * include/profile/iterator_tracker.h (operator++): Fix returning
134 dangling reference.
135 (operator--): Likewise.
136
137 2012-11-07 Paolo Carlini <paolo.carlini@oracle.com>
138
139 * include/debug/array (_GLIBCXX_THROW_OR_ABORT): Move...
140 * include/bits/c++config: ... here.
141 * include/bits/shared_ptr_base.h (__throw_bad_weak_ptr): Use it.
142 * include/ext/pb_ds/exception.hpp: Likewise.
143 * include/ext/throw_allocator.h (__throw_forced_error): Likewise.
144 * include/ext/concurrence.h (__throw_concurrence_lock_error,
145 __throw_concurrence_unlock_error, __throw_concurrence_broadcast_error,
146 __throw_concurrence_wait_error): Likewise.
147 * include/tr1/shared_ptr.h (__throw_bad_weak_ptr): Likewise.
148 * include/tr1/functional (function<_Res(_ArgTypes...)>::operator()
149 (_ArgTypes...)): Likewise.
150 * libsupc++/eh_aux_runtime.cc (__cxxabiv1::__cxa_bad_cast,
151 __cxxabiv1::__cxa_bad_typeid): Likewise.
152 * libsupc++/vec.cc (compute_size): Likewise.
153 * libsupc++/new_op.cc (operator new (std::size_t)): Likewise.
154 * src/c++11/functexcept.cc: Likewise.
155 * testsuite/util/io/illegal_input_error.hpp
156 (__throw_illegal_input_error): Likewise.
157 * libsupc++/eh_personality.cc: Avoid warning with -fno-exceptions.
158 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line
159 numbers.
160 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc:
161 Likewise.
162 * testsuite/23_containers/array/tuple_interface/
163 tuple_element_debug_neg.cc: Likewise.
164 * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc:
165 Likewise.
166 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
167
168 2012-11-07 Jonathan Wakely <jwakely.gcc@gmail.com>
169
170 * include/bits/stl_vector.h (vector(size_type)): Add missing allocator
171 parameter.
172 * include/bits/stl_bvector.h: Likewise.
173 * include/debug/vector (vector(size_type)): Likewise.
174 * include/profile/vector (vector(size_type)): Likewise. Pass allocator
175 to base constructor.
176 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
177 Adjust dg-error line numbers.
178 * testsuite/23_containers/vector/requirements/dr438/
179 constructor_1_neg.cc: Likewise.
180 * testsuite/23_containers/vector/requirements/dr438/
181 constructor_2_neg.cc: Likewise.
182 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
183 Likewise.
184
185 2012-11-06 Paolo Carlini <paolo.carlini@oracle.com>
186
187 PR libstdc++/51850
188 * include/debug/array: New, debug-mode implementation.
189 * include/profile/array: New.
190 * include/std/array: Adjust.
191 * include/std/tuple: Just include <array>.
192 * include/Makefile.am: Add.
193 * include/Makefile.in: Regenerate.
194 * testsuite/23_containers/array/debug/front1_neg.cc: New.
195 * testsuite/23_containers/array/debug/
196 square_brackets_operator1_neg.cc: Likewise.
197 * testsuite/23_containers/array/debug/front2_neg.cc: Likewise.
198 * testsuite/23_containers/array/debug/
199 square_brackets_operator2_neg.cc: Likewise.
200 * testsuite/23_containers/array/debug/back1_neg.cc: Likewise.
201 * testsuite/23_containers/array/debug/back2_neg.cc: Likewise.
202 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Tweak
203 to run only in normal-mode.
204 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
205 Likewise.
206 * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: New.
207 * testsuite/23_containers/array/tuple_interface/
208 tuple_element_debug_neg.cc: Likewise.
209
210 2012-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
211
212 * testsuite/20_util/shared_ptr/cons/55123.cc: Remove duplicate
213 include.
214
215 2012-11-06 Paolo Carlini <paolo.carlini@oracle.com>
216
217 * include/bits/atomic_base.h: Don't include <cstddef>, use nullptr.
218 * include/std/atomic: Likewise.
219 * include/tr2/dynamic_bitset: Likewise.
220
221 * libsupc++/vec.cc (compute_size(std::size_t, std::size_t,
222 std::size_t)): Fix for -fno-exceptions.
223
224 2012-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
225
226 * include/profile/map.h (map::emplace_hint): Add missing return.
227
228 2012-11-05 Jonathan Wakely <jwakely.gcc@gmail.com>
229
230 * include/profile/deque: Constrain InputIterator parameters.
231 * include/profile/forward_list: Likewise.
232 * include/profile/list: Likewise.
233 * include/profile/map.h: Likewise.
234 * include/profile/multimap.h: Likewise.
235 * include/profile/set.h: Likewise.
236 * include/profile/multiset.h: Likewise.
237 * include/profile/vector: Likewise.
238
239 2012-11-05 Jonathan Wakely <jwakely.gcc@gmail.com>
240
241 * include/profile/forward_list: Update to meet allocator-aware
242 requirements.
243 * include/debug/forward_list: Likewise.
244 * include/debug/vector: Verify allocators are swapped or equal.
245 * include/debug/macros.h (__glibcxx_check_equal_allocs): Define.
246 * include/debug/formatter.h: Add new debug message.
247 * src/c++11/debug.cc: Likewise.
248 * testsuite/23_containers/forward_list/allocator/swap.cc: Do not
249 swap containers with non-propagating, non-equal allocators.
250 * testsuite/23_containers/vector/allocator/swap.cc: Likewise.
251
252 2012-11-05 Benjamin Kosnik <bkoz@redhat.com>
253 Oleg Smolsky <oleg@smolsky.net>
254
255 PR libstdc++/55028
256 * config/abi/pre/gnu-versioned-namespace.ver: Add symbols.
257 * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc: New.
258
259 2012-10-05 François Dumont <fdumont@gcc.gnu.org>
260
261 * include/ext/throw_allocator.h (__throw_value_base): Add move
262 semantic, not throwing.
263 (__throw_value_limit): Likewise.
264 (__throw_value_random): Likewise.
265 * testsuite/util/exception/safety.h: Add validation of C++11
266 methods emplace/emplace_front/emplace_back/emplace_hint.
267 * testsuite/util/testsuite_container_traits.h: Signal emplace
268 support on deque, forward_list, list and vector.
269 * testsuite/23_containers/deque/requirements/exception/
270 propagation_consistent.cc: Remove dg-do run fail.
271
272 2012-11-05 Paolo Carlini <paolo.carlini@oracle.com>
273
274 PR libstdc++/55215
275 * include/bits/random.tcc (mersenne_twister_engine<>::seed(_Sseq&)):
276 Assign state_size to _M_p.
277 * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
278 New.
279 * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
280 Likewise.
281 * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
282 Likewise.
283 * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
284 55215.cc: Likewise.
285 * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
286 Likewise.
287 * testsuite/26_numerics/random/linear_congruential_engine/cons/
288 55215.cc: Likewise.
289
290 2012-11-03 Florian Weimer <fweimer@redhat.com>
291
292 * libsupc++/vec.cc (compute_size): New.
293 (__cxa_vec_new2, __cxa_vec_new3): Use it.
294 * testsuite/18_support/cxa_vec.cc: New.
295
296 2012-11-03 Robert Mason <rbmj@verizon.net>
297
298 * config/os/vxworks/os_defines.h:
299 Keep vxWorks from defining min()/max() as macros
300
301 2012-11-03 Jonathan Wakely <jwakely.gcc@gmail.com>
302
303 * doc/html/*: Regenerate.
304
305 2012-11-02 Gerald Pfeifer <gerald@pfeifer.com>
306
307 * doc/xml/manual/configure.xml: Adjust GNU libc link.
308
309 * doc/xml/manual/debug.xml: Adjust GDB documentation link.
310 Use GCC instead of gcc.
311
312 * doc/xml/manual/prerequisites.xml: Remove detailed reference
313 to binutils downloads.
314
315 2012-11-02 Paolo Carlini <paolo.carlini@oracle.com>
316
317 PR libstdc++/55169
318 * include/bits/random.h: Remove all uses of param().
319 (chi_squared_distribution<>::__generate_impl(_ForwardIterator,
320 _ForwardIterator, _UniformRandomNumberGenerator&)): Declare
321 * include/bits/random.tcc: ... define.
322 * include/ext/random: Remove all uses of param().
323
324 2012-11-02 Gerald Pfeifer <gerald@pfeifer.com>
325
326 * doc/xml/manual/allocator.xml: Update reference to Hoard.
327 Update reference to Berger's OOPSLA 2002 paper.
328
329 2012-11-02 Jonathan Wakely <jwakely.gcc@gmail.com>
330
331 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
332 (StdForwardListPrinter): Likewise.
333
334 2012-11-02 Jonathan Wakely <jwakely.gcc@gmail.com>
335
336 * include/bits/forward_list.h (forward_list(size_type)): Add missing
337 allocator parameter.
338 (_Fwd_list_node_base): Use NSDMI and define constructor as defaulted.
339 (_Fwd_list_node::_M_value): Replace with uninitialized storage.
340 (_Fwd_list_node::_M_valptr()): Define functions to access storage.
341 (_Fwd_list_iterator, _Fwd_list_const_iterator): Use _M_valptr.
342 (_Fwd_list_base::_M_create_node): Only use allocator to construct the
343 element not the node.
344 * include/bits/forward_list.tcc (_Fwd_list_base::_M_erase_after): Only
345 use allocator to destroy the element not the node.
346 * testsuite/23_containers/forward_list/cons/11.cc: Remove unused
347 headers.
348 * testsuite/23_containers/forward_list/cons/12.cc: Likewise.
349 * testsuite/23_containers/forward_list/cons/13.cc: New.
350 * testsuite/23_containers/forward_list/cons/14.cc: New.
351
352 2012-11-02 Gerald Pfeifer <gerald@pfeifer.com>
353
354 * doc/xml/manual/codecvt.xml: Fix reference to Austin Common
355 Standards Revision Group.
356 * doc/xml/manual/messages.xml: Ditto.
357 * doc/xml/manual/using_exceptions.xml: Ditto.
358
359 * doc/xml/manual/messages.xml: Fix reference to GNU gettext.
360
361 * doc/xml/manual/policy_data_structures.xml: Fix reference to
362 STL at SGI.
363 Update reference to COM at Microsoft.
364 Update reference to Worst-case efficient priority queues at ACM.
365
366 2012-11-01 Jonathan Wakely <jwakely.gcc@gmail.com>
367
368 * testsuite/18_support/initializer_list/range_access.cc: Fix copying
369 permission statement.
370 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
371 808590.cc: Likewise.
372 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
373 move_iterators/1.cc: Likewise.
374 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
375 move_iterators/1.cc: Likewise.
376 * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
377 Likewise.
378 * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
379 Likewise.
380 * testsuite/21_strings/basic_string/range_access/char/1.cc: Likewise.
381 * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc:
382 Likewise.
383 * testsuite/23_containers/array/element_access/at_neg.cc: Likewise.
384 * testsuite/23_containers/array/range_access.cc: Likewise.
385 * testsuite/23_containers/deque/capacity/29134-2.cc: Likewise.
386 * testsuite/23_containers/deque/capacity/29134.cc: Likewise.
387 * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: Likewise.
388 * testsuite/23_containers/deque/range_access.cc: Likewise.
389 * testsuite/23_containers/deque/requirements/do_the_right_thing.cc:
390 Likewise.
391 * testsuite/23_containers/forward_list/capacity/1.cc: Likewise.
392 * testsuite/23_containers/forward_list/cons/1.cc: Likewise.
393 * testsuite/23_containers/forward_list/cons/10.cc: Likewise.
394 * testsuite/23_containers/forward_list/cons/11.cc: Likewise.
395 * testsuite/23_containers/forward_list/cons/12.cc: Likewise.
396 * testsuite/23_containers/forward_list/cons/2.cc: Likewise.
397 * testsuite/23_containers/forward_list/cons/3.cc: Likewise.
398 * testsuite/23_containers/forward_list/cons/4.cc: Likewise.
399 * testsuite/23_containers/forward_list/cons/5.cc: Likewise.
400 * testsuite/23_containers/forward_list/cons/6.cc: Likewise.
401 * testsuite/23_containers/forward_list/cons/7.cc: Likewise.
402 * testsuite/23_containers/forward_list/cons/8.cc: Likewise.
403 * testsuite/23_containers/forward_list/cons/9.cc: Likewise.
404 * testsuite/23_containers/forward_list/debug/clear.cc: Likewise.
405 * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
406 Likewise.
407 * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
408 Likewise.
409 * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
410 Likewise.
411 * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
412 Likewise.
413 * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
414 Likewise.
415 * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
416 Likewise.
417 * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
418 Likewise.
419 * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
420 Likewise.
421 * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
422 Likewise.
423 * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
424 Likewise.
425 * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
426 Likewise.
427 * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
428 Likewise.
429 * testsuite/23_containers/forward_list/debug/move_constructor.cc:
430 Likewise.
431 * testsuite/23_containers/forward_list/debug/splice_after.cc: Likewise.
432 * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
433 Likewise.
434 * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
435 Likewise.
436 * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
437 Likewise.
438 * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
439 Likewise.
440 * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
441 Likewise.
442 * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
443 Likewise.
444 * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
445 Likewise.
446 * testsuite/23_containers/forward_list/debug/swap.cc: Likewise.
447 * testsuite/23_containers/forward_list/modifiers/1.cc: Likewise.
448 * testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
449 * testsuite/23_containers/forward_list/modifiers/3.cc: Likewise.
450 * testsuite/23_containers/forward_list/modifiers/4.cc: Likewise.
451 * testsuite/23_containers/forward_list/modifiers/5.cc: Likewise.
452 * testsuite/23_containers/forward_list/modifiers/6.cc: Likewise.
453 * testsuite/23_containers/forward_list/operations/1.cc: Likewise.
454 * testsuite/23_containers/forward_list/operations/2.cc: Likewise.
455 * testsuite/23_containers/forward_list/operations/3.cc: Likewise.
456 * testsuite/23_containers/forward_list/operations/4.cc: Likewise.
457 * testsuite/23_containers/forward_list/operations/5.cc: Likewise.
458 * testsuite/23_containers/forward_list/operations/6.cc: Likewise.
459 * testsuite/23_containers/forward_list/operations/7.cc: Likewise.
460 * testsuite/23_containers/forward_list/range_access.cc: Likewise.
461 * testsuite/23_containers/forward_list/requirements/
462 do_the_right_thing.cc: Likewise.
463 * testsuite/23_containers/list/capacity/1.cc: Likewise.
464 * testsuite/23_containers/list/capacity/1.h: Likewise.
465 * testsuite/23_containers/list/capacity/29134.cc: Likewise.
466 * testsuite/23_containers/list/modifiers/1.cc: Likewise.
467 * testsuite/23_containers/list/modifiers/1.h: Likewise.
468 * testsuite/23_containers/list/modifiers/1_c++0x.cc: Likewise.
469 * testsuite/23_containers/list/modifiers/2.cc: Likewise.
470 * testsuite/23_containers/list/modifiers/2.h: Likewise.
471 * testsuite/23_containers/list/modifiers/3.cc: Likewise.
472 * testsuite/23_containers/list/modifiers/3.h: Likewise.
473 * testsuite/23_containers/list/modifiers/insert/25288.cc: Likewise.
474 * testsuite/23_containers/list/modifiers/insert/25288.h: Likewise.
475 * testsuite/23_containers/list/operations/1.cc: Likewise.
476 * testsuite/23_containers/list/operations/1.h: Likewise.
477 * testsuite/23_containers/list/operations/2.cc: Likewise.
478 * testsuite/23_containers/list/operations/2.h: Likewise.
479 * testsuite/23_containers/list/operations/2_c++0x.cc: Likewise.
480 * testsuite/23_containers/list/operations/3.cc: Likewise.
481 * testsuite/23_containers/list/operations/3.h: Likewise.
482 * testsuite/23_containers/list/operations/3_c++0x.cc: Likewise.
483 * testsuite/23_containers/list/operations/4.cc: Likewise.
484 * testsuite/23_containers/list/operations/4.h: Likewise.
485 * testsuite/23_containers/list/operations/42352.cc: Likewise.
486 * testsuite/23_containers/list/operations/5.cc: Likewise.
487 * testsuite/23_containers/list/operations/5.h: Likewise.
488 * testsuite/23_containers/list/range_access.cc: Likewise.
489 * testsuite/23_containers/list/requirements/do_the_right_thing.cc:
490 Likewise.
491 * testsuite/23_containers/map/capacity/29134.cc: Likewise.
492 * testsuite/23_containers/map/range_access.cc: Likewise.
493 * testsuite/23_containers/multimap/capacity/29134.cc: Likewise.
494 * testsuite/23_containers/multimap/range_access.cc: Likewise.
495 * testsuite/23_containers/multiset/capacity/29134.cc: Likewise.
496 * testsuite/23_containers/multiset/range_access.cc: Likewise.
497 * testsuite/23_containers/set/capacity/29134.cc: Likewise.
498 * testsuite/23_containers/set/range_access.cc: Likewise.
499 * testsuite/23_containers/unordered_map/final_hash.cc: Likewise.
500 * testsuite/23_containers/unordered_map/observers.cc: Likewise.
501 * testsuite/23_containers/unordered_map/range_access.cc: Likewise.
502 * testsuite/23_containers/unordered_map/requirements/52942.cc:
503 Likewise.
504 * testsuite/23_containers/unordered_map/requirements/53067.cc:
505 Likewise.
506 * testsuite/23_containers/unordered_map/requirements/53339.cc:
507 Likewise.
508 * testsuite/23_containers/unordered_multimap/final_hash.cc: Likewise.
509 * testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
510 * testsuite/23_containers/unordered_multimap/range_access.cc: Likewise.
511 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
512 Likewise.
513 * testsuite/23_containers/unordered_multiset/final_hash.cc: Likewise.
514 * testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
515 * testsuite/23_containers/unordered_multiset/range_access.cc: Likewise.
516 * testsuite/23_containers/unordered_set/final_hash.cc: Likewise.
517 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
518 * testsuite/23_containers/unordered_set/observers.cc: Likewise.
519 * testsuite/23_containers/unordered_set/range_access.cc: Likewise.
520 * testsuite/23_containers/unordered_set/requirements/52942.cc:
521 Likewise.
522 * testsuite/23_containers/unordered_set/requirements/53067.cc:
523 Likewise.
524 * testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
525 * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
526 Likewise.
527 * testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.
528 * testsuite/23_containers/vector/capacity/29134.cc: Likewise.
529 * testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
530 * testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: Likewise.
531 * testsuite/23_containers/vector/range_access.cc: Likewise.
532 * testsuite/23_containers/vector/requirements/do_the_right_thing.cc:
533 Likewise.
534 * testsuite/24_iterators/range_access.cc: Likewise.
535 * testsuite/25_algorithms/copy/1.cc: Likewise.
536 * testsuite/25_algorithms/copy/2.cc: Likewise.
537 * testsuite/25_algorithms/copy/3.cc: Likewise.
538 * testsuite/25_algorithms/copy/34595.cc: Likewise.
539 * testsuite/25_algorithms/copy/4.cc: Likewise.
540 * testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
541 * testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
542 * testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
543 * testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
544 * testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
545 * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
546 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
547 Likewise.
548 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
549 Likewise.
550 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
551 Likewise.
552 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
553 Likewise.
554 * testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
555 * testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
556 * testsuite/25_algorithms/copy_n/1.cc: Likewise.
557 * testsuite/25_algorithms/copy_n/2.cc: Likewise.
558 * testsuite/25_algorithms/copy_n/3.cc: Likewise.
559 * testsuite/25_algorithms/copy_n/4.cc: Likewise.
560 * testsuite/25_algorithms/copy_n/50119.cc: Likewise.
561 * testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
562 * testsuite/25_algorithms/fill/4.cc: Likewise.
563 * testsuite/25_algorithms/fill_n/1.cc: Likewise.
564 * testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc:
565 Likewise.
566 * testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc:
567 Likewise.
568 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
569 Likewise.
570 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
571 Likewise.
572 * testsuite/25_algorithms/heap/1.cc: Likewise.
573 * testsuite/25_algorithms/heap/moveable.cc: Likewise.
574 * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
575 * testsuite/25_algorithms/is_heap/1.cc: Likewise.
576 * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
577 * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
578 * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
579 * testsuite/25_algorithms/move/1.cc: Likewise.
580 * testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
581 * testsuite/25_algorithms/move_backward/1.cc: Likewise.
582 * testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
583 * testsuite/25_algorithms/partition/1.cc: Likewise.
584 * testsuite/25_algorithms/partition/moveable.cc: Likewise.
585 * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
586 * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
587 * testsuite/25_algorithms/stable_partition/1.cc: Likewise.
588 * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
589 * testsuite/25_algorithms/stable_partition/pr52822.cc: Likewise.
590 * testsuite/26_numerics/valarray/range_access.cc: Likewise.
591 * testsuite/28_regex/range_access.cc: Likewise.
592 * testsuite/ext/vstring/capacity/29134.cc: Likewise.
593 * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
594 * testsuite/ext/vstring/hash/char/1.cc: Likewise.
595 * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
596 * testsuite/ext/vstring/range_access.cc: Likewise.
597 * testsuite/ext/vstring/requirements/do_the_right_thing.cc: Likewise.
598 * testsuite/performance/25_algorithms/copy_backward_deque_iterators.cc:
599 Likewise.
600 * testsuite/performance/25_algorithms/copy_deque_iterators.cc:
601 Likewise.
602 * testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
603 Likewise.
604 * testsuite/tr1/6_containers/unordered_multimap/capacity/
605 29134-multimap.cc: Likewise.
606 * testsuite/tr1/6_containers/unordered_multiset/capacity/
607 29134-multiset.cc: Likewise.
608 * testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
609 Likewise.
610
611 2012-11-01 François Dumont <fdumont@gcc.gnu.org>
612
613 * include/bits/hashtable_policy.h (__details::_Before_begin<>):
614 New, combine a base node instance and an allocator.
615 * include/bits/hashtable.h (_Hashtable<>::_M_node_allocator): Remove.
616 (_Hashtable<>::_M_before_begin): Rename into _M_bbegin and type
617 modified to __detail::_Before_begin<>.
618 (_Hashtable<>::_M_node_allocator()): New, get the node allocator
619 part of _M_bbegin.
620 (_Hashtable<>::_M_before_begin()): New, get the before begin node
621 part of _M_bbegin.
622 (_Hashtable<>): Adapt to use latter.
623
624 2012-11-01 Jonathan Wakely <jwakely.gcc@gmail.com>
625
626 * include/bits/forward_list.h (forward_list::assign): Dispatch to new
627 functions based on assignability of elements.
628 (forward_list::_M_assign): Add overloaded functions for assigning
629 via assignment or via clearing and insertion.
630 (forward_list::_M_assign_val): Likewise.
631 (forward_list::_M_move_assign(forward_list&&, false_type)): Do not
632 erase elements that are not moved.
633 * include/bits/forward_list.tcc (forward_list::operator=): Call
634 assign() to copy elements.
635 * testsuite/23_containers/forward_list/cons/10.cc: New.
636 * testsuite/23_containers/forward_list/cons/11.cc: New.
637 * testsuite/23_containers/forward_list/cons/12.cc: New.
638
639 2012-10-31 Jonathan Yong <jon_y@users.sourceforge.net>
640
641 * config/os/mingw32-w64/os_defines.h: Do not define anymore
642 _GLIBCXX_HAVE_BROKEN_VSWPRINTF.
643
644 2012-10-31 Jonathan Wakely <jwakely.gcc@gmail.com>
645
646 * include/bits/forward_list.h (forward_list): Adjust comments.
647 (forward_list(const forward_list&, const _Alloc&)): Use
648 _M_range_initialize to copy elements.
649 (forward_list(forward_list&&, const _Alloc&)): Add exception
650 specification.
651 (_Fwd_list_base(const _Fwd_list_base&, const _Node_alloc_type&)):
652 Remove.
653 * include/bits/forward_list.tcc (_Fwd_list_base(const _Fwd_list_base&,
654 const _Node_alloc_type&)): Remove.
655 (_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Fix
656 memory leak when allocators are not equal.
657
658 2012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
659
660 PR libstdc++/55123
661 * include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
662 Do not instantiate allocator with element_type.
663 * testsuite/20_util/shared_ptr/cons/55123.cc: New.
664
665 2012-10-28 Jonathan Wakely <jwakely.gcc@gmail.com>
666
667 PR libstdc++/55041
668 * python/libstdcxx/v6/printers.py (Tr1UnorderedMapPrinter): Update
669 to handle hashtable as member of unordered_map not base class.
670 (Tr1UnorderedSetPrinter): Likewise.
671
672 2012-10-27 François Dumont <fdumont@gcc.gnu.org>
673
674 * include/bits/unordered_map.h (unordered_map<>): Prefer
675 aggregation to inheritance with _Hashtable.
676 (unordered_multimap<>): Likewise.
677 * include/bits/unordered_set.h
678 (unordered_set<>(const unordered_set&)): Use default
679 implementation.
680 (unordered_set<>(unordered_set&&)): Likewise.
681 (unordered_set<>::operator=(const unordered_set&)): Likewise.
682 (unordered_set<>::operator=(unordered_set&&)): Likewise.
683 (unordered_multiset<>(const unordered_multiset&)): Likewise.
684 (unordered_multiset<>(unordered_multiset&&)): Likewise.
685 (unordered_multiset<>::operator=(const unordered_multiset&)):
686 Likewise.
687 (unordered_multiset<>::operator=(unordered_multiset&&)): Likewise.
688 * include/debug/unordered_map (operator==): Adapt.
689 * include/profile/unordered_map (operator==): Adapt.
690
691 2012-10-24 Daniel Krugler <daniel.kruegler@gmail.com>
692
693 * include/std/type_traits (common_type): Implement LWG 2141.
694 * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
695 Update.
696 * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
697 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
698 Likewise.
699 * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
700 Likewise.
701 * testsuite/20_util/common_type/requirements/typedefs-2.cc: Likewise.
702
703 2012-10-24 Haakan Younes <hyounes@google.com>
704 Paolo Carlini <paolo.carlini@oracle.com>
705
706 PR libstdc++/55047
707 * include/bits/random.h (exponential_distribution<>::operator):
708 Fix formula to std::log(result_type(1) - __aurng()).
709 * include/bits/random.tcc: Likewise, everywhere.
710
711 2012-10-23 Yufeng Zhang <yufeng.zhang@arm.com>
712
713 * config/cpu/aarch64/cxxabi_tweaks.h: New file.
714 * configure.host: Enable aarch64.
715
716 2012-10-22 François Dumont <fdumont@gcc.gnu.org>
717
718 * include/bits/unordered_set.h (unordered_set<>): Prefer
719 aggregation to inheritance with _Hashtable.
720 (unordered_multiset<>): Likewise.
721 * include/debug/unordered_set (operator==): Adapt.
722 * include/profile/unordered_set (operator==): Adapt.
723
724 2012-10-22 Yufeng Zhang <yufeng.zhang@arm.com>
725 Jonathan Wakely <jwakely.gcc@gmail.com>
726
727 * doc/xml/manual/configure.xml (--enable-clocale): Document the
728 'newlib' and 'darwin' options. Minor stylistic improvements.
729
730 2012-10-21 François Dumont <fdumont@gcc.gnu.org>
731
732 * include/profile/map.h (map::emplace_hint): Remove invalid
733 parenthesis.
734
735 2012-10-21 Hans-Peter Nilsson <hp@bitrange.com>
736
737 * testsuite/23_containers/bitset/45713.cc: Skip for mmix-*-*.
738 Tweak sizetype-related comment.
739
740 2012-10-20 Jonathan Wakely <jwakely.gcc@gmail.com>
741
742 * include/std/scoped_allocator: Avoid badname.
743
744 2012-10-19 Jonathan Wakely <jwakely.gcc@gmail.com>
745
746 * doc/xml/manual/status_cxx2011.xml: Update.
747
748 2012-10-19 Jonathan Wakely <jwakely.gcc@gmail.com>
749
750 * include/std/scoped_allocator (__outermost_alloc_traits): Define.
751 (scoped_allocator_adaptor::destroy): Use it.
752 (scoped_allocator_adaptor::construct): Likewise. Overload for
753 piecewise construction of std::pair objects.
754 * testsuite/20_util/scoped_allocator/2.cc: New.
755 * doc/xml/manual/status_cxx2011.xml: Update.
756
757 2012-10-18 Jonathan Wakely <jwakely.gcc@gmail.com>
758
759 * include/bits/forward_list.h: Add C++11 allocator support.
760 * include/bits/forward_list.tcc: Likewise.
761 * doc/xml/manual/status_cxx2011.xml: Update.
762 * testsuite/23_containers/forward_list/allocator/copy.cc: New.
763 * testsuite/23_containers/forward_list/allocator/copy_assign.cc: New.
764 * testsuite/23_containers/forward_list/allocator/minimal.cc: New.
765 * testsuite/23_containers/forward_list/allocator/move_assign.cc: New.
766 * testsuite/23_containers/forward_list/allocator/noexcept.cc: New.
767 * testsuite/23_containers/forward_list/allocator/swap.cc: New.
768
769 2012-10-18 François Dumont <fdumont@gcc.gnu.org>
770
771 * include/debug/formatter.h (_Debug_msg_id): Add
772 __msg_valid_load_factor.
773 * include/debug/macros.h (__glibcxx_check_max_load_factor): New.
774 * include/debug/unordered_set
775 (unordered_set<>::max_load_factor(float)): Check max load factor
776 is positive.
777 (unordered_multiset<>::max_load_factor(float)): Likewise.
778 * include/debug/unordered_map
779 (unordered_map<>::max_load_factor(float)): Likewise.
780 (unordered_multimap<>::max_load_factor(float)): Likewise.
781 * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
782 New.
783 * testsuite/23_containers/unordered_multimap/debug/
784 max_load_factor_neg.cc: New.
785 * testsuite/23_containers/unordered_set/debug/max_load_factor_neg.cc:
786 New.
787 * testsuite/23_containers/unordered_multiset/debug/
788 max_load_factor_neg.cc: New.
789
790 2012-10-17 Benjamin Kosnik <bkoz@redhat.com>
791
792 * include/bits/move.h (move_if_noexcept): Mark constexpr.
793 * include/std/array (front, back): Same.
794 * include/std/chrono: Add comment.
795 * include/std/tuple (__tuple_compare): Mark __eq, __less constexpr.
796 (operator ==, <, >, !=, <=, >=): Same.
797 * testsuite/20_util/forward/c_neg.cc: Adjust line numbers.
798 * testsuite/20_util/forward/f_neg.cc: Same.
799 * testsuite/20_util/move_if_noexcept/constexpr.cc: New.
800 * testsuite/20_util/tuple/comparison_operators/constexpr.cc: New.
801 * testsuite/20_util/tuple/creation_functions/constexpr.cc: Add.
802 * testsuite/23_containers/array/element_access/
803 constexpr_element_access.cc: Same.
804 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
805 line numbers.
806 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
807 Same.
808
809 * testsuite/20_util/tuple/comparison_operators/35480_neg.cc:
810 Temporarily add dg-excess-errors.
811
812 2012-10-16 François Dumont <fdumont@gcc.gnu.org>
813
814 * include/debug/formatter.h (_Debug_msg_id): Add
815 __msg_bucket_index_oob.
816 * include/debug/macros.h (__glibcxx_check_bucket_index): New.
817 * include/debug/unordered_set (unordered_set<>::begin(size_type)):
818 Add check on bucket index.
819 (unordered_set<>::begin(size_type) const): Likewise.
820 (unordered_set<>::cbegin(size_type) const): Likewise.
821 (unordered_set<>::end(size_type)): Likewise.
822 (unordered_set<>::end(size_type) const): Likewise.
823 (unordered_set<>::cend(size_type) const): Likewise.
824 (unordered_set<>::bucket_size(size_type)): Likewise.
825 (unordered_multiset<>::begin(size_type)): Likewise.
826 (unordered_multiset<>::begin(size_type) const): Likewise.
827 (unordered_multiset<>::cbegin(size_type) const): Likewise.
828 (unordered_multiset<>::end(size_type)): Likewise.
829 (unordered_multiset<>::end(size_type) const): Likewise.
830 (unordered_multiset<>::cend(size_type) const): Likewise.
831 (unordered_multiset<>::bucket_size(size_type)): Likewise.
832 * include/debug/unordered_map (unordered_map<>::begin(size_type)):
833 Likewise.
834 (unordered_map<>::begin(size_type) const): Likewise.
835 (unordered_map<>::cbegin(size_type) const): Likewise.
836 (unordered_map<>::end(size_type)): Likewise.
837 (unordered_map<>::end(size_type) const): Likewise.
838 (unordered_map<>::cend(size_type) const): Likewise.
839 (unordered_map<>::bucket_size(size_type)): Likewise.
840 (unordered_multimap<>::begin(size_type)): Likewise.
841 (unordered_multimap<>::begin(size_type) const): Likewise.
842 (unordered_multimap<>::cbegin(size_type) const): Likewise.
843 (unordered_multimap<>::end(size_type)): Likewise.
844 (unordered_multimap<>::end(size_type) const): Likewise.
845 (unordered_multimap<>::cend(size_type) const): Likewise.
846 (unordered_multimap<>::bucket_size(size_type)): Likewise.
847 * testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc:
848 New.
849 * testsuite/23_containers/unordered_map/debug/begin1_neg.cc: New.
850 * testsuite/23_containers/unordered_map/debug/begin2_neg.cc: New.
851 * testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: New.
852 * testsuite/23_containers/unordered_map/debug/end1_neg.cc: New.
853 * testsuite/23_containers/unordered_map/debug/end2_neg.cc: New.
854 * testsuite/23_containers/unordered_map/debug/cend_neg.cc: New.
855 * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
856 New.
857 * testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc: New.
858 * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc: New.
859 * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc: New.
860 * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc: New.
861 * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc: New.
862 * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc: New.
863 * testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc:
864 New.
865 * testsuite/23_containers/unordered_set/debug/begin1_neg.cc: New.
866 * testsuite/23_containers/unordered_set/debug/begin2_neg.cc: New.
867 * testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: New.
868 * testsuite/23_containers/unordered_set/debug/end1_neg.cc: New.
869 * testsuite/23_containers/unordered_set/debug/end2_neg.cc: New.
870 * testsuite/23_containers/unordered_set/debug/cend_neg.cc: New.
871 * testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
872 New.
873 * testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc: New.
874 * testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc: New.
875 * testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc: New.
876 * testsuite/23_containers/unordered_multiset/debug/end1_neg.cc: New.
877 * testsuite/23_containers/unordered_multiset/debug/end2_neg.cc: New.
878 * testsuite/23_containers/unordered_multiset/debug/cend_neg.cc: New.
879
880 2012-10-15 Matthias Klose <doko@ubuntu.com>
881
882 * configure.host: Match arm*-*-linux-* for ARM Linux/GNU.
883 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
884 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
885
886 2012-10-15 Pavel Chupin <pavel.v.chupin@intel.com>
887
888 * Makefile.in: Regenerate.
889 * acinclude.m4: Replace code with GCC_AC_THREAD_HEADER use.
890 * configure: Regenerate.
891 * doc/Makefile.in: Regenerate.
892 * include/Makefile.am: Regenerate.
893 * include/Makefile.in: Rename variable.
894 * libsupc++/Makefile.in: Regenerate.
895 * po/Makefile.in: Regenerate.
896 * python/Makefile.in: Regenerate.
897 * src/Makefile.in: Regenerate.
898 * src/c++11/Makefile.in: Regenerate.
899 * src/c++98/Makefile.in: Regenerate.
900 * testsuite/Makefile.in: Regenerate.
901
902 2012-10-14 Jason Merrill <jason@redhat.com>
903
904 PR target/54908
905 * libsupc++/atexit_thread.cc: Rewrite to keep the cleanup list
906 with get/setspecific. Destroy the key on dlclose.
907
908 2012-10-12 Edward Smith-Rowland <3dw4rd@verizon.net>
909
910 * include/ext/random: Add __gnu_cxx::arcsine_distribution<>
911 and __gnu_cxx::hoyt_distribution<> classes.
912 * include/ext/random.tcc: Add out-of-line functions for
913 __gnu_cxx::arcsine_distribution<> and __gnu_cxx::hoyt_distribution<>.
914 * testsuite/ext/random/hoyt_distribution/cons/parms.cc: New file.
915 * testsuite/ext/random/hoyt_distribution/cons/default.cc: New file.
916 * testsuite/ext/random/hoyt_distribution/requirements/
917 explicit_instantiation/1.cc: New file.
918 * testsuite/ext/random/hoyt_distribution/requirements/typedefs.cc:
919 New file.
920 * testsuite/ext/random/hoyt_distribution/operators/inequal.cc: New file.
921 * testsuite/ext/random/hoyt_distribution/operators/equal.cc: New file.
922 * testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
923 New file.
924 * testsuite/ext/random/arcsine_distribution/cons/parms.cc: New file.
925 * testsuite/ext/random/arcsine_distribution/cons/default.cc: New file.
926 * testsuite/ext/random/arcsine_distribution/requirements/
927 explicit_instantiation/1.cc: New file.
928 * testsuite/ext/random/arcsine_distribution/requirements/typedefs.cc:
929 New file.
930 * testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
931 New file.
932 * testsuite/ext/random/arcsine_distribution/operators/equal.cc:
933 New file.
934 * testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
935 New file.
936
937 2012-10-12 Paolo Carlini <paolo.carlini@oracle.com>
938
939 * include/bits/hashtable_policy.h: Revert libstdc++/53067 quick
940 hacks thanks to the resolution of c++/51213.
941
942 2012-10-11 Paolo Carlini <paolo.carlini@oracle.com>
943
944 * testsuite/23_containers/bitset/45713.cc: Tweak.
945
946 2012-10-11 Hans-Peter Nilsson <hp@axis.com>
947
948 PR testsuite/54897
949 * testsuite/23_containers/bitset/45713.cc: Skip for avr*-*-*
950 cris*-*-* h8300*-*-* mcore*-*-* moxie*-*-*.
951
952 2012-10-11 Daniel Krugler <daniel.kruegler@gmail.com>
953
954 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
955 Update / extend.
956 * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
957 Likewise.
958 * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
959 Likewise.
960
961 2012-10-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
962
963 PR libstdc++/54872
964 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11) [!__sun__ && !__svr4__]:
965 Don't export _ZNSt12system_errorC*.
966
967 2012-10-10 Jack Howarth <howarth@bromo.med.uc.edu>
968 Jonathan Wakely <jwakely.gcc@gmail.com>
969
970 PR libstdc++/54847
971 * config/os/bsd/darwin/os_defines.h: Define _GLIBCXX_USE_NANOSLEEP
972 and _GLIBCXX_USE_SCHED_YIELD.
973 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add comment.
974
975 2012-10-10 Mark Kettenis <kettenis@openbsd.org>
976
977 * configure.host (*-*-openbsd*) Set cpu_include_dir.
978 * config/os/bsd/openbsd/ctype_base.h: New file.
979 * config/os/bsd/openbsd/ctype_configure_char.cc: New file.
980 * config/os/bsd/openbsd/ctype_inline.h: New file.
981 * config/os/bsd/openbsd/os_defines.h: New file.
982 * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Use newlib locale model
983 for OpenBSD.
984 * configure: Regenerated.
985
986 2012-10-10 Paolo Carlini <paolo.carlini@oracle.com>
987
988 * include/std/type_traits (__do_common_type_impl): Revert for now
989 LWG 2141-related change.
990 * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
991 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
992 Adjust.
993
994 2012-10-09 Daniel Krugler <daniel.kruegler@gmail.com>
995
996 * include/std/type_traits (common_type): Provide "SFINAE-friendly"
997 implementation.
998 (__success_type, __failure_type): Fix.
999 * include/std/chrono (common_type): Likewise for the chrono::time_point
1000 specialization.
1001 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc: New.
1002 * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
1003 Likewise.
1004 * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
1005 Likewise.
1006 * testsuite/20_util/common_type/requirements/typedefs-1.cc: Adjust wrt
1007 LWG 2141.
1008 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
1009 dg-error line numbers.
1010 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
1011 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
1012 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1013 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1014 Likewise.
1015 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1016
1017 * testsuite/20_util/result_of/sfinae_friendly_1.cc: Trivial stylistic
1018 tweaks.
1019 * testsuite/20_util/result_of/sfinae_friendly_2.cc: Likewise.
1020
1021 2012-10-09 Andrew MacLeod <amacleod@redhat.com>
1022
1023 PR libstdc++/54861
1024 * include/bits/atomic_base.h (atomic_signal_fence): Call
1025 __atomic_signal_fence instead of __atomic_thread_fence.
1026
1027 2012-10-09 Benjamin Kosnik <bkoz@redhat.com>
1028
1029 * testsuite/20_util/specialized_algorithms/uninitialized_copy/808590.cc:
1030 Fix constant value.
1031
1032 2012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
1033
1034 PR libstdc++/54869
1035 * include/ext/random (simd_fast_mersenne_twister_engine): Provide
1036 only for little endian targets.
1037 * include/ext/random.tcc: Likewise.
1038 * config/cpu/i486/opt/ext/opt_random.h: Likewise.
1039 * testsuite/lib/libstdc++.exp (check_v3_target_little_endian): Add.
1040 * testsuite/lib/dg-options.exp (dg-require-little-endian): Add.
1041 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1042 operators/equal.cc: Use the latter.
1043 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1044 operators/serialize.cc: Likewise.
1045 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1046 operators/inequal.cc: Likewise.
1047 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1048 cons/copy.cc: Likewise.
1049 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1050 cons/seed1.cc: Likewise.
1051 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1052 cons/seed2.cc: Likewise.
1053 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1054 cons/default.cc: Likewise.
1055 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1056 cons/seed_seq.cc: Likewise.
1057
1058 2012-10-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1059
1060 PR libstdc++/54754
1061 * include/parallel/compatibility.h: Use atomic built-ins when they are
1062 lock-free.
1063
1064 2012-10-09 Uros Bizjak <ubizjak@gmail.com>
1065
1066 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.7.
1067
1068 2012-10-08 Jason Merrill <jason@redhat.com>
1069
1070 * libsupc++/cxxabi.h: Declare __cxa_thread_atexit.
1071 * libsupc++/atexit_thread.cc: New.
1072 * libsupc++/Makefile.am (nested_exception.lo): Add it.
1073 * config/abi/pre/gnu.ver: Add __cxa_thread_atexit.
1074
1075 2012-10-07 Matthias Klose <doko@ubuntu.com>
1076
1077 * testsuite/28_regex/algorithms/match/basic: Remove empty directory.
1078 * testsuite/28_regex/algorithms/match/extended: Likewise.
1079 * testsuite/28_regex/algorithms/match: Likewise.
1080
1081 2012-10-06 Paolo Carlini <paolo.carlini@oracle.com>
1082
1083 PR c++/52764
1084 * include/c_global/cstdint: Remove __STDC_LIMIT_MACROS and
1085 __STDC_CONSTANT_MACROS related macros.
1086
1087 2012-10-06 Joe Seymour <jseymour@codesourcery.com>
1088
1089 * include/tr2/dynamic_bitset: Fix cxxabi_forced.h include path.
1090
1091 2012-10-05 Benjamin Kosnik <bkoz@redhat.com>
1092
1093 * testsuite/28_regex/algorithms/match: Rename to...
1094 * testsuite/28_regex/algorithms/regex_match: ...this.
1095 * testsuite/28_regex/basic_regex/regex.cc: Rename to...
1096 * testsuite/28_regex/basic_regex/ctors/basic/default.cc: ...this.
1097 * testsuite/util/testsuite_regex.h: New.
1098 * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: New.
1099
1100 2012-10-05 Jakub Jelinek <jakub@redhat.com>
1101
1102 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line
1103 numbers.
1104
1105 2012-10-05 Marc Glisse <marc.glisse@inria.fr>
1106
1107 PR libstdc++/54686
1108 * include/c_global/cstdlib (abs(long long)): Define with
1109 __builtin_llabs when we have long long.
1110 (abs(long)): Use __builtin_labs.
1111 (abs(__int128)): Define when we have __int128.
1112
1113 2012-10-05 Paolo Carlini <paolo.carlini@oracle.com>
1114
1115 * include/c_global/cstdlib: Remove redundant pasto code protected
1116 by __GXX_EXPERIMENTAL_CXX0X__.
1117 * include/c_global/cwctype: Likewise.
1118 * include/c_global/ccomplex: Remove uses of obsolete macro
1119 _GLIBCXX_INCLUDE_AS_TR1.
1120 * include/c_global/cfloat: Likewise.
1121
1122 2012-10-05 Marc Glisse <marc.glisse@inria.fr>
1123
1124 PR libstdc++/54686
1125 * include/c_std/cstdlib (abs(long long)): Define with
1126 __builtin_llabs when we have long long.
1127 (abs(long)): Use __builtin_labs.
1128 (abs(__int128)): Define when we have __int128.
1129 * testsuite/26_numerics/headers/cstdlib/54686.c: New file.
1130
1131 2012-10-03 Paolo Carlini <paolo.carlini@oracle.com>
1132
1133 PR libstdc++/53248
1134 * include/std/array (__array_traits<>): Add.
1135 (array<>): Allow for zero-size arrays of non default-constructible
1136 elements.
1137 * testsuite/23_containers/array/requirements/
1138 non_default_constructible.cc: New.
1139 * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
1140 Adjust.
1141 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
1142 dg-error line numbers.
1143 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1144 Likewise.
1145
1146 2012-10-02 Jonathan Wakely <jwakely.gcc@gmail.com>
1147
1148 PR other/53889
1149 * include/std/mutex (__recursive_mutex_base::~__recursive_mutex_base):
1150 Use __gthread_recursive_mutex_destroy.
1151 (__recursive_mutex_base::_S_destroy): Remove.
1152 (__recursive_mutex_base::_S_destroy_win32): Likewise.
1153 * include/ext/concurrence.h (__recursive_mutex::~__recursive_mutex):
1154 Use __gthread_recursive_mutex_destroy.
1155 (__recursive_mutex::_S_destroy): Remove.
1156 (__recursive_mutex::_S_destroy_win32): Likewise.
1157
1158 2012-10-01 Benjamin Kosnik <bkoz@redhat.com>
1159
1160 * config/abi/pre/gnu-versioned-namespace.ver: Add more
1161 typeinfo/vtable exports.
1162
1163 2012-10-01 Paolo Carlini <paolo.carlini@oracle.com>
1164
1165 PR libstdc++/54757
1166 * include/ext/random (rice_distribution<>::operator()): Use std::hypot
1167 only if _GLIBCXX_USE_C99_MATH_TR1.
1168 * include/ext/random.tcc (rice_distribution<>::__generate_impl):
1169 Likewise.
1170
1171 2012-10-01 Daniel Krugler <daniel.kruegler@gmail.com>
1172
1173 * include/std/type_traits (result_of): Provide "SFINAE-friendly"
1174 (see N3436) implementation.
1175 * testsuite/20_util/result_of/sfinae_friendly_1.cc: New.
1176 * testsuite/20_util/result_of/sfinae_friendly_2.cc: Likewise.
1177 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Tweak
1178 dg-error line numbers.
1179 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1180 Likewise.
1181 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1182
1183 2012-09-30 Benjamin Kosnik <bkoz@redhat.com>
1184
1185 * doc/doxygen/user.cfg.in: Update to doxygen 1.8.2.
1186
1187 2012-09-30 Jonathan Wakely <jwakely.gcc@gmail.com>
1188
1189 * include/ext/ropeimpl.h (__uninitialized_fill_n_a): Fix using
1190 declaration.
1191 * testsuite/ext/rope/5.cc: New.
1192
1193 2012-09-30 Jonathan Wakely <jwakely.gcc@gmail.com>
1194
1195 PR libstdc++/54577
1196 * doc/xml/manual/status_cxx2011.xml: N2350 changes are missing from
1197 sequence containers.
1198 * doc/html/*: Regenerate.
1199
1200 2012-09-29 Jonathan Wakely <jwakely.gcc@gmail.com>
1201
1202 PR libstdc++/34106
1203 * include/parallel/compatibility.h: Remove non-GCC code.
1204
1205 2012-09-28 Benjamin Kosnik <bkoz@redhat.com>
1206
1207 * fragment.am (CONFIG_CXXFLAGS): Remove EXTRA_CXX_FLAGS.
1208 * libsupc++/Makefile.am (LTCXXCOMPILE): Add EXTRA_CXX_FLAGS here.
1209 * src/Makefile.am: Same.
1210 * src/c++98/Makefile.am: Same.
1211 * src/c++11/Makefile.am: Same.
1212 * Makefile.in: Regenerated.
1213 * src/Makefile.am: Same.
1214 * src/c++11/Makefile.in: Same.
1215 * src/c++98/Makefile.in: Same.
1216 * include/Makefile.in: Same.
1217 * po/Makefile.in: Same.
1218 * python/Makefile.in: Same.
1219 * testsuite/Makefile.in: Same.
1220
1221 2012-09-28 Benjamin Kosnik <bkoz@redhat.com>
1222
1223 * src/c++98/Makefile.am: Fixup PARALLEL_FLAGS.
1224
1225 2012-09-28 Benjamin Kosnik <bkoz@redhat.com>
1226
1227 * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Remove ENABLE_PARALLEL.
1228 * include/Makefile.am: Same.
1229 * src/c++98/Makefile.am: Same.
1230 * src/Makefile.am: Same.
1231 * Makefile.in: Regenerated.
1232 * aclocal.m4: Same.
1233 * configure: Same.
1234 * doc/Makefile.in: Same.
1235 * include/Makefile.in: Same.
1236 * libsupc++/Makefile.in: Same.
1237 * po/Makefile.in: Same.
1238 * python/Makefile.in: Same.
1239 * src/Makefile.in: Same.
1240 * testsuite/Makefile.in: Same.
1241 * src/c++11/Makefile.in: Same.
1242 * src/c++98/Makefile.in: Same.
1243
1244 * src/c++98/compatibility-debug_list-2.cc: Update comments.
1245 * src/c++98/compatibility-debug_list.cc: Same.
1246 * src/c++98/compatibility-list-2.cc: Renamed to src/c++98/list-aux-2.cc
1247 * src/c++98/compatibility-list.cc: Renamed to src/c++98/list-aux.cc
1248 * src/c++98/compatibility-parallel_list-2.cc: Renamed to
1249 src/c++98/list_associated-2.cc.
1250 * src/c++98/compatibility-parallel_list.cc: Renamed to
1251 src/c++98/list_associated.cc.
1252
1253 2012-09-27 Paolo Carlini <paolo.carlini@oracle.com>
1254
1255 PR libstdc++/54727
1256 * config/cpu/i486/opt/bits/opt_random.h: Avoid UINT64_C.
1257
1258 2012-09-26 Paolo Carlini <paolo.carlini@oracle.com>
1259
1260 * include/ext/random: Add include checks for c++11 and <cstdint>.
1261
1262 2012-09-26 Benjamin Kosnik <bkoz@redhat.com>
1263
1264 PR libstdc++/54314
1265 * config/abi/pre/gnu.ver: Add vtable exports.
1266 * config/abi/pre/gnu-versioned-namespace.ver: Same.
1267
1268 2012-09-26 Akira Takahashi <faithandbrave@gmail.com>
1269
1270 PR libstdc++/53515
1271 * include/bits/stl_iterator_base_funcs.h (__advance(_InputIterator&,
1272 _Distance, input_iterator_tag)): Add _GLIBCXX_DEBUG_ASSERT(__n >= 0).
1273
1274 2012-09-26 Ulrich Drepper <drepper@gmail.com>
1275
1276 Optimize bulk mode for normal_distribution<double> for SSE3.
1277 * configure.host: Define cpu_opt_bits_random.
1278 * configure.ac: Substitute CPU_OPT_BITS_RANDOM.
1279 * include/Makefile.am (bits_headers): Add ${bits_host_headers}.
1280 (bits_host_headers): Define.
1281 * include/bits/random.tcc: Move __details::_Power_of_2 to...
1282 * include/bits/random.h: ...here.
1283 * include/std/random: Include <bits/opt_random.h>.
1284 * config/cpu/i486/opt/bits/opt_random.h: New file.
1285 * config/cpu/generic/opt/bits/opt_random.h: New file.
1286 * configure: Regenerated.
1287 * Makefile.in: Regenerated.
1288 * aclocal.m4: Regenerated.
1289 * doc/Makefile.in: Regenerated.
1290 * include/Makefile.in: Regenerated.
1291 * libsupc++/Makefile.in: Regenerated.
1292 * po/Makefile.in: Regenerated.
1293 * python/Makefile.in: Regenerated.
1294 * src/Makefile.in: Regenerated.
1295 * src/c++11/Makefile.in: Regenerated.
1296 * src/c++98/Makefile.in: Regenerated.
1297 * testsuite/Makefile.in: Regenerated.
1298
1299 * config/cpu/generic/opt/ext/opt_random.h: Fix comment.
1300
1301 2012-09-25 Paolo Carlini <paolo.carlini@oracle.com>
1302
1303 * doc/xml/manual/status_cxx2011.xml: Update vs PR 44436.
1304
1305 2012-09-24 Edward Smith-Rowland <3dw4rd@verizon.net>
1306
1307 * include/ext/random: Add __gnu_cxx::k_distribution<> class.
1308 * include/ext/random.tcc: Add out-of-line functions for
1309 __gnu_cxx::k_distribution<>.
1310 * testsuite/ext/random/k_distribution/operators/equal.cc: New file.
1311 * testsuite/ext/random/k_distribution/operators/serialize.cc: New file.
1312 * testsuite/ext/random/k_distribution/operators/inequal.cc: New file.
1313 * testsuite/ext/random/k_distribution/cons/parms.cc: New file.
1314 * testsuite/ext/random/k_distribution/cons/default.cc: New file.
1315 * testsuite/ext/random/k_distribution/requirements/typedefs.cc:
1316 New file.
1317 * testsuite/ext/random/k_distribution/requirements/
1318 explicit_instantiation/1.cc: New file.
1319
1320 2012-09-24 François Dumont <fdumont@gcc.gnu.org>
1321
1322 PR libstdc++/44436
1323 * include/bits/stl_tree.h
1324 (_Rb_tree<>::_M_insert_): Take _Base_ptr rather than
1325 _Const_Base_ptr.
1326 (_Rb_tree<>::_M_insert_node): New.
1327 (_Rb_tree<>::_M_get_insert_unique_pos): New, search code of
1328 _M_insert_unique method.
1329 (_Rb_tree<>::_M_insert_unique): Use latter.
1330 (_Rb_tree<>::_M_emplace_unique): New, likewise.
1331 (_Rb_tree<>::_M_get_insert_equal_pos): New, search code of
1332 _M_insert_equal method.
1333 (_Rb_tree<>::_M_insert_equal): Use latter.
1334 (_Rb_tree<>::_M_emplace_equal): New, likewise.
1335 (_Rb_tree<>::_M_get_insert_hint_unique_pos): New, search code of
1336 _M_insert_unique_ method.
1337 (_Rb_tree<>::_M_insert_unique_): Use latter.
1338 (_Rb_tree<>::_M_emplace_hint_unique): New, likewise.
1339 (_Rb_tree<>::_M_get_insert_hint_equal_pos): New, search code of
1340 _M_insert_equal_ method.
1341 (_Rb_tree<>::_M_insert_equal_): Use latter.
1342 (_Rb_tree<>::_M_emplace_hint_equal): New, likewise.
1343 (_Rb_tree<>::_M_insert_lower): Remove first _Base_ptr parameter,
1344 useless as always null.
1345 * include/bits/stl_map.h: Include <tuple> in C++11.
1346 (map<>::operator[](const key_type&)): Use
1347 _Rb_tree<>::_M_emplace_hint_unique in C++11.
1348 (map<>::operator[](key_type&&)): Likewise.
1349 (map<>::emplace): New.
1350 (map<>::emplace_hint): New.
1351 * include/bits/stl_multimap.h (multimap<>::emplace): New.
1352 (multimap<>::emplace_hint): New.
1353 * include/bits/stl_set.h (set<>::emplace): New.
1354 (set<>::emplace_hint): New.
1355 * include/bits/stl_multiset.h (multiset<>::emplace): New.
1356 (multiset<>::emplace_hint): New.
1357 * include/debug/map.h (std::__debug::map<>::emplace): New.
1358 (std::__debug::map<>::emplace_hint): New.
1359 * include/debug/multimap.h (std::__debug::multimap<>::emplace):
1360 New.
1361 (std::__debug::multimap<>::emplace_hint): New.
1362 * include/debug/set.h (std::__debug::set<>::emplace): New.
1363 (std::__debug::set<>::emplace_hint): New.
1364 * include/debug/multiset.h (std::__debug::multiset<>::emplace):
1365 New.
1366 (std::__debug::multiset<>::emplace_hint): New.
1367 * include/profile/map.h (std::__profile::map<>::emplace): New.
1368 (std::__profile::map<>::emplace_hint): New.
1369 * include/profile/multimap.h (std::__profile::multimap<>::emplace):
1370 New.
1371 (std::__profile::multimap<>::emplace_hint): New.
1372 * include/profile/set.h (std::__profile::set<>::emplace): New.
1373 (std::__profile::set<>::emplace_hint): New.
1374 * include/profile/multiset.h (std::__profile::multiset<>::emplace):
1375 New.
1376 (std::__profile::multiset<>::emplace_hint): New.
1377 * testsuite/util/testsuite_container_traits.h: Signal that emplace
1378 and emplace_hint are available on std::map, std::multimap,
1379 std::set and std::multiset in C++11.
1380 * testsuite/23_containers/map/operators/2.cc: New.
1381 * testsuite/23_containers/map/modifiers/emplace/1.cc: New.
1382 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: New.
1383 * testsuite/23_containers/set/modifiers/emplace/1.cc: New.
1384 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: New.
1385
1386 2012-09-24 François Dumont <fdumont@gcc.gnu.org>
1387
1388 * testsuite/performance/23_containers/insert_erase/41975.cc: Use
1389 __uset_hashtable rather than removed __unordered_set.
1390
1391 2012-09-23 Paolo Carlini <paolo.carlini@oracle.com>
1392
1393 Revert:
1394 2012-09-21 Paolo Carlini <paolo.carlini@oracle.com>
1395
1396 * include/bits/stl_algobase.h (max, min): Use conditional operator.
1397
1398 2012-09-23 Uros Bizjak <ubizjak@gmail.com>
1399
1400 PR libstdc++/54675
1401 * include/ext/random: Avoid the badname __alpha (and, for
1402 consistency, __mu, __nu, __sigma and __omega too).
1403 * include/bits/random.tcc: Likewise.
1404
1405 2012-09-21 Edward Smith-Rowland <3dw4rd@verizon.net>
1406
1407 * include/ext/random: Add __gnu_cxx::pareto_distribution<> class.
1408 * include/ext/random.tcc: Add out-of-line functions for
1409 __gnu_cxx::pareto_distribution<>.
1410 * testsuite/ext/random/pareto_distribution/operators/equal.cc: New file.
1411 * testsuite/ext/random/pareto_distribution/operators/serialize.cc:
1412 New file.
1413 * testsuite/ext/random/pareto_distribution/operators/inequal.cc:
1414 New file.
1415 * testsuite/ext/random/pareto_distribution/cons/parms.cc: New file.
1416 * testsuite/ext/random/pareto_distribution/cons/default.cc: New file.
1417 * testsuite/ext/random/pareto_distribution/requirements/typedefs.cc:
1418 New file.
1419 * testsuite/ext/random/pareto_distribution/requirements/
1420 explicit_instantiation/1.cc: New file.
1421
1422 2012-09-21 Paolo Carlini <paolo.carlini@oracle.com>
1423
1424 * include/bits/stl_algobase.h (max, min): Use conditional operator.
1425
1426 2012-09-18 Benjamin Kosnik <bkoz@redhat.com>
1427
1428 PR libstdc++/28811
1429 PR libstdc++/54482
1430 * configure.ac (glibcxx_lt_pic_flag,
1431 glibcxx_compiler_pic_flag,
1432 glibcxx_compiler_shared_flag): New. Use them.
1433 (lt_prog_compiler_pic_CXX): Set via glibcxx_*_flag(s) above.
1434 (pic_mode): Set to default.
1435 (PIC_CXXFLAGS): Remove.
1436 * Makefile.am (PICFLAG, PICFLAG_FOR_TARGET): Remove. Comment.
1437 * libsupc++/Makefile.am: Use glibcxx_ld_pic_flag and
1438 glibcxx_compiler_shared_flag. Comment.
1439 * src/c++11/Makefile.am: Same.
1440 * src/c++98/Makefile.am: Same.
1441 * src/Makefile.am: Use glibcxx_compiler_pic_flag.
1442
1443 * Makefile.in: Regenerated.
1444 * aclocal.m4: Same.
1445 * configure: Same.
1446 * doc/Makefile.in: Same.
1447 * include/Makefile.in: Same.
1448 * libsupc++/Makefile.in: Same.
1449 * po/Makefile.in: Same.
1450 * python/Makefile.in: Same.
1451 * src/Makefile.in: Same.
1452 * src/c++11/Makefile.in: Same.
1453 * src/c++98/Makefile.in: Same.
1454 * testsuite/Makefile.in: Same.
1455
1456 * src/c++11/compatibility-atomic-c++0x.cc: Use
1457 _GLIBCXX_SHARED instead of PIC to designate shared-only
1458 code blocks.
1459 * src/c++11/compatibility-c++0x.cc: Same.
1460 * src/c++11/compatibility-thread-c++0x.cc: Same.
1461 * src/c++98/compatibility-list-2.cc: Same.
1462 * src/c++98/compatibility.cc: : Same.
1463
1464 * testsuite/17_intro/shared_with_static_deps.cc: New.
1465
1466 * doc/xml/manual/build_hacking.xml: Separate configure from
1467 make/build issues, add build details.
1468
1469 2012-09-18 Edward Smith-Rowland <3dw4rd@verizon.net>
1470
1471 * include/ext/random: Add __gnu_cxx::nakagami_distribution<> class.
1472 * include/ext/random.tcc: Add out-of-line functions for
1473 __gnu_cxx::nakagami_distribution<>.
1474 * testsuite/ext/random/nakagami_distribution/operators/equal.cc:
1475 New file.
1476 * testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
1477 New file.
1478 * testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
1479 New file.
1480 * testsuite/ext/random/nakagami_distribution/cons/parms.cc: New file.
1481 * testsuite/ext/random/nakagami_distribution/cons/default.cc: New file.
1482 * testsuite/ext/random/nakagami_distribution/requirements/typedefs.cc:
1483 New file.
1484 * testsuite/ext/random/nakagami_distribution/requirements/
1485 explicit_instantiation/1.cc: New file.
1486
1487 2012-09-18 Paolo Carlini <paolo.carlini@oracle.com>
1488
1489 PR libstdc++/54612
1490 * include/ext/random.tcc (operator==
1491 (const __gnu_cxx::simd_fast_mersenne_twister_engine<>&,
1492 const __gnu_cxx::simd_fast_mersenne_twister_engine<>&)): Fix
1493 state_size use.
1494 * config/cpu/i486/opt/ext/opt_random.h: Guard with __SSE2__.
1495
1496 2012-09-17 Ulrich Drepper <drepper@gmail.com>
1497
1498 * configure.ac: Substitute CPU_OPT_EXT_RANDOM.
1499 * configure.host: Define cpu_opt_ext_random to location of the
1500 optimized version of <ext/random>.
1501 * include/Makefile.am (ext_headers): Add ${ext_host_headers}.
1502 (ext_host_headers): Define.
1503 * include/ext/random (simd_fast_mersenne_twister_engine<>
1504 ::operator==): Don't define function here.
1505 * include/ext/random.tcc (simd_fast_mersenne_twister_engine): Don't
1506 define code using SSE2 here. Define generic code only if
1507 _GLIBCXX_OPT_HAVE_RANDOM_SFMT_GEN_READ is not defined.
1508 (simd_fast_mersenne_twister_engine<>
1509 ::operator==): Define here if
1510 _GLIBCXX_OPT_HAVE_RANDOM_SFMT_OPERATOREQUAL is not defined.
1511 * config/cpu/generic/opt/ext/opt_random.h: New file.
1512 * config/cpu/i486/opt/ext/opt_random.h: New file.
1513 * libsupc++/Makefile.in: Regenerated.
1514 * testsuite/Makefile.in: Regenerated.
1515 * po/Makefile.in: Regenerated.
1516 * configure: Regenerated.
1517 * Makefile.in: Regenerated.
1518 * doc/Makefile.in: Regenerated.
1519 * aclocal.m4: Regenerated.
1520 * python/Makefile.in: Regenerated.
1521 * include/Makefile.in: Regenerated.
1522 * src/c++98/Makefile.in: Regenerated.
1523 * src/c++11/Makefile.in: Regenerated.
1524 * src/Makefile.in: Regenerated.
1525
1526 2012-09-16 Edward Smith-Rowland <3dw4rd@verizon.net>
1527
1528 * include/ext/random.tcc (__gnu_cxx::rice_distribution<>
1529 ::__generate_impl): Remove bogus _Adaptor usage.
1530
1531 2012-09-16 Paolo Carlini <paolo.carlini@oracle.com>
1532
1533 * include/ext/random (rice_distribution<>::operator==): Change
1534 inline friend definition to non-template.
1535 * testsuite/ext/random/rice_distribution/requirements/
1536 explicit_instantiation/1.cc: New.
1537
1538 * testsuite/26_numerics/random/normal_mv_distribution: Move...
1539 * testsuite/ext/random/normal_mv_distribution: ... here.
1540 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine:
1541 Move...
1542 * testsuite/ext/random/simd_fast_mersenne_twister_engine: ... here.
1543 * testsuite/26_numerics/random/beta_distribution: Move...
1544 * testsuite/ext/random/beta_distribution: ... here.
1545 * testsuite/26_numerics/random/rice_distribution: Move...
1546 * testsuite/ext/random/rice_distribution: ... here.
1547
1548 2012-09-14 Edward Smith-Rowland <3dw4rd@verizon.net>
1549
1550 * include/ext/random: Add __gnu_cxx::rice_distribution<> class.
1551 * include/ext/random.tcc: Add out-of-line functions for
1552 __gnu_cxx::rice_distribution<>.
1553 * testsuite/26_numerics/random/rice_distribution/
1554 operators/equal.cc: New file.
1555 * testsuite/26_numerics/random/rice_distribution/
1556 operators/serialize.cc: New file.
1557 * testsuite/26_numerics/random/rice_distribution/
1558 operators/inequal.cc: New file.
1559 * testsuite/26_numerics/random/rice_distribution/
1560 cons/parms.cc: New file.
1561 * testsuite/26_numerics/random/rice_distribution/
1562 cons/default.cc: New file.
1563 * testsuite/26_numerics/random/rice_distribution/
1564 requirements/typedefs.cc: New file.
1565
1566 2012-09-14 David Edelsohn <dje.gcc@gmail.com>
1567
1568 * configure: Regenerated.
1569
1570 2012-09-14 Jonathan Wakely <jwakely.gcc@gmail.com>
1571 H.J. Lu <hongjiu.lu@intel.com>
1572
1573 PR libstdc++/54576
1574 * src/c++11/random.cc: Check if _GLIBCXX_USE_C99_STDINT_TR1 is defined.
1575
1576 2012-09-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1577
1578 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Define.
1579 * configure.ac: Call GLIBCXX_CHECK_ASSEMBLER_HWCAP.
1580 * fragment.am (CONFIG_CXXFLAGS): Add $(HWCAP_FLAGS).
1581 * configure: Regenerate.
1582 * Makefile.in: Regenerate.
1583 * doc/Makefile.in: Regenerate.
1584 * include/Makefile.in: Regenerate.
1585 * libsupc++/Makefile.in: Regenerate.
1586 * po/Makefile.in: Regenerate.
1587 * python/Makefile.in: Regenerate.
1588 * src/Makefile.in: Regenerate.
1589 * src/c++11/Makefile.in: Regenerate.
1590 * src/c++98/Makefile.in: Regenerate.
1591 * testsuite/Makefile.in: Regenerate.
1592
1593 2012-09-11 Jakub Jelinek <jakub@redhat.com>
1594
1595 PR libstdc++/54172
1596 * libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last
1597 argument of the first __atomic_compare_exchange_n.
1598
1599 2012-09-10 Sebastian Huber <sebastian.huber@embedded-brains.de>
1600 Jonathan Wakely <jwakely.gcc@gmail.com>
1601
1602 PR libstdc++/43852
1603 * acinclude.m4 (GLIBCXX_ENABLE_VERBOSE): Define.
1604 * configure.ac (GLIBCXX_ENABLE_VERBOSE): Use it.
1605 * config.h.in: Regenerate.
1606 * configure: Likewise.
1607 * libsupc++/eh_term_handler.cc (_GLIBCXX_VERBOSE): Check new macro.
1608 * libsupc++/pure.cc (_GLIBCXX_VERBOSE): Likewise.
1609 * doc/xml/manual/configure.xml (--disable-libstdcxx-verbose): Document.
1610 * doc/html/manual/configure.html: Regenerate.
1611
1612 2012-09-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1613
1614 PR bootstrap/54419
1615 * acinclude.m4 (GLIBCXX_CHECK_X86_RDRAND): Remove stray character.
1616 * configure: Regenerated.
1617
1618 2012-09-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1619
1620 PR libstdc++/54388
1621 * include/std/array (array::at() const): Ensure lvalue result.
1622 * testsuite/23_containers/array/element_access/54388.cc: New.
1623 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
1624 dg-error line numbers.
1625 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1626 Likewise.
1627
1628 2012-09-09 Ulrich Drepper <drepper@gmail.com>
1629 Dominique d'Humieres <dominiq@lps.ens.fr>
1630 Jack Howarth <howarth@bromo.med.uc.edu>
1631
1632 PR bootstrap/54419
1633 * acinclude.m4: Define GLIBCXX_CHECK_X86_RDRAND.
1634 * configure.ac: Use GLIBCXX_CHECK_X86_RDRAND to test for rdrand
1635 support in assembler.
1636 * src/c++11/random.cc (__x86_rdrand): Depend on _GLIBCXX_X86_RDRAND.
1637 (random_device::_M_init): Likewise.
1638 (random_device::_M_getval): Likewise.
1639 * configure: Regenerated.
1640 * config.h.in: Regenerated.
1641
1642 2012-09-09 Ulrich Drepper <drepper@gmail.com>
1643
1644 * src/c++11/random.cc (random_device::_M_init): Use new macro
1645 signature_INTEL_ebx to check for Intel processors.
1646
1647 2012-09-06 Thiago Macieira <thiago.macieira@intel.com>
1648
1649 PR libstdc++/54172
1650 * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if
1651 we detect that another thread has had success. Don't compare_exchange
1652 from a finished state back to a waiting state. Comment.
1653
1654 2012-09-05 François Dumont <fdumont@gcc.gnu.org>
1655
1656 PR libstdc++/54296
1657 * include/bits/hashtable.h (_M_erase(size_type, __node_base*,
1658 __node_type*)): New.
1659 (erase(const_iterator)): Use latter.
1660 (_M_erase(std::true_type, const key_type&)): New, likewise.
1661 (_M_erase(std::false_type, const key_type&)): New. Find all nodes
1662 matching the key before deallocating them so that the key doesn't
1663 get invalidated.
1664 (erase(const key_type&)): Use the new member functions.
1665 * testsuite/23_containers/unordered_map/erase/54296.cc: New.
1666 * testsuite/23_containers/unordered_multimap/erase/54296.cc: New.
1667
1668 2012-09-05 Ulrich Drepper <drepper@gmail.com>
1669
1670 * src/c++11/random.cc (random_device::_M_init): Check whether cpuid
1671 instruction is available by using __get_cpuid_max.
1672
1673 * include/ext/random.tcc (__gnu_cxx:normal_mv_distribution<>)
1674 (operator()): Use __generate() function of _M_nd.
1675
1676 * include/ext/random: Add __gnu_cxx:normal_mv_distribution<> class.
1677 * include/ext/random.tccAdd out-of-line functions for
1678 __gnu_cxx::normal_mv_distribution<>.
1679 * testsuite/26_numerics/random/normal_mv_distribution/
1680 operators/equal.cc: New file.
1681 * testsuite/26_numerics/random/normal_mv_distribution/
1682 operators/serialize.cc: New file.
1683 * testsuite/26_numerics/random/normal_mv_distribution/
1684 operators/inequal.cc: New file.
1685 * testsuite/26_numerics/random/normal_mv_distribution/
1686 cons/default.cc: New file.
1687 * testsuite/26_numerics/random/normal_mv_distribution/
1688 cons/parms.cc: New file.
1689 * testsuite/26_numerics/random/normal_mv_distribution/
1690 requirements/explicit_instantiation/1.cc: New file.
1691 * testsuite/26_numerics/random/normal_mv_distribution/
1692 requirements/typedefs.cc: New file.
1693
1694 2012-09-04 Ulrich Drepper <drepper@gmail.com>
1695
1696 * include/ext/random: Add __gnu_cxx::beta_distribution<> class.
1697 * include/ext/random.tcc: Add out-of-line functions for
1698 __gnu_cxx::beta_distribution<>.
1699 * testsuite/26_numerics/random/beta_distribution/
1700 operators/equal.cc: New file.
1701 * testsuite/26_numerics/random/beta_distribution/
1702 operators/serialize.cc: New file.
1703 * testsuite/26_numerics/random/beta_distribution/
1704 operators/inequal.cc: New file.
1705 * testsuite/26_numerics/random/beta_distribution/
1706 cons/parms.cc: New file.
1707 * testsuite/26_numerics/random/beta_distribution/
1708 cons/default.cc: New file.
1709 * testsuite/26_numerics/random/beta_distribution/
1710 requirements/typedefs.cc: New file.
1711 * testsuite/26_numerics/random/beta_distribution/
1712 requirements/explicit_instantiation/1.cc: New file.
1713
1714 2012-09-04 Steven Bosscher <steven@gcc.gnu.org>
1715
1716 PR bootstrap/54453
1717 * include/Makefile.am: Fix regex.
1718 * include/Makefile.in: Regenerate.
1719
1720 2012-08-30 Benjamin Kosnik <bkoz@redhat.com>
1721
1722 PR libstdc++/54005 continued
1723 * include/std/atomic: Use __atomic_lock_free with NULL.
1724 * include/bits/atomic_base.h: Same.
1725
1726 2012-08-30 Ulrich Drepper <drepper@gmail.com>
1727
1728 * include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]:
1729 Remove 'return' from constructor.
1730
1731 2012-08-30 Benjamin Kosnik <bkoz@redhat.com>
1732
1733 * testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.
1734
1735 2012-08-29 Ulrich Drepper <drepper@gmail.com>
1736
1737 * include/bits/random.h (random_device): Move implementation to...
1738 * src/c++11/random.cc: ...here. New file.
1739 * config/abi/pre/gnu.ver: Add new version GLIBCXX_3.4.18. Export
1740 std::random_device::* symbols.
1741 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Generated.
1742 * src/c++11/Makefile.am (sources): Add random.cc.
1743 * src/c++11/Makefile.in: Regenerated.
1744
1745 Add simd_fast_mersenne_twister_engine class.
1746 * include/ext/random: New file.
1747 * include/ext/random.tcc: New file.
1748 * include/Makefile.am (ext_headers): Add random and random.tcc.
1749 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1750 operators/inequal.cc: New file.
1751 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1752 operators/equal.cc: New file.
1753 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1754 operators/serialize.cc: New file.
1755 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1756 cons/seed2.cc: New file.
1757 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1758 cons/default.cc: New file.
1759 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1760 cons/seed_seq.cc: New file.
1761 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1762 cons/copy.cc: New file.
1763 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1764 cons/seed1.cc: New file.
1765
1766 2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
1767
1768 PR libstdc++/54102, part 2
1769 * doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
1770 * doc/Makefile.in: Regenerate.
1771 * doc/html/*: Same.
1772
1773 2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
1774
1775 * doc/html/*: Regenerate.
1776
1777 2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
1778
1779 PR libstdc++/54102
1780 * doc/xsl/customization.xsl.in: New.
1781 * configure.ac: Output local copy of customization xsl.
1782 * doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
1783 (stamp-html-docbook): Set stringparam to UTF-8.
1784 * Makefile.in: Regenerated.
1785 * configure: Same.
1786 * doc/Makefile.in: Same.
1787
1788 2012-08-27 Ulrich Drepper <drepper@gmail.com>
1789
1790 Add interfaces to retrieve random numbers in bulk.
1791 * include/bits/random.h (uniform_int_distribution<>): Add __generate
1792 and __generate_impl functions.
1793 (uniform_real_distribution<>): Likewise.
1794 (bernoulli_distribution): Likewise.
1795 (geometric_distribution<>): Likewise.
1796 (negative_binomial_distribution<>): Likewise.
1797 (poisson_distribution<>): Likewise.
1798 (exponential_distribution<>): Likewise.
1799 (normal_distribution<>): Likewise.
1800 (lognormal_distribution<>): Likewise.
1801 (chi_squared_distribution<>): Likewise.
1802 (cauchy_distribution<>): Likewise.
1803 (fisher_f_distribution<>): Likewise.
1804 (student_t_distribution<>): Likewise.
1805 (gamma_distribution<>): Likewise.
1806 (weibull_distribution<>): Likewise.
1807 (extreme_value_distribution<>): Likewise.
1808 (discrete_distribution<>): Likewise.
1809 (piecewise_constant_distribution<>): Likewise.
1810 (piecewise_linear_distribution<>): Likewise.
1811 * include/bits/random.tcc (__detail::_Power_of_2): New function.
1812 (uniform_int_distribution<>::__generate_impl): New function.
1813 (uniform_real_distribution<>::__generate_impl): New function.
1814 (bernoulli_distribution::__generate_impl): New function.
1815 (geometric_distribution<>::__generate_impl): New function.
1816 (negative_binomial_distribution<>::__generate_impl): New function.
1817 (poisson_distribution<>::__generate_impl): New function.
1818 (exponential_distribution<>::__generate_impl): New function.
1819 (normal_distribution<>::__generate_impl): New function.
1820 (lognormal_distribution<>::__generate_impl): New function.
1821 (chi_squared_distribution<>::__generate_impl): New function.
1822 (cauchy_distribution<>::__generate_impl): New function.
1823 (fisher_f_distribution<>::__generate_impl): New function.
1824 (student_t_distribution<>::__generate_impl): New function.
1825 (gamma_distribution<>::__generate_impl): New function.
1826 (weibull_distribution<>::__generate_impl): New function.
1827 (extreme_value_distribution<>::__generate_impl): New function.
1828 (discrete_distribution<>::__generate_impl): New function.
1829 (piecewise_constant_distribution<>::__generate_impl): New function.
1830 (piecewise_linear_distribution<>::__generate_impl): New function.
1831
1832 2012-08-22 Ulrich Drepper <drepper@gmail.com>
1833
1834 * include/bits/random.h (mersenne_twister_engine): Don't inline
1835 discard here. New member function _M_gen_rand.
1836 * include/bits/random.tcc (mersenne_twister_engine<>::_M_gen_rand):
1837 New function. Extracted from operator().
1838 (mersenne_twister_engine<>::discard): New implementation which
1839 skips in large steps.
1840 (mersenne_twister_engine<>::operator()): Use _M_gen_rand.
1841
1842 2012-08-26 Marc Glisse <marc.glisse@inria.fr>
1843 Paolo Carlini <paolo.carlini@oracle.com>
1844
1845 PR libstdc++/54376
1846 * include/bits/random.h (lognormal_distribution<>::operator==,
1847 gamma_distribution<>::operator==,
1848 chi_squared_distribution<>::operator==,
1849 fisher_f_distribution<>::operator==,
1850 student_t_distribution<>::operator==,
1851 binomial_distribution<>::operator==,
1852 negative_binomial_distribution<>::operator==,
1853 poisson_distribution<>::operator==): Change inline friend definition
1854 to non-template.
1855 * testsuite/26_numerics/random/binomial_distribution/requirements/
1856 explicit_instantiation/1.cc: New.
1857 * testsuite/26_numerics/random/cauchy_distribution/requirements/
1858 explicit_instantiation/1.cc: Likewise.
1859 * testsuite/26_numerics/random/chi_squared_distribution/
1860 requirements/explicit_instantiation/1.cc: Likewise.
1861 * testsuite/26_numerics/random/discrete_distribution/requirements/
1862 explicit_instantiation/1.cc: Likewise.
1863 * testsuite/26_numerics/random/exponential_distribution/
1864 requirements/explicit_instantiation/1.cc: Likewise.
1865 * testsuite/26_numerics/random/extreme_value_distribution/
1866 requirements/explicit_instantiation/1.cc: Likewise.
1867 * testsuite/26_numerics/random/fisher_f_distribution/requirements/
1868 explicit_instantiation/1.cc: Likewise.
1869 * testsuite/26_numerics/random/gamma_distribution/requirements/
1870 explicit_instantiation/1.cc: Likewise.
1871 * testsuite/26_numerics/random/geometric_distribution/requirements/
1872 explicit_instantiation/1.cc: Likewise.
1873 * testsuite/26_numerics/random/lognormal_distribution/requirements/
1874 explicit_instantiation/1.cc: Likewise.
1875 * testsuite/26_numerics/random/negative_binomial_distribution/
1876 requirements/explicit_instantiation/1.cc: Likewise.
1877 * testsuite/26_numerics/random/normal_distribution/requirements/
1878 explicit_instantiation/1.cc: Likewise.
1879 * testsuite/26_numerics/random/piecewise_constant_distribution/
1880 requirements/explicit_instantiation/1.cc: Likewise.
1881 * testsuite/26_numerics/random/piecewise_linear_distribution/
1882 requirements/explicit_instantiation/1.cc: Likewise.
1883 * testsuite/26_numerics/random/poisson_distribution/requirements/
1884 explicit_instantiation/1.cc: Likewise.
1885 * testsuite/26_numerics/random/student_t_distribution/requirements/
1886 explicit_instantiation/1.cc: Likewise.
1887 * testsuite/26_numerics/random/uniform_int_distribution/
1888 requirements/explicit_instantiation/1.cc: Likewise.
1889 * testsuite/26_numerics/random/uniform_real_distribution/
1890 requirements/explicit_instantiation/1.cc: Likewise.
1891 * testsuite/26_numerics/random/weibull_distribution/requirements/
1892 explicit_instantiation/1.cc: Likewise.
1893
1894 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1895
1896 * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
1897
1898 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1899
1900 PR libstdc++/54297
1901 * src/c++11/future.cc (~_Async_state_common): Move to...
1902 * src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
1903 Here.
1904 (_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
1905 * include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.
1906
1907 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1908 Geoff Romer <gromer@google.com>
1909
1910 PR libstdc++/54351
1911 * include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
1912 reset().
1913 (unique_ptr<T[]>::~unique_ptr()): Likewise.
1914 * testsuite/20_util/unique_ptr/54351.cc: New.
1915 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
1916 line numbers.
1917
1918 2012-08-25 Jonathan Wakely <jwakely.gcc@gmail.com>
1919
1920 PR libstdc++/54297
1921 * include/std/future (~_Async_state_impl): Join thread before
1922 derived class members are destroyed.
1923 (~_Async_state_common): Only define non-trivial destructor when
1924 included from future.cc for ABI compatibility reasons.
1925 * src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
1926 * testsuite/30_threads/async/54297.cc: New.
1927
1928 2012-08-25 Jonathan Wakely <jwakely.gcc@gmail.com>
1929
1930 PR libstdc++/54248
1931 * include/bits/concept_check.h: Replace references to boost
1932 namespace.
1933
1934 2012-08-23 Jonathan Wakely <jwakely.gcc@gmail.com>
1935
1936 PR libstdc++/54354
1937 * doc/xml/manual/status_cxx2011.xml: Note missing manipulators.
1938 * doc/html/*: Regenerate.
1939
1940 2012-08-15 Tom Tromey <tromey@redhat.com>
1941
1942 * testsuite/libstdc++-prettyprinters/cxx11.cc (struct datum):
1943 New.
1944 (global): New global.
1945 (main): Add test for unique_ptr.
1946 * python/libstdcxx/v6/printers.py
1947 (UniquePointerPrinter.to_string): Extract the pointer and also
1948 print its type.
1949
1950 2012-08-13 David Adler <d.adler.s@gmail.com>
1951
1952 PR libstdc++/54185
1953 * src/c++11/condition_variable.cc (condition_variable): Always
1954 destroy native type in destructor.
1955 * testsuite/30_threads/condition_variable/54185.cc: New.
1956
1957 2012-08-13 François Dumont <fdumont@gcc.gnu.org>
1958 Ollie Wild <aaw@google.com>
1959
1960 * include/bits/hashtable.h
1961 (_Hashtable<>_M_insert_multi_node(hash_code, node_type*)): New.
1962 (_Hashtable<>_M_insert(_Args&&, false_type)): Use latter.
1963 (_Hashtable<>::_M_emplace(false_type, _Args&&...)): Likewise.
1964 (_Hashtable<>::_M_insert_bucket): Replace by ...
1965 (_Hashtable<>::_M_insert_unique_node(size_type, hash_code, node_type*)):
1966 ... this, new.
1967 (_Hashtable<>::_M_insert(_Args&&, true_type)): Use latter.
1968 (_Hashtable<>::_M_emplace(true_type, _Args&&...)): Likewise.
1969 * include/bits/hashtable_policy.h (_Map_base<>::operator[]): Use
1970 latter, emplace the value_type rather than insert.
1971 * include/std/unordered_map: Include tuple.
1972 * include/std/unordered_set: Likewise.
1973 * testsuite/util/testsuite_counter_type.h: New.
1974 * testsuite/23_containers/unordered_map/operators/2.cc: New.
1975
1976 2012-08-13 Marc Glisse <marc.glisse@inria.fr>
1977
1978 PR libstdc++/54112
1979 * include/c_compatibility/complex.h: Undefine complex, always
1980 include system's complex.h if present.
1981 * testsuite/26_numerics/complex/c99.cc: New testcase.
1982 * testsuite/17_intro/headers/c++1998/complex.cc: Likewise.
1983 * doc/xml/manual/numerics.xml: Document it.
1984
1985 2012-08-12 Jonathan Wakely <jwakely.gcc@gmail.com>
1986
1987 PR libstdc++/52681
1988 * src/c++11/thread.cc (thread::_M_start_thread): Improve error text
1989 when threads are not enabled.
1990
1991 2012-08-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1992
1993 * acinclude.m4: Update references to final C++11 standard.
1994 * include/bits/shared_ptr.h: Likewise.
1995 * include/bits/shared_ptr_base.h: Likewise.
1996 * include/bits/unique_ptr.h: Likewise.
1997 * include/std/chrono: Likewise.
1998 * include/std/thread: Likewise.
1999
2000 2012-08-07 Benjamin Kosnik <bkoz@redhat.com>
2001
2002 PR libstdc++/54005
2003 * include/std/atomic: Use __atomic_always_lock_free.
2004 * include/bits/atomic_base.h: Same.
2005
2006 2012-08-06 Paolo Carlini <paolo.carlini@oracle.com>
2007
2008 * testsuite/decimal/mixed-mode-cmp_neg.cc: Add test variable; minor
2009 tweaks.
2010 * testsuite/decimal/unary-arith.cc: Likewise.
2011 * testsuite/decimal/ctor.cc: Likewise.
2012 * testsuite/decimal/conversion-to-integral.cc: Likewise.
2013 * testsuite/decimal/make-decimal.cc: Likewise.
2014 * testsuite/decimal/comparison.cc: Likewise.
2015 * testsuite/decimal/incdec-memfunc.cc: Likewise.
2016 * testsuite/decimal/conversion-to-generic-float.cc: Likewise.
2017 * testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
2018 * testsuite/decimal/cast_neg.cc: Likewise.
2019 * testsuite/decimal/incdec.cc: Likewise.
2020 * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
2021 * testsuite/decimal/binary-arith.cc: Likewise.
2022 * testsuite/decimal/conversion-from-float.cc: Likewise.
2023 * testsuite/decimal/conversion-from-integral.cc: Likewise.
2024 * testsuite/decimal/compound-assignment.cc: Likewise.
2025
2026 2012-08-06 Peter Bergner <bergner@vnet.ibm.com>
2027
2028 PR libstdc++/54036
2029 * include/decimal/decimal.h (_DEFINE_DECIMAL_UNARY_OP): Use _Op as
2030 a unary operator.
2031 * testsuite/decimal/pr54036-1.cc: New test.
2032 * testsuite/decimal/pr54036-2.cc: Likewise.
2033 * testsuite/decimal/pr54036-3.cc: Likewise.
2034
2035 2012-08-04 Paolo Carlini <paolo.carlini@oracle.com>
2036
2037 Revert:
2038 2012-08-03 Ollie Wild <aaw@google.com>
2039 Richard Smith <richardsmith@google.com>
2040
2041 * include/bits/stl_map.h (operator[](key_type&&)): Replace
2042 std::make_pair with value_type.
2043 * testsuite/23_containers/map/operators/2.cc: New test.
2044
2045 2012-08-03 François Dumont <fdumont@gcc.gnu.org>
2046
2047 * include/debug/functions.h (__check_partition_lower_aux): Remove
2048 redundant comparison with pivot value.
2049 (__check_partition_upper_aux): Likewise.
2050
2051 2012-08-03 Ollie Wild <aaw@google.com>
2052 Richard Smith <richardsmith@google.com>
2053
2054 * include/bits/stl_map.h (operator[](key_type&&)): Replace
2055 std::make_pair with value_type.
2056 * testsuite/23_containers/map/operators/2.cc: New test.
2057
2058 2012-08-03 Jonathan Wakely <jwakely.gcc@gmail.com>
2059
2060 * include/std/memory: Include auto_ptr.h later.
2061 * include/bits/shared_ptr.h (shared_ptr(auto_ptr<_Up>&&): Remove
2062 definition.
2063 * include/bits/shared_ptr_base.h (__shared_ptr(auto_ptr<_Up>&&):
2064 Likewise.
2065 * include/bits/unique_ptr.h (unique_ptr(auto_ptr<_Up>&&): Likewise.
2066 * include/backward/auto_ptr.h (unique_ptr(auto_ptr<_Up>&&): Define.
2067 (shared_ptr(auto_ptr<_Up>&&, __shared_ptr(auto_ptr<_Up>&&): Likewise.
2068 * include/std/future: Reduce header dependencies.
2069 * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
2070 numbers.
2071 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
2072 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
2073
2074 2012-07-30 François Dumont <fdumont@gcc.gnu.org>
2075
2076 * include/bits/c++config (_GLIBCXX_END_NAMESPACE_CONTAINER): Fix
2077 order of closures.
2078 (_GLIBCXX_END_NAMESPACE_ALGO): Likewise.
2079
2080 2012-07-29 François Dumont <fdumont@gcc.gnu.org>
2081
2082 PR libstdc++/54075
2083 * include/bits/hashtable_policy.h
2084 (_Prime_rehash_policy::_M_next_bkt): Add a growth factor set to 2
2085 to boost growth in the number of buckets.
2086 * testsuite/performance/23_containers/insert/unordered_set.cc: New.
2087
2088 2012-07-25 François Dumont <fdumont@gcc.gnu.org>
2089
2090 PR libstdc++/54075
2091 * include/bits/hashtable.h
2092 (_Hashtable<>::_Hashtable(_InputIterator, _InputIterator,
2093 size_type, ...): Remove std::max usage to guarantee that hashtable
2094 state is consistent with hash policy state.
2095 (_Hashtable<>::rehash): Likewise. Set _M_prev_resize to 0 to avoid
2096 the hashtable shrinking on next insertion.
2097 * testsuite/23_containers/unordered_set/modifiers/reserve.cc: New.
2098 * testsuite/23_containers/unordered_multiset/modifiers/reserve.cc: New.
2099 * testsuite/23_containers/unordered_map/modifiers/reserve.cc: New.
2100 * testsuite/23_containers/unordered_multimap/modifiers/reserve.cc: New.
2101
2102 2012-07-20 Chip Salzenberg <chip@pobox.com>
2103 Jonathan Wakely <jwakely.gcc@gmail.com>
2104
2105 PR libstdc++/54025
2106 * include/std/chrono (duration<>::duration): Fix per C++11.
2107 * testsuite/20_util/duration/cons/54025.cc: New.
2108 * testsuite/20_util/duration/cons/constexpr.cc: Adjust.
2109
2110 2012-07-20 Paolo Carlini <paolo.carlini@oracle.com>
2111
2112 * testsuite/30_threads/thread/adl.cc: Add missing dg-requires.
2113
2114 2012-07-19 Tristan Gingold <gingold@adacore.com>
2115 Richard Henderson <rth@redhat.com>
2116
2117 * libsupc++/eh_personality.cc (__gxx_personality_seh0): New function.
2118 Adjust for SEH.
2119 * config/abi/pre/gnu.ver: Add __gxx_personality_seh0.
2120
2121 2012-07-18 Paolo Carlini <paolo.carlini@oracle.com>
2122
2123 PR c++/51213
2124 * testsuite/20_util/pair/noncopyable.cc: New.
2125
2126 2012-07-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2127
2128 PR libstdc++/53270
2129 * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
2130 NSDMI in C++98 mode too.
2131 * include/ext/rope: Add system_header pragma.
2132 (_Refcount_Base, _Rope_RopeRep): Use NSDMI.
2133 (_Rope_RopeRep::~_Rope_RopeRep): Destroy mutex.
2134
2135 2012-07-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2136
2137 PR libstdc++/53978
2138 * include/bits/alloc_traits.h (allocator_traits): Define static
2139 constants.
2140 * include/bits/ptr_traits.h (pointer_traits): Likewise.
2141 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
2142 Likewise.
2143
2144 2012-07-13 Paolo Carlini <paolo.carlini@oracle.com>
2145
2146 PR libstdc++/53657
2147 * include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted,
2148 per C++11.
2149 * include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert
2150 (const_iterator, _Pair&&)): Constrain with std::is_constructible,
2151 per LWG2005.
2152 * include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
2153 multimap<>::insert(const_iterator, _Pair&&)): Likewise.
2154 * include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&),
2155 _Insert<>::insert(const_iterator, _Pair&&)): Likewise.
2156 * include/debug/unordered_map: Adjust.
2157 * include/debug/map.h: Likewise.
2158 * include/debug/multimap.h: Likewise.
2159 * include/profile/unordered_map: Likewise.
2160 * include/profile/map.h: Likewise.
2161 * include/profile/multimap.h: Likewise.
2162
2163 2012-07-06 Paolo Carlini <paolo.carlini@oracle.com>
2164
2165 PR libstdc++/53872
2166 * include/std/thread (thread::_M_make_routine): Qualify make_shared
2167 to prevent ADL.
2168 * testsuite/30_threads/thread/adl.cc: New.
2169
2170 2012-07-05 Jonathan Wakely <jwakely.gcc@gmail.com>
2171
2172 * include/std/condition_variable: Update copyright years.
2173
2174 2012-07-04 Jonathan Wakely <jwakely.gcc@gmail.com>
2175
2176 PR libstdc++/53830
2177 * include/std/condition_variable (condition_variable_any::wait):
2178 Move _Unlock type to class scope.
2179 (condition_variable_any::wait_until): Reuse it.
2180 * testsuite/30_threads/condition_variable_any/53830.cc: New.
2181
2182 2012-07-04 Matthias Klose <doko@ubuntu.com>
2183
2184 * testsuite/28_regex/headers/04_header: Remove empty directory.
2185 * testsuite/28_regex/algorithms/02_match: Likewise.
2186
2187 2012-07-03 Paolo Carlini <paolo.carlini@oracle.com>
2188
2189 PR libstdc++/53840
2190 * include/std/ratio (ratio_multiply, ratio_divide, ratio_add,
2191 ratio_subtract): Use template aliases.
2192 * include/std/chrono (duration<>::duration(const duration<>&),
2193 duration_cast): Adjust.
2194 * testsuite/20_util/ratio/operations/53840.cc: New.
2195 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
2196 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2197 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
2198 * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2199
2200 2012-07-02 Paolo Carlini <paolo.carlini@oracle.com>
2201
2202 Revert:
2203 2011-10-04 Paolo Carlini <paolo.carlini@oracle.com>
2204
2205 PR libstdc++/49561
2206 * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
2207 Add in C++0x mode.
2208 (_List_base<>::_List_impl, _List_base<>::_M_get_node,
2209 _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
2210 list<>::size, list<>::swap, list<>::splice): Use it.
2211 (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
2212 * include/bits/list.tcc (list<>::erase): Likewise.
2213 (list<>::merge): Adjust in C++0x mode.
2214 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2215 Adjust dg-error line number.
2216 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2217 Likewise.
2218 * testsuite/23_containers/list/requirements/dr438/
2219 constructor_1_neg.cc: Likewise.
2220 * testsuite/23_containers/list/requirements/dr438/
2221 constructor_2_neg.cc: Likewise.
2222
2223 2012-06-27 Benjamin Kosnik <bkoz@redhat.com>
2224
2225 * include/bits/c++config: Remove __regex nested namespace.
2226 * include/bits/regex_compiler.h: Change __regex to
2227 __detail. Adjust doxygen markup, add regex-details group.
2228 * include/bits/regex_constants.h: Same.
2229 * include/bits/regex_cursor.h: Same.
2230 * include/bits/regex_error.h: Same.
2231 * include/bits/regex_grep_matcher.h: Same.
2232 * include/bits/regex_grep_matcher.tcc: Same.
2233 * include/bits/regex_nfa.h: Same.
2234 * include/bits/regex_nfa.tcc: Same.
2235 * include/bits/regex.h: Same. Remove static from global constants.
2236
2237 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
2238
2239 * include/bits/locale_classes.tcc: Add use_facet, has_facet to
2240 locales group.
2241
2242 2012-06-25 Edward Smith-Rowland <3dw4rd@verizon.net>
2243
2244 * include/tr2/bool_set (count, size, num_blocks, empty, max_size):
2245 Add noexcept.
2246
2247 2012-06-25 Edward Smith-Rowland <3dw4rd@verizon.net>
2248
2249 * include/tr2/dynamic_bitset (count, size, num_blocks, empty, max_size):
2250 Add noexcept.
2251
2252 2012-06-25 Benjamin Kosnik <bkoz@redhat.com>
2253
2254 * doc/doxygen/user.cfg.in: Change COMPACT_LATEX to NO.
2255
2256 2012-06-24 Benjamin Kosnik <bkoz@redhat.com>
2257
2258 * testsuite/28_regex/algorithms/02_match: To...
2259 * testsuite/28_regex/algorithms/match: ...this.
2260 * testsuite/28_regex/headers/04_header/regex/std_c++0x_neg.cc: Remove
2261 duplicate.
2262
2263 2012-06-18 Jörg Sonnenberger <joerg@britannica.bec.de>
2264 Jonathan Wakely <jwakely.gcc@gmail.com>
2265
2266 PR libstdc++/53678
2267 * config/os/bsd/netbsd/ctype_base.h: Check for _CTYPE_U.
2268 * testsuite/22_locale/ctype_base/53678.cc: New.
2269
2270 2012-06-15 Jonathan Wakely <jwakely.gcc@gmail.com>
2271
2272 PR libstdc++/53578
2273 * include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix
2274 narrowing conversion.
2275 * include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise.
2276
2277 2012-06-14 Jonathan Wakely <jwakely.gcc@gmail.com>
2278
2279 PR libstdc++/53270
2280 * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
2281 NSDMI in C++11 mode.
2282 * include/ext/rope (_Refcount_Base): Likewise. Destroy mutex in
2283 destructor when initialized by function.
2284
2285 2012-06-14 Jonathan Wakely <jwakely.gcc@gmail.com>
2286
2287 PR libstdc++/53648
2288 * include/std/tuple (__empty_not_final): Do not use EBO for tuples.
2289 * testsuite/20_util/tuple/53648.cc: New.
2290 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line
2291 number.
2292
2293 2012-06-14 Jonathan Wakely <jwakely.gcc@gmail.com>
2294
2295 * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
2296
2297 2012-06-01 Jonathan Wakely <jwakely.gcc@gmail.com>
2298
2299 * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
2300
2301 2012-05-31 Benjamin Kosnik <bkoz@redhat.com>
2302
2303 PR libstdc++/53543
2304 * include/bits/hashtable_policy.h (_Insert::__is_convertible):
2305 Rename to __is_conv to avoid clash with clang built-in.
2306
2307 2012-05-29 François Dumont <fdumont@gcc.gnu.org>
2308
2309 * include/bits/stl_tempbuf.h (__uninitialized_construct_buf)
2310 (__uninitialized_construct_buf_dispatch<>::__ucr): Fix to work
2311 with iterator returning rvalue.
2312 * testsuite/25_algorithms/stable_sort/3.cc: New.
2313
2314 2012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
2315
2316 PR c++/53503
2317 * testsuite/26_numerics/headers/cmath/53503.cc: New.
2318
2319 2012-05-22 Dodji Seketeli <dodji@redhat.com>
2320
2321 PR c++/53322
2322 * include/bits/stl_algobase.h (lower_bound)
2323 (lexicographical_compare): Do not declare unused local typedefs
2324 here when Concepts are turned off.
2325
2326 2012-05-21 Paolo Carlini <paolo.carlini@oracle.com>
2327
2328 * testsuite/22_locale/num_put/put/char/9780-2.cc: Avoid -Wall warnings.
2329 * testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
2330 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
2331 * Likewise.
2332 * testsuite/23_containers/unordered_map/observers.cc: Likewise.
2333 * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
2334 * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
2335 * testsuite/23_containers/unordered_multimap/erase/2.cc: Likewise.
2336 * testsuite/23_containers/unordered_multimap/insert/53115.cc: Likewise.
2337 * testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
2338 * testsuite/23_containers/vector/debug/alloc_prop.cc: Likewise.
2339 * testsuite/23_containers/unordered_set/observers.cc: Likewise.
2340 * testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
2341 * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
2342 * testsuite/23_containers/unordered_multiset/erase/2.cc: Likewise.
2343 * testsuite/23_containers/unordered_multiset/insert/53115.cc: Likewise.
2344 * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc:
2345 * Likewise.
2346 * testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
2347
2348 2012-05-21 Paolo Carlini <paolo.carlini@oracle.com>
2349
2350 PR c++/53361
2351 * testsuite/23_containers/array/cons/53361.cc: New.
2352
2353 2012-05-17 Paolo Carlini <paolo.carlini@oracle.com>
2354
2355 PR c++/44516
2356 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
2357 dg-error line number.
2358
2359 2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
2360
2361 * configure: Regenerated.
2362
2363 2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
2364
2365 PR libstdc++/53339
2366 * include/bits/hashtable_policy.h (__detail::_Identity,
2367 __detail::_Select1st): Add.
2368 (_Map_base, _Hashtable_base): Use the latter, adjust parameters.
2369 * include/bits/hashtable.h (_Hashtable::__key_extract): Adjust.
2370 * include/bits/unordered_set.h (__uset_hashtable, __umset_hashtable):
2371 Likewise.
2372 * include/bits/unordered_map.h (__umap_hashtable, __ummap_hashtable):
2373 Likewise.
2374 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd)
2375 Unconditionally derive from unary_function.
2376 * include/ext/functional (identity, select1st, select2nd): Remove
2377 #ifdef __GXX_EXPERIMENTAL_CXX0X__ bits.
2378 * testsuite/23_containers/unordered_map/requirements/53339.cc: New.
2379 * testsuite/23_containers/unordered_multimap/requirements/
2380 53339.cc: Likewise.
2381
2382 2012-05-11 François Dumont <fdumont@gcc.gnu.org>
2383
2384 PR libstdc++/53263
2385 * include/debug/safe_iterator.h (__gnu_debug::__base): Move...
2386 * include/debug/functions.h: ... Here.
2387 (__check_sorted_aux): Add overload for random access safe
2388 iterators.
2389 (__check_partition_lower_aux): New.
2390 (__check_partition_lower): Use latter.
2391 (__check_partition_upper_aux): New.
2392 (__check_partition_upper): Use latter.
2393 * include/debug/macros.h (__glibcxx_check_heap)
2394 (__glibcxx_check_heap_pred): Use __gnu_debug::__base on iterator range.
2395
2396 2012-05-10 DJ Delorie <dj@redhat.com>
2397
2398 * include/bits/random.tcc (seed_seq::generate): Cast max()
2399 operands to size_t to ensure a template match.
2400 * include/std/bitset (_M_copy_from_ptr): Cast min() operands to
2401 size_t to ensure a template match.
2402
2403 2012-05-03 Benjamin Kosnik <bkoz@redhat.com>
2404
2405 * scripts/testsuite_flags.in (cxxflags): Remove
2406 -ftrack-macro-expansion=0.
2407
2408 2012-05-03 Jonathan Wakely <jwakely.gcc@gmail.com>
2409
2410 * doc/xml/faq.xml: Update outdated allocator documentation.
2411 * doc/xml/manual/allocator.xml: Likewise.
2412 * doc/xml/manual/debug.xml: Likewise.
2413 * doc/xml/manual/evolution.xml: Likewise.
2414 * doc/xml/manual/using.xml: Likewise.
2415
2416 2012-05-02 Benjamin Kosnik <bkoz@redhat.com>
2417
2418 PR libstdc++/44015
2419 * include/bits/basic_ios.h: Add tparam markup for
2420 * doxygen. include/bits/basic_string.h: Same.
2421 * include/bits/forward_list.h: Same.
2422 * include/bits/stl_bvector.h: Same.
2423 * include/bits/stl_deque.h: Same.
2424 * include/bits/stl_list.h: Same. include/bits/stl_map.h:
2425 * Same. include/bits/stl_multimap.h: Same.
2426 * include/bits/stl_multiset.h: Same.
2427 * include/bits/stl_pair.h: Same.
2428 * include/bits/stl_queue.h: Same.
2429 * include/bits/stl_set.h: Same.
2430 * include/bits/stl_stack.h: Same.
2431 * include/bits/stl_vector.h: Same.
2432 * include/bits/unordered_map.h: Same.
2433 * include/bits/unordered_set.h: Same. include/std/array:
2434 * Same. include/std/atomic: Same. include/std/fstream:
2435 * Same. include/std/istream: Same. include/std/ostream:
2436 * Same. include/std/sstream: Same.
2437 * include/std/streambuf: Same.
2438 * testsuite/23_containers/deque/requirements/dr438/*:
2439 Adjust line numbers.
2440 * testsuite/23_containers/list/requirements/dr438/*: Same.
2441 * testsuite/23_containers/vector/requirements/dr438/*: Same.
2442
2443 2012-05-02 DJ Delorie <dj@redhat.com>
2444
2445 * crossconfig.m4: Since we know that all TPF builds are cross-
2446 builds and cannot run configuration-time link tests, do not
2447 allow it; just go with known supported linker options.
2448 * configure: Regenerate (called as GLIBCXX_CROSSCONFIG).
2449
2450 2012-05-02 Benjamin Kosnik <bkoz@redhat.com>
2451
2452 * include/bits/hashtable_policy.h: Correct namepace nesting for
2453 _Hashtable forward declaration.
2454
2455 2012-05-01 François Dumont <fdumont@gcc.gnu.org>
2456
2457 PR libstdc++/53115
2458 * include/bits/hashtable.h
2459 (_Hashtable<>::_M_rehash_aux(size_type, false_type)): Fix buckets
2460 after insertion of several equivalent elements.
2461 * testsuite/23_containers/unordered_multiset/insert/53115.cc: New.
2462 * testsuite/23_containers/unordered_multimap/insert/53115.cc: New.
2463
2464 2012-04-29 Marc Glisse <marc.glisse@inria.fr>
2465 Paolo Carlini <paolo.carlini@oracle.com>
2466
2467 PR libstdc++/51795
2468 * include/bits/stl_algobase.h (__lg<>(_Size)): Remove.
2469 (__lg(int), __lg(unsigned), __lg(long), __lg(unsigned long),
2470 __lg(long long), __lg(unsigned long long)): Define constexpr.
2471 * include/bits/random.h (_Mod<>): Overcome Schrage's algorithm
2472 limitations.
2473 (__mod): Adjust.
2474 (linear_congruential): Remove FIXME static_assert.
2475 * include/bits/random.tcc (_Mod<>): Adjust.
2476 * testsuite/26_numerics/random/linear_congruential_engine/operators/
2477 51795.cc: New.
2478
2479 2012-04-29 Jonathan Wakely <jwakely.gcc@gmail.com>
2480
2481 * include/std/functional (function::function(F)): LWG 2132: Disable
2482 constructor if argument isn't callable.
2483 * testsuite/20_util/function/cons/callable.cc: New.
2484
2485 2012-04-29 Marc Glisse <marc.glisse@inria.fr>
2486
2487 PR libstdc++/22200
2488 * include/std/limits (numeric_limits<>::is_modulo): False for
2489 signed types.
2490
2491 2012-04-25 Benjamin Kosnik <bkoz@redhat.com>
2492
2493 * include/bits/hashtable.h: Adjust doxygen markup for base
2494 classes.
2495 * include/bits/hashtable_policy.h: Same.
2496
2497 2012-04-25 Benjamin Kosnik <bkoz@redhat.com>
2498
2499 PR libstdc++/52689
2500 * testsuite/17_intro/static.cc: Fix.
2501 * testsuite/lib/dg-options.exp (dg-require-static-libstdcxx): New.
2502 * testsuite/lib/libstdc++.exp (check_v3_target_static_libstdcxx): New.
2503
2504 2012-04-25 Jonathan Wakely <jwakely.gcc@gmail.com>
2505
2506 * include/std/scoped_allocator (scoped_allocator::__outermost): Do
2507 not pass non-POD to varargs function.
2508 * testsuite/20_util/scoped_allocator/1.cc: Fix test.
2509
2510 2012-04-24 Benjamin Kosnik <bkoz@redhat.com>
2511
2512 PR libstdc++/52689
2513 * testsuite/17_intro/static.cc: New.
2514
2515 2012-04-23 Daniel Krugler <daniel.kruegler@gmail.com>
2516
2517 * include/std/type_traits (is_nothrow_destructible): Implement.
2518 (is_destructible): Implement LWG 2049.
2519 * testsuite/util/testsuite_tr1.h: Add tests.
2520 * testsuite/20_util/is_nothrow_destructible/value.cc: New.
2521 * testsuite/20_util/is_nothrow_destructible/requirements/typedefs.cc:
2522 * testsuite/20_util/is_nothrow_destructible/requirements/
2523 explicit_instantiation.cc: Likewise.
2524 * testsuite/20_util/is_destructible/value.cc: Adjust and extend.
2525 * testsuite/20_util/is_default_constructible/value.cc: Tweak.
2526 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
2527 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
2528 dg-error line numbers.
2529 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2530 Likewise.
2531 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2532
2533 2012-04-23 Paolo Carlini <paolo.carlini@oracle.com>
2534
2535 PR libstdc++/53080
2536 * include/std/array (tuple_element, get): static_assert I < N.
2537 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
2538 New.
2539 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
2540 * testsuite/23_containers/array/tuple_interface/tuple_element.cc: Fix.
2541
2542 2012-04-23 Chris Jefferson <chris@bubblescope.net>
2543
2544 PR testsuite/53046
2545 * testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size
2546 of array A.
2547 * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
2548
2549 2012-04-22 Paolo Carlini <paolo.carlini@oracle.com>
2550
2551 PR libstdc++/53067
2552 * include/bits/hashtable_policy.h: Change inheritances to public.
2553 * testsuite/23_containers/unordered_map/requirements/53067.cc: New.
2554 * testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise.
2555
2556 2012-04-22 Jonathan Wakely <jwakely.gcc@gmail.com>
2557
2558 * include/ext/alloc_traits.h (__alloc_traits::difference_type):
2559 Define.
2560
2561 2012-04-22 Jonathan Wakely <jwakely.gcc@gmail.com>
2562
2563 PR libstdc++/53027
2564 * include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
2565 * testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check
2566 rebind works.
2567
2568 2012-04-22 Jonathan Wakely <jwakely.gcc@gmail.com>
2569
2570 * include/debug/forward_list (forward_list::splice_after): Check
2571 allocators are equal.
2572 * src/c++11/debug.cc: Fix spelling.
2573 * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
2574 New.
2575 * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
2576 Likewise.
2577 * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
2578 Likewise.
2579
2580 2012-04-20 Paolo Carlini <paolo.carlini@oracle.com>
2581
2582 PR libstdc++/53052
2583 * include/std/type_traits (is_explicitly_convertible): Remove.
2584 * testsuite/20_util/is_explicitly_convertible: Likewise.
2585 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2586 Adjust dg-error line numbers.
2587 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2588 Likewise.
2589 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2590
2591 2012-04-17 Benjamin Kosnik <bkoz@redhat.com>
2592
2593 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
2594 808590.cc: New.
2595
2596 2012-04-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2597
2598 * testsuite/util/testsuite_abi.cc (compare_symbols): Change
2599 summary header to avoid confusion with DejaGnu header.
2600
2601 2012-04-15 Paolo Carlini <paolo.carlini@oracle.com>
2602
2603 PR libstdc++/52702
2604 * include/std/type_traits (is_trivially_destructible): Add.
2605 (has_trivial_destructor): Remove.
2606 * testsuite/util/testsuite_common_types.h: Adjust.
2607 * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
2608 * testsuite/20_util/pair/requirements/dr801.cc: Likewise.
2609 * testsuite/20_util/is_trivially_destructible/value.cc: New.
2610 * testsuite/20_util/is_trivially_destructible/requirements/
2611 typedefs.cc: Likewise.
2612 * testsuite/20_util/is_trivially_destructible/requirements/
2613 explicit_instantiation.cc: Likewise.
2614 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2615 Adjust dg-error line numbers.
2616 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2617 Likewise.
2618 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2619
2620 2012-04-14 Paolo Carlini <paolo.carlini@oracle.com>
2621
2622 PR libstdc++/52699
2623 * include/bits/random.tcc (independent_bits_engine<>::operator()())
2624 Avoid various overflows; use common_type on result_type and
2625 _RandomNumberEngine::result_type; avoid floating point computations;
2626 other smaller tweaks.
2627
2628 * include/bits/random.tcc (uniform_int_distribution<>::operator())
2629 Use common_type; assume _UniformRandomNumberGenerator::result_type
2630 unsigned; tidy.
2631
2632 * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
2633 __lg(unsigned long long)): Add.
2634
2635 2012-04-14 Alan Modra <amodra@gmail.com>
2636
2637 PR libstdc++/52839
2638 * acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on
2639 glibcxx_cv_atomic_long_long.
2640 * configure: Regenerate.
2641
2642 2012-04-13 Paolo Carlini <paolo.carlini@oracle.com>
2643
2644 * testsuite/26_numerics/cmath/51083.cc: Move...
2645 * testsuite/26_numerics/headers/cmath/51083.cc: ... here.
2646
2647 2012-04-13 Laurent Alfonsi <laurent.alfonsi@st.com>
2648
2649 PR libstdc++/52604
2650 * src/c++98/mt_allocator.cc: (__freelist::~__freelist): Reset pointer.
2651
2652 2012-04-13 Paolo Carlini <paolo.carlini@oracle.com>
2653
2654 * include/debug/safe_iterator.h (_BeforeBeginHelper<>::
2655 _S_Is_Beginnest): Add.
2656 * include/debug/forward_list (_BeforeBeginHelper<>::
2657 _S_Is_Beginnest): Likewise.
2658 (_Safe_iterator<>::_M_is_beginnest): Add.
2659 * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range):
2660 Use the latter.
2661 * testsuite/23_containers/forward_list/debug/splice_after.cc:
2662 Add test.
2663
2664 2012-04-12 Benjamin Kosnik <bkoz@redhat.com>
2665
2666 * include/bits/unordered_map.h (__unordered_map): Remove.
2667 (__unordered_multimap): Remove.
2668 Add aliases for __umap_traits, __umap_hashtable, __ummap_traits,
2669 __ummap_hashtable.
2670 (unordered_map): Derive from __umap_hashtable.
2671 (unordered_multimap): Derive from __ummap_hashtable.
2672 * include/bits/unordered_set.h (__unordered_set): Remove.
2673 (__unordered_multiset): Remove.
2674 Add aliases for __uset_traits, __uset_hashtable, __umset_traits,
2675 __umset_hashtable.
2676 (unordered_set): Derive from __uset_hashtable.
2677 (unordered_multiset): Derive from __umset_hashtable.
2678 * include/bits/hashtable.h (__cache_default): New, consolidated
2679 cache defaults for _Hashtable. Adjust comments for doxygen.
2680 (_Hashtable): Consolidate bool template parameters into new,
2681 _Traits class. Inherited base classes synthesize _Hashtable in
2682 CRTP via original 10 parameters. Prefer using declarations to
2683 typedefs, add __node_type, __bucket_type, etc. Push many nested
2684 types down hierarchy to _Hashtable_base. Add constructors
2685 necessary for top-level unordered_containers. Consolidate insert
2686 member functions and logic in new base class, __detail::_Insert
2687 and __detail::_Insert_base.
2688 (_Hashtable::operator=(initializer_list)): Add.
2689 * include/bits/hashtable_policy.h: Convert to doxygen markup.
2690 (_Hashtable_traits) New. Consolidate bool template parameters here.
2691 (_Insert, _Insert_base): New, consolidated insert member functions.
2692 (_Map_base, _Equality, _Rehash_base): Adjust template parameters,
2693 use base types.
2694 (_Hashtable_base): Move type declarations useful to other base
2695 classes into this class.
2696 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
2697 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2698 Adjust traits, line numbers.
2699
2700 2012-04-12 Jeffrey Yasskin <jyasskin@google.com>
2701
2702 PR libstdc++/52822
2703 * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode.
2704 (__find_if_not_n): Like __find_if_not, but works on and updates a
2705 counted range instead of a bounded range.
2706 (stable_partition): Guarantee !__pred(*__first) in call to
2707 __stable_partition_adaptive() or __inplace_stable_partition().
2708 (__stable_partition_adaptive): Use new precondition to avoid
2709 moving/copying objects onto themselves. Guarantee new
2710 precondition to recursive calls.
2711 (__inplace_stable_partition): Use new precondition to simplify
2712 base case, remove __last parameter. Guarantee new precondition to
2713 recursive calls.
2714 * testsuite/25_algorithms/stable_partition/moveable.cc (test02):
2715 Test a sequence that starts with a value matching the predicate.
2716 * testsuite/25_algorithms/stable_partition/pr52822.cc: Test
2717 vectors, which have a destructive self-move-assignment.
2718
2719 2012-04-12 Andreas Schwab <schwab@linux-m68k.org>
2720
2721 * testsuite/Makefile.am (check_DEJAGNUnormal0): Run
2722 prettyprinters.exp.
2723 * testsuite/Makefile.in: Regenerated.
2724
2725 2012-04-12 Paolo Carlini <paolo.carlini@oracle.com>
2726
2727 PR libstdc++/52942
2728 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd):
2729 In C++11 mode do not derive from std::unary_function.
2730 * include/ext/functional (identity, select1st, select2nd): Adjust.
2731 * testsuite/23_containers/unordered_map/requirements/52942.cc: New.
2732 * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise.
2733
2734 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
2735
2736 PR libstdc++/52924
2737 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
2738 user-defined destructor.
2739 (_Sp_counted_inplace): Likewise.
2740 * testsuite/20_util/shared_ptr/cons/52924.cc: New.
2741 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
2742 line numbers.
2743
2744 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
2745
2746 * doc/xml/manual/debug.xml (Debug Versions of Library Binary Files):
2747 Re-arrange text slightly.
2748
2749 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
2750
2751 * testsuite/performance/30_threads/future/polling.cc: Adjust.
2752
2753 2012-04-11 Paolo Carlini <paolo.carlini@oracle.com>
2754
2755 * include/bits/forward_list.h (splice_after(const_iterator,
2756 forward_list&), splice_after(const_iterator, forward_list&,
2757 const_iterator), splice_after(const_iterator, forward_list&,
2758 const_iterator, const_iterator), merge(forward_list&),
2759 merge(forward_list&, _Comp)): Add per C++11 as published (and
2760 LWG 1310).
2761 * include/debug/forward_list: Adjust.
2762
2763 * include/bits/forward_list.h (splice_after(const_iterator,
2764 forward_list&&, const_iterator)): Only declare.
2765 (_M_transfer_after): Remove.
2766 (_M_splice_after(const_iterator, forward_list&&)): Change signature.
2767 (splice_after(const_iterator, forward_list&&, const_iterator,
2768 const_iterator)): Use the latter.
2769 * include/bits/forward_list.tcc (splice_after(const_iterator,
2770 forward_list&&, const_iterator)): Define here.
2771 (_M_splice_after): Define, use throughout.
2772
2773 * include/bits/forward_list.h (insert_after(const_iterator,
2774 std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
2775 _InputIterator, _InputIterator).
2776 * include/bits/forward_list.tcc: Remove definition.
2777
2778 * testsuite/23_containers/forward_list/modifiers/6.cc: New.
2779 * testsuite/23_containers/forward_list/operations/1.cc: Adjust.
2780
2781 2012-04-11 Paolo Carlini <paolo.carlini@oracle.com>
2782
2783 PR libstdc++/52931
2784 * include/bits/functional_hash.h (struct hash): Remove definition.
2785 * testsuite/20_util/hash/52931.cc: New.
2786
2787 2012-04-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
2788
2789 PR 24985
2790 * testsuite/lib/prune.exp: Handle caret.
2791
2792 2012-04-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2793
2794 Partially revert:
2795 2012-03-28 Benjamin Kosnik <bkoz@redhat.com>
2796
2797 PR libstdc++/52689
2798 * src/c++98/compatibility-list.cc: Same.
2799
2800 2012-04-05 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2801
2802 PR bootstrap/52840
2803 * src/Makefile.am (build-debug): Do not adjust vpath dir, remove
2804 Makefile.tmp
2805 * src/Makefile.in: Adjust as per above.
2806
2807 2012-04-04 Uros Bizjak <ubizjak@gmail.com>
2808
2809 Partially revert:
2810 2012-03-28 Benjamin Kosnik <bkoz@redhat.com>
2811
2812 PR libstdc++/52689
2813 * src/c++98/compatibility-ldbl.cc: Guard with PIC
2814
2815 2012-04-02 Tristan Gingold <gingold@adacore.com>
2816
2817 * crossconfig.m4 (*-*-*vms*): Add.
2818 * configure: Regenerate.
2819
2820 2012-04-01 Jonathan Wakely <jwakely.gcc@gmail.com>
2821
2822 PR libstdc++/52591
2823 * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
2824 to _M_move_assign depending on whether allocator is moved.
2825 (vector::_M_move_assign): Add overloaded functions.
2826 * testsuite/23_containers/vector/52591.cc: New.
2827 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2828 Adjust dg-error line number.
2829 * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
2830 Likewise.
2831 * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
2832 Likewise.
2833 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2834 Likewise.
2835
2836 2012-04-01 Jonathan Wakely <jwakely.gcc@gmail.com>
2837
2838 * include/std/functional (__callable_functor): Overload for
2839 volatile-qualified pointers.
2840 * testsuite/20_util/function/10.cc: New.
2841
2842 2012-03-30 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
2843 Paolo Carlini <paolo.carlini@oracle.com>
2844
2845 PR libstdc++/52799
2846 * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
2847 -> emplace_front, and likewise for *_back.
2848 * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
2849 * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
2850 * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
2851
2852 2012-03-28 Benjamin Kosnik <bkoz@redhat.com>
2853
2854 PR libstdc++/52689
2855 * libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2856 * libsupc++/Makefile.in: Regenerated.
2857 * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2858 (libstdc___la_SOURCES): Add in compatiblity files, with content
2859 that varies with -DPIC.
2860 * src/Makefile.in: Regenerated.
2861 * src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2862 * src/c++11/Makefile.in: Regenerated.
2863 * src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC.
2864 * src/c++11/compatibility-c++0x.cc: Same.
2865 * src/c++11/future.cc: Consolidate compatibility bits into..
2866 * src/c++11/mutex.cc: Consolidate compatibility bits into..
2867 * src/c++11/compatibility-thread-cxx0x.cc: ...here. New.
2868 * src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2869 * src/c++98/Makefile.in: Regenerated.
2870 * src/c++98/compatibility-ldbl.cc: Guard with PIC
2871 * src/c++98/compatibility-list-2.cc: Same.
2872 * src/c++98/compatibility-list.cc: Same.
2873 * src/c++98/compatibility.cc: Tweak comments.
2874
2875 2012-03-28 Terry Guo <terry.guo@arm.com>
2876
2877 * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
2878 * testsuite/Makefile.in: Regenerated.
2879
2880 2012-03-27 Jonathan Wakely <jwakely.gcc@gmail.com>
2881
2882 * include/std/functional (mem_fn): Qualify to prevent ADL.
2883 * testsuite/20_util/function_objects/mem_fn/adl.cc: New.
2884
2885 2012-03-27 Jonathan Wakely <jwakely.gcc@gmail.com>
2886
2887 * include/std/type_traits (result_of): Fix handling of cv-quals.
2888 * testsuite/20_util/result_of/1.cc: New.
2889 * testsuite/20_util/result_of/2.cc: New.
2890 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
2891 line numbers.
2892 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2893 Likewise.
2894 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2895 Likewise.
2896
2897 2012-03-23 David S. Miller <davem@davemloft.net>
2898
2899 * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
2900
2901 2012-03-23 Benjamin Kosnik <bkoz@redhat.com>
2902
2903 * scripts/testsuite_flags.in (--cxxflags): Let CXXFLAGS set -g -O2.
2904 * testsuite/lib/libstdc++.exp: Same.
2905
2906 2012-03-23 Paolo Carlini <paolo.carlini@oracle.com>
2907
2908 * include/bits/forward_list.h: Slightly tweak two comments.
2909
2910 2012-03-22 Benjamin Kosnik <bkoz@redhat.com>
2911
2912 * doc/Makefile.am: XML output names have only .xml suffix.
2913 * doc/Makefile.in: Regenerate.
2914
2915 2012-03-22 Paolo Carlini <paolo.carlini@oracle.com>
2916
2917 * include/std/array (array<>::at(size_type) const): Fix version
2918 for undefined __EXCEPTIONS.
2919
2920 2013-03-21 Andreas Tobler <andreast@fgznet.ch>
2921
2922 * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
2923 Skip this test on powerpc64-*-freebsd*.
2924
2925 2012-03-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2926
2927 * include/bits/stl_list.h (list::_M_size): Use NSDMI.
2928 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2929 Adjust line numbers.
2930 * testsuite/23_containers/list/requirements/dr438/
2931 constructor_1_neg.cc: Likewise.
2932 * testsuite/23_containers/list/requirements/dr438/
2933 constructor_2_neg.cc: Likewise.
2934 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2935 Likewise.
2936
2937 2012-03-19 Paweł Sikora <pawel.sikora@agmk.net>
2938
2939 PR libstdc++/52540
2940 * include/Makefile.am (c++config.h): Fix sed rule to not break
2941 the _GLIBCXX_EXTERN_TEMPLATE redefinition.
2942 * include/Makefile.in: Regenerate.
2943
2944 2012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
2945
2946 * testsuite/Makefile.in: Regenerate.
2947
2948 2012-03-19 Benjamin Kosnik <bkoz@redhat.com>
2949
2950 * include/bits/allocator.h (std::allocator): Base class is
2951 __allocator_base.
2952 (uses_allocator): Add to sub-grouping.
2953 * include/ext/new_allocator.h: Doxygen markup for tparm.
2954
2955 * config/allocator/bitmap_allocator_base.h: Use __allocator_base
2956 template alias in C++11.
2957 * config/allocator/malloc_allocator_base.h: Same.
2958 * config/allocator/mt_allocator_base.h: Same.
2959 * config/allocator/new_allocator_base.h: Same.
2960 * config/allocator/pool_allocator_base.h: Same.
2961
2962 2012-03-19 Benjamin Kosnik <bkoz@redhat.com>
2963
2964 * include/ext/pb_ds/detail/pat_trie_/
2965 constructors_destructor_fn_imps.hpp: Increment after recursion.
2966 * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert
2967 node_type markup from brief.
2968
2969 2012-03-16 François Dumont <fdumont@gcc.gnu.org>
2970
2971 PR libstdc++/52476
2972 * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
2973 (_Hashtable<>::_M_rehash): Use the latter.
2974 * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
2975 * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
2976
2977 2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2978
2979 * config/os/solaris/solaris2.8: Rename to ...
2980 * config/os/solaris/solaris2.9: ... this.
2981 * config/abi/post/solaris2.8: Rename to ...
2982 * config/abi/post/solaris2.9: ... this.
2983 * configure.host (os_include_dir): Remove solaris2.8.
2984 Reflect renaming.
2985 (abi_baseline_pair): Remove *-*-solaris2.8.
2986 Reflect renaming.
2987
2988 * configure.ac (GLIBCXX_CHECK_MATH_PROTO): Remove
2989 (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
2990 * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO): Remove
2991 (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
2992 (GLIBCXX_CHECK_GTHREADS): Remove Solaris 8 handling.
2993 * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove *-solaris2.8
2994 handling.
2995 * configure: Regenerate.
2996 * config.h.in: Regenerate.
2997
2998 * config/os/solaris/solaris2.9/os_defines.h
2999 (__CORRECT_ISO_CPP_MATH_H_PROTO): Define.
3000 (__CORRECT_ISO_CPP_STDLIB_H_PROTO): Define.
3001 * include/c_global/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1
3002 to __CORRECT_ISO_CPP_MATH_H_PROTO.
3003 [!__CORRECT_ISO_CPP_MATH_H_PROTO2]: Remove.
3004 * include/tr1/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to
3005 __CORRECT_ISO_CPP_MATH_H_PROTO.
3006
3007 * doc/xml/manual/configure.xml (Configure, --enable-libstdcxx-threads):
3008 Remove Solaris 8 reference.
3009
3010 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
3011 Don't xfail on *-*-solaris2.8.
3012 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
3013 Likewise.
3014 * testsuite/ext/enc_filebuf/char/13598.cc: Don't xfail on
3015 *-*-solaris2.8.
3016
3017 2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3018
3019 * configure.host (irix6.5*): Remove.
3020 * config/os/irix: Remove.
3021 * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc())
3022 [_GLIBCXX_FIONREAD_TAKES_OFF_T]: Remove.
3023
3024 * doc/xml/faq.xml: Remove IRIX reference.
3025 * doc/xml/manual/using.xml (Finding Dynamic or Shared Libraries):
3026 Remove IRIX example.
3027
3028 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
3029 Remove mips-sgi-irix6* handling.
3030 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
3031 * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
3032 * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
3033 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
3034 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
3035 * testsuite/23_containers/list/pthread1.cc: Likewise.
3036 * testsuite/23_containers/list/pthread5.cc: Likewise.
3037 * testsuite/23_containers/map/pthread6.cc: Likewise.
3038 * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
3039 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
3040 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
3041 * testsuite/30_threads/async/42819.cc: Likewise.
3042 * testsuite/30_threads/async/49668.cc: Likewise.
3043 * testsuite/30_threads/async/any.cc: Likewise.
3044 * testsuite/30_threads/async/async.cc: Likewise.
3045 * testsuite/30_threads/async/launch.cc: Likewise.
3046 * testsuite/30_threads/async/sync.cc: Likewise.
3047 * testsuite/30_threads/call_once/39909.cc: Likewise.
3048 * testsuite/30_threads/call_once/49668.cc: Likewise.
3049 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
3050 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
3051 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
3052 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
3053 * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
3054 Likewise.
3055 * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
3056 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
3057 * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
3058 * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
3059 * testsuite/30_threads/future/cons/move.cc: Likewise.
3060 * testsuite/30_threads/future/members/45133.cc: Likewise.
3061 * testsuite/30_threads/future/members/get.cc: Likewise.
3062 * testsuite/30_threads/future/members/get2.cc: Likewise.
3063 * testsuite/30_threads/future/members/share.cc: Likewise.
3064 * testsuite/30_threads/future/members/valid.cc: Likewise.
3065 * testsuite/30_threads/future/members/wait.cc: Likewise.
3066 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
3067 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
3068 * testsuite/30_threads/lock/1.cc: Likewise.
3069 * testsuite/30_threads/lock/2.cc: Likewise.
3070 * testsuite/30_threads/lock/3.cc: Likewise.
3071 * testsuite/30_threads/lock/4.cc: Likewise.
3072 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3073 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
3074 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3075 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
3076 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3077 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
3078 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3079 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3080 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3081 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
3082 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
3083 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
3084 * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
3085 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
3086 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
3087 * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
3088 * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
3089 * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
3090 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
3091 * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
3092 * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
3093 * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
3094 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
3095 * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
3096 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
3097 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
3098 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
3099 * testsuite/30_threads/promise/cons/1.cc: Likewise.
3100 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
3101 * testsuite/30_threads/promise/cons/move.cc: Likewise.
3102 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
3103 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
3104 * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
3105 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
3106 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
3107 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
3108 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
3109 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
3110 * testsuite/30_threads/promise/members/swap.cc: Likewise.
3111 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
3112 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
3113 Likewise.
3114 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
3115 * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
3116 * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
3117 Likewise.
3118 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
3119 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
3120 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
3121 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
3122 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
3123 Likewise.
3124 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
3125 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
3126 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
3127 Likewise.
3128 * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
3129 Likewise.
3130 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
3131 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
3132 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
3133 Likewise.
3134 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
3135 Likewise.
3136 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
3137 Likewise.
3138 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
3139 Likewise.
3140 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
3141 Likewise.
3142 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
3143 * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
3144 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
3145 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
3146 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
3147 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
3148 * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
3149 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
3150 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
3151 * testsuite/30_threads/this_thread/1.cc: Likewise.
3152 * testsuite/30_threads/this_thread/2.cc: Likewise.
3153 * testsuite/30_threads/this_thread/3.cc: Likewise.
3154 * testsuite/30_threads/this_thread/4.cc: Likewise.
3155 * testsuite/30_threads/thread/cons/1.cc: Likewise.
3156 * testsuite/30_threads/thread/cons/2.cc: Likewise.
3157 * testsuite/30_threads/thread/cons/3.cc: Likewise.
3158 * testsuite/30_threads/thread/cons/4.cc: Likewise.
3159 * testsuite/30_threads/thread/cons/49668.cc: Likewise.
3160 * testsuite/30_threads/thread/cons/5.cc: Likewise.
3161 * testsuite/30_threads/thread/cons/6.cc: Likewise.
3162 * testsuite/30_threads/thread/cons/7.cc: Likewise.
3163 * testsuite/30_threads/thread/cons/8.cc: Likewise.
3164 * testsuite/30_threads/thread/cons/9.cc: Likewise.
3165 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
3166 * testsuite/30_threads/thread/members/1.cc: Likewise.
3167 * testsuite/30_threads/thread/members/2.cc: Likewise.
3168 * testsuite/30_threads/thread/members/3.cc: Likewise.
3169 * testsuite/30_threads/thread/members/4.cc: Likewise.
3170 * testsuite/30_threads/thread/members/5.cc: Likewise.
3171 * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
3172 * testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise.
3173 * testsuite/30_threads/thread/swap/1.cc: Likewise.
3174 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
3175 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
3176 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
3177 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
3178 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
3179 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
3180 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
3181 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
3182 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
3183 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
3184 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
3185 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
3186 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
3187 * testsuite/30_threads/try_lock/1.cc: Likewise.
3188 * testsuite/30_threads/try_lock/2.cc: Likewise.
3189 * testsuite/30_threads/try_lock/3.cc: Likewise.
3190 * testsuite/30_threads/try_lock/4.cc: Likewise.
3191 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3192 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3193 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3194 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3195 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3196 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3197 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3198 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3199 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3200 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3201 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3202 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
3203 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
3204 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3205 default_weaktoshared.cc: Likewise.
3206 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3207 mutex_weaktoshared.cc: Likewise.
3208
3209 * testsuite/23_containers/vector/capacity/resize/1.cc: Remove
3210 dg-options for mips*-*-irix6*.
3211
3212 * testsuite/27_io/ios_base/storage/1.cc: Likewise.
3213 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
3214 * testsuite/27_io/ios_base/storage/3.cc: Likewise.
3215
3216 * testsuite/lib/libstdc++.exp (v3-build_support): Remove IRIX 6
3217 workaround.
3218
3219 2012-03-14 Paolo Carlini <paolo.carlini@oracle.com>
3220
3221 * include/bits/forward_list.h: Fix comments.
3222
3223 2012-03-13 Terry Guo <terry.guo@arm.com>
3224
3225 * testsuite/Makefile.in (TEST_GCC_EXEC_PREFIX): New.
3226
3227 2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3228
3229 * configure.host: Remove osf* handling.
3230 * config/os/osf: Remove.
3231 * doc/xml/manual/using.xml: Remove OSF reference.
3232
3233 * testsuite/18_support/pthread_guard.cc: Remove alpha*-*-osf* handling.
3234 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Likewise.
3235 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
3236 * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
3237 * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
3238 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
3239 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
3240 * testsuite/23_containers/list/pthread1.cc: Likewise.
3241 * testsuite/23_containers/list/pthread5.cc: Likewise.
3242 * testsuite/23_containers/map/pthread6.cc: Likewise.
3243 * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
3244 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
3245 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
3246 * testsuite/30_threads/async/42819.cc: Likewise.
3247 * testsuite/30_threads/async/49668.cc: Likewise.
3248 * testsuite/30_threads/async/any.cc: Likewise.
3249 * testsuite/30_threads/async/async.cc: Likewise.
3250 * testsuite/30_threads/async/launch.cc: Likewise.
3251 * testsuite/30_threads/async/sync.cc: Likewise.
3252 * testsuite/30_threads/call_once/39909.cc: Likewise.
3253 * testsuite/30_threads/call_once/49668.cc: Likewise.
3254 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
3255 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
3256 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
3257 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
3258 * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
3259 Likewise.
3260 * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
3261 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
3262 * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
3263 * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
3264 * testsuite/30_threads/future/cons/move.cc: Likewise.
3265 * testsuite/30_threads/future/members/45133.cc: Likewise.
3266 * testsuite/30_threads/future/members/get.cc: Likewise.
3267 * testsuite/30_threads/future/members/get2.cc: Likewise.
3268 * testsuite/30_threads/future/members/share.cc: Likewise.
3269 * testsuite/30_threads/future/members/valid.cc: Likewise.
3270 * testsuite/30_threads/future/members/wait.cc: Likewise.
3271 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
3272 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
3273 * testsuite/30_threads/lock/1.cc: Likewise.
3274 * testsuite/30_threads/lock/2.cc: Likewise.
3275 * testsuite/30_threads/lock/3.cc: Likewise.
3276 * testsuite/30_threads/lock/4.cc: Likewise.
3277 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3278 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
3279 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3280 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
3281 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3282 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
3283 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3284 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3285 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3286 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
3287 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
3288 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
3289 * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
3290 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
3291 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
3292 * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
3293 * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
3294 * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
3295 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
3296 * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
3297 * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
3298 * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
3299 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
3300 * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
3301 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
3302 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
3303 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
3304 * testsuite/30_threads/promise/cons/1.cc: Likewise.
3305 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
3306 * testsuite/30_threads/promise/cons/move.cc: Likewise.
3307 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
3308 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
3309 * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
3310 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
3311 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
3312 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
3313 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
3314 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
3315 * testsuite/30_threads/promise/members/swap.cc: Likewise.
3316 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
3317 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
3318 Likewise.
3319 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
3320 * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
3321 * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
3322 Likewise.
3323 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
3324 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
3325 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
3326 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
3327 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
3328 Likewise.
3329 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
3330 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
3331 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
3332 Likewise.
3333 * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
3334 Likewise.
3335 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
3336 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
3337 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
3338 Likewise.
3339 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
3340 Likewise.
3341 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
3342 Likewise.
3343 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
3344 Likewise.
3345 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
3346 Likewise.
3347 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
3348 * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
3349 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
3350 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
3351 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
3352 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
3353 * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
3354 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
3355 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
3356 * testsuite/30_threads/this_thread/1.cc: Likewise.
3357 * testsuite/30_threads/this_thread/2.cc: Likewise.
3358 * testsuite/30_threads/this_thread/3.cc: Likewise.
3359 * testsuite/30_threads/this_thread/4.cc: Likewise.
3360 * testsuite/30_threads/thread/cons/1.cc: Likewise.
3361 * testsuite/30_threads/thread/cons/2.cc: Likewise.
3362 * testsuite/30_threads/thread/cons/3.cc: Likewise.
3363 * testsuite/30_threads/thread/cons/4.cc: Likewise.
3364 * testsuite/30_threads/thread/cons/49668.cc: Likewise.
3365 * testsuite/30_threads/thread/cons/5.cc: Likewise.
3366 * testsuite/30_threads/thread/cons/6.cc: Likewise.
3367 * testsuite/30_threads/thread/cons/7.cc: Likewise.
3368 * testsuite/30_threads/thread/cons/8.cc: Likewise.
3369 * testsuite/30_threads/thread/cons/9.cc: Likewise.
3370 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
3371 * testsuite/30_threads/thread/members/1.cc: Likewise.
3372 * testsuite/30_threads/thread/members/2.cc: Likewise.
3373 * testsuite/30_threads/thread/members/3.cc: Likewise.
3374 * testsuite/30_threads/thread/members/4.cc: Likewise.
3375 * testsuite/30_threads/thread/members/5.cc: Likewise.
3376 * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
3377 * testsuite/30_threads/thread/swap/1.cc: Likewise.
3378 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
3379 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
3380 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
3381 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
3382 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
3383 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
3384 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
3385 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
3386 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
3387 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
3388 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
3389 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
3390 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
3391 * testsuite/30_threads/try_lock/1.cc: Likewise.
3392 * testsuite/30_threads/try_lock/2.cc: Likewise.
3393 * testsuite/30_threads/try_lock/3.cc: Likewise.
3394 * testsuite/30_threads/try_lock/4.cc: Likewise.
3395 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3396 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3397 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3398 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3399 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3400 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3401 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3402 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3403 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3404 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3405 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3406 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
3407 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
3408 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3409 default_weaktoshared.cc: Likewise.
3410 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3411 mutex_weaktoshared.cc: Likewise.
3412
3413 2012-03-12 Paolo Carlini <paolo.carlini@oracle.com>
3414
3415 PR libstdc++/52562
3416 * libsupc++/typeinfo (type_info::name, before, operator==,
3417 operator!=): Mark noexcept in C++11 mode.
3418 * libsupc++/tinfo.cc (type_info::operator==): Adjust.
3419 * libsupc++/tinfo2.cc (type_info::before): Likewise.
3420 * testsuite/18_support/type_info/52562.cc: New.
3421
3422 2012-03-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3423
3424 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
3425 symbols added in last change.
3426
3427 PR libstdc++/52456
3428 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
3429
3430 2012-03-09 Andreas Schwab <schwab@linux-m68k.org>
3431
3432 * config/locale/gnu/monetary_members.cc
3433 (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
3434 exception again.
3435 (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
3436 * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
3437 locale.
3438
3439 2012-03-09 Paolo Carlini <paolo.carlini@oracle.com>
3440
3441 * include/debug/formatter.h (enum _Debug_msg_id): Add
3442 __msg_self_move_assign.
3443 * include/debug/macros.h (__glibcxx_check_self_move_assign): Add.
3444 * src/c++11/debug.cc (_S_debug_messages): Update.
3445 * include/debug/safe_iterator.h (_Safe_iterator<>::operator=
3446 (_Safe_iterator&&)): Add check for self move assignment.
3447 * include/debug/set.h: Likewise.
3448 * include/debug/unordered_map: Likewise.
3449 * include/debug/multiset.h: Likewise.
3450 * include/debug/forward_list: Likewise.
3451 * include/debug/unordered_set: Likewise.
3452 * include/debug/vector: Likewise.
3453 * include/debug/map.h: Likewise.
3454 * include/debug/deque: Likewise.
3455 * include/debug/string: Likewise.
3456 * include/debug/list: Likewise.
3457 * include/debug/multimap.h: Likewise.
3458 * testsuite/21_strings/debug/self_move_assign_neg.cc: New.
3459 * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Likewise.
3460 * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
3461 Likewise.
3462 * testsuite/23_containers/unordered_map/debug/
3463 iterator_self_move_assign_neg.cc: Likewise.
3464 * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
3465 Likewise.
3466 * testsuite/23_containers/multimap/debug/
3467 iterator_self_move_assign_neg.cc: Likewise.
3468 * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
3469 * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
3470 Likewise.
3471 * testsuite/23_containers/unordered_multimap/debug/
3472 self_move_assign_neg.cc: Likewise.
3473 * testsuite/23_containers/unordered_multimap/debug/
3474 iterator_self_move_assign_neg.cc: Likewise.
3475 * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
3476 Likewise.
3477 * testsuite/23_containers/forward_list/debug/
3478 iterator_self_move_assign_neg.cc: Likewise.
3479 * testsuite/23_containers/unordered_set/debug/self_move_assign_neg.cc:
3480 Likewise.
3481 * testsuite/23_containers/unordered_set/debug/
3482 iterator_self_move_assign_neg.cc: Likewise.
3483 * testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
3484 Likewise.
3485 * testsuite/23_containers/vector/debug/
3486 iterator_self_move_assign_neg.cc: Likewise.
3487 * testsuite/23_containers/deque/debug/self_move_assign_neg.cc: Likewise.
3488 * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
3489 Likewise.
3490 * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
3491 Likewise.
3492 * testsuite/23_containers/multiset/debug/
3493 iterator_self_move_assign_neg.cc: Likewise.
3494 * testsuite/23_containers/list/debug/self_move_assign_neg.cc:
3495 Likewise.
3496 * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
3497 Likewise.
3498 * testsuite/23_containers/unordered_multiset/debug/
3499 self_move_assign_neg.cc: Likewise.
3500 * testsuite/23_containers/unordered_multiset/debug/
3501 iterator_self_move_assign_neg.cc: Likewise.
3502 * testsuite/23_containers/map/debug/self_move_assign_neg.cc:
3503 Likewise.
3504 * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
3505 Likewise.
3506
3507 2012-03-08 Benjamin Kosnik <bkoz@redhat.com>
3508
3509 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.0.
3510 * include/bits/locale_facets.h: Adjust markup to avoid warnings.
3511 * include/ext/pb_ds/assoc_container.hpp: Same.
3512 * include/ext/pb_ds/priority_queue.hpp: Same.
3513 * include/std/fstream: Same.
3514 * include/std/ratio: Same.
3515 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust line
3516 numbers.
3517 * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
3518
3519 2012-03-08 Jonathan Wakely <jwakely.gcc@gmail.com>
3520
3521 PR libstdc++/52433
3522 * include/debug/safe_iterator.h (_Safe_iterator): Add debug checks
3523 to move constructor and move assignment operator.
3524
3525 2012-03-05 Paolo Carlini <paolo.carlini@oracle.com>
3526
3527 * include/bits/stl_algobase.h (iter_swap): In C++11 mode simply
3528 call swap.
3529 * include/bits/stl_bvector.h (swap(_Bit_reference,
3530 _Bit_reference), swap(_Bit_reference, bool&),
3531 swap(bool&, _Bit_reference)): Add.
3532 * testsuite/23_containers/vector/bool/swap.cc: New.
3533
3534 2012-03-04 Paolo Carlini <paolo.carlini@oracle.com>
3535 Jonathan Wakely <jwakely.gcc@gmail.com>
3536
3537 PR libstdc++/43813
3538 * include/bits/stl_iterator_base_types.h (_RequireInputIter): New.
3539 * include/ext/vstring.h (__versa_string<>::__versa_string
3540 (_InputIterator, _InputIterator, const _Alloc&),
3541 __versa_string<>::append(_InputIterator, _InputIterator),
3542 __versa_string<>::assign(_InputIterator, _InputIterator),
3543 __versa_string<>::insert(iterator, _InputIterator,
3544 _InputIterator), __versa_string<>::replace(iterator, iterator,
3545 _InputIterator, _InputIterator)): Use it.
3546 * include/bits/stl_list.h (list<>::list(_InputIterator,
3547 _InputIterator, const allocator_type&), list<>::assign(_InputIterator,
3548 _InputIterator), list<>::insert(iterator, _InputIterator,
3549 _InputIterator)): Likewise.
3550 * include/bits/stl_vector.h (vector<>::vector(_InputIterator,
3551 _InputIterator, const allocator_type&), vector<>::assign(_InputIterator,
3552 _InputIterator), vectort<>::insert(iterator, _InputIterator,
3553 _InputIterator)): Likewise.
3554 * include/bits/stl_deque.h (deque<>::deque(_InputIterator,
3555 _InputIterator, const allocator_type&), deque<>::deque(_InputIterator,
3556 _InputIterator), deque<>::insert(iterator, _InputIterator,
3557 _InputIterator)): Likewise.
3558 * include/bits/stl_bvector.h (vector<>::vector(_InputIterator,
3559 _InputIterator, const allocator_type&), vector<>::deque(_InputIterator,
3560 _InputIterator), vector<>::insert(iterator, _InputIterator,
3561 _InputIterator)): Likewise.
3562 * include/bits/forward_list.h (forward_list<>::forward_list
3563 (_InputIterator, _InputIterator, const allocator_type&),
3564 forward_list<>::assign(_InputIterator, _InputIterator),
3565 forward_list<>::insert_after(const_iterator, _InputIterator,
3566 _InputIterator)): Likewise.
3567 (forward_list<>::_M_initialize_dispatch(,, __true_type): Remove.
3568 (forward_list<>::_M_range_initialize): Add, adjust everywhere.
3569 * include/bits/forward_list.tcc: Adjust.
3570 * include/debug/forward_list: Adjust.
3571 * include/debug/vector: Likewise.
3572 * include/debug/deque: Likewise.
3573 * include/debug/list: Likewise.
3574 * testsuite/ext/vstring/requirements/do_the_right_thing.cc: New.
3575 * testsuite/23_containers/forward_list/requirements/
3576 do_the_right_thing.cc: Likewise.
3577 * testsuite/23_containers/vector/requirements/
3578 do_the_right_thing.cc: Likewise.
3579 * testsuite/23_containers/deque/requirements/
3580 do_the_right_thing.cc: Likewise.
3581 * testsuite/23_containers/list/requirements/
3582 do_the_right_thing.cc: Likewise.
3583 * testsuite/23_containers/forward_list/requirements/dr438/
3584 assign_neg.cc: Adjust dg-error line number.
3585 * testsuite/23_containers/forward_list/requirements/dr438/
3586 insert_neg.cc: Likewise.
3587 * testsuite/23_containers/forward_list/requirements/dr438/
3588 constructor_1_neg.cc: Likewise.
3589 * testsuite/23_containers/forward_list/requirements/dr438/
3590 constructor_2_neg.cc: Likewise.
3591 * testsuite/23_containers/vector/requirements/dr438/
3592 assign_neg.cc: Likewise.
3593 * testsuite/23_containers/vector/requirements/dr438/
3594 insert_neg.cc: Likewise.
3595 * testsuite/23_containers/vector/requirements/dr438/
3596 constructor_1_neg.cc: Likewise.
3597 * testsuite/23_containers/vector/requirements/dr438/
3598 constructor_2_neg.cc: Likewise.
3599 * testsuite/23_containers/deque/requirements/dr438/
3600 assign_neg.cc: Likewise.
3601 * testsuite/23_containers/deque/requirements/dr438/
3602 insert_neg.cc: Likewise.
3603 * testsuite/23_containers/deque/requirements/dr438/
3604 constructor_1_neg.cc: Likewise.
3605 * testsuite/23_containers/deque/requirements/dr438/
3606 constructor_2_neg.cc: Likewise.
3607 * testsuite/23_containers/list/requirements/dr438/
3608 assign_neg.cc: Likewise.
3609 * testsuite/23_containers/list/requirements/dr438/
3610 insert_neg.cc: Likewise.
3611 * testsuite/23_containers/list/requirements/dr438/
3612 constructor_1_neg.cc: Likewise.
3613 * testsuite/23_containers/list/requirements/dr438/
3614 constructor_2_neg.cc: Likewise.
3615
3616 2012-03-04 Jonathan Wakely <jwakely.gcc@gmail.com>
3617
3618 PR libstdc++/52433
3619 * include/debug/safe_iterator.h (_Safe_iterator): Add move
3620 constructor and move assignment operator.
3621 * testsuite/23_containers/vector/debug/52433.cc: New.
3622
3623 2012-03-02 Paolo Carlini <paolo.carlini@oracle.com>
3624
3625 * include/std/limits (numeric_limits): Fix returns per C++11.
3626 * testsuite/18_support/numeric_limits/primary.cc: New.
3627
3628 2012-03-02 Benjamin Kosnik <bkoz@redhat.com>
3629
3630 * include/c_global/cstdio: Remove extraneous extern.
3631 * include/c_std/cstdio: Same.
3632
3633 2012-03-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3634
3635 * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
3636 * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
3637 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
3638 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
3639 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
3640
3641 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
3642 Ramana Radhakrishnan <ramana@gcc.gnu.org>
3643
3644 PR libstdc++/51785
3645 * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
3646 * configure.ac: Call it.
3647 * configure: Regenerate.
3648 * config.h.in: Same.
3649 * config/os/gnu-linux/os_defines.h: Conditionally undefine
3650 _GLIBCXX_HAVE_GETS.
3651 * include/c_global/cstdio: Conditionally declare deprecated gets.
3652 * include/c_std/cstdio: Same.
3653
3654 2012-03-01 Michael Spertus <mike_spertus@symantec.com>
3655
3656 * include/tr2/type_traits (typelist): To __reflection_typelist.
3657 (first, rest, empty): Remove.
3658
3659 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
3660
3661 * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
3662 * testsuite/Makefile.in: Regenerate.
3663
3664 2012-02-29 H.J. Lu <hongjiu.lu@intel.com>
3665
3666 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
3667
3668 2012-02-28 Benjamin Kosnik <bkoz@redhat.com>
3669
3670 PR libstdc++/52191
3671 * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
3672 symbols added into the latest version. Mark tls entities as
3673 undesignated.
3674
3675 2012-02-28 Jakub Jelinek <jakub@redhat.com>
3676
3677 PR bootstrap/52414
3678 * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
3679 if they are at the beginning of lines (with optional whitespace before
3680 #).
3681 * src/Makefile.in: Regenerated.
3682
3683 2012-02-27 Jakub Jelinek <jakub@redhat.com>
3684
3685 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
3686 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
3687 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
3688 Likewise.
3689 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
3690 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
3691 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
3692 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
3693 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
3694 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
3695
3696 2012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3697
3698 PR libstdc++/52188
3699 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
3700 Remove ENABLE_SYMVERS_SOL2.
3701 * configure: Regenerate.
3702 * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
3703 Postprocess mapfile.
3704 [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
3705 * src/Makefile.in: Regenerate.
3706
3707 * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
3708 Don't export
3709 _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
3710
3711 2012-02-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3712
3713 PR testsuite/52201
3714 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
3715 Require atomic builtins.
3716 * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
3717
3718 2012-02-23 Jason Merrill <jason@redhat.com>
3719
3720 * include/bits/locale_facets.h (class num_get): Undo reordering of
3721 do_get virtual functions.
3722
3723 2012-02-14 Edward Smith-Rowland <3dw4rd@verizon.net>
3724
3725 * testsuite/26_numerics/random/
3726 uniform_real_distribution/requirements/typedefs.cc: Check param_type.
3727 * testsuite/26_numerics/random/
3728 piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
3729 * testsuite/26_numerics/random/
3730 chi_squared_distribution/requirements/typedefs.cc: Ditto.
3731 * testsuite/26_numerics/random/
3732 normal_distribution/requirements/typedefs.cc: Ditto.
3733 * testsuite/26_numerics/random/
3734 uniform_int_distribution/requirements/typedefs.cc: Ditto.
3735 * testsuite/26_numerics/random/
3736 poisson_distribution/requirements/typedefs.cc: Ditto.
3737 * testsuite/26_numerics/random/
3738 bernoulli_distribution/requirements/typedefs.cc: Ditto.
3739 * testsuite/26_numerics/random/
3740 discrete_distribution/requirements/typedefs.cc: Ditto.
3741 * testsuite/26_numerics/random/
3742 weibull_distribution/requirements/typedefs.cc: Ditto.
3743 * testsuite/26_numerics/random/
3744 cauchy_distribution/requirements/typedefs.cc: Ditto.
3745 * testsuite/26_numerics/random/
3746 negative_binomial_distribution/requirements/typedefs.cc: Ditto.
3747 * testsuite/26_numerics/random/
3748 gamma_distribution/requirements/typedefs.cc: Ditto.
3749 * testsuite/26_numerics/random/
3750 fisher_f_distribution/requirements/typedefs.cc: Ditto.
3751 * testsuite/26_numerics/random/
3752 exponential_distribution/requirements/typedefs.cc: Ditto.
3753 * testsuite/26_numerics/random/
3754 binomial_distribution/requirements/typedefs.cc: Ditto.
3755 * testsuite/26_numerics/random/
3756 lognormal_distribution/requirements/typedefs.cc: Ditto.
3757 * testsuite/26_numerics/random/
3758 extreme_value_distribution/requirements/typedefs.cc: Ditto.
3759 * testsuite/26_numerics/random/
3760 piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
3761 * testsuite/26_numerics/random/
3762 student_t_distribution/requirements/typedefs.cc: Ditto.
3763 * testsuite/26_numerics/random/
3764 geometric_distribution/requirements/typedefs.cc: Ditto.
3765
3766 2012-02-21 Benjamin Kosnik <bkoz@redhat.com>
3767
3768 PR libstdc++/50349
3769 * config/abi/pre/gnu.ver: Only one local.
3770 * config/abi/pre/gnu-versioned-namespace.ver: Same.
3771
3772 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
3773
3774 PR libstdc++/52317 (cont)
3775 * include/profile/unordered_map: Ad Library Exception comment.
3776 * include/profile/set: Likewise.
3777 * include/profile/base.h: Likewise.
3778 * include/profile/impl/profiler_list_to_slist.h: Likewise.
3779 * include/profile/impl/profiler_container_size.h: Likewise.
3780 * include/profile/impl/profiler_vector_size.h: Likewise.
3781 * include/profile/impl/profiler_hash_func.h: Likewise.
3782 * include/profile/impl/profiler_trace.h: Likewise.
3783 * include/profile/impl/profiler_list_to_vector.h: Likewise.
3784 * include/profile/impl/profiler_vector_to_list.h: Likewise.
3785 * include/profile/impl/profiler.h: Likewise.
3786 * include/profile/impl/profiler_state.h: Likewise.
3787 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
3788 * include/profile/impl/profiler_algos.h: Likewise.
3789 * include/profile/impl/profiler_hashtable_size.h: Likewise.
3790 * include/profile/impl/profiler_node.h: Likewise.
3791 * include/profile/vector: Likewise.
3792 * include/profile/unordered_set: Likewise.
3793 * include/profile/map.h: Likewise.
3794 * include/profile/map: Likewise.
3795
3796 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
3797
3798 PR libstdc++/52317
3799 * python/Makefile.am: Update boilerplate license text to GPLv3.
3800 * include/profile/unordered_map: Likewise.
3801 * include/profile/set: Likewise.
3802 * include/profile/base.h: Likewise.
3803 * include/profile/impl/profiler_list_to_slist.h: Likewise.
3804 * include/profile/impl/profiler_container_size.h: Likewise.
3805 * include/profile/impl/profiler_vector_size.h: Likewise.
3806 * include/profile/impl/profiler_hash_func.h: Likewise.
3807 * include/profile/impl/profiler_trace.h: Likewise.
3808 * include/profile/impl/profiler_list_to_vector.h: Likewise.
3809 * include/profile/impl/profiler_vector_to_list.h: Likewise.
3810 * include/profile/impl/profiler.h: Likewise.
3811 * include/profile/impl/profiler_state.h: Likewise.
3812 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
3813 * include/profile/impl/profiler_algos.h: Likewise.
3814 * include/profile/impl/profiler_hashtable_size.h: Likewise.
3815 * include/profile/impl/profiler_node.h: Likewise.
3816 * include/profile/vector: Likewise.
3817 * include/profile/unordered_set: Likewise.
3818 * include/profile/map.h: Likewise.
3819 * include/profile/map: Likewise.
3820 * testsuite/21_strings/basic_string/numeric_conversions/
3821 wchar_t/dr1261.cc: Likewise.
3822 * testsuite/21_strings/basic_string/numeric_conversions/
3823 char/dr1261.cc: Likewise.
3824 * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
3825
3826 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
3827
3828 PR libstdc++/52241
3829 * src/c++98/tree.cc (local_Rb_tree_increment,
3830 local_Rb_tree_decrement): Add.
3831 (_Rb_tree_increment(const _Rb_tree_node_base*),
3832 _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
3833 (_Rb_tree_increment(_Rb_tree_node_base*),
3834 _Rb_tree_decrement(_Rb_tree_node_base*)): New.
3835
3836 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
3837
3838 PR libstdc++/52309
3839 * include/bits/hashtable_policy.h (_Equality_base<, true,>::
3840 _M_equal(const _Hashtable&)): Compare values with operator==.
3841 * testsuite/23_containers/unordered_set/operators/52309.cc: New.
3842
3843 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
3844
3845 PR libstdc++/51798 continued.
3846 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
3847 __atomic_, not __sync.
3848 * configure: Regenerated.
3849
3850 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
3851
3852 PR libstdc++/47058
3853 * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
3854 (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
3855 * configure.ac: Use it.
3856 * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
3857 * configure: Regenerate.
3858 * python/Makefile.in: Same.
3859 * Makefile.in: Same.
3860 * doc/Makefile.in: Same.
3861 * include/Makefile.in: Same.
3862 * po/Makefile.in: Same.
3863 * python/Makefile.in: Same.
3864 * src/Makefile.in: Same.
3865 * src/c++11/Makefile.in: Same.
3866 * src/c++98/Makefile.in: Same.
3867 * testsuite/Makefile.in: Same.
3868
3869 2012-02-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3870
3871 PR libstdc++/52189
3872 * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
3873 --enable-libstdcxx-threads.
3874 Disable on Solaris 8/9 with symbol versioning.
3875 * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
3876 GLIBCXX_ENABLE_SYMVERS.
3877 * configure: Regenerate.
3878 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
3879
3880 2012-02-15 DJ Delorie <dj@redhat.com>
3881
3882 * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
3883
3884 2012-02-15 Benjamin Kosnik <bkoz@redhat.com>
3885
3886 PR libstdc++/51368
3887 * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
3888 * configure.ac: Use it.
3889 * python/Makefile.am: Same.
3890 * configure: Regenerate.
3891 * python/Makefile.in: Regenerate.
3892 * Makefile.in: Same.
3893 * doc/Makefile.in: Same.
3894 * include/Makefile.in: Same.
3895 * po/Makefile.in: Same.
3896 * src/Makefile.in: Same.
3897 * src/c++11/Makefile.in: Same.
3898 * src/c++98/Makefile.in: Same.
3899 * testsuite/Makefile.in: Same.
3900
3901 2012-02-14 Jonathan Wakely <jwakely.gcc@gmail.com>
3902
3903 * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
3904
3905 2012-02-14 Tom Tromey <tromey@redhat.com>
3906
3907 * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
3908 tests.
3909 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
3910 Rewrite.
3911 (Tr1HashtableIterator.update): Remove.
3912 (Tr1HashtableIterator.next): Rewrite.
3913
3914 2012-02-13 Benjamin Kosnik <bkoz@redhat.com>
3915
3916 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
3917 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
3918
3919 2012-02-13 Richard Henderson <rth@redhat.com>
3920
3921 PR libstdc++/51798 continued.
3922 * include/bits/shared_ptr_base.h
3923 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
3924 outside compare_exchange loop.
3925 * include/tr1/shared_ptr.h: Same.
3926 * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
3927 version of compare_exchange.
3928 (__compare_and_swap_64): Same.
3929 * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
3930 * libsupc++/guard.cc (__cxa_guard_acquire): Same.
3931
3932 2012-02-10 Benjamin Kosnik <bkoz@redhat.com>
3933 Jonathan Wakely <jwakely.gcc@gmail.com>
3934
3935 PR libstdc++/51798 continued.
3936 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
3937 builtins instead of __sync_* builtins for atomic functionality.
3938 * include/bits/shared_ptr_base.h: Same.
3939 * include/parallel/compatibility.h: Same.
3940 * include/profile/impl/profiler_state.h: Same.
3941 * include/tr1/shared_ptr.h: Same.
3942 * libsupc++/eh_ptr.cc: Same.
3943 * libsupc++/eh_throw.cc: Same.
3944 * libsupc++/eh_tm.cc: Same.
3945 * libsupc++/guard.cc: Same.
3946 * configure: Regenerated.
3947 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
3948 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
3949
3950 2012-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3951
3952 PR libstdc++/51296
3953 * config/os/osf/ctype_base.h,
3954 config/os/osf/ctype_configure_char.cc,
3955 config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
3956 Copy from config/os/generic.
3957 * config/os/osf/os_defines.h: Likewise.
3958 (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
3959 Define.
3960 * configure.host <osf*>: Use os/osf for os_include_dir.
3961
3962 2012-02-10 Uros Bizjak <ubizjak@gmail.com>
3963
3964 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
3965
3966 2012-02-09 Jonathan Wakely <jwakely.gcc@gmail.com>
3967
3968 * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
3969
3970 2012-02-08 Jonathan Wakely <jwakely.gcc@gmail.com>
3971
3972 * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
3973
3974 2012-02-07 Benjamin Kosnik <bkoz@redhat.com>
3975
3976 * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
3977 * doc/xml/manual/documentation_hacking.xml: Update.
3978
3979 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
3980
3981 * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
3982 selector.
3983 * testsuite/30_threads/call_once/49668.cc: Likewise.
3984 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
3985 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3986 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
3987 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3988 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
3989 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3990 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
3991 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3992 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3993 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3994 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3995 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3996 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3997 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3998 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3999 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
4000 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
4001 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
4002 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
4003 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
4004 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
4005 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
4006
4007 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
4008
4009 PR libstdc++/51296
4010 * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
4011 * src/c++11/condition_variable.cc (condition_variable): Use macro for
4012 initializer function.
4013
4014 PR libstdc++/51906
4015 * config/os/bsd/darwin/os_defines.h: Disable static initializer for
4016 recursive mutexes.
4017
4018 2012-02-06 Jonathan Wakely <jwakely.gcc@gmail.com>
4019
4020 PR libstdc++/52128
4021 * src/c++11/future.cc: Add explicit instantiation.
4022
4023 2012-02-06 François Dumont <fdumont@gcc.gnu.org>
4024
4025 * include/debug/safe_iterator.h
4026 (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
4027 creation of a _Safe_iterator instance to do the check.
4028
4029 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
4030
4031 PR libstdc++/52104
4032 * include/std/future (__future_base::_Async_state_common): Define
4033 destructor inline for targets without TLS.
4034 * src/c++11/future.cc (__future_base::_Async_state_common): Only
4035 define destructor for TLS targets.
4036
4037 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
4038
4039 PR libstdc++/51956
4040 * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
4041 (SharedPointerPrinter): This. Also show weak count.
4042 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
4043
4044 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
4045
4046 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
4047 PASS instead of XFAIL.
4048
4049 2012-02-05 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
4050 Paolo Carlini <paolo.carlini@oracle.com>
4051
4052 PR libstdc++/52119
4053 * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
4054
4055 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
4056
4057 PR libstdc++/49445
4058 * testsuite/29_atomics/atomic/cons/49445.cc: Add.
4059
4060 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
4061
4062 PR libstdc++/51811
4063 * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
4064 * testsuite/29_atomics/atomic/operators/51811.cc: New.
4065 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
4066
4067 2012-02-03 Jakub Jelinek <jakub@redhat.com>
4068
4069 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
4070 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
4071 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
4072 Likewise.
4073 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
4074 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
4075 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
4076 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
4077 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
4078 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
4079
4080 2012-02-02 Benjamin Kosnik <bkoz@redhat.com>
4081
4082 PR libstdc++/52068
4083 * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
4084 libc__11_la_SOURCES): Remove.
4085 * src/c++11/Makefile.in: Regenerate.
4086 * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
4087 libc__98_la_SOURCES): Remove.
4088 * src/c++98/Makefile.in: Regenerate.
4089
4090 2012-02-01 Jonathan Wakely <jwakely.gcc@gmail.com>
4091
4092 PR libstdc++/49204
4093 * include/std/future (__future_base::_State_base::wait()): Use lambda
4094 expression for predicate and remove redundant test.
4095 (__future_base::_State_base::wait_for()): Return future_status and
4096 use lambda expression for predicate.
4097 (__future_base::_State_base::wait_until()): Likewise.
4098 (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
4099 (__future_base::_Async_state): Replace with _Async_state_common
4100 class for non-dependent functionality and _Async_state_impl class
4101 template for dependent functionality.
4102 (__future_base::_Async_state_common::_M_join): Serialize attempts to
4103 join thread.
4104 (__future_base::_Async_state_common::_M_run_deferred): Join.
4105 (__future_base::_Async_state::_M_do_run): Replace with lambda.
4106 * src/c++11/future.cc (__future_base::_Async_state_common): Define
4107 destructor, so key function is in the library.
4108 * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
4109 * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
4110 future_status return instead of bool.
4111 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
4112 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
4113 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
4114 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
4115 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
4116 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
4117 * testsuite/30_threads/promise/members/swap.cc: Likewise.
4118
4119 2012-01-30 Tom Tromey <tromey@redhat.com>
4120
4121 PR libstdc++/51649:
4122 * testsuite/libstdc++-prettyprinters/debug.cc: New file.
4123 * testsuite/lib/gdb-test.exp (regexp-test): New proc.
4124 (note-test): Update.
4125 (gdb-test): Handle regexp tests. Add some logging.
4126 * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
4127 (placeholder, use): Remove.
4128 (main): Add tests for deque, list, map, and set iterators. Add
4129 tests for slist and slist iterator.
4130 * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
4131 namespace.
4132 * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
4133 the type's _Node typedef.
4134 (StdListIteratorPrinter.to_string): Change how node type is
4135 computed.
4136 (StdSlistPrinter.children): Use the type's _Node typedef.
4137 (StdSlistIteratorPrinter.to_string): Likewise.
4138 (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
4139 typedef.
4140 (StdMapPrinter.children): Change how the node's type is computed.
4141 (StdSetPrinter.children): Likewise.
4142 (StdForwardListPrinter.children): Use the type's _Node typedef.
4143 (Printer.add_version): New method.
4144 (Printer.add_container): New method.
4145 (build_libstdcxx_dictionary): Handle __7 and __cxx1998
4146 namespaces.
4147 (find_type): New function.
4148
4149 2012-01-27 Paolo Carlini <paolo.carlini@oracle.com>
4150
4151 PR libstdc++/51795
4152 * include/bits/random.h (linear_congruential_generator): Add
4153 static_assert preventing instantiation for values of 'a' and 'm'
4154 currently handled incorrectly by _Mod::__calc.
4155 * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
4156 uses of _Mod::__calc.
4157
4158 2012-01-27 Jakub Jelinek <jakub@redhat.com>
4159
4160 PR libstdc++/51798
4161 * config/cpu/generic/atomicity_builtins/atomicity.h
4162 (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
4163 with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
4164 * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
4165 Likewise.
4166
4167 2011-01-27 Rafael Avila de Espindola <rafael.espindola@gmail.com>
4168
4169 * libsupc++/typeinfo: Correctly match #pragma GCC visibility
4170 pop with #pragma GCC visibility push.
4171
4172 2012-01-27 Benjamin Kosnik <bkoz@redhat.com>
4173 Matthias Klose <doko@ubuntu.com>
4174
4175 * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
4176 * configure.in: Regenerated.
4177 * src/Makefile.am (all-once, install-data-once): New rules.
4178 (all-local, install-data-local): Use them.
4179 (build-debug, install-debug): Tweak.
4180 * src/Makefile.in: Regenerate.
4181
4182 2012-01-27 Richard Henderson <rth@redhat.com>
4183
4184 * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
4185 based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
4186 (ATOMIC_FLAG_INIT): Initialize with 0, not false.
4187 (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
4188
4189 2012-01-26 Jakub Jelinek <jakub@redhat.com>
4190
4191 PR bootstrap/51985
4192 * src/c++98/Makefile.am (libc__98_la_SOURCES,
4193 libc__98convenience_la_SOURCES): Remove $(inst_sources).
4194 * src/c++98/Makefile.in: Regenerated.
4195
4196 2012-01-25 Richard Sandiford <rdsandiford@googlemail.com>
4197
4198 * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
4199 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
4200 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
4201 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
4202 * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
4203 dg-require-fileio.
4204 * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
4205 * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
4206 * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
4207 * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
4208 Likewise.
4209 * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
4210
4211 2012-01-25 Matthias Klose <doko@ubuntu.com>
4212
4213 * testsuite/30_threads/condition_variable_any/requirements: Remove
4214 empty directory.
4215
4216 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
4217
4218 * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
4219 * src/Makefile.in: Regenerate.
4220
4221 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
4222
4223 PR libstdc++/49829
4224 Add libc++98convenience.la, libc++11convenience.la.
4225 * src/c++98: New directory.
4226 * src/c++11: New directory.
4227 * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
4228 * configure: Regenerated.
4229 * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
4230 * Makefile.in: Regenerate.
4231 * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
4232 -fno-implicit-templates.
4233 * libsupc++/Makefile.in: Regenerate.
4234 * src/Makefile.am (inst_sources): Move... C++11 files into
4235 separate directory for libstdc++11convenience.la. Files are:
4236 fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
4237 (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
4238 compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
4239 functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
4240 system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
4241 mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
4242 (libstdc++convenience.la): Add new target.
4243 (SUBDIRS): Add c++11, c++98.
4244 * src/Makefile.in: Regenerate.
4245 * src/c++11/Makefile.am: New.
4246 * src/c++11/Makefile.in: Generate.
4247 * src/c++98/Makefile.am: New, C++98 files.
4248 * src/c++98/Makefile.in: Generate.
4249
4250 2012-01-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4251
4252 libstdc++-v3:
4253 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
4254 32-bit Solaris 10/x86.
4255 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
4256
4257 2012-01-21 Jonathan Wakely <jwakely.gcc@gmail.com>
4258
4259 PR libstdc++/50982
4260 * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
4261
4262 2012-01-19 Jakub Jelinek <jakub@redhat.com>
4263
4264 PR libstdc++/51845
4265 * include/bits/hashtable.h
4266 (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
4267 _M_buckets[__n_bkt] if __is_bucket_begin.
4268 * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
4269 New test.
4270
4271 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
4272
4273 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
4274
4275 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
4276
4277 * configure.ac: Move epub checks...
4278 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
4279 test -f instead of AC_CHECK_FILES.
4280
4281 2012-01-18 François Dumont <fdumont@gcc.gnu.org>
4282 Roman Kononov <roman@binarylife.net>
4283
4284 PR libstdc++/51866
4285 * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
4286 Do not keep a reference to a potentially moved instance.
4287 * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
4288 * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
4289
4290 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
4291
4292 * doc/html/*: Regenerate.
4293
4294 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
4295
4296 * configure.ac (BUILD_EPUB): Adjust for epub3.
4297 * configure: Regenerate.
4298 * Makefile.in: Same.
4299 * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
4300 * doc/Makefile.in: Regenerate.
4301 * include/Makefile.in: Same.
4302 * libsupc++/Makefile.in: Same.
4303 * po/Makefile.in: Same.
4304 * python/Makefile.in: Same.
4305 * src/Makefile.in: Same.
4306 * testsuite/Makefile.in: Same.
4307
4308 * doc/xml/manual/documentation_hacking.xml: Update.
4309
4310 2012-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4311
4312 PR target/47852
4313 * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
4314
4315 2012-01-14 Jonathan Wakely <jwakely.gcc@gmail.com>
4316
4317 * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
4318
4319 2012-01-13 François Dumont <fdumont@gcc.gnu.org>
4320
4321 * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
4322 base class of ...
4323 (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
4324 * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
4325 by _M_before_begin. Review implementation so that we do not need to
4326 look for previous non-empty bucket when inserting nodes.
4327
4328 2012-01-09 Kai Tietz <ktietz@redhat.com>
4329
4330 PR libstc++/51673 part 2
4331 * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
4332 operators signature for LLP64 size_t, and adjusted signatures for
4333 mt-allocator using size_t.
4334
4335 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
4336
4337 PR libstc++/51673 part 1
4338 * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
4339 with gnu.ver.
4340
4341 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
4342
4343 * fragment.am (WARN_CXXFLAGS): Add -Wabi.
4344 * Makefile.in: Regenerate.
4345 * doc/Makefile.in: Same.
4346 * include/Makefile.in: Same.
4347 * libsupc++/Makefile.in: Same.
4348 * src/Makefile.in: Same.
4349 * testsuite/Makefile.in: Same.
4350 * po/Makefile.in: Same.
4351 * python/Makefile.in: Same.
4352
4353 2012-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
4354
4355 * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
4356 * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
4357
4358 2012-01-06 Jason Merrill <jason@redhat.com>
4359
4360 * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
4361 expected demangling.
4362
4363 2012-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
4364
4365 PR libstdc++/51504
4366 * doc/xml/manual/debug.xml: Suggest using symbol interposition
4367 to override symbols using annotation macros.
4368
4369 2012-01-05 François Dumont <fdumont@gcc.gnu.org>
4370
4371 * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
4372 protected rather than private, use it...
4373 * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
4374 * testsuite/23_containers/unordered_set/observers.cc: New.
4375 * testsuite/23_containers/unordered_multiset/observers.cc: New.
4376 * testsuite/23_containers/unordered_map/observers.cc: New.
4377 * testsuite/23_containers/unordered_multimap/observers.cc: New.
4378
4379 2012-01-03 François Dumont <fdumont@gcc.gnu.org>
4380
4381 * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
4382 specific _Hashtable_ebo_helper. Hide this implementation detail thanks
4383 to private inheritance.
4384
4385 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
4386
4387 PR c++/51738
4388 * testsuite/23_containers/map/element_access/39901.cc: New.