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