1 2014-08-27 Jonathan Wakely <jwakely@redhat.com>
4 * include/Makefile.am (install-freestanding-headers): Add missing
6 * include/Makefile.in: Regenerate.
8 2014-08-21 Tony Wang <tony.wang@arm.com>
10 * testsuite/18_support/nested_exception/62154.cc: Disable when the
11 target doesn't provide atomic builtins.
13 2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
14 Kai Tietz <ktietz@redhat.com>
16 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
18 * config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
20 * libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
22 (struct elt): Add dll member.
23 (run): Decrement dll refcount.
24 (__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.
26 2014-08-15 Jonathan Wakely <jwakely@redhat.com>
29 * libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
30 Rewrite to conform to C++11 requirements.
31 * testsuite/18_support/nested_exception/62154.cc: New.
33 2014-08-14 Matthias Klose <doko@ubuntu.com>
35 * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
36 Remove empty directory.
38 2014-08-14 Paolo Carlini <paolo.carlini@oracle.com>
40 * testsuite/26_numerics/random/linear_congruential_engine/
41 requirements/non_uint_neg.cc: Adjust for parser change.
42 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
43 requirements/non_uint_neg.cc: Likewise.
45 2014-08-13 Jonathan Wakely <jwakely@redhat.com>
48 * include/std/thread (thread::_M_start_thread): Declare new overload.
49 (thread::thread<_Callable, _Args...>): Call new overload with an
50 explicit reference to pthread_create.
51 * src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
52 * config/abi/pre/gnu.ver: Export new function.
54 2014-08-13 Sylvestre Ledru <sylvestre@debian.org>
56 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
58 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
60 * Fix thinko in the last commit.
62 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
65 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
66 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
68 2014-08-12 Jonathan Wakely <jwakely@redhat.com>
70 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
71 and add overloads for rvalue streams.
72 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
74 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
77 * include/bits/basic_string.h (getline): Declare inline.
79 2014-08-09 Ulrich Drepper <drepper@gmail.com>
81 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
82 (uniform_on_sphere_distribution::operator()): Use the new helper
83 class for the implementation.
85 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
86 equal.cc: Remove bogus part of comment.
87 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
89 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
90 serialize.cc: Add check to verify result of serialzation and
92 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
93 generate.cc: New file.
95 2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
97 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
98 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
100 2014-08-09 François Dumont <fdumont@gcc.gnu.org>
103 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
104 _M_need_rehash to initialize the rehash policy and check if a rehash is
106 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
108 2014-08-07 Jonathan Wakely <jwakely@redhat.com>
110 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
112 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
113 Adjust dg-error line number.
114 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
116 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
118 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
121 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
123 (_State_baseV2::_M_do_set): Change parameters to pointers.
124 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
125 (_State_baseV2::__setter): Initialize _Setter with pointers.
126 (_State_baseV2::__setter(promise<void>*)): Remove overload.
127 (promise::set_value, promise::set_exception): Pass setter directly
129 (_State_baseV2::_Task_setter): Add template parameter for callable
130 type and replace std::function member with pointer to that type.
131 Change _M_result member from reference to pointer.
132 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
133 and initialize _Task_setter with pointers.
134 (__location_invariant): Specialize for _Setter and _Task_setter.
136 * include/std/future (__location_invariant): Move specializations
137 after preprocessor condition.
139 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
142 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
144 2014-08-01 Zifei Tong <zifeitong@gmail.com>
146 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
147 _GLIBCXX_ prefix to macro.
149 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
151 * python/libstdcxx/v6/printers.py
152 (SingleObjContainerPrinter._contained): Use compatibility mixin.
154 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
156 * testsuite/util/testsuite_allocator.h
157 (tracker_allocator_counter::allocate): Remove new invocation, only
159 (tracker_allocator_counter::deallocate): Remove delete invocation, only
161 (check_inconsistent_alloc_value_type): New.
162 (tracker_allocator): Transform as a facade for any allocator type.
163 (uneq_allocator): Likewise.
164 (propagating_allocator): Likewise.
165 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
166 explicitly non propagating allocator.
167 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
168 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
169 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
170 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
171 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
173 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
175 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
177 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
179 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
181 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
184 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
185 const allocator_type&)): Pass non-const allocator to
187 * testsuite/ext/rope/61946.cc: New.
190 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
191 disambiguate unary constructors.
192 (_Tuple_impl): Pass allocator_arg_t arguments.
193 * testsuite/20_util/tuple/61947.cc: New.
194 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
196 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
198 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
199 * include/bits/random.h (_Adaptor): static_assert for non floating-point
201 * include/bits/random.tcc (generate_canonical): Ditto.
202 * include/ext/random.tcc (hypergeometric_distribution::operator()):
203 Use double as a rng result type.
204 * testsuite/26_numerics/random/pr60037-neg.cc: New.
205 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
207 2014-07-25 Uros Bizjak <ubizjak@gmail.com>
209 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
211 2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
213 * include/experimental/string_view: Make the literal operators
214 constexpr like the ctors they call.
216 2014-07-23 H.J. Lu <hongjiu.lu@intel.com>
218 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
220 2014-07-23 Jonathan Wakely <jwakely@redhat.com>
222 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
223 to string instead of using gdb.Type.name attribute.
225 2014-07-19 Jonathan Wakely <jwakely@redhat.com>
227 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
230 2014-07-18 Jonathan Wakely <jwakely@redhat.com>
233 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
235 (SingleObjContainerPrinter): Check if type printers are in use.
237 2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
239 * include/ext/random: Minor formatting and cosmetic tweaks.
240 (uniform_on_sphere_distribution<>::operator==
241 (const uniform_on_sphere_distribution&,
242 const uniform_on_sphere_distribution&)): Compare the _M_nds.
243 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
244 (operator!=(const uniform_on_sphere_distribution&,
245 const uniform_on_sphere_distribution&)): Adjust.
246 * include/ext/random.tcc: Minor cosmetc tweaks.
248 2014-07-15 Jonathan Wakely <jwakely@redhat.com>
250 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
251 printer for class templates.
252 (register_type_printers): Use TemplateTypePrinter for containers
253 and other class templates with default template arguments.
254 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
256 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
257 base class for experimental::any and experimental::optional printers.
258 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
259 New printers for Fundamentals TS types.
260 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
262 2014-07-15 Tim Shen <timshen@google.com>
265 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
266 Clear match queue for next use.
267 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
269 2014-07-14 Ulrich Drepper <drepper@gmail.com>
271 * include/ext/random.tcc: Unfortunately more fixes for
272 operator>> and operator<< for uniform_on_sphere_distribution.
274 2014-07-13 Ulrich Drepper <drepper@gmail.com>
276 * include/ext/random.tcc: Fix operator>> and operator<< for
277 uniform_on_sphere_distribution.
279 2014-07-12 Ulrich Drepper <drepper@gmail.com>
281 * include/ext/random: Add uniform_on_sphere_distribution definition.
282 * include/ext/random.tcc: Add out-of-band member function definitions
283 for uniform_on_sphere_distribution.
284 * testsuite/ext/random/uniform_on_sphere_distribution/
285 cons/default.cc: New file.
286 * testsuite/ext/random/uniform_on_sphere_distribution/
287 operators/equal.cc: New file.
288 * testsuite/ext/random/uniform_on_sphere_distribution/
289 operators/inequal.cc: New file.
290 * testsuite/ext/random/uniform_on_sphere_distribution/
291 operators/serialize.cc: New file.
293 2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
295 Add the logistic_distribution as an extension.
296 * include/ext/random: Add the logistic_distribution.
297 * include/ext/random.tcc: Add the logistic_distribution.
298 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
299 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
300 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
302 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
303 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
304 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
307 2014-07-11 Samuel Bronson <naesten@gmail.com>
309 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
310 instead of insisting that GCC understand -fdiagnostics-color=never
312 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
315 2014-07-11 Samuel Bronson <naesten@gmail.com>
316 Matthias Klose <doko@ubuntu.com>
319 * python/libstdcxx/v6/printers.py: Port to Python 2+3
320 (imap): New compat function.
322 (Iterator): New mixin to allow writing iterators in Python 3 style
323 regardless of which version we're running on.
324 [Python3] (long) New compat alias for "int".
325 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
327 2014-07-10 Jonathan Wakely <jwakely@redhat.com>
329 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
330 tuple members to simplify pretty printing.
331 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
333 * testsuite/experimental/any/cons/4.cc: New.
335 2014-07-09 Jason Merrill <jason@redhat.com>
338 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
339 * libsupc++/tinfo.h: Not here.
341 2014-07-08 Jonathan Wakely <jwakely@redhat.com>
343 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
345 * include/experimental/any: Remove unused header.
346 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
347 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
348 * testsuite/util/testsuite_regex.h: Move include guard.
350 2014-07-01 Tim Shen <timshen@google.com>
354 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
355 a NFA state limit. If it's exceeded, regex_constants::error_space
357 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
358 map (which is sparse) instead of vector. This reduce n times clones'
359 cost from O(n^2) to O(n).
360 * include/std/regex: Add map dependency.
361 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
364 2014-07-01 Tim Shen <timshen@google.com>
367 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
368 not just regex containing back-references.
369 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
370 exchange _M_next and _M_alt for alternative operator,
371 making matching from left to right.
372 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
373 Add position tracking fom DFS.
374 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
375 _Executor<>::_M_dfs): Likewise.
376 * include/bits/regex_scanner.h: Remove unused enum entry.
377 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
380 2014-06-30 Jason Merrill <jason@redhat.com>
382 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
385 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
388 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
389 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
392 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
394 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
396 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
398 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
400 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
403 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
405 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
406 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
407 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
409 * include/ext/alloc_traits.h: Fix comment.
411 * include/Makefile.am: Add new header.
412 * include/Makefile.in: Regenerate.
413 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
414 New RAII utilities for working with allocators.
415 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
416 __allocator_type typedef and use new __allocated_ptr type.
417 (_Sp_counted_ptr_inplace): Likewise.
418 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
419 __allocate_guarded to to simplify exception handling.
420 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
421 * include/std/future (_Result_alloc::_M_destroy): Likewise.
422 (_Result_alloc::_S_allocate_result): Likewise.
423 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
424 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
425 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
426 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
428 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
430 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
432 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
433 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
435 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
437 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
438 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
439 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
440 Remove unused typedef.
441 (time_get::do_get_monthname): Likewise.
442 * include/bits/stl_tree.h: Add system_header pragma.
443 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
444 redundant const-qualifier.
445 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
446 instead of _GLIBCXX_USE_CONSTEXPR.
448 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
450 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
451 * include/std/chrono (_Checked_integral_constant): Allow zero.
452 * testsuite/20_util/duration/literals/values.cc: Test non-positive
453 values and digit separators.
454 * include/experimental/any
457 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
458 apply the signed specifier to wchar_t.
459 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
460 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
461 cv-qualifier and size.
462 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
465 * include/experimental/any (any_v1): Rename namespace to
466 fundamentals_v1. Change string returned by bad_any_cast::what().
467 * include/experimental/optional (fundamentals_v1): Add namespace.
468 * include/experimental/string_view (fundamentals_v1): Likewise.
469 * testsuite/experimental/any/typedefs.cc: New.
470 * testsuite/experimental/optional/typedefs.cc: New.
471 * testsuite/experimental/string_view/typedefs.cc: New.
473 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
474 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
477 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
479 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
481 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
482 * include/Makefile.am: Add new header.
483 * include/Makefile.in: Regenerate.
484 * include/experimental/any: New.
485 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
487 * testsuite/experimental/any/assign/1.cc: New.
488 * testsuite/experimental/any/assign/2.cc: New.
489 * testsuite/experimental/any/cons/1.cc: New.
490 * testsuite/experimental/any/cons/2.cc: New.
491 * testsuite/experimental/any/cons/3.cc: New.
492 * testsuite/experimental/any/misc/any_cast.cc: New.
493 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
494 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
495 * testsuite/experimental/any/misc/swap.cc: New.
496 * testsuite/experimental/any/modifiers/1.cc: New.
497 * testsuite/experimental/any/observers/type.cc: New.
499 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
500 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
502 * include/bits/shared_ptr.h (shared_ptr): Likewise.
503 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
505 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
507 * include/parallel/list_partition.h (__parallel::list_partition):
509 * include/std/iomanip (quoted): Likewise.
510 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
512 * doc/xml/api.xml: Link to more recent API docs.
513 * include/bits/allocator.h: Fix link in doxygen comment.
514 * include/bits/char_traits.h: Likewise.
515 * include/bits/ios_base.h: Likewise.
516 * include/bits/stl_map.h: Likewise.
517 * include/bits/stl_multimap.h: Likewise.
518 * include/bits/stl_multiset.h: Likewise.
519 * include/bits/stl_set.h: Likewise.
520 * include/bits/unordered_map.h: Likewise.
521 * include/bits/unordered_set.h: Likewise.
522 * include/ext/mt_allocator.h: Likewise.
523 * include/std/fstream: Likewise.
524 * include/std/iosfwd: Likewise.
525 * include/std/ostream: Likewise.
526 * include/std/sstream: Likewise.
527 * include/std/streambuf: Likewise.
528 * doc/html/*: Regenerate.
530 * include/experimental/any (any_cast): Combine duplicate doxygen
532 * include/experimental/string_view (basic_string_view): Update
534 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
535 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
536 (dynamic_bitset): Improve Doxygen comments.
537 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
540 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
542 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
543 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
545 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
548 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
549 (bin_search_tree_traits): Do not redeclare template-parameters.
550 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
552 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
554 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
555 parameter for DocBook HTML generation.
556 * doc/Makefile.in: Regenerate.
557 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
558 * doc/xml/faq.xml: Update content and improve formatting.
559 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
560 * doc/xml/manual/allocator.xml: Add stable ID attribute.
561 * doc/xml/manual/bitmap_allocator.xml: Likewise.
562 * doc/xml/manual/build_hacking.xml: Likewise.
563 * doc/xml/manual/codecvt.xml: Change URL.
564 * doc/xml/manual/ctype.xml: Add stable ID attribute.
565 * doc/xml/manual/debug_mode.xml: Likewise.
566 * doc/xml/manual/documentation_hacking.xml: Likewise.
567 * doc/xml/manual/evolution.xml: Likewise.
568 * doc/xml/manual/extensions.xml: Likewise.
569 * doc/xml/manual/locale.xml: Likewise.
570 * doc/xml/manual/messages.xml: Make section id consistent, improve
572 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
573 * doc/xml/manual/profile_mode.xml: Likewise.
574 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
575 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
576 * doc/xml/manual/status_cxx2011.xml: Likewise.
577 * doc/xml/manual/status_cxx2014.xml: Likewise.
578 * doc/xml/manual/status_cxxtr1.xml: Likewise.
579 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
580 * doc/xml/manual/using.xml: Likewise.
581 * doc/html/*: Regenerate.
583 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
585 * include/tr1/beta_function.tcc: Fix spelling of include guard in
588 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
590 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
592 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
594 DR 2344 - std::quoted doesn't respect padding
595 * include/std/iomanip: Allow for padding in quoted inserters.
596 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
597 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
599 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
601 * testsuite/23_containers/map/operators/1.cc: Simplify test.
603 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
605 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
607 * doc/xml/manual/backwards_compatibility.xml
608 (backwards.second.stringstreams): Likewise.
609 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
611 * doc/xml/manual/containers.xml (associative.bitset.type_string):
612 Replace <quote> in code example.
613 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
614 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
615 fix typos, improve markup.
616 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
617 <emphasis> with <replaceable>.
618 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
619 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
620 and remove newlines in string literal.
622 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
626 * testsuite/20_util/is_assignable/value.cc: Update.
628 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
630 * include/std/condition_variable (condition_variable_any::_Unlock): Do
631 not swallow __forced_unwind.
632 * include/std/future (__future_base::_Task_setter): Likewise.
633 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
635 * include/std/mutex (try_lock): Likewise.
636 * testsuite/30_threads/async/forced_unwind.cc: New.
637 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
639 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
640 members to avoid wasted space when not using a cache.
641 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
642 * include/bits/regex_compiler.tcc
643 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
645 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
646 New enumeration type to indicate match mode.
647 (__detail::_Executor::_State_info): New type holding members only
648 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
650 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
651 Replace template parameter with run-time function parameter.
652 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
653 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
654 implement DFS and BFS mode.
655 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
656 Split implementation into ...
657 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
658 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
659 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
660 argument instead of template argument.
661 (__detail::_Executor::_M_dfs): Likewise.
662 * include/bits/regex_scanner.tcc: Fix typos in comments.
663 * testsuite/performance/28_regex/range.cc: New.
665 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
666 Jonathan Wakely <jwakely@redhat.com>
668 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
670 (aligned_union): New struct (C++11).
671 (aligned_union_t): New type alias (C++14).
672 * doc/xml/manual/status_cxx2011.xml: Update.
673 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
674 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
677 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
680 * include/experimental/string_view (operator basic_string): Correct
682 (to_string): Replace with member function.
683 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
684 allow _M_str to be null.
685 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
686 default constructor semantics.
687 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
688 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
689 copyright dates. Remove unused header.
690 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
692 * testsuite/experimental/string_view/operations/data/char/1.cc:
693 Fix copyright dates. Adjust to new default constructor semantics.
694 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
696 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
698 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
699 (__uses_allocator_arg): Remove unused type.
700 (__uses_alloc0): Turn into a trivial type.
701 (__uses_alloc): Add missing template parameter in primary template.
702 (__uses_alloc_impl): Rename to __uses_alloc_t.
704 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
706 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
707 work with previous versions of Tcl.
709 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
710 Benjamin's old email address.
712 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
715 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
717 * include/tr2/bool_set: Use UTF-8 for accented characters.
718 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
719 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
720 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
722 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
725 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
727 (_State_base::_M_dot): Likewise.
729 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
731 * include/profile/map.h: Fix typo in comment; minor formatting fix.
732 * include/profile/multimap.h: Likewise.
733 * include/profile/set.h: Likewise.
734 * include/profile/multiset.h: Likewise.
736 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
738 * include/profile/array: Clean useless white chars.
739 * include/profile/base.h: Likewise.
740 * include/profile/iterator_tracker.h: Likewise.
741 * include/profile/bitset: Code cleanup and remove not instrumented code.
742 * include/profile/deque: Likewise.
743 * include/profile/forward_list: Likewise.
744 * include/profile/list (std::__profile::_List_profile<>): New.
745 (std::__profile::list<>): Inherit from latter and adapt.
746 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
747 advise to match any ordered to unordered container conversion.
748 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
750 * include/Makefile.am: Add latter.
751 * include/Makefile.in: Regenerate.
752 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
753 remove not instrumented code.
754 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
755 * include/profile/set.h (std::__profile::set<>): Likewise.
756 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
757 * include/profile/unordered_base.h: Add some line feed.
758 * include/profile/unordered_map: Clean useless white chars and replace
760 * include/profile/unordered_set: Likewise.
761 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
762 (std::__profile::_Vector_profile_post<>): New.
763 (std::__profile::vector<>): Inherit from latter and adapt.
765 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
768 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
769 dragonfly target selector to all tests that run on freebsd.
771 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
773 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
774 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
776 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
778 * testsuite/30_threads/call_once/60497.cc: Likewise.
779 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
780 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
781 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
782 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
783 * testsuite/30_threads/promise/60966.cc: Likewise.
784 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
785 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
786 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
787 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
788 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
789 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
790 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
791 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
792 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
793 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
794 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
795 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
796 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
797 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
798 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
799 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
800 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
802 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
805 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
807 * testsuite/23_containers/unordered_set/61143.cc: New.
808 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
810 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
813 * include/std/type_traits: Move include outside namespace std.
814 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
815 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
816 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
819 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
822 2014-05-21 John Marino <gnugcc@marino.st>
824 * acinclude.m4 (*-*-dragonfly*): New target.
825 * configure: Regenerate.
826 * configure.host (*-*-dragonfly*): New target.
827 * config/locale/dragonfly/c_locale.cc: New.
828 * config/locale/dragonfly/ctype_members.cc: New.
829 * config/os/bsd/dragonfly/ctype_base.h: New.
830 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
831 * config/os/bsd/dragonfly/ctype_inline.h: New.
832 * config/os/bsd/dragonfly/os_defines.h: New.
834 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
836 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
837 libstdc++.exp imports those flags via getenv.
838 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
839 CXXFLAGS contains a '-O' flag.
841 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
845 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
848 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
849 and add unwind directives.
851 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
853 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
855 2014-05-20 Tim Shen <timshen91@gmail.com>
858 * include/bits/regex_compiler.h
859 (_BracketMatcher<>::_M_add_character_class): Add negative character
861 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
863 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
866 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
868 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
870 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
872 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
873 * libsupc++/new_opnt.cc: Likewise.
875 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
878 * include/std/future (__future_base::_State_baseV2::_M_set_result):
879 Pass lock into _M_do_set and hold it until the function returns.
880 Signal condition variable after call_once completes.
881 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
883 * testsuite/30_threads/promise/60966.cc: New.
885 2014-05-16 Iain Sandoe <iain@codesourcery.com>
886 Sandra Loosemore <sandra@codesourcery.com>
888 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
889 until after checking that the test is eligible to be run.
891 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
893 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
894 test for 32-bit target.
895 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
897 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
900 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
903 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
904 and add unwind directives.
906 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
908 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
910 * include/std/chrono (chrono_literals::__select_type::_Select_type):
912 (chrono_literals::_Checked_integral_constant): Define.
913 Simplify UDL operator templates and check for overflow.
914 * testsuite/20_util/duration/literals/range.cc: New.
916 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
917 Jonathan Wakely <jwakely@redhat.com>
920 * include/bits/parse_numbers.h: Use integral_constant to remove
921 duplication and simplify.
922 * testsuite/20_util/duration/literals/61166.cc: New.
924 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
927 * include/std/type_traits (__make_unsigned, __make_signed): Define
928 specializations for wchar_t, char16_t and char32_t.
929 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
930 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
931 test for make_unsigned<volatile wchar_t>.
932 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
934 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
936 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
938 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
941 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
943 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
944 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
945 * include/std/utility (tuple_size, tuple_element): Likewise.
946 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
947 Adjust dg-error line number.
949 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
951 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
952 (__tuple_element_t): Define.
953 (tuple_element): Use __tuple_element_t.
954 (__cv_tuple_size): Define.
955 (tuple_size<cv _Tp>): Use __cv_tuple_size.
956 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
957 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
958 (__tuple_compare): Remove size check, re-order parameters.
959 (operator==, operator<): Use static_assert to check requirements.
960 * include/std/functional (__volget): use __tuple_element_t.
961 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
962 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
964 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
967 * include/std/tuple (get, __tuple_compare): Qualify more calls to
968 prevent ADL. Cast comparison results to bool.
969 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
970 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
973 * include/debug/array (get): Qualify call to other get overload.
974 * include/profile/array (get): Likewise.
975 * include/std/array (get): Likewise.
976 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
977 * include/std/mutex (unique_lock, call_once): Use __addressof.
978 (__unlock_impl): Remove unused template.
979 (__try_to_lock): Declare inline.
980 (__try_lock_impl::__do_try_lock): Qualify function calls.
981 (lock): Avoid narrowing conversion.
982 * testsuite/20_util/bind/60497.cc: New.
983 * testsuite/23_containers/array/element_access/60497.cc: New.
984 * testsuite/30_threads/call_once/60497.cc: New.
985 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
987 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
989 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
990 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
991 * acinclude.m4 (libtool_VERSION): Bump.
992 * configure: Regenerate.
993 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
994 * testsuite/28_regex/regex_error/base.cc: New.
996 2014-05-08 Joshua Gay <jgay@gnu.org>
999 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
1000 source" with "free software".
1001 * doc/html/faq.html: Likewise.
1003 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
1006 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
1008 (operator=(const ios_base&)): Likewise.
1009 * include/std/streambuf: Remove trailing whitespace.
1010 (basic_streambuf(const basic_streambuf&)): Fix initializer for
1011 _M_out_end. Define as defaulted for C++11.
1012 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
1013 (swap(basic_streambuf&)): Define for C++11.
1014 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
1017 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
1019 * include/std/iostream: Fix URL in comment.
1020 * src/c++98/ios_init.cc: Fix path in comment.
1022 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
1024 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
1025 * configure: Regenerate.
1027 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
1030 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
1031 comparison function.
1032 * testsuite/23_containers/set/cons/61023.cc: New.
1035 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
1037 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
1038 arithmetic to obtain a mutable iterator from const_iterator.
1039 * include/bits/vector.tcc (vector::insert): Likewise.
1040 * include/debug/vector (vector::erase): Likewise.
1041 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1042 Adjust dg-error line number.
1043 * testsuite/23_containers/vector/requirements/dr438/
1044 constructor_1_neg.cc: Likewise.
1045 * testsuite/23_containers/vector/requirements/dr438/
1046 constructor_2_neg.cc: Likewise.
1047 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1050 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
1052 * include/Makefile.in: Regenerate.
1054 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
1056 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1057 parameter to pass the 2 instances to check allocator equality.
1058 * include/debug/safe_container.h: New, define _Safe_container<>.
1059 * include/Makefile.am: Add previous.
1060 * include/debug/deque (std::__debug::deque<>): Inherit
1061 _Safe_container<>. Use default implementation for all special
1063 * include/debug/forward_list (std::__debug::forward_list<>):
1065 * include/debug/list (std::__debug::list<>): Likewise.
1066 * include/debug/map.h (std::__debug::map<>): Likewise.
1067 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1068 * include/debug/set.h (std::__debug::set<>): Likewise.
1069 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1070 * include/debug/string (std::__debug::basic_string<>): Likewise.
1071 * include/debug/unordered_map
1072 (std::__debug::unordered_map<>): Likewise.
1073 (std::__debug::unordered_multimap<>): Likewise.
1074 * include/debug/unordered_set
1075 (std::__debug::unordered_set<>): Likewise.
1076 (std::__debug::unordered_multiset<>): Likewise.
1077 * include/debug/vector (std::__debug::vector<>): Likewise.
1078 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1080 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1081 (~_Safe_sequence_base()): Add noexcept.
1082 * include/debug/safe_sequence.h
1083 (std::__debug::_Safe_node_sequence<>): New.
1084 * include/debug/safe_unordered_base.h
1085 (_Safe_unordered_container_base()): Add noexcept.
1086 (~_Safe_unordered_container_base()): Likewise.
1087 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1088 * include/debug/safe_unordered_container.h:
1089 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1090 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1091 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1093 * testsuite/util/debug/checks.h (check_construct1): Just implement
1094 an invalid constructor invocation and no other operations
1095 potentially not supported by some types of container.
1096 (check_construct2): Likewise.
1097 (check_construct3): Likewise.
1098 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1099 check on iterators to make sure they are correctly moved in debug
1101 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1103 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1104 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1105 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1106 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1108 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1109 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1111 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1112 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1113 * testsuite/23_containers/unordered_map/allocator/move.cc:
1115 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1117 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1119 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1121 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1123 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1125 * testsuite/23_containers/unordered_set/allocator/move.cc:
1127 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1129 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1131 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1133 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1135 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1137 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1139 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1140 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1141 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1142 * testsuite/23_containers/map/debug/move_neg.cc: New.
1143 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1144 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1145 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1146 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1147 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1148 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1149 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1150 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1151 * testsuite/23_containers/set/debug/move_neg.cc: New.
1152 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1154 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1156 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1157 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1159 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1161 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1163 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1165 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1167 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1169 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1171 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1173 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1174 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1176 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1178 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1179 (CXXABI_1.3.9): Remove __float128 symbols.
1181 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
1184 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1185 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1186 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1187 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1189 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1192 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1193 Check the correct type in the static assertion.
1194 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1196 2014-04-27 Tim Shen <timshen91@gmail.com>
1198 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1199 Add _S_opcode_repeat support to distingush a loop from
1200 _S_opcode_alternative.
1201 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1202 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1203 _StateSeq<>::_M_clone): Likewise.
1204 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1206 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1207 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1208 Uglify local variable __i.
1209 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1210 Use size_t instead of int to compare with vector::size().
1212 2014-04-27 Tim Shen <timshen91@gmail.com>
1214 * include/bits/regex_executor.h: Add _M_rep_count to track how
1215 many times this repeat node are visited.
1216 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1217 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1220 2014-04-27 Tim Shen <timshen91@gmail.com>
1222 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1223 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1224 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1225 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1226 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1227 Adjust debug NFA dump.
1229 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1232 * include/experimental/optional (operator!=): Implement in terms of
1234 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1235 * testsuite/experimental/optional/relops/2.cc: Likewise.
1236 * testsuite/experimental/optional/relops/3.cc: Likewise.
1237 * testsuite/experimental/optional/relops/4.cc: Likewise.
1238 * testsuite/experimental/optional/relops/5.cc: Likewise.
1239 * testsuite/experimental/optional/relops/6.cc: Likewise.
1241 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
1244 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1245 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1248 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
1250 * testsuite/util/testsuite_abi.cc (check_version): Update for
1253 2014-04-24 Tim Shen <timshen91@gmail.com>
1255 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1256 Do _M_alt before _M_next.
1257 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1259 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
1262 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1263 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1264 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1266 2014-04-24 Andreas Schwab <schwab@suse.de>
1268 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1269 new CXXABI_1.3.9 symbols.
1271 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1273 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1274 (CXXABI_1.3.9): New version.
1276 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
1279 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1280 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1281 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1283 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1285 * configure.host: Remove solaris2.9 handling.
1286 Change os_include_dir to os/solaris/solaris2.10.
1287 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1288 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1289 * configure: Regenerate.
1290 * config/abi/post/solaris2.9: Remove.
1291 * config/os/solaris/solaris2.9: Rename to ...
1292 * config/os/solaris/solaris2.10: ... this.
1293 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1296 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1297 Remove Solaris 9 reference.
1298 * doc/html/manual/configure.html: Regenerate.
1300 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1301 Remove *-*-solaris2.9 xfail.
1302 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1305 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1308 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
1310 * include/std/functional (__is_location_invariant): Use __or_ helper.
1312 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
1315 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1318 * include/std/atomic (atomic<_Tp>): Add static assertion.
1319 * testsuite/29_atomics/atomic/60695.cc: New.
1322 * include/std/functional (function::_Callable): Exclude own type
1323 from the callable checks.
1324 * testsuite/20_util/function/60594.cc: New.
1326 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1327 const to constexpr member functions.
1329 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1330 delegating constructor.
1331 * include/bits/shared_ptr_base.h
1332 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1334 * include/std/atomic: Uglify parameter names.
1337 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1338 1.cc: Fix invalid explicit instantiations with unqualified names.
1339 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1341 * testsuite/20_util/tuple/53648.cc: Likweise.
1342 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1344 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1346 * testsuite/23_containers/unordered_map/requirements/
1347 debug_container.cc: Likewise.
1348 * testsuite/23_containers/unordered_map/requirements/
1349 explicit_instantiation/3.cc: Likewise.
1350 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1352 * testsuite/23_containers/unordered_multimap/requirements/
1353 explicit_instantiation/3.cc: Likewise.
1354 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1356 * testsuite/23_containers/unordered_multiset/requirements/
1357 explicit_instantiation/3.cc: Likewise.
1358 * testsuite/23_containers/unordered_set/requirements/
1359 debug_container.cc: Likewise.
1360 * testsuite/23_containers/unordered_set/requirements/
1361 explicit_instantiation/3.cc: Likewise.
1363 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1364 not use uninitialized members in mem-initializers.
1365 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1366 * testsuite/util/testsuite_common_types.h: Update comment.
1368 * include/experimental/string_view: Fix inconsistent exception specs.
1370 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1371 Remove name of unused parameter.
1373 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
1375 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1376 _Vector_base::_M_allocate): NullablePointer requirements do not
1377 include initialization from literal zero, use value-initialization.
1378 * include/bits/vector.tcc (vector::_M_insert_aux,
1379 vector::_M_explace_back_aux): Likewise for assignment.
1381 * include/bits/allocator.h (operator==, operator!=): Add exception
1385 * include/std/tuple (get): Qualify calls to prevent ADL.
1386 * testsuite/20_util/tuple/60497.cc: New.
1388 * include/std/tuple (tuple_element_t): Define.
1389 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1391 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1393 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1396 * include/bits/stl_iterator.h (move_iterator::reference,
1397 move_iterator::operator*): Implement LWG 2106.
1398 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1400 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1402 * include/std/complex (__complex_exp, pow): Specify the template
1403 parameter in calls to std::polar, for expression templates.
1405 2014-04-10 Andreas Schwab <schwab@suse.de>
1407 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1409 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1410 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1412 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1414 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1416 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1417 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1418 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1421 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1422 Jack Howarth <howarth@bromo.med.uc.edu>
1425 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1428 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1430 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1432 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1434 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1435 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1436 * doc/xml/manual/concurrency_extensions.xml
1437 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1438 * doc/html/*: Regenerate.
1440 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1441 Jonathan Wakely <jwakely@redhat.com>
1444 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1445 string if input is not quoted.
1446 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1448 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1450 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1452 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1454 * testsuite/18_support/exception_ptr/60612-terminate.cc
1455 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1456 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1458 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1460 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1462 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1463 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1465 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1467 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1469 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1470 Fix bad s/part/chapter/ substitutions.
1471 * doc/xml/manual/io.xml (std.io): Likewise.
1472 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1473 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1475 * doc/html/*: Regenerate.
1477 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1480 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1481 compatible with __cxa_exception.
1482 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1483 Fix typos in comments.
1484 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1485 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1487 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1490 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1491 Use sizeof pointer type not the element type.
1492 * testsuite/29_atomics/atomic/60658.cc: New.
1494 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1496 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1497 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1498 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1499 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1500 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1501 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1502 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1503 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1504 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1505 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1508 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1510 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1512 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1514 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1515 to delegated constructor.
1516 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1517 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1520 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1522 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1525 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1527 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1530 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1531 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1533 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1534 from different types of debug container. Use _Is_contiguous_sequence
1535 instead of is_lvalue_reference.
1536 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1537 dereferencing past-the-end iterator.
1538 (__foreign_iterator_aux4): Use const value_type* instead of
1539 potentially user-defined const_pointer type.
1540 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1541 and pass end iterator to __gnu_debug::__foreign_iterator.
1542 (__glibcxx_check_insert_range_after): Likewise.
1543 (__glibcxx_check_max_load_factor): Fix comment.
1544 * include/debug/vector (_Is_contiguous_sequence): Define partial
1546 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1547 -std=gnu++11 option and unused header.
1548 * testsuite/23_containers/vector/debug/60587.cc: New.
1549 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1551 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1553 * crossconfig.m4: Support spu-*-elf* targets.
1554 * configure: Regenerate.
1556 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1559 * include/std/future (__future_base::_Task_state<>): Change
1560 constructors to template functions using perfect forwarding.
1561 (__create_task_state): Use decayed type as stored task.
1562 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1563 * testsuite/30_threads/packaged_task/60564.cc: New.
1565 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1567 * scripts/create_testsuite_files: Add testsuite/experimental in
1568 the list of folders to search for tests.
1570 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1572 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1574 2014-03-15 Tim Shen <timshen91@gmail.com>
1576 * include/bits/regex.h: Add/modify comments.
1577 * include/bits/regex_compiler.h: Likewise.
1578 * include/bits/regex_executor.h: Likewise.
1579 * include/bits/regex_executor.tcc: Likewise.
1580 * include/bits/regex_scanner.h: Likewise.
1582 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
1585 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
1586 _ZNSt12system_errorC* symbols which are not exported on any target.
1588 2014-03-12 Roland McGrath <mcgrathr@google.com>
1589 Mark Seaborn <mseaborn@google.com>
1592 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
1593 the address of a null pointer, not with a null pointer to pointer.
1594 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
1595 * testsuite/18_support/bad_exception/59392.cc: New file.
1597 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
1600 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
1602 * include/debug/map (map::operator=(map&&)): Likewise.
1603 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
1604 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
1605 * include/debug/set (set::operator=(set&&)): Likewise.
1606 * include/debug/unordered_map
1607 (unordered_map::operator=(unordered_map&&)): Likewise.
1608 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
1609 * include/debug/unordered_set
1610 (unordered_set::operator=(unordered_set&&)): Likewise.
1611 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
1612 * include/debug/vector (vector::operator=(vector&&)): Likewise.
1613 * testsuite/23_containers/forward_list/debug/60499.cc: New
1614 * testsuite/23_containers/map/debug/60499.cc: New
1615 * testsuite/23_containers/multimap/debug/60499.cc: New
1616 * testsuite/23_containers/multiset/debug/60499.cc: New
1617 * testsuite/23_containers/set/debug/60499.cc: New
1618 * testsuite/23_containers/unordered_map/debug/60499.cc: New
1619 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
1620 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
1621 * testsuite/23_containers/unordered_set/debug/60499.cc: New
1622 * testsuite/23_containers/vector/debug/60499.cc: New
1624 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
1626 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
1627 for filesystem and fundamentals TS work items.
1629 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
1632 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
1633 Adjust dg-error directives.
1635 2014-02-26 Tim Shen <timshen91@gmail.com>
1637 * include/bits/regex.tcc (match_results<>::format,
1638 regex_replace<>): Update __out after calling std::copy.
1639 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
1641 * testsuite/28_regex/match_results/format.cc: Likewise.
1643 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
1646 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
1647 allocator_type&)): Remove redundant call to _M_initialize_map.
1648 (deque::deque(const allocator_type&)): Initialize _Base with a
1649 constructor that calls _M_initialize_map.
1653 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
1655 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
1658 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
1660 Rename testsuite directory shared_mutex to shared_timed_mutex
1662 * testsuite/30_threads/shared_mutex: Moved to...
1663 * testsuite/30_threads/shared_timed_mutex: ...here
1665 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
1667 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
1668 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
1669 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
1670 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
1671 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
1672 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
1673 * testsuite/30_threads/shared_lock/requirements/
1674 explicit_instantiation.cc: Ditto.
1675 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
1676 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
1677 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
1678 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
1679 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
1680 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
1681 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
1682 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
1683 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
1684 * testsuite/30_threads/shared_mutex/requirements/
1685 standard_layout.cc: Ditto.
1686 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
1687 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
1688 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
1689 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
1690 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
1692 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1694 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
1695 execution on i?86-*-solaris2.9, remove comment.
1696 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1698 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
1700 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
1701 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
1702 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
1704 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
1706 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
1707 not use varargs when argument could be non-POD.
1708 (__alloctr_rebind_helper): Eliminate static const bool member by
1709 using true_type and false_type.
1710 (allocator_traits::__allocate_helper): Likewise.
1711 (allocator_traits::__construct_helper): Likewise.
1712 (allocator_traits::__destroy_helper): Likewise.
1713 (allocator_traits::__maxsize_helper): Likewise.
1714 (allocator_traits::__select_helper): Likewise.
1715 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
1716 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
1717 Remove redundant condition.
1718 * include/bits/stl_vector.h (vector::operator=(const vector&)):
1720 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
1721 indirection through __alloc_traits.
1722 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1723 Eliminate static const bool members by using true_type and false_type.
1724 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
1725 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
1726 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
1728 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
1731 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
1732 (vector::_M_data_ptr): New overloaded functions to ensure empty
1733 vectors do not dereference the pointer.
1734 * testsuite/23_containers/vector/59829.cc: New.
1735 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1736 Adjust dg-error line number.
1737 * testsuite/23_containers/vector/requirements/dr438/
1738 constructor_1_neg.cc: Likewise.
1739 * testsuite/23_containers/vector/requirements/dr438/
1740 constructor_2_neg.cc: Likewise.
1741 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1745 * include/ext/array_allocator.h: Add deprecated attribute.
1748 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
1749 installation and use of python printers.
1750 * doc/xml/manual/status_cxx2011.xml: Update.
1751 * doc/html/*: Regenerate.
1753 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
1754 Kyle Lippincott <spectral@google.com>
1757 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
1758 constructor and grant friendship to weak_ptr.
1759 (weak_ptr::lock()): Use new constructor.
1760 * include/bits/shared_ptr_base.h
1761 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
1762 and define specializations.
1763 (__shared_count): Add new non-throwing constructor.
1764 (__shared_ptr): Add new non-throwing constructor and grant friendship
1766 (__weak_ptr::lock()): Use new constructor.
1767 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
1768 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1770 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
1773 * include/bits/shared_ptr_base.h
1774 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
1777 2014-01-27 Jason Merrill <jason@redhat.com>
1782 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
1783 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
1784 (__cxa_allocate_exception): Don't set it here.
1786 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
1788 * include/bits/stl_map.h: Remove anachronistic comment.
1789 * include/bits/stl_multimap.h: Add whitespace.
1790 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
1791 -std=gnu++11 instead of -std=c++11.
1792 * testsuite/23_containers/map/operators/2.cc: Likewise.
1793 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
1794 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
1795 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
1797 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
1798 * configure: Regenerate.
1800 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1803 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
1804 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
1806 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1807 Peter A. Bigot <pab@pabigot.com>
1810 * include/experimental/string_view
1811 (copy(_CharT*, size_type, size_type) const): Correct throw string.
1812 Correct copy start location.
1814 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1815 Peter A. Bigot <pab@pabigot.com>
1818 * include/experimental/string_view (operator[](size_type) const):
1819 Fix one-off index error in debug check.
1820 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
1821 test basic_string_view at size().
1822 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
1824 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1825 Peter A. Bigot <pab@pabigot.com>
1828 * include/experimental/string_view
1829 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
1830 * testsuite/experimental/string_view/operations/substr/char/1.cc:
1831 Comment out catch of out_of_range; No terminating null
1832 in basic_string_view. Check begin == end.
1833 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
1836 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
1839 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
1840 constructor to prevent it being implicitly defined as deleted, but
1841 do not copy anything.
1842 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
1843 Define copy and move constructors similar to _Safe_sequence_base's.
1844 * testsuite/23_containers/unordered_map/59548.cc: New.
1846 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
1847 Steve Ellcey <sellcey@mips.com>
1849 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
1851 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
1852 * (configure, config.h.in): Regenerate.
1853 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
1855 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
1857 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
1858 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
1861 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
1862 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
1864 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
1866 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
1867 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
1868 functions to perform moving or copying of elements from rvalue tree.
1869 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
1870 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
1871 * testsuite/23_containers/map/59872.cc: New.
1872 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
1874 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
1876 * include/bits/stl_deque.h (_Deque_impl): Move comment.
1879 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
1880 Split into separate default constructor and constructor taking
1882 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
1883 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
1885 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
1886 * include/debug/list (list::list(const _Allocator&)): Likewise.
1887 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
1889 * include/debug/multimap.h
1890 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1891 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
1893 * include/debug/multiset.h
1894 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1895 * include/debug/vector (vector::vector(const allocator_type&)):
1897 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
1898 * include/profile/list (list::list(const _Allocator&)): Likewise.
1899 * include/profile/map.h
1900 (map::map(const _Compare&, const _Allocator&)): Likewise.
1901 * include/profile/multimap.h
1902 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1903 * include/profile/set.h
1904 (set::set(const _Compare&, const _Allocator&)): Likewise.
1905 * include/profile/multiset.h
1906 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1907 * include/profile/vector (vector::vector(const _Allocator&)):
1909 * testsuite/23_containers/deque/58764.cc: New.
1910 * testsuite/23_containers/list/58764.cc: New.
1911 * testsuite/23_containers/map/58764.cc: New.
1912 * testsuite/23_containers/multimap/58764.cc: New.
1913 * testsuite/23_containers/set/58764.cc: New.
1914 * testsuite/23_containers/multiset/58764.cc: New.
1915 * testsuite/23_containers/vector/58764.cc: New.
1916 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1917 Adjust dg-error line number.
1918 * testsuite/23_containers/deque/requirements/dr438/
1919 constructor_1_neg.cc: Likewise.
1920 * testsuite/23_containers/deque/requirements/dr438/
1921 constructor_2_neg.cc: Likewise.
1922 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1924 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1926 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1928 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1930 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1932 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1934 * testsuite/23_containers/vector/requirements/dr438/
1935 constructor_1_neg.cc: Likewise.
1936 * testsuite/23_containers/vector/requirements/dr438/
1937 constructor_2_neg.cc: Likewise.
1938 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1941 PR libstdc++/58764 (again)
1942 * include/bits/stl_list.h (list): Make default constructor's exception
1943 specification conditional.
1944 * include/bits/stl_vector.h (vector): Likewise.
1945 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
1946 to default constructor.
1947 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1948 Adjust dg-error line number.
1949 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1951 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1953 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1955 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1957 * testsuite/23_containers/vector/requirements/dr438/
1958 constructor_1_neg.cc: Likewise.
1959 * testsuite/23_containers/vector/requirements/dr438/
1960 constructor_2_neg.cc: Likewise.
1961 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1964 2014-01-21 Tim Shen <timshen91@gmail.com>
1966 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
1967 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
1968 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
1970 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
1973 * include/bits/hashtable.h (__cache_default): Do not depend on
1974 whether the hash function is DefaultConstructible or CopyAssignable.
1975 (_Hashtable): Adjust static assertions.
1976 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
1977 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1978 dg-error line number.
1979 * testsuite/23_containers/unordered_set/
1980 not_default_constructible_hash_neg.cc: Remove.
1982 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
1984 * scripts/create_testsuite_files: Add testsuite/experimental in
1985 the list of folders to search for tests.
1986 * include/experimental/string_view
1987 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
1988 incompatible with constexpr qualifier.
1989 (basic_string_view<>::front()): Likewise.
1990 (basic_string_view<>::back()): Likewise.
1991 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
1992 Merge dg-options directives into one.
1993 * testsuite/experimental/string_view/element_access/char/2.cc:
1994 Likewise. Remove invalid experimental namespace scope on
1997 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
2000 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
2001 friendship to _Local_iterator_base<..., false>.
2002 (_Local_iterator_base): Give protected access to all existing members.
2003 (_Local_iterator_base::_M_curr()): New public accessor.
2004 (_Local_iterator_base::_M_get_bucket()): New public accessor.
2005 (_Local_iterator_base<..., false>::_M_init()): New function to manage
2006 the lifetime of the _Hash_code_base explicitly.
2007 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
2008 (_Local_iterator_base<..., false>): Define copy constructor and copy
2009 assignment operator that use new functions to manage _Hash_code_base.
2010 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
2011 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
2012 Use public API for _Local_iterator_base.
2013 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
2014 * include/debug/unordered_map (__debug::unordered_map::erase(),
2015 __debug::unordered_multimap::erase()): Likewise.
2016 * include/debug/unordered_set (__debug::unordered_set::erase(),
2017 __debug::unordered_multiset::erase()): Likewise.
2018 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
2020 2014-01-19 Tim Shen <timshen91@gmail.com>
2022 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
2023 Fix parse error of multiple consecutive quantifiers like "a**".
2024 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
2026 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
2028 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
2030 * include/profile/set.h (set): Implement C++11 allocator-aware
2031 container requirements.
2032 * include/profile/map.h (map): Likewise.
2033 * include/profile/multiset.h (multiset): Likewise.
2034 * include/profile/multimap.h (multimap): Likewise.
2035 * include/profile/set.h
2036 (set::operator=(const set&)): Define as default in C++11 mode.
2037 (set::operator=(set&&)): Likewise.
2038 * include/profile/map.h
2039 (map::operator=(const map&)): Likewise.
2040 (map::operator=(map&&)): Likewise.
2041 * include/profile/multiset.h
2042 (multiset::operator=(const multiset&)): Likewise.
2043 (multiset::operator=(multiset&&)): Likewise.
2044 * include/profile/multimap.h
2045 (multimap::operator=(const multimap&)): Likewise.
2046 (multimap::operator=(multimap&&)): Likewise.
2047 * include/profile/set.h (set::operator=(std::initializer_list<>)):
2048 Rely on the same operator from normal mode.
2049 * include/profile/map.h (map::operator=(std::initializer_list<>)):
2051 * include/profile/multiset.h
2052 (multiset::operator=(std::initializer_list<>)): Likewise.
2053 * include/profile/multimap.h
2054 (multimap::operator=(std::initializer_list<>)): Likewise.
2055 * include/profile/set.h (set::swap(set&)): Add noexcept
2057 * include/profile/map.h (map::swap(map&)): Likewise.
2058 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2059 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2061 2014-01-17 Tim Shen <timshen91@gmail.com>
2063 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2065 * include/bits/regex_automaton.h: Do not use std::set.
2066 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2067 _BracketMatcher<>::_M_add_collating_element(),
2068 _BracketMatcher<>::_M_add_equivalence_class(),
2069 _BracketMatcher<>::_M_make_range()): Likewise.
2070 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2072 * include/bits/regex_executor.h: Do not use std::queue.
2073 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2074 _Executor<>::_M_dfs()): Likewise.
2075 * include/std/regex: Remove <map>, <set> and <queue>.
2077 2014-01-17 Tim Shen <timshen91@gmail.com>
2079 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2080 basic_regex<>::assign()): Change __compile_nfa to accept
2082 * include/bits/regex_compiler.h: Change _Compiler's template
2083 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2084 * include/bits/regex_compiler.tcc: Likewise.
2086 2014-01-17 Tim Shen <timshen91@gmail.com>
2088 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2090 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2091 _ScannerBase from _Scanner; Change _Scanner's template argument from
2092 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2094 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2095 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2096 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2098 * include/std/regex: Add <cstring> for using strchr.
2100 2014-01-17 Tim Shen <timshen91@gmail.com>
2102 * bits/regex_automaton.tcc: Indentation fix.
2103 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2104 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2105 _BracketMatcher<>): Add bool option template parameters and
2106 specializations to make matching more efficient and space saving.
2107 * bits/regex_compiler.tcc: Likewise.
2109 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
2112 * include/bits/hashtable_policy.h: Fix some long lines.
2113 * include/bits/hashtable.h (__hash_code_base_access): Define and
2114 use it to check its _M_bucket_index noexcept qualification. Use
2116 (__access_protected_ctor): ...this.
2117 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2119 * testsuite/23_containers/unordered_set/
2120 not_default_constructible_hash_neg.cc: Likewise.
2122 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
2124 * include/debug/set.h (set): Implement C++11 allocator-aware
2125 container requirements.
2126 * include/debug/map.h (map): Likewise.
2127 * include/debug/multiset.h (multiset): Likewise.
2128 * include/debug/multimap.h (multimap): Likewise.
2129 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2130 fix implementation regarding management of safe iterators.
2131 * include/debug/map.h (map::operator=(map&&)): Likewise.
2132 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2133 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2135 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2136 Rely on the same operator from normal mode.
2137 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2139 * include/debug/multiset.h
2140 (multiset::operator=(std::initializer_list<>)): Likewise.
2141 * include/debug/multimap.h
2142 (multimap::operator=(std::initializer_list<>)): Likewise.
2143 * include/debug/set.h (set::swap(set&)): Add noexcept
2144 specification, add allocator equality check.
2145 * include/debug/map.h (map::swap(map&)): Likewise.
2146 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2147 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2149 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
2152 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2153 and stylistic improvements.
2154 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2155 and update for C++11.
2156 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2159 * doc/xml/manual/backwards_compatibility.xml
2160 (backwards.third.nocreate_noreplace): Correct and expand.
2163 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2165 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
2168 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2169 support for non-Movable types.
2172 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2174 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
2176 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2177 *this allocator instance when building temporary vector instance
2178 so that *this allocator does not get moved.
2179 * include/debug/safe_base.h
2180 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2181 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2182 move constructor from _Safe_sequence_base.
2183 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2184 safe iterators if the instance is moved.
2185 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2186 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2187 check on a vector iterator.
2188 * testsuite/23_containers/vector/allocator/move_assign.cc
2190 (test03): New, test with a non-propagating allocator.
2191 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2193 2014-01-07 Tim Shen <timshen91@gmail.com>
2195 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2196 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2197 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2198 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2199 _BracketMatcher<>::_M_add_char(),
2200 _BracketMatcher<>::_M_add_collating_element(),
2201 _BracketMatcher<>::_M_add_equivalence_class(),
2202 _BracketMatcher<>::_M_add_character_class(),
2203 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2204 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2205 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2206 to template parameter; Add cache for _BracketMatcher. Adjust
2207 declarations from here...
2208 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2209 imbuing a regex will trigger a recompilation to rebuild the cache.
2210 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2211 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2212 different template bool parameters.
2213 * include/bits/regex_executor.h: Remove unnecessary declarations.
2214 * include/std/regex: Adjust including orders.
2215 * testsuite/28_regex/traits/char/user_defined.cc: New.
2216 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2218 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2220 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2221 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2222 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2223 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2224 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2226 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2228 Update copyright years
2230 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2232 * testsuite/18_support/new_handler.cc,
2233 testsuite/18_support/terminate_handler.cc,
2234 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2235 the copyright notice.
2237 Copyright (C) 2014 Free Software Foundation, Inc.
2239 Copying and distribution of this file, with or without modification,
2240 are permitted in any medium without royalty provided the copyright
2241 notice and this notice are preserved.