1 2013-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
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.
16 2013-04-22 Jason Merrill <jason@redhat.com>
18 * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
20 * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
23 * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
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.
29 2013-04-22 François Dumont <fdumont@gcc.gnu.org>
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
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:
61 * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
62 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
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:
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:
76 * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
77 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
79 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
80 * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
82 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
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:
89 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
91 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
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):
101 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
104 * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
105 * testsuite/25_algorithms/pop_heap/57010.cc: New.
107 2013-04-21 Evgeniy Stepanov <eugenis@google.com>
109 * src/c++11/system_error.cc (generic_category_instance): Add
111 (system_category_instance): Likewise.
112 * src/c++11/future.cc (__fec): Likewise.
114 2013-04-20 Jonathan Wakely <jwakely.gcc@gmail.com>
116 * doc/xml/manual/extensions.xml: Fix anachronism.
118 2013-04-09 Tom Tromey <tromey@redhat.com>
120 * configure, config.h.in: Rebuild.
121 * configure.ac: Use GLIBCXX_CHECK_SDT_H. Don't check for
123 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
125 2013-04-09 Uros Bizjak <ubizjak@gmail.com>
127 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
129 2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
131 * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
133 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
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
144 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
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.
150 2013-04-07 François Dumont <fdumont@gcc.gnu.org>
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:
164 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
165 * testsuite/20_util/bind/ref_neg.cc: Likewise.
167 2013-04-05 Jonathan Wakely <jwakely.gcc@gmail.com>
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
175 * libsupc++/new_handler.cc: Likewise.
177 2013-04-04 Jonathan Wakely <jwakely.gcc@gmail.com>
179 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
181 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
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.
189 2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
191 * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
192 * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
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
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.
215 2013-04-02 Jonathan Wakely <jwakely.gcc@gmail.com>
217 * doc/xml/manual/appendix_contributing.xml: Remove broken link and
218 defer to general documentation on contributing to GCC.
219 * doc/html/*: Regenerate.
221 2013-03-30 Gerald Pfeifer <gerald@pfeifer.com>
223 * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
225 * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
228 * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
230 * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
232 * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
234 * doc/xml/manual/messages.xml: Adjust link to Java API specs.
236 * doc/xml/manual/policy_data_structures: Remove direct link to
237 IBM Haifa Research Labs.
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.
243 * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
246 * doc/xml/manual/shared_ptr.xml: Use canonical address for
249 2013-03-27 Kai Tietz <ktietz@redhat.com>
251 * crossconfig.m4: Add support for cygwin x64 target.
252 * configure: Regenerated.
254 2013-03-25 Kai Tietz <ktietz@redhat.com>
256 * testsuite/18_support/50594.cc: For mingw-targets use only static
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.
271 2013-03-24 Jonathan Wakely <jwakely.gcc@gmail.com>
274 * include/ext/debug_allocator.h (debug_allocator): Add missing members
275 to meet allocator requirements.
276 * testsuite/ext/debug_allocator/56170.cc: New.
278 2013-03-22 Paolo Carlini <paolo.carlini@oracle.com>
281 * include/std/chrono (__is_ratio): Uglify T.
283 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>
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:
297 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>
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.
307 2013-03-16 Jason Merrill <jason@redhat.com>
310 * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
312 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
315 * libsupc++/exception_ptr.h (type_info): Declare.
317 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
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.
324 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
327 * include/std/future (__future_base::_Result): Add result_type
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
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.
345 2013-03-15 Tom Tromey <tromey@redhat.com>
347 * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
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.
354 2013-03-14 Jonathan Wakely <jwakely.gcc@gmail.com>
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.
361 2013-03-13 Benjamin Kosnik <bkoz@redhat.com>
363 * doc/html/*: Regenerate.
365 2013-03-13 Paolo Carlini <paolo.carlini@oracle.com>
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.
372 2013-03-09 Paolo Carlini <paolo.carlini@oracle.com>
374 * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
377 2013-03-08 Benjamin Kosnik <bkoz@redhat.com>
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.
387 * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
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.
394 * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
396 * include/Makefile.am (bits_headers): Add memoryfwd.h.
397 * include/Makefile.in: Regenerate.
400 2013-03-08 François Dumont <fdumont@gcc.gnu.org>
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:
409 * testsuite/23_containers/vector/allocator/move_assign.cc:
411 * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
412 swap vector back before checks on memory/personality mapping are
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:
418 * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
420 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
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.
426 2013-03-07 Jakub Jelinek <jakub@redhat.com>
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:
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.
439 2013-03-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
441 * scripts/extract_symvers.pl: Omit symbols bound to base
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.
450 2013-03-04 Ulrich Drepper <drepper@gmail.com>
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==.
457 2013-03-02 Ulrich Drepper <drepper@gmail.com>
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:
470 * testsuite/ext/triangular_distribution/operators/equal.cc:
472 * testsuite/ext/triangular_distribution/operators/inequal.cc:
474 * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
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:
482 * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
483 * testsuite/ext/von_mises_distribution/operators/inequal.cc:
485 * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
487 * testsuite/ext/von_mises_distribution/requirements/
488 explicit_instantiation/1.cc: New file.
491 * include/Makefile.am (ext_headers): Add cmath.
492 * include/Makefile.in: Regenerated.
493 * include/ext/cmath: New file.
495 2013-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
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.
503 2013-02-26 Jonathan Wakely <jwakely.gcc@gmail.com>
506 * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
507 * testsuite/29_atomics/atomic/operators/56012.cc: New.
510 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
512 * testsuite/29_atomics/atomic/operators/56011.cc: New.
514 2013-02-25 Jason Merrill <jason@redhat.com>
516 * configure.ac: Check for __cxa_thread_atexit_impl.
517 * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
519 * config.h.in, configure: Regenerate.
521 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
523 * include/std/streambuf (basic_streambuf): Use injected class name
524 instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
527 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
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.
536 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
538 * testsuite/23_containers/unordered_set/55043.cc: Add missing
539 namespace qualification.
540 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
542 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>
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.
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.
559 2013-02-14 Jason Merrill <jason@redhat.com>
561 * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
564 2013-02-13 Marc Glisse <marc.glisse@inria.fr>
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.
572 2013-02-13 François Dumont <fdumont@gcc.gnu.org>
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.
579 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
581 * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
584 2013-02-12 Julian Brown <julian@codesourcery.com>
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):
592 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
594 * include/bits/random.tcc (__transform): Remove.
596 (discrete_distribution<>::param_type::_M_initialize): Adjust.
597 (piecewise_constant_distribution<>::param_type::_M_initialize):
599 (piecewise_linear_distribution<>::param_type::_M_initialize):
602 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
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.
610 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
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.
619 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
621 * doc/html/*: Regenerate.
623 2013-02-11 Jason Merrill <jason@redhat.com>
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.
632 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
636 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
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.
643 2013-02-10 François Dumont <fdumont@gcc.gnu.org>
644 Jonathan Wakely <jwakely.gcc@gmail.com>
646 * doc/xml/manual/containers.xml: Add section on unordered containers.
647 * doc/xml/manual/using.xml: Fix incomplete sentence.
649 2013-02-10 Jonathan Wakely <jwakely.gcc@gmail.com>
652 * include/bits/hashtable.h (__cache_default): Check if hash function
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.
661 * include/bits/hashtable_policy.h (_Hash_code_base): Make default
663 * testsuite/23_containers/unordered_set/56278.cc: New.
665 2013-02-09 François Dumont <fdumont@gcc.gnu.org>
667 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
670 2013-02-08 Edward Smith-Rowland <3dw4rd@verizon.net>
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.
690 2013-02-07 Paolo Carlini <paolo.carlini@oracle.com>
692 * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
694 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
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.
701 2013-02-04 Dodji Seketeli <dodji@redhat.com>
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.
707 2013-02-04 François Dumont <fdumont@gcc.gnu.org>
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
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.
720 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
721 Paolo Carlini <paolo.carlini@oracle.com>
723 PR libstdc++/56202 (again)
724 * include/bits/random.tcc (binomial_distribution<>::
725 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
728 * include/bits/random.h: Fix comment typo.
730 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
731 Paolo Carlini <paolo.carlini@oracle.com>
734 * include/bits/random.tcc (binomial_distribution<>::
735 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
738 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
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.
762 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
764 * config/os/mingw32/ctype_inline.h: Fix copyright typo.
766 2013-02-01 François Dumont <fdumont@gcc.gnu.org>
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
776 2013-01-29 Jason Merrill <jason@redhat.com>
779 * config/abi/pre/gnu.ver: Don't export construction vtables.
780 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
782 2013-01-28 Jonathan Wakely <jwakely.gcc@gmail.com>
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.
789 2013-01-28 François Dumont <fdumont@gcc.gnu.org>
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
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:
813 * testsuite/23_containers/unordered_set/
814 not_default_constructible_hash_neg.cc: New.
815 * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
817 2013-01-24 Paolo Carlini <paolo.carlini@oracle.com>
820 * include/std/complex (pow(const complex<>&, int)): Avoid __n
823 2013-01-22 Jakub Jelinek <jakub@redhat.com>
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
830 2013-01-12 Andi Kleen <ak@linux.intel.com>
831 Jonathan Wakely <jwakely.gcc@gmail.com>
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):
842 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
845 2013-01-19 Jonathan Wakely <jwakely.gcc@gmail.com>
848 * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
850 (__basic_future::_M_get_result()): Const qualify.
851 (shared_future::get()): Likewise.
852 * testsuite/30_threads/shared_future/members/get.cc: Use const
855 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
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:
879 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
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.
897 2013-01-03 Janis Johnson <janisjo@codesourcery.com>
899 * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
902 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
904 * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
906 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
909 * include/std/functional (_Mem_fn::operator()): Fix constraints to
911 * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
912 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
914 2013-01-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
917 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
919 * configure: Regenerate.
921 2013-01-07 Jonathan Wakely <jwakely.gcc@gmail.com>
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
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.
934 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
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.
940 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
942 * doc/xml/manual/abi.xml: Update library and symbol versions.
944 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
946 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
948 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
951 Copyright (C) 2013 Free Software Foundation, Inc.
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.