1 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
3 * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
4 constexpr_data.cc: Move...
5 * testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
7 * testsuite/20_util/integral_constant/requirements/
8 explicit_instantiation.cc: New.
9 * testsuite/20_util/integral_constant/requirements/typedefs.cc:
11 * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
12 * testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
14 * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
15 * testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.
17 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
19 * include/std/type_traits (is_null_pointer): Add.
20 (__is_nullptr_t): Implement in terms of the latter.
21 (is_fundamental, is_scalar): Adjust.
22 * testsuite/20_util/is_null_pointer/requirements/
23 explicit_instantiation.cc: New.
24 * testsuite/20_util/is_null_pointer/requirements/typedefs.cc:
26 * testsuite/20_util/is_null_pointer/value.cc: Likewise.
27 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
29 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
31 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
34 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
36 * include/c_global/cstdio: Add comment about LWG 2249.
37 * include/c_std/cstdio: Likewise.
39 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
41 * include/bits/hashtable_policy.h (_Hashtable_ebo_helper): Fix
43 * include/std/mutex (__recursive_mutex_base): Likewise.
45 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
48 * include/bits/shared_ptr_base (_Sp_ebo_helper): Helper class to
50 (_Sp_counted_base::_M_get_deleter): Add noexcept.
51 (_Sp_counter_ptr): Use noexcept instead of comments.
52 (_Sp_counted_deleter): Likewise. Use _Sp_ebo_helper.
53 (_Sp_counted_ptr_inplace): Likewise.
54 * testsuite/20_util/shared_ptr/cons/51365.cc: New.
55 * testsuite/20_util/shared_ptr/cons/52924.cc: Add rebind member to
56 custom allocator and test construction with custom allocator.
57 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
60 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
62 * testsuite/23_containers/unordered_set/insert/move_range.cc: Adjust
63 dialect to -std=gnu++11.
65 2013-04-26 François Dumont <fdumont@gcc.gnu.org>
67 * include/bits/hashtable_policy.h
68 (_Insert_base<>::insert<_It>(_It, _It)): Enable move semantics.
69 * testsuite/23_containers/unordered_set/insert/move_range.cc: New.
71 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
73 * include/c_global/cstdio (gets): Provide only in C++98 and C++11.
74 * include/c_std/cstdio (gets): Likewise.
75 * testsuite/27_io/headers/cstdio/functions_std.cc: Adjust.
77 2013-04-25 Paolo Carlini <paolo.carlini@oracle.com>
80 * include/debug/unordered_map (unordered_map, unordered_multimap):
81 Fix default allocator type.
82 * include/profile/unordered_map (unordered_map, unordered_multimap):
84 * include/bits/unordered_map.h: Fix comments.
86 2013-04-24 Jonathan Wakely <jwakely.gcc@gmail.com>
89 * libsupc++/exception_ptr.h (copy_exception): Deprecate and
90 move implementation to make_exception_ptr.
91 * include/std/future (_State_base::_M_break_promise): Replace
92 copy_exception with make_exception_ptr.
93 * testsuite/18_support/exception_ptr/move.cc: Likewise.
94 * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
95 * testsuite/30_threads/future/members/get2.cc: Likewise.
96 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
97 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
98 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
99 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
101 2013-04-22 Jason Merrill <jason@redhat.com>
103 * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
105 * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
108 * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
110 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
111 * testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
112 * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
114 2013-04-22 François Dumont <fdumont@gcc.gnu.org>
116 * include/bits/hashtable_policy.h: Add C++11 allocator support.
117 * include/bits/hashtable.h: Likewise.
118 * include/bits/unordered_set.h: Likewise.
119 * include/bits/unordered_map.h: Likewise.
120 * include/debug/unordered_set: Likewise.
121 * include/debug/unordered_map: Likewise.
122 * include/std/unordered_set: Remove bits/algobase.h
123 include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
124 * include/std/unordered_map: Likewise.
125 * include/ext/throw_allocator.h: Add checks on calls to allocator
127 (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
128 (std::hash<__gnu_cxx::throw_value_random>): Likewise.
129 * testsuite/util/regression/rand/priority_queue
130 /container_rand_regression_test.tcc: Adapt.
131 * testsuite/util/regression/rand/assoc
132 /container_rand_regression_test.tcc: Likewise.
133 * testsuite/util/testsuite_counter_type.h: Add count of destructors.
134 * testsuite/23_containers/unordered_set
135 /not_default_constructible_hash_neg.cc: Adjust dg-error line number.
136 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
137 * testsuite/23_containers/unordered_set/allocator/copy.cc: New.
138 * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
139 * testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
140 * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
141 * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
142 * testsuite/23_containers/unordered_set/allocator/swap.cc: New.
143 * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
144 * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
146 * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
147 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
149 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
150 * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
151 * testsuite/23_containers/unordered_map/allocator/copy.cc: New.
152 * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
153 * testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
154 * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
155 * testsuite/23_containers/unordered_map/allocator/noexcept.cc:
157 * testsuite/23_containers/unordered_map/allocator/swap.cc: New.
158 * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
159 * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
161 * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
162 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
164 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
165 * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
167 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
169 * include/std/type_traits (is_signed): Simplify.
170 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
171 Adjust dg-error line numbers.
172 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
174 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
176 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
179 * include/std/complex (complex<float>::real, complex<float>::imag,
180 complex<double>::real, complex<double>::imag,
181 complex<long double>::real, complex<long double>::imag): Declare
182 as const member functions.
183 * include/std/type_traits (integral_constant<>::operator value_type):
186 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
189 * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
190 * testsuite/25_algorithms/pop_heap/57010.cc: New.
192 2013-04-21 Evgeniy Stepanov <eugenis@google.com>
194 * src/c++11/system_error.cc (generic_category_instance): Add
196 (system_category_instance): Likewise.
197 * src/c++11/future.cc (__fec): Likewise.
199 2013-04-20 Jonathan Wakely <jwakely.gcc@gmail.com>
201 * doc/xml/manual/extensions.xml: Fix anachronism.
203 2013-04-09 Tom Tromey <tromey@redhat.com>
205 * configure, config.h.in: Rebuild.
206 * configure.ac: Use GLIBCXX_CHECK_SDT_H. Don't check for
208 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
210 2013-04-09 Uros Bizjak <ubizjak@gmail.com>
212 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
214 2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
216 * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
218 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
220 * include/Makefile.am: Add ext/aligned_buffer.h
221 * include/Makefile.in: Regenerate.
222 * include/ext/aligned_buffer.h: New.
223 * include/std/future (_Result): Use __aligned_buffer.
224 * include/bits/forward_list.h (_Fwd_list_node): Likewise.
225 * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
226 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
229 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
231 * include/bits/forward_list.h: Only include required headers.
232 (forward_list::reference): Define directly, not using __alloc_traits.
233 (forward_list::const_reference): Likewise.
235 2013-04-07 François Dumont <fdumont@gcc.gnu.org>
237 * include/std/functional (_Derives_from_unary_function): Remove.
238 (_Derives_from_binary_function): Remove.
239 * include/std/type_traits (__sfinae_types): Remove.
240 (__is_assignable_helper): Adapt.
241 (__is_convertible_helper): Adapt.
242 (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
243 Remove several explicit instantiations of integral_constant.
244 * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
245 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
246 Adapt dg-error line number.
247 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
249 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
250 * testsuite/20_util/bind/ref_neg.cc: Likewise.
252 2013-04-05 Jonathan Wakely <jwakely.gcc@gmail.com>
255 * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
256 get_terminate() accessors.
257 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
258 * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
260 * libsupc++/new_handler.cc: Likewise.
262 2013-04-04 Jonathan Wakely <jwakely.gcc@gmail.com>
264 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
266 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
269 * include/debug/array (tuple_size, tuple_element): Do not declare.
270 * include/profile/array: Likewise.
271 * testsuite/23_containers/array/tuple_interface/
272 tuple_element_debug_neg.cc: Adjust dg-error line number.
274 2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
276 * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
277 * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
279 (set_terminate(terminate_handler)): Set atomically.
280 (set_unexpected(terminate_handler)): Likewise.
281 * libsupc++/new (get_new_handler()): Declare.
282 * libsupc++/new_handler.cc (get_new_handler()): Define.
283 (set_new_handler(new_handler)): Set atomically.
284 (__new_handler): Use internal linkage.
285 * libsupc++/new_op.cc (operator new): Use get_new_handler().
286 * libsupc++/new_opnt.cc (operator new): Likewise.
287 * acinclude.m4: Bump libtool_VERSION to 6:19:0.
288 * configure: Regenerate.
289 * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
290 * libsupc++/Makefile.in: Regenerate.
291 * config/abi/pre/gnu.ver: Add new exports.
292 * doc/xml/manual/status_cxx2011.xml: Update.
293 * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
295 * testsuite/18_support/headers/new/synopsis.cc: Likewise.
296 * testsuite/18_support/new_handler.cc: New.
297 * testsuite/18_support/terminate_handler.cc: New.
298 * testsuite/18_support/unexpected_handler.cc: New.
300 2013-04-02 Jonathan Wakely <jwakely.gcc@gmail.com>
302 * doc/xml/manual/appendix_contributing.xml: Remove broken link and
303 defer to general documentation on contributing to GCC.
304 * doc/html/*: Regenerate.
306 2013-03-30 Gerald Pfeifer <gerald@pfeifer.com>
308 * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
310 * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
313 * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
315 * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
317 * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
319 * doc/xml/manual/messages.xml: Adjust link to Java API specs.
321 * doc/xml/manual/policy_data_structures: Remove direct link to
322 IBM Haifa Research Labs.
324 * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
325 for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
326 Remove direct link to IBM Haifa Research Labs.
328 * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
331 * doc/xml/manual/shared_ptr.xml: Use canonical address for
334 2013-03-27 Kai Tietz <ktietz@redhat.com>
336 * crossconfig.m4: Add support for cygwin x64 target.
337 * configure: Regenerated.
339 2013-03-25 Kai Tietz <ktietz@redhat.com>
341 * testsuite/18_support/50594.cc: For mingw-targets use only static
343 * testsuite/19_diagnostics/error_category/operators/equal.cc
344 * testsuite/19_diagnostics/error_code/cons/1.cc
345 * testsuite/19_diagnostics/error_code/operators/bool.cc
346 * testsuite/19_diagnostics/error_code/operators/equal.cc
347 * testsuite/19_diagnostics/error_code/operators/not_equal.cc
348 * testsuite/19_diagnostics/error_condition/cons/1.cc
349 * testsuite/19_diagnostics/error_condition/operators/bool.cc
350 * testsuite/19_diagnostics/error_condition/operators/equal.cc
351 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
352 * testsuite/23_containers/set/requirements/exception/basic.cc
353 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
354 * testsuite/lib/dg-options.exp (dg-additional-options): New option.
356 2013-03-24 Jonathan Wakely <jwakely.gcc@gmail.com>
359 * include/ext/debug_allocator.h (debug_allocator): Add missing members
360 to meet allocator requirements.
361 * testsuite/ext/debug_allocator/56170.cc: New.
363 2013-03-22 Paolo Carlini <paolo.carlini@oracle.com>
366 * include/std/chrono (__is_ratio): Uglify T.
368 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>
370 PR libstdc++/55977 (partial, std::vector and std::deque bits)
371 * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
372 _InputIterator, std::input_iterator_tag)): Use emplace_back.
373 * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
374 _InputIterator, std::input_iterator_tag)): Likewise.
375 * testsuite/23_containers/vector/cons/55977.cc: New.
376 * testsuite/23_containers/deque/cons/55977.cc: Likewise.
377 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
378 Adjust dg-error line number.
379 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
382 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>
385 * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
386 _InputIterator, __false_type)): Use emplace_back.
387 * testsuite/23_containers/list/cons/55979.cc: New.
388 * testsuite/23_containers/list/modifiers/1.h: Adjust.
389 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
390 Adjust dg-error line number.
392 2013-03-16 Jason Merrill <jason@redhat.com>
395 * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
397 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
400 * libsupc++/exception_ptr.h (type_info): Declare.
402 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
405 * include/std/mutex (lock_guard, unique_lock, lock): Define without
406 depending on _GLIBCXX_HAS_GTHREADS.
407 * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
409 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
412 * include/std/future (__future_base::_Result): Add result_type
414 (__future_base::_S_allocate_result): Overload for std::allocator.
415 (__future_base::_Task_setter): Use _Result::result_type instead of
416 deducing the type from the task.
417 (__future_base::_Task_state): Store allocator to allow shared state
418 to be reset. Replace std::function with member of target object type
420 (__future_base::_Task_state_base): New abstract base class.
421 (__future_base::_Task_state_base::_M_run): New virtual function to
422 invoke type-erased target object.
423 (__future_base::_Task_state_base::_M_reset): New virtual function to
424 create new shared_state using same target object and allocator.
425 (__future_base::__create_task_state): Allocate a new _Task_state.
426 (packaged_task::packaged_task): Use __create_task_state.
427 (packaged_task::reset): Use _Task_state_base::_M_reset.
428 * testsuite/30_threads/packaged_task/cons/56492.cc: New.
430 2013-03-15 Tom Tromey <tromey@redhat.com>
432 * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
434 * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
435 * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
436 * configure.ac: Check for sys/sdt.h.
437 * configure, config.h.in: Rebuild.
439 2013-03-14 Jonathan Wakely <jwakely.gcc@gmail.com>
442 * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
443 allocator_traits instead of calling construct directly.
444 * testsuite/23_containers/map/56613.cc: New.
446 2013-03-13 Benjamin Kosnik <bkoz@redhat.com>
448 * doc/html/*: Regenerate.
450 2013-03-13 Paolo Carlini <paolo.carlini@oracle.com>
453 * include/std/type_traits (is_fundamental): Add std::nullptr_t.
454 * testsuite/20_util/is_fundamental/value.cc: Extend.
455 * testsuite/20_util/is_compound/value.cc: Likewise.
457 2013-03-09 Paolo Carlini <paolo.carlini@oracle.com>
459 * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
462 2013-03-08 Benjamin Kosnik <bkoz@redhat.com>
464 * include/bits/memoryfwd.h: New. Centralize forward declarations.
465 * include/bits/algorithmfwd.h: Consistent comments.
466 * include/bits/localefwd.h: Same.
467 * include/ext/vstring_fwd.h: Same.
468 * include/parallel/algorithmfwd.h: Same.
469 * include/parallel/numericfwd.h: Same.
470 * include/std/iosfwd: Same.
472 * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
474 * include/ext/alloc_traits.h: Remove allocator forward decl.
475 * include/bits/stl_construct.h: Same.
476 * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
477 forward decl. Consistent comments.
479 * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
481 * include/Makefile.am (bits_headers): Add memoryfwd.h.
482 * include/Makefile.in: Regenerate.
485 2013-03-08 François Dumont <fdumont@gcc.gnu.org>
487 * include/bits/vector.tcc (vector<>operator=(const vector<>&):
488 Reset pointers after deallocation when memory can be reused.
489 * testsuite/23_containers/vector/allocator/minimal.cc: Insert
490 elements to really challenge C++11 allocator integration.
491 * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
492 * testsuite/23_containers/vector/allocator/copy_assign.cc:
494 * testsuite/23_containers/vector/allocator/move_assign.cc:
496 * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
497 swap vector back before checks on memory/personality mapping are
499 * testsuite/23_containers/forward_list/allocator/minimal.cc:
500 Insert element to really challenge C++11 allocator integration.
501 * testsuite/23_containers/forward_list/allocator/copy.cc:
503 * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
505 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
507 * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
508 and swap forward_list back before checks on memory/personality
509 mapping are performed.
511 2013-03-07 Jakub Jelinek <jakub@redhat.com>
513 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
514 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
515 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
517 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
518 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
519 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
520 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
521 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
522 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
524 2013-03-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
526 * scripts/extract_symvers.pl: Omit symbols bound to base
528 * scripts/extract_symvers.in: Likewise.
529 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
530 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
531 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
532 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
533 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
535 2013-03-04 Ulrich Drepper <drepper@gmail.com>
537 * include/ext/random (__gnu_cxx::von_mises_distribution<>):
538 Optimize generation function by pulling computation of __r into the
539 constructor for param_type. Also compare _M_mu in operator==.
542 2013-03-02 Ulrich Drepper <drepper@gmail.com>
544 Add triangular and von Mises distributions.
545 * include/ext/random: Include <ext/cmath>.
546 Add __gnu_cxx::triangular_distribution<> and
547 __gnu_cxx::von_mises_distribution<> classes.
548 * include/ext/random.tcc: Add out-of-line functions for
549 __gnu_cxx::triangular_distribution<> and
550 __gnu_cxx::von_mises_distribution<>.
551 * testsuite/ext/triangular_distribution/cons/default.cc: New file.
552 * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
553 * testsuite/ext/triangular_distribution/operators/serialize.cc:
555 * testsuite/ext/triangular_distribution/operators/equal.cc:
557 * testsuite/ext/triangular_distribution/operators/inequal.cc:
559 * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
561 * testsuite/ext/triangular_distribution/requirements/
562 explicit_instantiation/1.cc: New file.
563 * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
564 * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
565 * testsuite/ext/von_mises_distribution/operators/serialize.cc:
567 * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
568 * testsuite/ext/von_mises_distribution/operators/inequal.cc:
570 * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
572 * testsuite/ext/von_mises_distribution/requirements/
573 explicit_instantiation/1.cc: New file.
576 * include/Makefile.am (ext_headers): Add cmath.
577 * include/Makefile.in: Regenerated.
578 * include/ext/cmath: New file.
580 2013-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
582 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
583 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
584 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
585 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
586 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
588 2013-02-26 Jonathan Wakely <jwakely.gcc@gmail.com>
591 * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
592 * testsuite/29_atomics/atomic/operators/56012.cc: New.
595 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
597 * testsuite/29_atomics/atomic/operators/56011.cc: New.
599 2013-02-25 Jason Merrill <jason@redhat.com>
601 * configure.ac: Check for __cxa_thread_atexit_impl.
602 * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
604 * config.h.in, configure: Regenerate.
606 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
608 * include/std/streambuf (basic_streambuf): Use injected class name
609 instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
612 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
614 * doc/html/faq.html: Fix spelling.
615 * doc/xml/faq.xml: Likewise.
616 * include/bits/basic_ios.h: Likewise.
617 * include/bits/regex.h: Likewise.
618 * include/std/istream: Likewise.
619 * include/std/streambuf: Likewise.
621 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
623 * testsuite/23_containers/unordered_set/55043.cc: Add missing
624 namespace qualification.
625 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
627 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>
629 * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
630 _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
631 AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
632 * include/bits/stl_pair.h: Add to utilities group.
633 * include/std/tuple: Same.
634 * include/std/typeindex: Same.
636 * include/bits/stringfwd.h: Fix markup.
637 * include/std/limits: Same.
638 * include/std/type_traits: Same.
639 * include/tr1/memory: Same.
640 * include/tr1/regex: Same.
641 * scripts/run_doxygen: Comment.
642 * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
644 2013-02-14 Jason Merrill <jason@redhat.com>
646 * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
649 2013-02-13 Marc Glisse <marc.glisse@inria.fr>
652 * include/std/complex (complex): Undefine.
653 * include/c_compatibility/complex.h (complex): Only undefine if
654 <complex> has been included.
655 * testsuite/26_numerics/complex/56111.cc: New testcase.
657 2013-02-13 François Dumont <fdumont@gcc.gnu.org>
659 * include/bits/hashtable_policy.h (_Hash_code_base): Restore
660 default constructor protected.
661 * include/bits/hashtable.h: static assert that _Hash_code_base has
662 a default constructor available through inheritance.
664 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
666 * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
669 2013-02-12 Julian Brown <julian@codesourcery.com>
671 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
672 Don't expect dots after abbreviated weekday names for ru_RU for
673 glibc versions >= 2.17.
674 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
677 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
679 * include/bits/random.tcc (__transform): Remove.
681 (discrete_distribution<>::param_type::_M_initialize): Adjust.
682 (piecewise_constant_distribution<>::param_type::_M_initialize):
684 (piecewise_linear_distribution<>::param_type::_M_initialize):
687 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
689 * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
690 Use -fimplicit-templates.
691 * src/c++11/Makefile.in: Regenerate.
692 * src/c++11/hashtable_c++0x.cc: Remove instantiation for
693 std::lower_bound template.
695 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
697 * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
698 * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
699 in C++11 mode and if available in the underlying C library.
700 * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
701 -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
702 _GLIBCXX_HAVE_QUICK_EXIT.
704 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
706 * doc/html/*: Regenerate.
708 2013-02-11 Jason Merrill <jason@redhat.com>
710 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
711 (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
712 * config.h.in, configure: Regenerate.
713 * include/c_std/cstdlib: Add atexit and at_quick_exit.
714 * include/c_global/cstdlib: Add atexit and at_quick_exit.
715 * testsuite/18_support/quick_exit/quick_exit.cc: New.
717 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
721 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
724 * include/bits/basic_ios.h: Replace operator void*() const
725 with explicit operator bool() const in C++11 and greater.
726 * testsuite/27_io/basic_ios/pr56193.cc: New file.
728 2013-02-10 François Dumont <fdumont@gcc.gnu.org>
729 Jonathan Wakely <jwakely.gcc@gmail.com>
731 * doc/xml/manual/containers.xml: Add section on unordered containers.
732 * doc/xml/manual/using.xml: Fix incomplete sentence.
734 2013-02-10 Jonathan Wakely <jwakely.gcc@gmail.com>
737 * include/bits/hashtable.h (__cache_default): Check if hash function
739 * testsuite/23_containers/unordered_set/56267.cc: New.
740 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
741 dg-error line number.
742 * testsuite/23_containers/unordered_set/
743 not_default_constructible_hash_neg.cc: Likewise.
746 * include/bits/hashtable_policy.h (_Hash_code_base): Make default
748 * testsuite/23_containers/unordered_set/56278.cc: New.
750 2013-02-09 François Dumont <fdumont@gcc.gnu.org>
752 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
755 2013-02-08 Edward Smith-Rowland <3dw4rd@verizon.net>
758 * include/tr1/special_function_util.h: Remove spurious const
759 from numeric arguments.
760 * include/tr1/riemann_zeta.tcc: Likewise.
761 * include/tr1/exp_integral.tcc: Likewise.
762 * include/tr1/bessel_function.tcc: Likewise.
763 * include/tr1/hypergeometric.tcc: Likewise.
764 * include/tr1/modified_bessel_func.tcc: Likewise.
765 * include/tr1/poly_laguerre.tcc: Likewise.
766 * include/tr1/gamma.tcc: Likewise.
767 * include/tr1/legendre_function.tcc: Likewise.
768 * include/tr1/poly_hermite.tcc: Likewise.
769 * include/tr1/ell_integral.tcc: Likewise.
770 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
771 If argument is zero return function value.
772 * testsuite/tr1/5_numerical_facilities/special_functions/
773 08_cyl_bessel_i/pr56216.cc: New.
775 2013-02-07 Paolo Carlini <paolo.carlini@oracle.com>
777 * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
779 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
782 * include/bits/basic_ios.h: Replace operator void*() const
783 with explicit operator bool() const in C++11 and greater.
784 * testsuite/27_io/basic_ios/pr56193.cc: New file.
786 2013-02-04 Dodji Seketeli <dodji@redhat.com>
788 Add missing explicit instantiation for std::lower_bound template
789 * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
790 missing instantiation for std::lower_bound template.
792 2013-02-04 François Dumont <fdumont@gcc.gnu.org>
794 * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
795 * include/bits/basic_string.h: Specialize previous to mark
796 std::hash for string types as slow.
797 * include/bits/hashtable.h (__cache_default): Replace is_integral
799 * src/c++11/hash_c++0x.cc: Add type_traits include.
800 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
801 Adapt dg-error line number.
802 * testsuite/23_containers/unordered_set/
803 not_default_constructible_hash_neg.cc: Likewise.
805 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
806 Paolo Carlini <paolo.carlini@oracle.com>
808 PR libstdc++/56202 (again)
809 * include/bits/random.tcc (binomial_distribution<>::
810 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
813 * include/bits/random.h: Fix comment typo.
815 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
816 Paolo Carlini <paolo.carlini@oracle.com>
819 * include/bits/random.tcc (binomial_distribution<>::
820 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
823 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
825 Update copyright years.
826 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
827 testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
828 testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
829 testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
830 testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
831 testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
832 testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
833 testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
834 testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
835 testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
836 testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
837 testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
838 testsuite/29_atomics/atomic/cons/assign_neg.cc,
839 testsuite/29_atomics/atomic/cons/copy_neg.cc,
840 testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
841 testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
842 testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
843 testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
844 testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
845 Update lines in dg error matches.
847 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
849 * config/os/mingw32/ctype_inline.h: Fix copyright typo.
851 2013-02-01 François Dumont <fdumont@gcc.gnu.org>
853 * include/bits/hashtable_policy.h
854 (_Prime_rehash_policy::_M_next_bkt)
855 (_Prime_rehash_policy::_M_need_rehash): Move definition...
856 * src/c++11/hashtable_c++0x.cc: ... here.
857 * src/shared/hashtable-aux.cc: Remove c++config.h include.
858 * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
861 2013-01-29 Jason Merrill <jason@redhat.com>
864 * config/abi/pre/gnu.ver: Don't export construction vtables.
865 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
867 2013-01-28 Jonathan Wakely <jwakely.gcc@gmail.com>
870 * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
871 to construct value_type explicitly before trying to extract the key.
872 * testsuite/23_containers/unordered_map/cons/56112.cc: New.
874 2013-01-28 François Dumont <fdumont@gcc.gnu.org>
876 * include/bits/hashtable_policy.h (_Local_iterator_base): Use
877 _Hashtable_ebo_helper to embed functors into the local_iterator
878 when necessary. Pass information about functors involved in hash
880 * include/bits/hashtable.h (__cache_default): Do not cache for
881 builtin integral types unless the hash functor is not noexcept
882 qualified or is not default constructible. Adapt static assertions
883 and local iterator instantiations.
884 * include/debug/unordered_set
885 (std::__debug::unordered_set<>::erase): Detect local iterators to
886 invalidate using contained node rather than generating a dummy
887 local_iterator instance.
888 (std::__debug::unordered_multiset<>::erase): Likewise.
889 * include/debug/unordered_map
890 (std::__debug::unordered_map<>::erase): Likewise.
891 (std::__debug::unordered_multimap<>::erase): Likewise.
892 * testsuite/performance/23_containers/insert_erase/41975.cc: Test
893 std::tr1 and std versions of unordered_set regardless of any
894 macro. Add test on default cache behavior.
895 * testsuite/performance/23_containers/insert/54075.cc: Likewise.
896 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
898 * testsuite/23_containers/unordered_set/
899 not_default_constructible_hash_neg.cc: New.
900 * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
902 2013-01-24 Paolo Carlini <paolo.carlini@oracle.com>
905 * include/std/complex (pow(const complex<>&, int)): Avoid __n
908 2013-01-22 Jakub Jelinek <jakub@redhat.com>
910 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
911 Tightten scan-assembler-times regexps, add dg-additional-options for
912 ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
915 2013-01-12 Andi Kleen <ak@linux.intel.com>
916 Jonathan Wakely <jwakely.gcc@gmail.com>
919 * include/bits/atomic_base.h (__memory_order_modifier): Add
920 __memory_order_mask, __memory_order_modifier_mask,
921 __memory_order_hle_acquire, __memory_order_hle_release.
922 (operator|,operator&): Add.
923 (__cmpexch_failure_order): Rename to __cmpexch_failure_order2.
924 (__cmpexch_failure_order): Add.
925 (clear, store, load, compare_exchange_weak, compare_exchange_strong):
927 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
930 2013-01-19 Jonathan Wakely <jwakely.gcc@gmail.com>
933 * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
935 (__basic_future::_M_get_result()): Const qualify.
936 (shared_future::get()): Likewise.
937 * testsuite/30_threads/shared_future/members/get.cc: Use const
940 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
942 PR libstdc++/55043 (again)
943 * include/bits/alloc_traits.h (allocator_traits::construct): Disable
944 unless construction would be well-formed.
945 (__allow_copy_cons, __check_copy_constructible): Define.
946 * include/bits/unordered_map.h (__check_copy_constructible): Use as
947 base class so copy constructor will be deleted if appropriate.
948 (is_copy_constructible): Remove specialization.
949 * include/bits/unordered_set.h: Likewise.
950 * include/debug/unordered_map.h: Undo previous commit. Default copy
951 and move constructors.
952 * include/debug/unordered_set.h: Likewise.
953 * include/profile/unordered_map.h: Undo previous commit.
954 * include/profile/unordered_set.h: Likewise.
955 * testsuite/23_containers/unordered_map/55043.cc: Fix test.
956 * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
957 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
958 * testsuite/23_containers/unordered_set/55043.cc: Likewise.
959 * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
960 cannot support incomplete types.
961 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
964 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
967 * include/std/unordered_map: Include alloc_traits.h
968 * include/std/unordered_set: Likewise.
969 * include/bits/alloc_traits.h: Define __is_copy_insertable.
970 * include/bits/unordered_map.h: Use it.
971 * include/bits/unordered_set.h: Likewise.
972 * include/debug/unordered_map.h: Likewise.
973 * include/debug/unordered_set.h: Likewise.
974 * include/profile/unordered_map.h: Likewise.
975 * include/profile/unordered_set.h: Likewise.
976 * include/bits/hashtable.h: Fix comment typos.
977 * testsuite/23_containers/unordered_map/55043.cc: New.
978 * testsuite/23_containers/unordered_multimap/55043.cc: New.
979 * testsuite/23_containers/unordered_multiset/55043.cc: New.
980 * testsuite/23_containers/unordered_set/55043.cc: New.
982 2013-01-03 Janis Johnson <janisjo@codesourcery.com>
984 * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
987 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
989 * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
991 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
994 * include/std/functional (_Mem_fn::operator()): Fix constraints to
996 * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
997 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
999 2013-01-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1002 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
1004 * configure: Regenerate.
1006 2013-01-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1009 * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
1010 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
1014 * include/std/functional (bad_function_call::what()): Declare.
1015 * src/c++11/functional.cc (bad_function_call::what()): Define.
1016 * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
1017 * testsuite/20_util/bad_function_call/what.cc: New.
1019 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1021 * include/bits/unordered_map.h: Fix typo in comments.
1022 * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
1023 counts for unordered associative containers.
1025 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1027 * doc/xml/manual/abi.xml: Update library and symbol versions.
1029 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
1031 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
1033 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
1036 Copyright (C) 2013 Free Software Foundation, Inc.
1038 Copying and distribution of this file, with or without modification,
1039 are permitted in any medium without royalty provided the copyright
1040 notice and this notice are preserved.