1 2014-08-29 Jonathan Wakely <jwakely@redhat.com>
3 * include/std/complex (complex): Define copy constructor and
4 assignment operator as defaulted. Improve Doxygen comments.
6 2014-08-28 Jonathan Wakely <jwakely@redhat.com>
8 * testsuite/ext/random/*: Fix incorrect standard references in
11 2014-08-27 Jonathan Wakely <jwakely@redhat.com>
14 * include/Makefile.am (install-freestanding-headers): Add missing
16 * include/Makefile.in: Regenerate.
18 2014-08-21 Tony Wang <tony.wang@arm.com>
20 * testsuite/18_support/nested_exception/62154.cc: Disable when the
21 target doesn't provide atomic builtins.
23 2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
24 Kai Tietz <ktietz@redhat.com>
26 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
28 * config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
30 * libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
32 (struct elt): Add dll member.
33 (run): Decrement dll refcount.
34 (__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.
36 2014-08-15 Jonathan Wakely <jwakely@redhat.com>
39 * libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
40 Rewrite to conform to C++11 requirements.
41 * testsuite/18_support/nested_exception/62154.cc: New.
43 2014-08-14 Matthias Klose <doko@ubuntu.com>
45 * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
46 Remove empty directory.
48 2014-08-14 Paolo Carlini <paolo.carlini@oracle.com>
50 * testsuite/26_numerics/random/linear_congruential_engine/
51 requirements/non_uint_neg.cc: Adjust for parser change.
52 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
53 requirements/non_uint_neg.cc: Likewise.
55 2014-08-13 Jonathan Wakely <jwakely@redhat.com>
58 * include/std/thread (thread::_M_start_thread): Declare new overload.
59 (thread::thread<_Callable, _Args...>): Call new overload with an
60 explicit reference to pthread_create.
61 * src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
62 * config/abi/pre/gnu.ver: Export new function.
64 2014-08-13 Sylvestre Ledru <sylvestre@debian.org>
66 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
68 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
70 * Fix thinko in the last commit.
72 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
75 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
76 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
78 2014-08-12 Jonathan Wakely <jwakely@redhat.com>
80 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
81 and add overloads for rvalue streams.
82 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
84 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
87 * include/bits/basic_string.h (getline): Declare inline.
89 2014-08-09 Ulrich Drepper <drepper@gmail.com>
91 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
92 (uniform_on_sphere_distribution::operator()): Use the new helper
93 class for the implementation.
95 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
96 equal.cc: Remove bogus part of comment.
97 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
99 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
100 serialize.cc: Add check to verify result of serialzation and
102 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
103 generate.cc: New file.
105 2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
107 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
108 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
110 2014-08-09 François Dumont <fdumont@gcc.gnu.org>
113 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
114 _M_need_rehash to initialize the rehash policy and check if a rehash is
116 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
118 2014-08-07 Jonathan Wakely <jwakely@redhat.com>
120 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
122 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
123 Adjust dg-error line number.
124 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
126 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
128 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
131 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
133 (_State_baseV2::_M_do_set): Change parameters to pointers.
134 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
135 (_State_baseV2::__setter): Initialize _Setter with pointers.
136 (_State_baseV2::__setter(promise<void>*)): Remove overload.
137 (promise::set_value, promise::set_exception): Pass setter directly
139 (_State_baseV2::_Task_setter): Add template parameter for callable
140 type and replace std::function member with pointer to that type.
141 Change _M_result member from reference to pointer.
142 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
143 and initialize _Task_setter with pointers.
144 (__location_invariant): Specialize for _Setter and _Task_setter.
146 * include/std/future (__location_invariant): Move specializations
147 after preprocessor condition.
149 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
152 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
154 2014-08-01 Zifei Tong <zifeitong@gmail.com>
156 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
157 _GLIBCXX_ prefix to macro.
159 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
161 * python/libstdcxx/v6/printers.py
162 (SingleObjContainerPrinter._contained): Use compatibility mixin.
164 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
166 * testsuite/util/testsuite_allocator.h
167 (tracker_allocator_counter::allocate): Remove new invocation, only
169 (tracker_allocator_counter::deallocate): Remove delete invocation, only
171 (check_inconsistent_alloc_value_type): New.
172 (tracker_allocator): Transform as a facade for any allocator type.
173 (uneq_allocator): Likewise.
174 (propagating_allocator): Likewise.
175 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
176 explicitly non propagating allocator.
177 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
178 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
179 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
180 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
181 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
183 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
185 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
187 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
189 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
191 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
194 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
195 const allocator_type&)): Pass non-const allocator to
197 * testsuite/ext/rope/61946.cc: New.
200 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
201 disambiguate unary constructors.
202 (_Tuple_impl): Pass allocator_arg_t arguments.
203 * testsuite/20_util/tuple/61947.cc: New.
204 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
206 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
208 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
209 * include/bits/random.h (_Adaptor): static_assert for non floating-point
211 * include/bits/random.tcc (generate_canonical): Ditto.
212 * include/ext/random.tcc (hypergeometric_distribution::operator()):
213 Use double as a rng result type.
214 * testsuite/26_numerics/random/pr60037-neg.cc: New.
215 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
217 2014-07-25 Uros Bizjak <ubizjak@gmail.com>
219 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
221 2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
223 * include/experimental/string_view: Make the literal operators
224 constexpr like the ctors they call.
226 2014-07-23 H.J. Lu <hongjiu.lu@intel.com>
228 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
230 2014-07-23 Jonathan Wakely <jwakely@redhat.com>
232 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
233 to string instead of using gdb.Type.name attribute.
235 2014-07-19 Jonathan Wakely <jwakely@redhat.com>
237 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
240 2014-07-18 Jonathan Wakely <jwakely@redhat.com>
243 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
245 (SingleObjContainerPrinter): Check if type printers are in use.
247 2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
249 * include/ext/random: Minor formatting and cosmetic tweaks.
250 (uniform_on_sphere_distribution<>::operator==
251 (const uniform_on_sphere_distribution&,
252 const uniform_on_sphere_distribution&)): Compare the _M_nds.
253 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
254 (operator!=(const uniform_on_sphere_distribution&,
255 const uniform_on_sphere_distribution&)): Adjust.
256 * include/ext/random.tcc: Minor cosmetc tweaks.
258 2014-07-15 Jonathan Wakely <jwakely@redhat.com>
260 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
261 printer for class templates.
262 (register_type_printers): Use TemplateTypePrinter for containers
263 and other class templates with default template arguments.
264 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
266 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
267 base class for experimental::any and experimental::optional printers.
268 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
269 New printers for Fundamentals TS types.
270 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
272 2014-07-15 Tim Shen <timshen@google.com>
275 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
276 Clear match queue for next use.
277 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
279 2014-07-14 Ulrich Drepper <drepper@gmail.com>
281 * include/ext/random.tcc: Unfortunately more fixes for
282 operator>> and operator<< for uniform_on_sphere_distribution.
284 2014-07-13 Ulrich Drepper <drepper@gmail.com>
286 * include/ext/random.tcc: Fix operator>> and operator<< for
287 uniform_on_sphere_distribution.
289 2014-07-12 Ulrich Drepper <drepper@gmail.com>
291 * include/ext/random: Add uniform_on_sphere_distribution definition.
292 * include/ext/random.tcc: Add out-of-band member function definitions
293 for uniform_on_sphere_distribution.
294 * testsuite/ext/random/uniform_on_sphere_distribution/
295 cons/default.cc: New file.
296 * testsuite/ext/random/uniform_on_sphere_distribution/
297 operators/equal.cc: New file.
298 * testsuite/ext/random/uniform_on_sphere_distribution/
299 operators/inequal.cc: New file.
300 * testsuite/ext/random/uniform_on_sphere_distribution/
301 operators/serialize.cc: New file.
303 2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
305 Add the logistic_distribution as an extension.
306 * include/ext/random: Add the logistic_distribution.
307 * include/ext/random.tcc: Add the logistic_distribution.
308 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
309 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
310 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
312 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
313 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
314 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
317 2014-07-11 Samuel Bronson <naesten@gmail.com>
319 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
320 instead of insisting that GCC understand -fdiagnostics-color=never
322 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
325 2014-07-11 Samuel Bronson <naesten@gmail.com>
326 Matthias Klose <doko@ubuntu.com>
329 * python/libstdcxx/v6/printers.py: Port to Python 2+3
330 (imap): New compat function.
332 (Iterator): New mixin to allow writing iterators in Python 3 style
333 regardless of which version we're running on.
334 [Python3] (long) New compat alias for "int".
335 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
337 2014-07-10 Jonathan Wakely <jwakely@redhat.com>
339 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
340 tuple members to simplify pretty printing.
341 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
343 * testsuite/experimental/any/cons/4.cc: New.
345 2014-07-09 Jason Merrill <jason@redhat.com>
348 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
349 * libsupc++/tinfo.h: Not here.
351 2014-07-08 Jonathan Wakely <jwakely@redhat.com>
353 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
355 * include/experimental/any: Remove unused header.
356 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
357 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
358 * testsuite/util/testsuite_regex.h: Move include guard.
360 2014-07-01 Tim Shen <timshen@google.com>
364 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
365 a NFA state limit. If it's exceeded, regex_constants::error_space
367 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
368 map (which is sparse) instead of vector. This reduce n times clones'
369 cost from O(n^2) to O(n).
370 * include/std/regex: Add map dependency.
371 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
374 2014-07-01 Tim Shen <timshen@google.com>
377 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
378 not just regex containing back-references.
379 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
380 exchange _M_next and _M_alt for alternative operator,
381 making matching from left to right.
382 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
383 Add position tracking fom DFS.
384 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
385 _Executor<>::_M_dfs): Likewise.
386 * include/bits/regex_scanner.h: Remove unused enum entry.
387 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
390 2014-06-30 Jason Merrill <jason@redhat.com>
392 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
395 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
398 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
399 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
402 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
404 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
406 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
408 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
410 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
413 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
415 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
416 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
417 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
419 * include/ext/alloc_traits.h: Fix comment.
421 * include/Makefile.am: Add new header.
422 * include/Makefile.in: Regenerate.
423 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
424 New RAII utilities for working with allocators.
425 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
426 __allocator_type typedef and use new __allocated_ptr type.
427 (_Sp_counted_ptr_inplace): Likewise.
428 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
429 __allocate_guarded to to simplify exception handling.
430 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
431 * include/std/future (_Result_alloc::_M_destroy): Likewise.
432 (_Result_alloc::_S_allocate_result): Likewise.
433 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
434 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
435 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
436 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
438 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
440 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
442 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
443 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
445 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
447 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
448 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
449 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
450 Remove unused typedef.
451 (time_get::do_get_monthname): Likewise.
452 * include/bits/stl_tree.h: Add system_header pragma.
453 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
454 redundant const-qualifier.
455 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
456 instead of _GLIBCXX_USE_CONSTEXPR.
458 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
460 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
461 * include/std/chrono (_Checked_integral_constant): Allow zero.
462 * testsuite/20_util/duration/literals/values.cc: Test non-positive
463 values and digit separators.
464 * include/experimental/any
467 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
468 apply the signed specifier to wchar_t.
469 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
470 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
471 cv-qualifier and size.
472 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
475 * include/experimental/any (any_v1): Rename namespace to
476 fundamentals_v1. Change string returned by bad_any_cast::what().
477 * include/experimental/optional (fundamentals_v1): Add namespace.
478 * include/experimental/string_view (fundamentals_v1): Likewise.
479 * testsuite/experimental/any/typedefs.cc: New.
480 * testsuite/experimental/optional/typedefs.cc: New.
481 * testsuite/experimental/string_view/typedefs.cc: New.
483 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
484 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
487 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
489 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
491 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
492 * include/Makefile.am: Add new header.
493 * include/Makefile.in: Regenerate.
494 * include/experimental/any: New.
495 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
497 * testsuite/experimental/any/assign/1.cc: New.
498 * testsuite/experimental/any/assign/2.cc: New.
499 * testsuite/experimental/any/cons/1.cc: New.
500 * testsuite/experimental/any/cons/2.cc: New.
501 * testsuite/experimental/any/cons/3.cc: New.
502 * testsuite/experimental/any/misc/any_cast.cc: New.
503 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
504 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
505 * testsuite/experimental/any/misc/swap.cc: New.
506 * testsuite/experimental/any/modifiers/1.cc: New.
507 * testsuite/experimental/any/observers/type.cc: New.
509 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
510 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
512 * include/bits/shared_ptr.h (shared_ptr): Likewise.
513 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
515 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
517 * include/parallel/list_partition.h (__parallel::list_partition):
519 * include/std/iomanip (quoted): Likewise.
520 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
522 * doc/xml/api.xml: Link to more recent API docs.
523 * include/bits/allocator.h: Fix link in doxygen comment.
524 * include/bits/char_traits.h: Likewise.
525 * include/bits/ios_base.h: Likewise.
526 * include/bits/stl_map.h: Likewise.
527 * include/bits/stl_multimap.h: Likewise.
528 * include/bits/stl_multiset.h: Likewise.
529 * include/bits/stl_set.h: Likewise.
530 * include/bits/unordered_map.h: Likewise.
531 * include/bits/unordered_set.h: Likewise.
532 * include/ext/mt_allocator.h: Likewise.
533 * include/std/fstream: Likewise.
534 * include/std/iosfwd: Likewise.
535 * include/std/ostream: Likewise.
536 * include/std/sstream: Likewise.
537 * include/std/streambuf: Likewise.
538 * doc/html/*: Regenerate.
540 * include/experimental/any (any_cast): Combine duplicate doxygen
542 * include/experimental/string_view (basic_string_view): Update
544 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
545 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
546 (dynamic_bitset): Improve Doxygen comments.
547 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
550 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
552 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
553 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
555 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
558 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
559 (bin_search_tree_traits): Do not redeclare template-parameters.
560 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
562 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
564 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
565 parameter for DocBook HTML generation.
566 * doc/Makefile.in: Regenerate.
567 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
568 * doc/xml/faq.xml: Update content and improve formatting.
569 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
570 * doc/xml/manual/allocator.xml: Add stable ID attribute.
571 * doc/xml/manual/bitmap_allocator.xml: Likewise.
572 * doc/xml/manual/build_hacking.xml: Likewise.
573 * doc/xml/manual/codecvt.xml: Change URL.
574 * doc/xml/manual/ctype.xml: Add stable ID attribute.
575 * doc/xml/manual/debug_mode.xml: Likewise.
576 * doc/xml/manual/documentation_hacking.xml: Likewise.
577 * doc/xml/manual/evolution.xml: Likewise.
578 * doc/xml/manual/extensions.xml: Likewise.
579 * doc/xml/manual/locale.xml: Likewise.
580 * doc/xml/manual/messages.xml: Make section id consistent, improve
582 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
583 * doc/xml/manual/profile_mode.xml: Likewise.
584 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
585 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
586 * doc/xml/manual/status_cxx2011.xml: Likewise.
587 * doc/xml/manual/status_cxx2014.xml: Likewise.
588 * doc/xml/manual/status_cxxtr1.xml: Likewise.
589 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
590 * doc/xml/manual/using.xml: Likewise.
591 * doc/html/*: Regenerate.
593 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
595 * include/tr1/beta_function.tcc: Fix spelling of include guard in
598 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
600 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
602 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
604 DR 2344 - std::quoted doesn't respect padding
605 * include/std/iomanip: Allow for padding in quoted inserters.
606 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
607 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
609 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
611 * testsuite/23_containers/map/operators/1.cc: Simplify test.
613 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
615 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
617 * doc/xml/manual/backwards_compatibility.xml
618 (backwards.second.stringstreams): Likewise.
619 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
621 * doc/xml/manual/containers.xml (associative.bitset.type_string):
622 Replace <quote> in code example.
623 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
624 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
625 fix typos, improve markup.
626 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
627 <emphasis> with <replaceable>.
628 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
629 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
630 and remove newlines in string literal.
632 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
636 * testsuite/20_util/is_assignable/value.cc: Update.
638 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
640 * include/std/condition_variable (condition_variable_any::_Unlock): Do
641 not swallow __forced_unwind.
642 * include/std/future (__future_base::_Task_setter): Likewise.
643 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
645 * include/std/mutex (try_lock): Likewise.
646 * testsuite/30_threads/async/forced_unwind.cc: New.
647 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
649 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
650 members to avoid wasted space when not using a cache.
651 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
652 * include/bits/regex_compiler.tcc
653 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
655 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
656 New enumeration type to indicate match mode.
657 (__detail::_Executor::_State_info): New type holding members only
658 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
660 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
661 Replace template parameter with run-time function parameter.
662 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
663 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
664 implement DFS and BFS mode.
665 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
666 Split implementation into ...
667 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
668 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
669 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
670 argument instead of template argument.
671 (__detail::_Executor::_M_dfs): Likewise.
672 * include/bits/regex_scanner.tcc: Fix typos in comments.
673 * testsuite/performance/28_regex/range.cc: New.
675 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
676 Jonathan Wakely <jwakely@redhat.com>
678 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
680 (aligned_union): New struct (C++11).
681 (aligned_union_t): New type alias (C++14).
682 * doc/xml/manual/status_cxx2011.xml: Update.
683 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
684 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
687 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
690 * include/experimental/string_view (operator basic_string): Correct
692 (to_string): Replace with member function.
693 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
694 allow _M_str to be null.
695 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
696 default constructor semantics.
697 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
698 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
699 copyright dates. Remove unused header.
700 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
702 * testsuite/experimental/string_view/operations/data/char/1.cc:
703 Fix copyright dates. Adjust to new default constructor semantics.
704 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
706 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
708 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
709 (__uses_allocator_arg): Remove unused type.
710 (__uses_alloc0): Turn into a trivial type.
711 (__uses_alloc): Add missing template parameter in primary template.
712 (__uses_alloc_impl): Rename to __uses_alloc_t.
714 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
716 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
717 work with previous versions of Tcl.
719 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
720 Benjamin's old email address.
722 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
725 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
727 * include/tr2/bool_set: Use UTF-8 for accented characters.
728 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
729 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
730 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
732 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
735 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
737 (_State_base::_M_dot): Likewise.
739 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
741 * include/profile/map.h: Fix typo in comment; minor formatting fix.
742 * include/profile/multimap.h: Likewise.
743 * include/profile/set.h: Likewise.
744 * include/profile/multiset.h: Likewise.
746 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
748 * include/profile/array: Clean useless white chars.
749 * include/profile/base.h: Likewise.
750 * include/profile/iterator_tracker.h: Likewise.
751 * include/profile/bitset: Code cleanup and remove not instrumented code.
752 * include/profile/deque: Likewise.
753 * include/profile/forward_list: Likewise.
754 * include/profile/list (std::__profile::_List_profile<>): New.
755 (std::__profile::list<>): Inherit from latter and adapt.
756 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
757 advise to match any ordered to unordered container conversion.
758 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
760 * include/Makefile.am: Add latter.
761 * include/Makefile.in: Regenerate.
762 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
763 remove not instrumented code.
764 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
765 * include/profile/set.h (std::__profile::set<>): Likewise.
766 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
767 * include/profile/unordered_base.h: Add some line feed.
768 * include/profile/unordered_map: Clean useless white chars and replace
770 * include/profile/unordered_set: Likewise.
771 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
772 (std::__profile::_Vector_profile_post<>): New.
773 (std::__profile::vector<>): Inherit from latter and adapt.
775 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
778 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
779 dragonfly target selector to all tests that run on freebsd.
781 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
783 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
784 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
786 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
788 * testsuite/30_threads/call_once/60497.cc: Likewise.
789 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
790 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
791 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
792 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
793 * testsuite/30_threads/promise/60966.cc: Likewise.
794 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
795 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
796 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
797 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
798 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
799 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
800 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
801 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
802 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
803 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
804 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
805 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
806 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
807 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
808 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
809 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
810 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
812 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
815 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
817 * testsuite/23_containers/unordered_set/61143.cc: New.
818 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
820 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
823 * include/std/type_traits: Move include outside namespace std.
824 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
825 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
826 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
829 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
832 2014-05-21 John Marino <gnugcc@marino.st>
834 * acinclude.m4 (*-*-dragonfly*): New target.
835 * configure: Regenerate.
836 * configure.host (*-*-dragonfly*): New target.
837 * config/locale/dragonfly/c_locale.cc: New.
838 * config/locale/dragonfly/ctype_members.cc: New.
839 * config/os/bsd/dragonfly/ctype_base.h: New.
840 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
841 * config/os/bsd/dragonfly/ctype_inline.h: New.
842 * config/os/bsd/dragonfly/os_defines.h: New.
844 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
846 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
847 libstdc++.exp imports those flags via getenv.
848 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
849 CXXFLAGS contains a '-O' flag.
851 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
855 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
858 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
859 and add unwind directives.
861 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
863 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
865 2014-05-20 Tim Shen <timshen91@gmail.com>
868 * include/bits/regex_compiler.h
869 (_BracketMatcher<>::_M_add_character_class): Add negative character
871 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
873 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
876 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
878 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
880 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
882 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
883 * libsupc++/new_opnt.cc: Likewise.
885 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
888 * include/std/future (__future_base::_State_baseV2::_M_set_result):
889 Pass lock into _M_do_set and hold it until the function returns.
890 Signal condition variable after call_once completes.
891 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
893 * testsuite/30_threads/promise/60966.cc: New.
895 2014-05-16 Iain Sandoe <iain@codesourcery.com>
896 Sandra Loosemore <sandra@codesourcery.com>
898 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
899 until after checking that the test is eligible to be run.
901 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
903 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
904 test for 32-bit target.
905 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
907 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
910 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
913 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
914 and add unwind directives.
916 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
918 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
920 * include/std/chrono (chrono_literals::__select_type::_Select_type):
922 (chrono_literals::_Checked_integral_constant): Define.
923 Simplify UDL operator templates and check for overflow.
924 * testsuite/20_util/duration/literals/range.cc: New.
926 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
927 Jonathan Wakely <jwakely@redhat.com>
930 * include/bits/parse_numbers.h: Use integral_constant to remove
931 duplication and simplify.
932 * testsuite/20_util/duration/literals/61166.cc: New.
934 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
937 * include/std/type_traits (__make_unsigned, __make_signed): Define
938 specializations for wchar_t, char16_t and char32_t.
939 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
940 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
941 test for make_unsigned<volatile wchar_t>.
942 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
944 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
946 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
948 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
951 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
953 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
954 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
955 * include/std/utility (tuple_size, tuple_element): Likewise.
956 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
957 Adjust dg-error line number.
959 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
961 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
962 (__tuple_element_t): Define.
963 (tuple_element): Use __tuple_element_t.
964 (__cv_tuple_size): Define.
965 (tuple_size<cv _Tp>): Use __cv_tuple_size.
966 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
967 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
968 (__tuple_compare): Remove size check, re-order parameters.
969 (operator==, operator<): Use static_assert to check requirements.
970 * include/std/functional (__volget): use __tuple_element_t.
971 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
972 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
974 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
977 * include/std/tuple (get, __tuple_compare): Qualify more calls to
978 prevent ADL. Cast comparison results to bool.
979 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
980 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
983 * include/debug/array (get): Qualify call to other get overload.
984 * include/profile/array (get): Likewise.
985 * include/std/array (get): Likewise.
986 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
987 * include/std/mutex (unique_lock, call_once): Use __addressof.
988 (__unlock_impl): Remove unused template.
989 (__try_to_lock): Declare inline.
990 (__try_lock_impl::__do_try_lock): Qualify function calls.
991 (lock): Avoid narrowing conversion.
992 * testsuite/20_util/bind/60497.cc: New.
993 * testsuite/23_containers/array/element_access/60497.cc: New.
994 * testsuite/30_threads/call_once/60497.cc: New.
995 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
997 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
999 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
1000 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
1001 * acinclude.m4 (libtool_VERSION): Bump.
1002 * configure: Regenerate.
1003 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
1004 * testsuite/28_regex/regex_error/base.cc: New.
1006 2014-05-08 Joshua Gay <jgay@gnu.org>
1009 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
1010 source" with "free software".
1011 * doc/html/faq.html: Likewise.
1013 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
1016 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
1018 (operator=(const ios_base&)): Likewise.
1019 * include/std/streambuf: Remove trailing whitespace.
1020 (basic_streambuf(const basic_streambuf&)): Fix initializer for
1021 _M_out_end. Define as defaulted for C++11.
1022 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
1023 (swap(basic_streambuf&)): Define for C++11.
1024 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
1027 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
1029 * include/std/iostream: Fix URL in comment.
1030 * src/c++98/ios_init.cc: Fix path in comment.
1032 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
1034 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
1035 * configure: Regenerate.
1037 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
1040 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
1041 comparison function.
1042 * testsuite/23_containers/set/cons/61023.cc: New.
1045 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
1047 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
1048 arithmetic to obtain a mutable iterator from const_iterator.
1049 * include/bits/vector.tcc (vector::insert): Likewise.
1050 * include/debug/vector (vector::erase): Likewise.
1051 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1052 Adjust dg-error line number.
1053 * testsuite/23_containers/vector/requirements/dr438/
1054 constructor_1_neg.cc: Likewise.
1055 * testsuite/23_containers/vector/requirements/dr438/
1056 constructor_2_neg.cc: Likewise.
1057 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1060 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
1062 * include/Makefile.in: Regenerate.
1064 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
1066 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1067 parameter to pass the 2 instances to check allocator equality.
1068 * include/debug/safe_container.h: New, define _Safe_container<>.
1069 * include/Makefile.am: Add previous.
1070 * include/debug/deque (std::__debug::deque<>): Inherit
1071 _Safe_container<>. Use default implementation for all special
1073 * include/debug/forward_list (std::__debug::forward_list<>):
1075 * include/debug/list (std::__debug::list<>): Likewise.
1076 * include/debug/map.h (std::__debug::map<>): Likewise.
1077 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1078 * include/debug/set.h (std::__debug::set<>): Likewise.
1079 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1080 * include/debug/string (std::__debug::basic_string<>): Likewise.
1081 * include/debug/unordered_map
1082 (std::__debug::unordered_map<>): Likewise.
1083 (std::__debug::unordered_multimap<>): Likewise.
1084 * include/debug/unordered_set
1085 (std::__debug::unordered_set<>): Likewise.
1086 (std::__debug::unordered_multiset<>): Likewise.
1087 * include/debug/vector (std::__debug::vector<>): Likewise.
1088 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1090 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1091 (~_Safe_sequence_base()): Add noexcept.
1092 * include/debug/safe_sequence.h
1093 (std::__debug::_Safe_node_sequence<>): New.
1094 * include/debug/safe_unordered_base.h
1095 (_Safe_unordered_container_base()): Add noexcept.
1096 (~_Safe_unordered_container_base()): Likewise.
1097 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1098 * include/debug/safe_unordered_container.h:
1099 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1100 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1101 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1103 * testsuite/util/debug/checks.h (check_construct1): Just implement
1104 an invalid constructor invocation and no other operations
1105 potentially not supported by some types of container.
1106 (check_construct2): Likewise.
1107 (check_construct3): Likewise.
1108 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1109 check on iterators to make sure they are correctly moved in debug
1111 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1113 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1114 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1115 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1116 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1118 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1119 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1121 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1122 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1123 * testsuite/23_containers/unordered_map/allocator/move.cc:
1125 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1127 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1129 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1131 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1133 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1135 * testsuite/23_containers/unordered_set/allocator/move.cc:
1137 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1139 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1141 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1143 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1145 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1147 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1149 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1150 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1151 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1152 * testsuite/23_containers/map/debug/move_neg.cc: New.
1153 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1154 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1155 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1156 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1157 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1158 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1159 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1160 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1161 * testsuite/23_containers/set/debug/move_neg.cc: New.
1162 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1164 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1166 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1167 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1169 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1171 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1173 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1175 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1177 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1179 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1181 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1183 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1184 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1186 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1188 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1189 (CXXABI_1.3.9): Remove __float128 symbols.
1191 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
1194 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1195 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1196 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1197 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1199 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1202 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1203 Check the correct type in the static assertion.
1204 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1206 2014-04-27 Tim Shen <timshen91@gmail.com>
1208 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1209 Add _S_opcode_repeat support to distingush a loop from
1210 _S_opcode_alternative.
1211 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1212 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1213 _StateSeq<>::_M_clone): Likewise.
1214 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1216 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1217 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1218 Uglify local variable __i.
1219 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1220 Use size_t instead of int to compare with vector::size().
1222 2014-04-27 Tim Shen <timshen91@gmail.com>
1224 * include/bits/regex_executor.h: Add _M_rep_count to track how
1225 many times this repeat node are visited.
1226 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1227 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1230 2014-04-27 Tim Shen <timshen91@gmail.com>
1232 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1233 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1234 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1235 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1236 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1237 Adjust debug NFA dump.
1239 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1242 * include/experimental/optional (operator!=): Implement in terms of
1244 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1245 * testsuite/experimental/optional/relops/2.cc: Likewise.
1246 * testsuite/experimental/optional/relops/3.cc: Likewise.
1247 * testsuite/experimental/optional/relops/4.cc: Likewise.
1248 * testsuite/experimental/optional/relops/5.cc: Likewise.
1249 * testsuite/experimental/optional/relops/6.cc: Likewise.
1251 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
1254 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1255 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1258 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
1260 * testsuite/util/testsuite_abi.cc (check_version): Update for
1263 2014-04-24 Tim Shen <timshen91@gmail.com>
1265 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1266 Do _M_alt before _M_next.
1267 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1269 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
1272 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1273 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1274 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1276 2014-04-24 Andreas Schwab <schwab@suse.de>
1278 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1279 new CXXABI_1.3.9 symbols.
1281 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1283 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1284 (CXXABI_1.3.9): New version.
1286 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
1289 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1290 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1291 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1293 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1295 * configure.host: Remove solaris2.9 handling.
1296 Change os_include_dir to os/solaris/solaris2.10.
1297 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1298 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1299 * configure: Regenerate.
1300 * config/abi/post/solaris2.9: Remove.
1301 * config/os/solaris/solaris2.9: Rename to ...
1302 * config/os/solaris/solaris2.10: ... this.
1303 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1306 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1307 Remove Solaris 9 reference.
1308 * doc/html/manual/configure.html: Regenerate.
1310 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1311 Remove *-*-solaris2.9 xfail.
1312 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1315 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1318 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
1320 * include/std/functional (__is_location_invariant): Use __or_ helper.
1322 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
1325 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1328 * include/std/atomic (atomic<_Tp>): Add static assertion.
1329 * testsuite/29_atomics/atomic/60695.cc: New.
1332 * include/std/functional (function::_Callable): Exclude own type
1333 from the callable checks.
1334 * testsuite/20_util/function/60594.cc: New.
1336 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1337 const to constexpr member functions.
1339 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1340 delegating constructor.
1341 * include/bits/shared_ptr_base.h
1342 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1344 * include/std/atomic: Uglify parameter names.
1347 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1348 1.cc: Fix invalid explicit instantiations with unqualified names.
1349 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1351 * testsuite/20_util/tuple/53648.cc: Likweise.
1352 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1354 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1356 * testsuite/23_containers/unordered_map/requirements/
1357 debug_container.cc: Likewise.
1358 * testsuite/23_containers/unordered_map/requirements/
1359 explicit_instantiation/3.cc: Likewise.
1360 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1362 * testsuite/23_containers/unordered_multimap/requirements/
1363 explicit_instantiation/3.cc: Likewise.
1364 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1366 * testsuite/23_containers/unordered_multiset/requirements/
1367 explicit_instantiation/3.cc: Likewise.
1368 * testsuite/23_containers/unordered_set/requirements/
1369 debug_container.cc: Likewise.
1370 * testsuite/23_containers/unordered_set/requirements/
1371 explicit_instantiation/3.cc: Likewise.
1373 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1374 not use uninitialized members in mem-initializers.
1375 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1376 * testsuite/util/testsuite_common_types.h: Update comment.
1378 * include/experimental/string_view: Fix inconsistent exception specs.
1380 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1381 Remove name of unused parameter.
1383 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
1385 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1386 _Vector_base::_M_allocate): NullablePointer requirements do not
1387 include initialization from literal zero, use value-initialization.
1388 * include/bits/vector.tcc (vector::_M_insert_aux,
1389 vector::_M_explace_back_aux): Likewise for assignment.
1391 * include/bits/allocator.h (operator==, operator!=): Add exception
1395 * include/std/tuple (get): Qualify calls to prevent ADL.
1396 * testsuite/20_util/tuple/60497.cc: New.
1398 * include/std/tuple (tuple_element_t): Define.
1399 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1401 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1403 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1406 * include/bits/stl_iterator.h (move_iterator::reference,
1407 move_iterator::operator*): Implement LWG 2106.
1408 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1410 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1412 * include/std/complex (__complex_exp, pow): Specify the template
1413 parameter in calls to std::polar, for expression templates.
1415 2014-04-10 Andreas Schwab <schwab@suse.de>
1417 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1419 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1420 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1422 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1424 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1426 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1427 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1428 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1431 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1432 Jack Howarth <howarth@bromo.med.uc.edu>
1435 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1438 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1440 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1442 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1444 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1445 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1446 * doc/xml/manual/concurrency_extensions.xml
1447 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1448 * doc/html/*: Regenerate.
1450 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1451 Jonathan Wakely <jwakely@redhat.com>
1454 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1455 string if input is not quoted.
1456 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1458 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1460 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1462 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1464 * testsuite/18_support/exception_ptr/60612-terminate.cc
1465 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1466 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1468 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1470 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1472 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1473 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1475 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1477 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1479 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1480 Fix bad s/part/chapter/ substitutions.
1481 * doc/xml/manual/io.xml (std.io): Likewise.
1482 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1483 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1485 * doc/html/*: Regenerate.
1487 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1490 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1491 compatible with __cxa_exception.
1492 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1493 Fix typos in comments.
1494 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1495 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1497 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1500 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1501 Use sizeof pointer type not the element type.
1502 * testsuite/29_atomics/atomic/60658.cc: New.
1504 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1506 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1507 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1508 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1509 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1510 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1511 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1512 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1513 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1514 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1515 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1518 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1520 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1522 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1524 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1525 to delegated constructor.
1526 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1527 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1530 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1532 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1535 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1537 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1540 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1541 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1543 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1544 from different types of debug container. Use _Is_contiguous_sequence
1545 instead of is_lvalue_reference.
1546 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1547 dereferencing past-the-end iterator.
1548 (__foreign_iterator_aux4): Use const value_type* instead of
1549 potentially user-defined const_pointer type.
1550 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1551 and pass end iterator to __gnu_debug::__foreign_iterator.
1552 (__glibcxx_check_insert_range_after): Likewise.
1553 (__glibcxx_check_max_load_factor): Fix comment.
1554 * include/debug/vector (_Is_contiguous_sequence): Define partial
1556 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1557 -std=gnu++11 option and unused header.
1558 * testsuite/23_containers/vector/debug/60587.cc: New.
1559 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1561 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1563 * crossconfig.m4: Support spu-*-elf* targets.
1564 * configure: Regenerate.
1566 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1569 * include/std/future (__future_base::_Task_state<>): Change
1570 constructors to template functions using perfect forwarding.
1571 (__create_task_state): Use decayed type as stored task.
1572 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1573 * testsuite/30_threads/packaged_task/60564.cc: New.
1575 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1577 * scripts/create_testsuite_files: Add testsuite/experimental in
1578 the list of folders to search for tests.
1580 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1582 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1584 2014-03-15 Tim Shen <timshen91@gmail.com>
1586 * include/bits/regex.h: Add/modify comments.
1587 * include/bits/regex_compiler.h: Likewise.
1588 * include/bits/regex_executor.h: Likewise.
1589 * include/bits/regex_executor.tcc: Likewise.
1590 * include/bits/regex_scanner.h: Likewise.
1592 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
1595 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
1596 _ZNSt12system_errorC* symbols which are not exported on any target.
1598 2014-03-12 Roland McGrath <mcgrathr@google.com>
1599 Mark Seaborn <mseaborn@google.com>
1602 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
1603 the address of a null pointer, not with a null pointer to pointer.
1604 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
1605 * testsuite/18_support/bad_exception/59392.cc: New file.
1607 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
1610 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
1612 * include/debug/map (map::operator=(map&&)): Likewise.
1613 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
1614 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
1615 * include/debug/set (set::operator=(set&&)): Likewise.
1616 * include/debug/unordered_map
1617 (unordered_map::operator=(unordered_map&&)): Likewise.
1618 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
1619 * include/debug/unordered_set
1620 (unordered_set::operator=(unordered_set&&)): Likewise.
1621 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
1622 * include/debug/vector (vector::operator=(vector&&)): Likewise.
1623 * testsuite/23_containers/forward_list/debug/60499.cc: New
1624 * testsuite/23_containers/map/debug/60499.cc: New
1625 * testsuite/23_containers/multimap/debug/60499.cc: New
1626 * testsuite/23_containers/multiset/debug/60499.cc: New
1627 * testsuite/23_containers/set/debug/60499.cc: New
1628 * testsuite/23_containers/unordered_map/debug/60499.cc: New
1629 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
1630 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
1631 * testsuite/23_containers/unordered_set/debug/60499.cc: New
1632 * testsuite/23_containers/vector/debug/60499.cc: New
1634 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
1636 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
1637 for filesystem and fundamentals TS work items.
1639 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
1642 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
1643 Adjust dg-error directives.
1645 2014-02-26 Tim Shen <timshen91@gmail.com>
1647 * include/bits/regex.tcc (match_results<>::format,
1648 regex_replace<>): Update __out after calling std::copy.
1649 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
1651 * testsuite/28_regex/match_results/format.cc: Likewise.
1653 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
1656 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
1657 allocator_type&)): Remove redundant call to _M_initialize_map.
1658 (deque::deque(const allocator_type&)): Initialize _Base with a
1659 constructor that calls _M_initialize_map.
1663 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
1665 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
1668 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
1670 Rename testsuite directory shared_mutex to shared_timed_mutex
1672 * testsuite/30_threads/shared_mutex: Moved to...
1673 * testsuite/30_threads/shared_timed_mutex: ...here
1675 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
1677 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
1678 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
1679 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
1680 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
1681 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
1682 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
1683 * testsuite/30_threads/shared_lock/requirements/
1684 explicit_instantiation.cc: Ditto.
1685 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
1686 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
1687 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
1688 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
1689 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
1690 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
1691 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
1692 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
1693 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
1694 * testsuite/30_threads/shared_mutex/requirements/
1695 standard_layout.cc: Ditto.
1696 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
1697 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
1698 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
1699 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
1700 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
1702 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1704 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
1705 execution on i?86-*-solaris2.9, remove comment.
1706 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1708 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
1710 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
1711 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
1712 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
1714 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
1716 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
1717 not use varargs when argument could be non-POD.
1718 (__alloctr_rebind_helper): Eliminate static const bool member by
1719 using true_type and false_type.
1720 (allocator_traits::__allocate_helper): Likewise.
1721 (allocator_traits::__construct_helper): Likewise.
1722 (allocator_traits::__destroy_helper): Likewise.
1723 (allocator_traits::__maxsize_helper): Likewise.
1724 (allocator_traits::__select_helper): Likewise.
1725 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
1726 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
1727 Remove redundant condition.
1728 * include/bits/stl_vector.h (vector::operator=(const vector&)):
1730 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
1731 indirection through __alloc_traits.
1732 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1733 Eliminate static const bool members by using true_type and false_type.
1734 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
1735 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
1736 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
1738 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
1741 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
1742 (vector::_M_data_ptr): New overloaded functions to ensure empty
1743 vectors do not dereference the pointer.
1744 * testsuite/23_containers/vector/59829.cc: New.
1745 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1746 Adjust dg-error line number.
1747 * testsuite/23_containers/vector/requirements/dr438/
1748 constructor_1_neg.cc: Likewise.
1749 * testsuite/23_containers/vector/requirements/dr438/
1750 constructor_2_neg.cc: Likewise.
1751 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1755 * include/ext/array_allocator.h: Add deprecated attribute.
1758 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
1759 installation and use of python printers.
1760 * doc/xml/manual/status_cxx2011.xml: Update.
1761 * doc/html/*: Regenerate.
1763 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
1764 Kyle Lippincott <spectral@google.com>
1767 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
1768 constructor and grant friendship to weak_ptr.
1769 (weak_ptr::lock()): Use new constructor.
1770 * include/bits/shared_ptr_base.h
1771 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
1772 and define specializations.
1773 (__shared_count): Add new non-throwing constructor.
1774 (__shared_ptr): Add new non-throwing constructor and grant friendship
1776 (__weak_ptr::lock()): Use new constructor.
1777 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
1778 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1780 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
1783 * include/bits/shared_ptr_base.h
1784 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
1787 2014-01-27 Jason Merrill <jason@redhat.com>
1792 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
1793 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
1794 (__cxa_allocate_exception): Don't set it here.
1796 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
1798 * include/bits/stl_map.h: Remove anachronistic comment.
1799 * include/bits/stl_multimap.h: Add whitespace.
1800 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
1801 -std=gnu++11 instead of -std=c++11.
1802 * testsuite/23_containers/map/operators/2.cc: Likewise.
1803 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
1804 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
1805 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
1807 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
1808 * configure: Regenerate.
1810 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1813 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
1814 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
1816 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1817 Peter A. Bigot <pab@pabigot.com>
1820 * include/experimental/string_view
1821 (copy(_CharT*, size_type, size_type) const): Correct throw string.
1822 Correct copy start location.
1824 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1825 Peter A. Bigot <pab@pabigot.com>
1828 * include/experimental/string_view (operator[](size_type) const):
1829 Fix one-off index error in debug check.
1830 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
1831 test basic_string_view at size().
1832 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
1834 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1835 Peter A. Bigot <pab@pabigot.com>
1838 * include/experimental/string_view
1839 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
1840 * testsuite/experimental/string_view/operations/substr/char/1.cc:
1841 Comment out catch of out_of_range; No terminating null
1842 in basic_string_view. Check begin == end.
1843 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
1846 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
1849 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
1850 constructor to prevent it being implicitly defined as deleted, but
1851 do not copy anything.
1852 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
1853 Define copy and move constructors similar to _Safe_sequence_base's.
1854 * testsuite/23_containers/unordered_map/59548.cc: New.
1856 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
1857 Steve Ellcey <sellcey@mips.com>
1859 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
1861 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
1862 * (configure, config.h.in): Regenerate.
1863 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
1865 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
1867 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
1868 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
1871 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
1872 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
1874 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
1876 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
1877 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
1878 functions to perform moving or copying of elements from rvalue tree.
1879 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
1880 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
1881 * testsuite/23_containers/map/59872.cc: New.
1882 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
1884 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
1886 * include/bits/stl_deque.h (_Deque_impl): Move comment.
1889 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
1890 Split into separate default constructor and constructor taking
1892 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
1893 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
1895 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
1896 * include/debug/list (list::list(const _Allocator&)): Likewise.
1897 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
1899 * include/debug/multimap.h
1900 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1901 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
1903 * include/debug/multiset.h
1904 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1905 * include/debug/vector (vector::vector(const allocator_type&)):
1907 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
1908 * include/profile/list (list::list(const _Allocator&)): Likewise.
1909 * include/profile/map.h
1910 (map::map(const _Compare&, const _Allocator&)): Likewise.
1911 * include/profile/multimap.h
1912 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1913 * include/profile/set.h
1914 (set::set(const _Compare&, const _Allocator&)): Likewise.
1915 * include/profile/multiset.h
1916 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1917 * include/profile/vector (vector::vector(const _Allocator&)):
1919 * testsuite/23_containers/deque/58764.cc: New.
1920 * testsuite/23_containers/list/58764.cc: New.
1921 * testsuite/23_containers/map/58764.cc: New.
1922 * testsuite/23_containers/multimap/58764.cc: New.
1923 * testsuite/23_containers/set/58764.cc: New.
1924 * testsuite/23_containers/multiset/58764.cc: New.
1925 * testsuite/23_containers/vector/58764.cc: New.
1926 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1927 Adjust dg-error line number.
1928 * testsuite/23_containers/deque/requirements/dr438/
1929 constructor_1_neg.cc: Likewise.
1930 * testsuite/23_containers/deque/requirements/dr438/
1931 constructor_2_neg.cc: Likewise.
1932 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1934 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1936 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1938 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1940 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1942 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1944 * testsuite/23_containers/vector/requirements/dr438/
1945 constructor_1_neg.cc: Likewise.
1946 * testsuite/23_containers/vector/requirements/dr438/
1947 constructor_2_neg.cc: Likewise.
1948 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1951 PR libstdc++/58764 (again)
1952 * include/bits/stl_list.h (list): Make default constructor's exception
1953 specification conditional.
1954 * include/bits/stl_vector.h (vector): Likewise.
1955 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
1956 to default constructor.
1957 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1958 Adjust dg-error line number.
1959 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1961 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1963 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1965 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1967 * testsuite/23_containers/vector/requirements/dr438/
1968 constructor_1_neg.cc: Likewise.
1969 * testsuite/23_containers/vector/requirements/dr438/
1970 constructor_2_neg.cc: Likewise.
1971 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1974 2014-01-21 Tim Shen <timshen91@gmail.com>
1976 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
1977 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
1978 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
1980 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
1983 * include/bits/hashtable.h (__cache_default): Do not depend on
1984 whether the hash function is DefaultConstructible or CopyAssignable.
1985 (_Hashtable): Adjust static assertions.
1986 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
1987 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1988 dg-error line number.
1989 * testsuite/23_containers/unordered_set/
1990 not_default_constructible_hash_neg.cc: Remove.
1992 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
1994 * scripts/create_testsuite_files: Add testsuite/experimental in
1995 the list of folders to search for tests.
1996 * include/experimental/string_view
1997 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
1998 incompatible with constexpr qualifier.
1999 (basic_string_view<>::front()): Likewise.
2000 (basic_string_view<>::back()): Likewise.
2001 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
2002 Merge dg-options directives into one.
2003 * testsuite/experimental/string_view/element_access/char/2.cc:
2004 Likewise. Remove invalid experimental namespace scope on
2007 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
2010 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
2011 friendship to _Local_iterator_base<..., false>.
2012 (_Local_iterator_base): Give protected access to all existing members.
2013 (_Local_iterator_base::_M_curr()): New public accessor.
2014 (_Local_iterator_base::_M_get_bucket()): New public accessor.
2015 (_Local_iterator_base<..., false>::_M_init()): New function to manage
2016 the lifetime of the _Hash_code_base explicitly.
2017 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
2018 (_Local_iterator_base<..., false>): Define copy constructor and copy
2019 assignment operator that use new functions to manage _Hash_code_base.
2020 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
2021 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
2022 Use public API for _Local_iterator_base.
2023 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
2024 * include/debug/unordered_map (__debug::unordered_map::erase(),
2025 __debug::unordered_multimap::erase()): Likewise.
2026 * include/debug/unordered_set (__debug::unordered_set::erase(),
2027 __debug::unordered_multiset::erase()): Likewise.
2028 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
2030 2014-01-19 Tim Shen <timshen91@gmail.com>
2032 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
2033 Fix parse error of multiple consecutive quantifiers like "a**".
2034 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
2036 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
2038 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
2040 * include/profile/set.h (set): Implement C++11 allocator-aware
2041 container requirements.
2042 * include/profile/map.h (map): Likewise.
2043 * include/profile/multiset.h (multiset): Likewise.
2044 * include/profile/multimap.h (multimap): Likewise.
2045 * include/profile/set.h
2046 (set::operator=(const set&)): Define as default in C++11 mode.
2047 (set::operator=(set&&)): Likewise.
2048 * include/profile/map.h
2049 (map::operator=(const map&)): Likewise.
2050 (map::operator=(map&&)): Likewise.
2051 * include/profile/multiset.h
2052 (multiset::operator=(const multiset&)): Likewise.
2053 (multiset::operator=(multiset&&)): Likewise.
2054 * include/profile/multimap.h
2055 (multimap::operator=(const multimap&)): Likewise.
2056 (multimap::operator=(multimap&&)): Likewise.
2057 * include/profile/set.h (set::operator=(std::initializer_list<>)):
2058 Rely on the same operator from normal mode.
2059 * include/profile/map.h (map::operator=(std::initializer_list<>)):
2061 * include/profile/multiset.h
2062 (multiset::operator=(std::initializer_list<>)): Likewise.
2063 * include/profile/multimap.h
2064 (multimap::operator=(std::initializer_list<>)): Likewise.
2065 * include/profile/set.h (set::swap(set&)): Add noexcept
2067 * include/profile/map.h (map::swap(map&)): Likewise.
2068 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2069 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2071 2014-01-17 Tim Shen <timshen91@gmail.com>
2073 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2075 * include/bits/regex_automaton.h: Do not use std::set.
2076 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2077 _BracketMatcher<>::_M_add_collating_element(),
2078 _BracketMatcher<>::_M_add_equivalence_class(),
2079 _BracketMatcher<>::_M_make_range()): Likewise.
2080 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2082 * include/bits/regex_executor.h: Do not use std::queue.
2083 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2084 _Executor<>::_M_dfs()): Likewise.
2085 * include/std/regex: Remove <map>, <set> and <queue>.
2087 2014-01-17 Tim Shen <timshen91@gmail.com>
2089 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2090 basic_regex<>::assign()): Change __compile_nfa to accept
2092 * include/bits/regex_compiler.h: Change _Compiler's template
2093 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2094 * include/bits/regex_compiler.tcc: Likewise.
2096 2014-01-17 Tim Shen <timshen91@gmail.com>
2098 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2100 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2101 _ScannerBase from _Scanner; Change _Scanner's template argument from
2102 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2104 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2105 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2106 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2108 * include/std/regex: Add <cstring> for using strchr.
2110 2014-01-17 Tim Shen <timshen91@gmail.com>
2112 * bits/regex_automaton.tcc: Indentation fix.
2113 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2114 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2115 _BracketMatcher<>): Add bool option template parameters and
2116 specializations to make matching more efficient and space saving.
2117 * bits/regex_compiler.tcc: Likewise.
2119 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
2122 * include/bits/hashtable_policy.h: Fix some long lines.
2123 * include/bits/hashtable.h (__hash_code_base_access): Define and
2124 use it to check its _M_bucket_index noexcept qualification. Use
2126 (__access_protected_ctor): ...this.
2127 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2129 * testsuite/23_containers/unordered_set/
2130 not_default_constructible_hash_neg.cc: Likewise.
2132 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
2134 * include/debug/set.h (set): Implement C++11 allocator-aware
2135 container requirements.
2136 * include/debug/map.h (map): Likewise.
2137 * include/debug/multiset.h (multiset): Likewise.
2138 * include/debug/multimap.h (multimap): Likewise.
2139 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2140 fix implementation regarding management of safe iterators.
2141 * include/debug/map.h (map::operator=(map&&)): Likewise.
2142 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2143 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2145 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2146 Rely on the same operator from normal mode.
2147 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2149 * include/debug/multiset.h
2150 (multiset::operator=(std::initializer_list<>)): Likewise.
2151 * include/debug/multimap.h
2152 (multimap::operator=(std::initializer_list<>)): Likewise.
2153 * include/debug/set.h (set::swap(set&)): Add noexcept
2154 specification, add allocator equality check.
2155 * include/debug/map.h (map::swap(map&)): Likewise.
2156 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2157 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2159 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
2162 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2163 and stylistic improvements.
2164 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2165 and update for C++11.
2166 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2169 * doc/xml/manual/backwards_compatibility.xml
2170 (backwards.third.nocreate_noreplace): Correct and expand.
2173 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2175 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
2178 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2179 support for non-Movable types.
2182 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2184 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
2186 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2187 *this allocator instance when building temporary vector instance
2188 so that *this allocator does not get moved.
2189 * include/debug/safe_base.h
2190 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2191 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2192 move constructor from _Safe_sequence_base.
2193 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2194 safe iterators if the instance is moved.
2195 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2196 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2197 check on a vector iterator.
2198 * testsuite/23_containers/vector/allocator/move_assign.cc
2200 (test03): New, test with a non-propagating allocator.
2201 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2203 2014-01-07 Tim Shen <timshen91@gmail.com>
2205 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2206 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2207 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2208 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2209 _BracketMatcher<>::_M_add_char(),
2210 _BracketMatcher<>::_M_add_collating_element(),
2211 _BracketMatcher<>::_M_add_equivalence_class(),
2212 _BracketMatcher<>::_M_add_character_class(),
2213 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2214 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2215 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2216 to template parameter; Add cache for _BracketMatcher. Adjust
2217 declarations from here...
2218 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2219 imbuing a regex will trigger a recompilation to rebuild the cache.
2220 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2221 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2222 different template bool parameters.
2223 * include/bits/regex_executor.h: Remove unnecessary declarations.
2224 * include/std/regex: Adjust including orders.
2225 * testsuite/28_regex/traits/char/user_defined.cc: New.
2226 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2228 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2230 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2231 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2232 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2233 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2234 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2236 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2238 Update copyright years
2240 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2242 * testsuite/18_support/new_handler.cc,
2243 testsuite/18_support/terminate_handler.cc,
2244 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2245 the copyright notice.
2247 Copyright (C) 2014 Free Software Foundation, Inc.
2249 Copying and distribution of this file, with or without modification,
2250 are permitted in any medium without royalty provided the copyright
2251 notice and this notice are preserved.