re PR libstdc++/56905 ([C++11][DR 1130] std::copy_exception should be removed or...
[gcc.git] / libstdc++-v3 / ChangeLog
1 2013-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
2
3 PR libstdc++/56905
4 * libsupc++/exception_ptr.h (copy_exception): Deprecate and
5 move implementation to make_exception_ptr.
6 * include/std/future (_State_base::_M_break_promise): Replace
7 copy_exception with make_exception_ptr.
8 * testsuite/18_support/exception_ptr/move.cc: Likewise.
9 * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
10 * testsuite/30_threads/future/members/get2.cc: Likewise.
11 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
12 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
13 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
14 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
15
16 2013-04-22 Jason Merrill <jason@redhat.com>
17
18 * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
19
20 * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
21 substitution" lines.
22
23 * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
24 function-cv-quals.
25 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
26 * testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
27 * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
28
29 2013-04-22 François Dumont <fdumont@gcc.gnu.org>
30
31 * include/bits/hashtable_policy.h: Add C++11 allocator support.
32 * include/bits/hashtable.h: Likewise.
33 * include/bits/unordered_set.h: Likewise.
34 * include/bits/unordered_map.h: Likewise.
35 * include/debug/unordered_set: Likewise.
36 * include/debug/unordered_map: Likewise.
37 * include/std/unordered_set: Remove bits/algobase.h
38 include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
39 * include/std/unordered_map: Likewise.
40 * include/ext/throw_allocator.h: Add checks on calls to allocator
41 construct/destroy.
42 (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
43 (std::hash<__gnu_cxx::throw_value_random>): Likewise.
44 * testsuite/util/regression/rand/priority_queue
45 /container_rand_regression_test.tcc: Adapt.
46 * testsuite/util/regression/rand/assoc
47 /container_rand_regression_test.tcc: Likewise.
48 * testsuite/util/testsuite_counter_type.h: Add count of destructors.
49 * testsuite/23_containers/unordered_set
50 /not_default_constructible_hash_neg.cc: Adjust dg-error line number.
51 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
52 * testsuite/23_containers/unordered_set/allocator/copy.cc: New.
53 * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
54 * testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
55 * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
56 * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
57 * testsuite/23_containers/unordered_set/allocator/swap.cc: New.
58 * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
59 * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
60 New.
61 * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
62 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
63 New.
64 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
65 * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
66 * testsuite/23_containers/unordered_map/allocator/copy.cc: New.
67 * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
68 * testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
69 * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
70 * testsuite/23_containers/unordered_map/allocator/noexcept.cc:
71 New.
72 * testsuite/23_containers/unordered_map/allocator/swap.cc: New.
73 * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
74 * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
75 New.
76 * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
77 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
78 New.
79 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
80 * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
81
82 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
83
84 * include/std/type_traits (is_signed): Simplify.
85 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
86 Adjust dg-error line numbers.
87 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
88 Likewise.
89 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
90
91 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
92
93 N3669
94 * include/std/complex (complex<float>::real, complex<float>::imag,
95 complex<double>::real, complex<double>::imag,
96 complex<long double>::real, complex<long double>::imag): Declare
97 as const member functions.
98 * include/std/type_traits (integral_constant<>::operator value_type):
99 Likewise.
100
101 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
102
103 PR libstdc++/57010
104 * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
105 * testsuite/25_algorithms/pop_heap/57010.cc: New.
106
107 2013-04-21 Evgeniy Stepanov <eugenis@google.com>
108
109 * src/c++11/system_error.cc (generic_category_instance): Add
110 initializer.
111 (system_category_instance): Likewise.
112 * src/c++11/future.cc (__fec): Likewise.
113
114 2013-04-20 Jonathan Wakely <jwakely.gcc@gmail.com>
115
116 * doc/xml/manual/extensions.xml: Fix anachronism.
117
118 2013-04-09 Tom Tromey <tromey@redhat.com>
119
120 * configure, config.h.in: Rebuild.
121 * configure.ac: Use GLIBCXX_CHECK_SDT_H. Don't check for
122 sys/sdt.h.
123 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
124
125 2013-04-09 Uros Bizjak <ubizjak@gmail.com>
126
127 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
128
129 2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
130
131 * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
132
133 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
134
135 * include/Makefile.am: Add ext/aligned_buffer.h
136 * include/Makefile.in: Regenerate.
137 * include/ext/aligned_buffer.h: New.
138 * include/std/future (_Result): Use __aligned_buffer.
139 * include/bits/forward_list.h (_Fwd_list_node): Likewise.
140 * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
141 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
142 number.
143
144 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
145
146 * include/bits/forward_list.h: Only include required headers.
147 (forward_list::reference): Define directly, not using __alloc_traits.
148 (forward_list::const_reference): Likewise.
149
150 2013-04-07 François Dumont <fdumont@gcc.gnu.org>
151
152 * include/std/functional (_Derives_from_unary_function): Remove.
153 (_Derives_from_binary_function): Remove.
154 * include/std/type_traits (__sfinae_types): Remove.
155 (__is_assignable_helper): Adapt.
156 (__is_convertible_helper): Adapt.
157 (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
158 Remove several explicit instantiations of integral_constant.
159 * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
160 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
161 Adapt dg-error line number.
162 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
163 Likewise.
164 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
165 * testsuite/20_util/bind/ref_neg.cc: Likewise.
166
167 2013-04-05 Jonathan Wakely <jwakely.gcc@gmail.com>
168
169 PR libstdc++/56841
170 * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
171 get_terminate() accessors.
172 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
173 * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
174 available.
175 * libsupc++/new_handler.cc: Likewise.
176
177 2013-04-04 Jonathan Wakely <jwakely.gcc@gmail.com>
178
179 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
180
181 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
182
183 PR libstdc++/56834
184 * include/debug/array (tuple_size, tuple_element): Do not declare.
185 * include/profile/array: Likewise.
186 * testsuite/23_containers/array/tuple_interface/
187 tuple_element_debug_neg.cc: Adjust dg-error line number.
188
189 2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
190
191 * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
192 * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
193 Define.
194 (set_terminate(terminate_handler)): Set atomically.
195 (set_unexpected(terminate_handler)): Likewise.
196 * libsupc++/new (get_new_handler()): Declare.
197 * libsupc++/new_handler.cc (get_new_handler()): Define.
198 (set_new_handler(new_handler)): Set atomically.
199 (__new_handler): Use internal linkage.
200 * libsupc++/new_op.cc (operator new): Use get_new_handler().
201 * libsupc++/new_opnt.cc (operator new): Likewise.
202 * acinclude.m4: Bump libtool_VERSION to 6:19:0.
203 * configure: Regenerate.
204 * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
205 * libsupc++/Makefile.in: Regenerate.
206 * config/abi/pre/gnu.ver: Add new exports.
207 * doc/xml/manual/status_cxx2011.xml: Update.
208 * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
209 for handlers.
210 * testsuite/18_support/headers/new/synopsis.cc: Likewise.
211 * testsuite/18_support/new_handler.cc: New.
212 * testsuite/18_support/terminate_handler.cc: New.
213 * testsuite/18_support/unexpected_handler.cc: New.
214
215 2013-04-02 Jonathan Wakely <jwakely.gcc@gmail.com>
216
217 * doc/xml/manual/appendix_contributing.xml: Remove broken link and
218 defer to general documentation on contributing to GCC.
219 * doc/html/*: Regenerate.
220
221 2013-03-30 Gerald Pfeifer <gerald@pfeifer.com>
222
223 * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
224
225 * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
226 Coding Standards.
227
228 * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
229
230 * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
231
232 * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
233
234 * doc/xml/manual/messages.xml: Adjust link to Java API specs.
235
236 * doc/xml/manual/policy_data_structures: Remove direct link to
237 IBM Haifa Research Labs.
238
239 * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
240 for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
241 Remove direct link to IBM Haifa Research Labs.
242
243 * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
244 papers.
245
246 * doc/xml/manual/shared_ptr.xml: Use canonical address for
247 www.boost.org.
248
249 2013-03-27 Kai Tietz <ktietz@redhat.com>
250
251 * crossconfig.m4: Add support for cygwin x64 target.
252 * configure: Regenerated.
253
254 2013-03-25 Kai Tietz <ktietz@redhat.com>
255
256 * testsuite/18_support/50594.cc: For mingw-targets use only static
257 libstdc++-version.
258 * testsuite/19_diagnostics/error_category/operators/equal.cc
259 * testsuite/19_diagnostics/error_code/cons/1.cc
260 * testsuite/19_diagnostics/error_code/operators/bool.cc
261 * testsuite/19_diagnostics/error_code/operators/equal.cc
262 * testsuite/19_diagnostics/error_code/operators/not_equal.cc
263 * testsuite/19_diagnostics/error_condition/cons/1.cc
264 * testsuite/19_diagnostics/error_condition/operators/bool.cc
265 * testsuite/19_diagnostics/error_condition/operators/equal.cc
266 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
267 * testsuite/23_containers/set/requirements/exception/basic.cc
268 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
269 * testsuite/lib/dg-options.exp (dg-additional-options): New option.
270
271 2013-03-24 Jonathan Wakely <jwakely.gcc@gmail.com>
272
273 PR libstdc++/56170
274 * include/ext/debug_allocator.h (debug_allocator): Add missing members
275 to meet allocator requirements.
276 * testsuite/ext/debug_allocator/56170.cc: New.
277
278 2013-03-22 Paolo Carlini <paolo.carlini@oracle.com>
279
280 PR libstdc++/56678
281 * include/std/chrono (__is_ratio): Uglify T.
282
283 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>
284
285 PR libstdc++/55977 (partial, std::vector and std::deque bits)
286 * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
287 _InputIterator, std::input_iterator_tag)): Use emplace_back.
288 * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
289 _InputIterator, std::input_iterator_tag)): Likewise.
290 * testsuite/23_containers/vector/cons/55977.cc: New.
291 * testsuite/23_containers/deque/cons/55977.cc: Likewise.
292 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
293 Adjust dg-error line number.
294 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
295 Likewise.
296
297 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>
298
299 PR libstdc++/55979
300 * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
301 _InputIterator, __false_type)): Use emplace_back.
302 * testsuite/23_containers/list/cons/55979.cc: New.
303 * testsuite/23_containers/list/modifiers/1.h: Adjust.
304 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
305 Adjust dg-error line number.
306
307 2013-03-16 Jason Merrill <jason@redhat.com>
308
309 PR c++/55017
310 * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
311
312 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
313
314 PR libstdc++/56468
315 * libsupc++/exception_ptr.h (type_info): Declare.
316
317 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
318
319 PR libstdc++/56002
320 * include/std/mutex (lock_guard, unique_lock, lock): Define without
321 depending on _GLIBCXX_HAS_GTHREADS.
322 * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
323
324 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
325
326 PR libstdc++/56492
327 * include/std/future (__future_base::_Result): Add result_type
328 typedef.
329 (__future_base::_S_allocate_result): Overload for std::allocator.
330 (__future_base::_Task_setter): Use _Result::result_type instead of
331 deducing the type from the task.
332 (__future_base::_Task_state): Store allocator to allow shared state
333 to be reset. Replace std::function with member of target object type
334 accessed via ...
335 (__future_base::_Task_state_base): New abstract base class.
336 (__future_base::_Task_state_base::_M_run): New virtual function to
337 invoke type-erased target object.
338 (__future_base::_Task_state_base::_M_reset): New virtual function to
339 create new shared_state using same target object and allocator.
340 (__future_base::__create_task_state): Allocate a new _Task_state.
341 (packaged_task::packaged_task): Use __create_task_state.
342 (packaged_task::reset): Use _Task_state_base::_M_reset.
343 * testsuite/30_threads/packaged_task/cons/56492.cc: New.
344
345 2013-03-15 Tom Tromey <tromey@redhat.com>
346
347 * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
348 (PROBE2): New macro.
349 * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
350 * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
351 * configure.ac: Check for sys/sdt.h.
352 * configure, config.h.in: Rebuild.
353
354 2013-03-14 Jonathan Wakely <jwakely.gcc@gmail.com>
355
356 PR libstdc++/56613
357 * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
358 allocator_traits instead of calling construct directly.
359 * testsuite/23_containers/map/56613.cc: New.
360
361 2013-03-13 Benjamin Kosnik <bkoz@redhat.com>
362
363 * doc/html/*: Regenerate.
364
365 2013-03-13 Paolo Carlini <paolo.carlini@oracle.com>
366
367 PR libstdc++/56609
368 * include/std/type_traits (is_fundamental): Add std::nullptr_t.
369 * testsuite/20_util/is_fundamental/value.cc: Extend.
370 * testsuite/20_util/is_compound/value.cc: Likewise.
371
372 2013-03-09 Paolo Carlini <paolo.carlini@oracle.com>
373
374 * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
375 -Wunused warnings.
376
377 2013-03-08 Benjamin Kosnik <bkoz@redhat.com>
378
379 * include/bits/memoryfwd.h: New. Centralize forward declarations.
380 * include/bits/algorithmfwd.h: Consistent comments.
381 * include/bits/localefwd.h: Same.
382 * include/ext/vstring_fwd.h: Same.
383 * include/parallel/algorithmfwd.h: Same.
384 * include/parallel/numericfwd.h: Same.
385 * include/std/iosfwd: Same.
386
387 * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
388 forward decl.
389 * include/ext/alloc_traits.h: Remove allocator forward decl.
390 * include/bits/stl_construct.h: Same.
391 * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
392 forward decl. Consistent comments.
393
394 * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
395
396 * include/Makefile.am (bits_headers): Add memoryfwd.h.
397 * include/Makefile.in: Regenerate.
398 * configure: Same.
399
400 2013-03-08 François Dumont <fdumont@gcc.gnu.org>
401
402 * include/bits/vector.tcc (vector<>operator=(const vector<>&):
403 Reset pointers after deallocation when memory can be reused.
404 * testsuite/23_containers/vector/allocator/minimal.cc: Insert
405 elements to really challenge C++11 allocator integration.
406 * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
407 * testsuite/23_containers/vector/allocator/copy_assign.cc:
408 Likewise.
409 * testsuite/23_containers/vector/allocator/move_assign.cc:
410 Likewise.
411 * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
412 swap vector back before checks on memory/personality mapping are
413 performed.
414 * testsuite/23_containers/forward_list/allocator/minimal.cc:
415 Insert element to really challenge C++11 allocator integration.
416 * testsuite/23_containers/forward_list/allocator/copy.cc:
417 Likewise.
418 * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
419 Likewise.
420 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
421 Likewise.
422 * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
423 and swap forward_list back before checks on memory/personality
424 mapping are performed.
425
426 2013-03-07 Jakub Jelinek <jakub@redhat.com>
427
428 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
429 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
430 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
431 Likewise.
432 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
433 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
434 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
435 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
436 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
437 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
438
439 2013-03-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
440
441 * scripts/extract_symvers.pl: Omit symbols bound to base
442 versions.
443 * scripts/extract_symvers.in: Likewise.
444 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
445 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
446 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
447 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
448 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
449
450 2013-03-04 Ulrich Drepper <drepper@gmail.com>
451
452 * include/ext/random (__gnu_cxx::von_mises_distribution<>):
453 Optimize generation function by pulling computation of __r into the
454 constructor for param_type. Also compare _M_mu in operator==.
455 Fix comment.
456
457 2013-03-02 Ulrich Drepper <drepper@gmail.com>
458
459 Add triangular and von Mises distributions.
460 * include/ext/random: Include <ext/cmath>.
461 Add __gnu_cxx::triangular_distribution<> and
462 __gnu_cxx::von_mises_distribution<> classes.
463 * include/ext/random.tcc: Add out-of-line functions for
464 __gnu_cxx::triangular_distribution<> and
465 __gnu_cxx::von_mises_distribution<>.
466 * testsuite/ext/triangular_distribution/cons/default.cc: New file.
467 * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
468 * testsuite/ext/triangular_distribution/operators/serialize.cc:
469 New file.
470 * testsuite/ext/triangular_distribution/operators/equal.cc:
471 New file.
472 * testsuite/ext/triangular_distribution/operators/inequal.cc:
473 New file.
474 * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
475 New file.
476 * testsuite/ext/triangular_distribution/requirements/
477 explicit_instantiation/1.cc: New file.
478 * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
479 * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
480 * testsuite/ext/von_mises_distribution/operators/serialize.cc:
481 New file.
482 * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
483 * testsuite/ext/von_mises_distribution/operators/inequal.cc:
484 New file.
485 * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
486 New file.
487 * testsuite/ext/von_mises_distribution/requirements/
488 explicit_instantiation/1.cc: New file.
489
490 Add math constants.
491 * include/Makefile.am (ext_headers): Add cmath.
492 * include/Makefile.in: Regenerated.
493 * include/ext/cmath: New file.
494
495 2013-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
496
497 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
498 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
499 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
500 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
501 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
502
503 2013-02-26 Jonathan Wakely <jwakely.gcc@gmail.com>
504
505 PR libstdc++/56012
506 * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
507 * testsuite/29_atomics/atomic/operators/56012.cc: New.
508
509 PR libstdc++/56011
510 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
511 missing overload.
512 * testsuite/29_atomics/atomic/operators/56011.cc: New.
513
514 2013-02-25 Jason Merrill <jason@redhat.com>
515
516 * configure.ac: Check for __cxa_thread_atexit_impl.
517 * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
518 to it if available.
519 * config.h.in, configure: Regenerate.
520
521 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
522
523 * include/std/streambuf (basic_streambuf): Use injected class name
524 instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
525 group.
526
527 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
528
529 * doc/html/faq.html: Fix spelling.
530 * doc/xml/faq.xml: Likewise.
531 * include/bits/basic_ios.h: Likewise.
532 * include/bits/regex.h: Likewise.
533 * include/std/istream: Likewise.
534 * include/std/streambuf: Likewise.
535
536 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
537
538 * testsuite/23_containers/unordered_set/55043.cc: Add missing
539 namespace qualification.
540 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
541
542 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>
543
544 * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
545 _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
546 AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
547 * include/bits/stl_pair.h: Add to utilities group.
548 * include/std/tuple: Same.
549 * include/std/typeindex: Same.
550
551 * include/bits/stringfwd.h: Fix markup.
552 * include/std/limits: Same.
553 * include/std/type_traits: Same.
554 * include/tr1/memory: Same.
555 * include/tr1/regex: Same.
556 * scripts/run_doxygen: Comment.
557 * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
558
559 2013-02-14 Jason Merrill <jason@redhat.com>
560
561 * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
562 test if unsupported.
563
564 2013-02-13 Marc Glisse <marc.glisse@inria.fr>
565
566 PR libstdc++/56111
567 * include/std/complex (complex): Undefine.
568 * include/c_compatibility/complex.h (complex): Only undefine if
569 <complex> has been included.
570 * testsuite/26_numerics/complex/56111.cc: New testcase.
571
572 2013-02-13 François Dumont <fdumont@gcc.gnu.org>
573
574 * include/bits/hashtable_policy.h (_Hash_code_base): Restore
575 default constructor protected.
576 * include/bits/hashtable.h: static assert that _Hash_code_base has
577 a default constructor available through inheritance.
578
579 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
580
581 * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
582 C++11 mode.
583
584 2013-02-12 Julian Brown <julian@codesourcery.com>
585
586 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
587 Don't expect dots after abbreviated weekday names for ru_RU for
588 glibc versions >= 2.17.
589 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
590 Likewise.
591
592 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
593
594 * include/bits/random.tcc (__transform): Remove.
595 (__normalize): Add.
596 (discrete_distribution<>::param_type::_M_initialize): Adjust.
597 (piecewise_constant_distribution<>::param_type::_M_initialize):
598 Likewise.
599 (piecewise_linear_distribution<>::param_type::_M_initialize):
600 Likewise.
601
602 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
603
604 * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
605 Use -fimplicit-templates.
606 * src/c++11/Makefile.in: Regenerate.
607 * src/c++11/hashtable_c++0x.cc: Remove instantiation for
608 std::lower_bound template.
609
610 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
611
612 * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
613 * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
614 in C++11 mode and if available in the underlying C library.
615 * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
616 -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
617 _GLIBCXX_HAVE_QUICK_EXIT.
618
619 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
620
621 * doc/html/*: Regenerate.
622
623 2013-02-11 Jason Merrill <jason@redhat.com>
624
625 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
626 (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
627 * config.h.in, configure: Regenerate.
628 * include/c_std/cstdlib: Add atexit and at_quick_exit.
629 * include/c_global/cstdlib: Add atexit and at_quick_exit.
630 * testsuite/18_support/quick_exit/quick_exit.cc: New.
631
632 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
633
634 PR libstdc++/56282
635 Revert:
636 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
637
638 PR libstdc++/56193
639 * include/bits/basic_ios.h: Replace operator void*() const
640 with explicit operator bool() const in C++11 and greater.
641 * testsuite/27_io/basic_ios/pr56193.cc: New file.
642
643 2013-02-10 François Dumont <fdumont@gcc.gnu.org>
644 Jonathan Wakely <jwakely.gcc@gmail.com>
645
646 * doc/xml/manual/containers.xml: Add section on unordered containers.
647 * doc/xml/manual/using.xml: Fix incomplete sentence.
648
649 2013-02-10 Jonathan Wakely <jwakely.gcc@gmail.com>
650
651 PR libstdc++/56267
652 * include/bits/hashtable.h (__cache_default): Check if hash function
653 is copy assignable.
654 * testsuite/23_containers/unordered_set/56267.cc: New.
655 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
656 dg-error line number.
657 * testsuite/23_containers/unordered_set/
658 not_default_constructible_hash_neg.cc: Likewise.
659
660 PR libstdc++/56278
661 * include/bits/hashtable_policy.h (_Hash_code_base): Make default
662 constructor public.
663 * testsuite/23_containers/unordered_set/56278.cc: New.
664
665 2013-02-09 François Dumont <fdumont@gcc.gnu.org>
666
667 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
668 simplification.
669
670 2013-02-08 Edward Smith-Rowland <3dw4rd@verizon.net>
671
672 PR libstdc++/56216
673 * include/tr1/special_function_util.h: Remove spurious const
674 from numeric arguments.
675 * include/tr1/riemann_zeta.tcc: Likewise.
676 * include/tr1/exp_integral.tcc: Likewise.
677 * include/tr1/bessel_function.tcc: Likewise.
678 * include/tr1/hypergeometric.tcc: Likewise.
679 * include/tr1/modified_bessel_func.tcc: Likewise.
680 * include/tr1/poly_laguerre.tcc: Likewise.
681 * include/tr1/gamma.tcc: Likewise.
682 * include/tr1/legendre_function.tcc: Likewise.
683 * include/tr1/poly_hermite.tcc: Likewise.
684 * include/tr1/ell_integral.tcc: Likewise.
685 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
686 If argument is zero return function value.
687 * testsuite/tr1/5_numerical_facilities/special_functions/
688 08_cyl_bessel_i/pr56216.cc: New.
689
690 2013-02-07 Paolo Carlini <paolo.carlini@oracle.com>
691
692 * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
693
694 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
695
696 PR libstdc++/56193
697 * include/bits/basic_ios.h: Replace operator void*() const
698 with explicit operator bool() const in C++11 and greater.
699 * testsuite/27_io/basic_ios/pr56193.cc: New file.
700
701 2013-02-04 Dodji Seketeli <dodji@redhat.com>
702
703 Add missing explicit instantiation for std::lower_bound template
704 * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
705 missing instantiation for std::lower_bound template.
706
707 2013-02-04 François Dumont <fdumont@gcc.gnu.org>
708
709 * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
710 * include/bits/basic_string.h: Specialize previous to mark
711 std::hash for string types as slow.
712 * include/bits/hashtable.h (__cache_default): Replace is_integral
713 with __is_fast_hash.
714 * src/c++11/hash_c++0x.cc: Add type_traits include.
715 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
716 Adapt dg-error line number.
717 * testsuite/23_containers/unordered_set/
718 not_default_constructible_hash_neg.cc: Likewise.
719
720 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
721 Paolo Carlini <paolo.carlini@oracle.com>
722
723 PR libstdc++/56202 (again)
724 * include/bits/random.tcc (binomial_distribution<>::
725 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
726 in previous commit.
727
728 * include/bits/random.h: Fix comment typo.
729
730 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
731 Paolo Carlini <paolo.carlini@oracle.com>
732
733 PR libstdc++/56202
734 * include/bits/random.tcc (binomial_distribution<>::
735 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
736 division by zero.
737
738 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
739
740 Update copyright years.
741 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
742 testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
743 testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
744 testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
745 testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
746 testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
747 testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
748 testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
749 testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
750 testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
751 testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
752 testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
753 testsuite/29_atomics/atomic/cons/assign_neg.cc,
754 testsuite/29_atomics/atomic/cons/copy_neg.cc,
755 testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
756 testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
757 testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
758 testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
759 testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
760 Update lines in dg error matches.
761
762 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
763
764 * config/os/mingw32/ctype_inline.h: Fix copyright typo.
765
766 2013-02-01 François Dumont <fdumont@gcc.gnu.org>
767
768 * include/bits/hashtable_policy.h
769 (_Prime_rehash_policy::_M_next_bkt)
770 (_Prime_rehash_policy::_M_need_rehash): Move definition...
771 * src/c++11/hashtable_c++0x.cc: ... here.
772 * src/shared/hashtable-aux.cc: Remove c++config.h include.
773 * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
774 symbols.
775
776 2013-01-29 Jason Merrill <jason@redhat.com>
777
778 PR libstdc++/54314
779 * config/abi/pre/gnu.ver: Don't export construction vtables.
780 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
781
782 2013-01-28 Jonathan Wakely <jwakely.gcc@gmail.com>
783
784 PR libstdc++/56112
785 * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
786 to construct value_type explicitly before trying to extract the key.
787 * testsuite/23_containers/unordered_map/cons/56112.cc: New.
788
789 2013-01-28 François Dumont <fdumont@gcc.gnu.org>
790
791 * include/bits/hashtable_policy.h (_Local_iterator_base): Use
792 _Hashtable_ebo_helper to embed functors into the local_iterator
793 when necessary. Pass information about functors involved in hash
794 code by copy.
795 * include/bits/hashtable.h (__cache_default): Do not cache for
796 builtin integral types unless the hash functor is not noexcept
797 qualified or is not default constructible. Adapt static assertions
798 and local iterator instantiations.
799 * include/debug/unordered_set
800 (std::__debug::unordered_set<>::erase): Detect local iterators to
801 invalidate using contained node rather than generating a dummy
802 local_iterator instance.
803 (std::__debug::unordered_multiset<>::erase): Likewise.
804 * include/debug/unordered_map
805 (std::__debug::unordered_map<>::erase): Likewise.
806 (std::__debug::unordered_multimap<>::erase): Likewise.
807 * testsuite/performance/23_containers/insert_erase/41975.cc: Test
808 std::tr1 and std versions of unordered_set regardless of any
809 macro. Add test on default cache behavior.
810 * testsuite/performance/23_containers/insert/54075.cc: Likewise.
811 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
812 Adapt line number.
813 * testsuite/23_containers/unordered_set/
814 not_default_constructible_hash_neg.cc: New.
815 * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
816
817 2013-01-24 Paolo Carlini <paolo.carlini@oracle.com>
818
819 PR libstdc++/56085
820 * include/std/complex (pow(const complex<>&, int)): Avoid __n
821 signed overflow.
822
823 2013-01-22 Jakub Jelinek <jakub@redhat.com>
824
825 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
826 Tightten scan-assembler-times regexps, add dg-additional-options for
827 ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
828 dg-options.
829
830 2013-01-12 Andi Kleen <ak@linux.intel.com>
831 Jonathan Wakely <jwakely.gcc@gmail.com>
832
833 PR libstdc++/55233
834 * include/bits/atomic_base.h (__memory_order_modifier): Add
835 __memory_order_mask, __memory_order_modifier_mask,
836 __memory_order_hle_acquire, __memory_order_hle_release.
837 (operator|,operator&): Add.
838 (__cmpexch_failure_order): Rename to __cmpexch_failure_order2.
839 (__cmpexch_failure_order): Add.
840 (clear, store, load, compare_exchange_weak, compare_exchange_strong):
841 Handle flags.
842 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
843 Add.
844
845 2013-01-19 Jonathan Wakely <jwakely.gcc@gmail.com>
846
847 PR libstdc++/55861
848 * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
849 Fix return type.
850 (__basic_future::_M_get_result()): Const qualify.
851 (shared_future::get()): Likewise.
852 * testsuite/30_threads/shared_future/members/get.cc: Use const
853 objects.
854
855 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
856
857 PR libstdc++/55043 (again)
858 * include/bits/alloc_traits.h (allocator_traits::construct): Disable
859 unless construction would be well-formed.
860 (__allow_copy_cons, __check_copy_constructible): Define.
861 * include/bits/unordered_map.h (__check_copy_constructible): Use as
862 base class so copy constructor will be deleted if appropriate.
863 (is_copy_constructible): Remove specialization.
864 * include/bits/unordered_set.h: Likewise.
865 * include/debug/unordered_map.h: Undo previous commit. Default copy
866 and move constructors.
867 * include/debug/unordered_set.h: Likewise.
868 * include/profile/unordered_map.h: Undo previous commit.
869 * include/profile/unordered_set.h: Likewise.
870 * testsuite/23_containers/unordered_map/55043.cc: Fix test.
871 * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
872 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
873 * testsuite/23_containers/unordered_set/55043.cc: Likewise.
874 * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
875 cannot support incomplete types.
876 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
877 Likewise.
878
879 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
880
881 PR libstdc++/55043
882 * include/std/unordered_map: Include alloc_traits.h
883 * include/std/unordered_set: Likewise.
884 * include/bits/alloc_traits.h: Define __is_copy_insertable.
885 * include/bits/unordered_map.h: Use it.
886 * include/bits/unordered_set.h: Likewise.
887 * include/debug/unordered_map.h: Likewise.
888 * include/debug/unordered_set.h: Likewise.
889 * include/profile/unordered_map.h: Likewise.
890 * include/profile/unordered_set.h: Likewise.
891 * include/bits/hashtable.h: Fix comment typos.
892 * testsuite/23_containers/unordered_map/55043.cc: New.
893 * testsuite/23_containers/unordered_multimap/55043.cc: New.
894 * testsuite/23_containers/unordered_multiset/55043.cc: New.
895 * testsuite/23_containers/unordered_set/55043.cc: New.
896
897 2013-01-03 Janis Johnson <janisjo@codesourcery.com>
898
899 * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
900 gdb command.
901
902 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
903
904 * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
905
906 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
907
908 PR libstdc++/55908
909 * include/std/functional (_Mem_fn::operator()): Fix constraints to
910 avoid ambiguity.
911 * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
912 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
913
914 2013-01-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
915
916 PR libstdc++/55594
917 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
918 Solaris targets.
919 * configure: Regenerate.
920
921 2013-01-07 Jonathan Wakely <jwakely.gcc@gmail.com>
922
923 PR libstdc++/55847
924 * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
925 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
926 string.
927
928 PR libstdc++/55728
929 * include/std/functional (bad_function_call::what()): Declare.
930 * src/c++11/functional.cc (bad_function_call::what()): Define.
931 * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
932 * testsuite/20_util/bad_function_call/what.cc: New.
933
934 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
935
936 * include/bits/unordered_map.h: Fix typo in comments.
937 * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
938 counts for unordered associative containers.
939
940 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
941
942 * doc/xml/manual/abi.xml: Update library and symbol versions.
943
944 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
945
946 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
947 in copyright years.
948 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
949
950 \f
951 Copyright (C) 2013 Free Software Foundation, Inc.
952
953 Copying and distribution of this file, with or without modification,
954 are permitted in any medium without royalty provided the copyright
955 notice and this notice are preserved.