1 2014-08-21 Tony Wang <tony.wang@arm.com>
3 * testsuite/18_support/nested_exception/62154.cc: Disable when the
4 target doesn't provide atomic builtins.
6 2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
7 Kai Tietz <ktietz@redhat.com>
9 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
11 * config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
13 * libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
15 (struct elt): Add dll member.
16 (run): Decrement dll refcount.
17 (__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.
19 2014-08-15 Jonathan Wakely <jwakely@redhat.com>
22 * libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
23 Rewrite to conform to C++11 requirements.
24 * testsuite/18_support/nested_exception/62154.cc: New.
26 2014-08-14 Matthias Klose <doko@ubuntu.com>
28 * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
29 Remove empty directory.
31 2014-08-14 Paolo Carlini <paolo.carlini@oracle.com>
33 * testsuite/26_numerics/random/linear_congruential_engine/
34 requirements/non_uint_neg.cc: Adjust for parser change.
35 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
36 requirements/non_uint_neg.cc: Likewise.
38 2014-08-13 Jonathan Wakely <jwakely@redhat.com>
41 * include/std/thread (thread::_M_start_thread): Declare new overload.
42 (thread::thread<_Callable, _Args...>): Call new overload with an
43 explicit reference to pthread_create.
44 * src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
45 * config/abi/pre/gnu.ver: Export new function.
47 2014-08-13 Sylvestre Ledru <sylvestre@debian.org>
49 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
51 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
53 * Fix thinko in the last commit.
55 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
58 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
59 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
61 2014-08-12 Jonathan Wakely <jwakely@redhat.com>
63 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
64 and add overloads for rvalue streams.
65 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
67 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
70 * include/bits/basic_string.h (getline): Declare inline.
72 2014-08-09 Ulrich Drepper <drepper@gmail.com>
74 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
75 (uniform_on_sphere_distribution::operator()): Use the new helper
76 class for the implementation.
78 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
79 equal.cc: Remove bogus part of comment.
80 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
82 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
83 serialize.cc: Add check to verify result of serialzation and
85 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
86 generate.cc: New file.
88 2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
90 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
91 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
93 2014-08-09 François Dumont <fdumont@gcc.gnu.org>
96 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
97 _M_need_rehash to initialize the rehash policy and check if a rehash is
99 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
101 2014-08-07 Jonathan Wakely <jwakely@redhat.com>
103 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
105 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
106 Adjust dg-error line number.
107 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
109 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
111 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
114 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
116 (_State_baseV2::_M_do_set): Change parameters to pointers.
117 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
118 (_State_baseV2::__setter): Initialize _Setter with pointers.
119 (_State_baseV2::__setter(promise<void>*)): Remove overload.
120 (promise::set_value, promise::set_exception): Pass setter directly
122 (_State_baseV2::_Task_setter): Add template parameter for callable
123 type and replace std::function member with pointer to that type.
124 Change _M_result member from reference to pointer.
125 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
126 and initialize _Task_setter with pointers.
127 (__location_invariant): Specialize for _Setter and _Task_setter.
129 * include/std/future (__location_invariant): Move specializations
130 after preprocessor condition.
132 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
135 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
137 2014-08-01 Zifei Tong <zifeitong@gmail.com>
139 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
140 _GLIBCXX_ prefix to macro.
142 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
144 * python/libstdcxx/v6/printers.py
145 (SingleObjContainerPrinter._contained): Use compatibility mixin.
147 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
149 * testsuite/util/testsuite_allocator.h
150 (tracker_allocator_counter::allocate): Remove new invocation, only
152 (tracker_allocator_counter::deallocate): Remove delete invocation, only
154 (check_inconsistent_alloc_value_type): New.
155 (tracker_allocator): Transform as a facade for any allocator type.
156 (uneq_allocator): Likewise.
157 (propagating_allocator): Likewise.
158 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
159 explicitly non propagating allocator.
160 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
161 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
162 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
163 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
164 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
166 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
168 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
170 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
172 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
174 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
177 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
178 const allocator_type&)): Pass non-const allocator to
180 * testsuite/ext/rope/61946.cc: New.
183 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
184 disambiguate unary constructors.
185 (_Tuple_impl): Pass allocator_arg_t arguments.
186 * testsuite/20_util/tuple/61947.cc: New.
187 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
189 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
191 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
192 * include/bits/random.h (_Adaptor): static_assert for non floating-point
194 * include/bits/random.tcc (generate_canonical): Ditto.
195 * include/ext/random.tcc (hypergeometric_distribution::operator()):
196 Use double as a rng result type.
197 * testsuite/26_numerics/random/pr60037-neg.cc: New.
198 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
200 2014-07-25 Uros Bizjak <ubizjak@gmail.com>
202 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
204 2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
206 * include/experimental/string_view: Make the literal operators
207 constexpr like the ctors they call.
209 2014-07-23 H.J. Lu <hongjiu.lu@intel.com>
211 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
213 2014-07-23 Jonathan Wakely <jwakely@redhat.com>
215 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
216 to string instead of using gdb.Type.name attribute.
218 2014-07-19 Jonathan Wakely <jwakely@redhat.com>
220 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
223 2014-07-18 Jonathan Wakely <jwakely@redhat.com>
226 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
228 (SingleObjContainerPrinter): Check if type printers are in use.
230 2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
232 * include/ext/random: Minor formatting and cosmetic tweaks.
233 (uniform_on_sphere_distribution<>::operator==
234 (const uniform_on_sphere_distribution&,
235 const uniform_on_sphere_distribution&)): Compare the _M_nds.
236 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
237 (operator!=(const uniform_on_sphere_distribution&,
238 const uniform_on_sphere_distribution&)): Adjust.
239 * include/ext/random.tcc: Minor cosmetc tweaks.
241 2014-07-15 Jonathan Wakely <jwakely@redhat.com>
243 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
244 printer for class templates.
245 (register_type_printers): Use TemplateTypePrinter for containers
246 and other class templates with default template arguments.
247 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
249 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
250 base class for experimental::any and experimental::optional printers.
251 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
252 New printers for Fundamentals TS types.
253 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
255 2014-07-15 Tim Shen <timshen@google.com>
258 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
259 Clear match queue for next use.
260 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
262 2014-07-14 Ulrich Drepper <drepper@gmail.com>
264 * include/ext/random.tcc: Unfortunately more fixes for
265 operator>> and operator<< for uniform_on_sphere_distribution.
267 2014-07-13 Ulrich Drepper <drepper@gmail.com>
269 * include/ext/random.tcc: Fix operator>> and operator<< for
270 uniform_on_sphere_distribution.
272 2014-07-12 Ulrich Drepper <drepper@gmail.com>
274 * include/ext/random: Add uniform_on_sphere_distribution definition.
275 * include/ext/random.tcc: Add out-of-band member function definitions
276 for uniform_on_sphere_distribution.
277 * testsuite/ext/random/uniform_on_sphere_distribution/
278 cons/default.cc: New file.
279 * testsuite/ext/random/uniform_on_sphere_distribution/
280 operators/equal.cc: New file.
281 * testsuite/ext/random/uniform_on_sphere_distribution/
282 operators/inequal.cc: New file.
283 * testsuite/ext/random/uniform_on_sphere_distribution/
284 operators/serialize.cc: New file.
286 2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
288 Add the logistic_distribution as an extension.
289 * include/ext/random: Add the logistic_distribution.
290 * include/ext/random.tcc: Add the logistic_distribution.
291 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
292 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
293 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
295 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
296 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
297 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
300 2014-07-11 Samuel Bronson <naesten@gmail.com>
302 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
303 instead of insisting that GCC understand -fdiagnostics-color=never
305 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
308 2014-07-11 Samuel Bronson <naesten@gmail.com>
309 Matthias Klose <doko@ubuntu.com>
312 * python/libstdcxx/v6/printers.py: Port to Python 2+3
313 (imap): New compat function.
315 (Iterator): New mixin to allow writing iterators in Python 3 style
316 regardless of which version we're running on.
317 [Python3] (long) New compat alias for "int".
318 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
320 2014-07-10 Jonathan Wakely <jwakely@redhat.com>
322 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
323 tuple members to simplify pretty printing.
324 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
326 * testsuite/experimental/any/cons/4.cc: New.
328 2014-07-09 Jason Merrill <jason@redhat.com>
331 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
332 * libsupc++/tinfo.h: Not here.
334 2014-07-08 Jonathan Wakely <jwakely@redhat.com>
336 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
338 * include/experimental/any: Remove unused header.
339 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
340 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
341 * testsuite/util/testsuite_regex.h: Move include guard.
343 2014-07-01 Tim Shen <timshen@google.com>
347 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
348 a NFA state limit. If it's exceeded, regex_constants::error_space
350 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
351 map (which is sparse) instead of vector. This reduce n times clones'
352 cost from O(n^2) to O(n).
353 * include/std/regex: Add map dependency.
354 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
357 2014-07-01 Tim Shen <timshen@google.com>
360 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
361 not just regex containing back-references.
362 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
363 exchange _M_next and _M_alt for alternative operator,
364 making matching from left to right.
365 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
366 Add position tracking fom DFS.
367 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
368 _Executor<>::_M_dfs): Likewise.
369 * include/bits/regex_scanner.h: Remove unused enum entry.
370 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
373 2014-06-30 Jason Merrill <jason@redhat.com>
375 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
378 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
381 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
382 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
385 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
387 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
389 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
391 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
393 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
396 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
398 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
399 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
400 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
402 * include/ext/alloc_traits.h: Fix comment.
404 * include/Makefile.am: Add new header.
405 * include/Makefile.in: Regenerate.
406 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
407 New RAII utilities for working with allocators.
408 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
409 __allocator_type typedef and use new __allocated_ptr type.
410 (_Sp_counted_ptr_inplace): Likewise.
411 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
412 __allocate_guarded to to simplify exception handling.
413 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
414 * include/std/future (_Result_alloc::_M_destroy): Likewise.
415 (_Result_alloc::_S_allocate_result): Likewise.
416 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
417 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
418 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
419 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
421 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
423 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
425 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
426 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
428 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
430 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
431 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
432 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
433 Remove unused typedef.
434 (time_get::do_get_monthname): Likewise.
435 * include/bits/stl_tree.h: Add system_header pragma.
436 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
437 redundant const-qualifier.
438 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
439 instead of _GLIBCXX_USE_CONSTEXPR.
441 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
443 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
444 * include/std/chrono (_Checked_integral_constant): Allow zero.
445 * testsuite/20_util/duration/literals/values.cc: Test non-positive
446 values and digit separators.
447 * include/experimental/any
450 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
451 apply the signed specifier to wchar_t.
452 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
453 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
454 cv-qualifier and size.
455 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
458 * include/experimental/any (any_v1): Rename namespace to
459 fundamentals_v1. Change string returned by bad_any_cast::what().
460 * include/experimental/optional (fundamentals_v1): Add namespace.
461 * include/experimental/string_view (fundamentals_v1): Likewise.
462 * testsuite/experimental/any/typedefs.cc: New.
463 * testsuite/experimental/optional/typedefs.cc: New.
464 * testsuite/experimental/string_view/typedefs.cc: New.
466 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
467 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
470 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
472 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
474 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
475 * include/Makefile.am: Add new header.
476 * include/Makefile.in: Regenerate.
477 * include/experimental/any: New.
478 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
480 * testsuite/experimental/any/assign/1.cc: New.
481 * testsuite/experimental/any/assign/2.cc: New.
482 * testsuite/experimental/any/cons/1.cc: New.
483 * testsuite/experimental/any/cons/2.cc: New.
484 * testsuite/experimental/any/cons/3.cc: New.
485 * testsuite/experimental/any/misc/any_cast.cc: New.
486 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
487 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
488 * testsuite/experimental/any/misc/swap.cc: New.
489 * testsuite/experimental/any/modifiers/1.cc: New.
490 * testsuite/experimental/any/observers/type.cc: New.
492 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
493 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
495 * include/bits/shared_ptr.h (shared_ptr): Likewise.
496 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
498 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
500 * include/parallel/list_partition.h (__parallel::list_partition):
502 * include/std/iomanip (quoted): Likewise.
503 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
505 * doc/xml/api.xml: Link to more recent API docs.
506 * include/bits/allocator.h: Fix link in doxygen comment.
507 * include/bits/char_traits.h: Likewise.
508 * include/bits/ios_base.h: Likewise.
509 * include/bits/stl_map.h: Likewise.
510 * include/bits/stl_multimap.h: Likewise.
511 * include/bits/stl_multiset.h: Likewise.
512 * include/bits/stl_set.h: Likewise.
513 * include/bits/unordered_map.h: Likewise.
514 * include/bits/unordered_set.h: Likewise.
515 * include/ext/mt_allocator.h: Likewise.
516 * include/std/fstream: Likewise.
517 * include/std/iosfwd: Likewise.
518 * include/std/ostream: Likewise.
519 * include/std/sstream: Likewise.
520 * include/std/streambuf: Likewise.
521 * doc/html/*: Regenerate.
523 * include/experimental/any (any_cast): Combine duplicate doxygen
525 * include/experimental/string_view (basic_string_view): Update
527 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
528 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
529 (dynamic_bitset): Improve Doxygen comments.
530 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
533 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
535 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
536 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
538 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
541 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
542 (bin_search_tree_traits): Do not redeclare template-parameters.
543 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
545 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
547 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
548 parameter for DocBook HTML generation.
549 * doc/Makefile.in: Regenerate.
550 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
551 * doc/xml/faq.xml: Update content and improve formatting.
552 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
553 * doc/xml/manual/allocator.xml: Add stable ID attribute.
554 * doc/xml/manual/bitmap_allocator.xml: Likewise.
555 * doc/xml/manual/build_hacking.xml: Likewise.
556 * doc/xml/manual/codecvt.xml: Change URL.
557 * doc/xml/manual/ctype.xml: Add stable ID attribute.
558 * doc/xml/manual/debug_mode.xml: Likewise.
559 * doc/xml/manual/documentation_hacking.xml: Likewise.
560 * doc/xml/manual/evolution.xml: Likewise.
561 * doc/xml/manual/extensions.xml: Likewise.
562 * doc/xml/manual/locale.xml: Likewise.
563 * doc/xml/manual/messages.xml: Make section id consistent, improve
565 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
566 * doc/xml/manual/profile_mode.xml: Likewise.
567 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
568 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
569 * doc/xml/manual/status_cxx2011.xml: Likewise.
570 * doc/xml/manual/status_cxx2014.xml: Likewise.
571 * doc/xml/manual/status_cxxtr1.xml: Likewise.
572 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
573 * doc/xml/manual/using.xml: Likewise.
574 * doc/html/*: Regenerate.
576 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
578 * include/tr1/beta_function.tcc: Fix spelling of include guard in
581 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
583 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
585 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
587 DR 2344 - std::quoted doesn't respect padding
588 * include/std/iomanip: Allow for padding in quoted inserters.
589 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
590 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
592 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
594 * testsuite/23_containers/map/operators/1.cc: Simplify test.
596 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
598 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
600 * doc/xml/manual/backwards_compatibility.xml
601 (backwards.second.stringstreams): Likewise.
602 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
604 * doc/xml/manual/containers.xml (associative.bitset.type_string):
605 Replace <quote> in code example.
606 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
607 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
608 fix typos, improve markup.
609 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
610 <emphasis> with <replaceable>.
611 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
612 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
613 and remove newlines in string literal.
615 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
619 * testsuite/20_util/is_assignable/value.cc: Update.
621 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
623 * include/std/condition_variable (condition_variable_any::_Unlock): Do
624 not swallow __forced_unwind.
625 * include/std/future (__future_base::_Task_setter): Likewise.
626 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
628 * include/std/mutex (try_lock): Likewise.
629 * testsuite/30_threads/async/forced_unwind.cc: New.
630 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
632 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
633 members to avoid wasted space when not using a cache.
634 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
635 * include/bits/regex_compiler.tcc
636 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
638 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
639 New enumeration type to indicate match mode.
640 (__detail::_Executor::_State_info): New type holding members only
641 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
643 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
644 Replace template parameter with run-time function parameter.
645 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
646 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
647 implement DFS and BFS mode.
648 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
649 Split implementation into ...
650 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
651 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
652 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
653 argument instead of template argument.
654 (__detail::_Executor::_M_dfs): Likewise.
655 * include/bits/regex_scanner.tcc: Fix typos in comments.
656 * testsuite/performance/28_regex/range.cc: New.
658 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
659 Jonathan Wakely <jwakely@redhat.com>
661 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
663 (aligned_union): New struct (C++11).
664 (aligned_union_t): New type alias (C++14).
665 * doc/xml/manual/status_cxx2011.xml: Update.
666 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
667 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
670 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
673 * include/experimental/string_view (operator basic_string): Correct
675 (to_string): Replace with member function.
676 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
677 allow _M_str to be null.
678 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
679 default constructor semantics.
680 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
681 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
682 copyright dates. Remove unused header.
683 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
685 * testsuite/experimental/string_view/operations/data/char/1.cc:
686 Fix copyright dates. Adjust to new default constructor semantics.
687 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
689 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
691 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
692 (__uses_allocator_arg): Remove unused type.
693 (__uses_alloc0): Turn into a trivial type.
694 (__uses_alloc): Add missing template parameter in primary template.
695 (__uses_alloc_impl): Rename to __uses_alloc_t.
697 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
699 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
700 work with previous versions of Tcl.
702 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
703 Benjamin's old email address.
705 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
708 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
710 * include/tr2/bool_set: Use UTF-8 for accented characters.
711 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
712 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
713 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
715 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
718 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
720 (_State_base::_M_dot): Likewise.
722 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
724 * include/profile/map.h: Fix typo in comment; minor formatting fix.
725 * include/profile/multimap.h: Likewise.
726 * include/profile/set.h: Likewise.
727 * include/profile/multiset.h: Likewise.
729 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
731 * include/profile/array: Clean useless white chars.
732 * include/profile/base.h: Likewise.
733 * include/profile/iterator_tracker.h: Likewise.
734 * include/profile/bitset: Code cleanup and remove not instrumented code.
735 * include/profile/deque: Likewise.
736 * include/profile/forward_list: Likewise.
737 * include/profile/list (std::__profile::_List_profile<>): New.
738 (std::__profile::list<>): Inherit from latter and adapt.
739 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
740 advise to match any ordered to unordered container conversion.
741 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
743 * include/Makefile.am: Add latter.
744 * include/Makefile.in: Regenerate.
745 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
746 remove not instrumented code.
747 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
748 * include/profile/set.h (std::__profile::set<>): Likewise.
749 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
750 * include/profile/unordered_base.h: Add some line feed.
751 * include/profile/unordered_map: Clean useless white chars and replace
753 * include/profile/unordered_set: Likewise.
754 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
755 (std::__profile::_Vector_profile_post<>): New.
756 (std::__profile::vector<>): Inherit from latter and adapt.
758 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
761 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
762 dragonfly target selector to all tests that run on freebsd.
764 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
766 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
767 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
769 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
771 * testsuite/30_threads/call_once/60497.cc: Likewise.
772 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
773 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
774 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
775 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
776 * testsuite/30_threads/promise/60966.cc: Likewise.
777 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
778 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
779 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
780 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
781 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
782 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
783 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
784 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
785 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
786 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
787 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
788 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
789 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
790 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
791 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
792 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
793 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
795 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
798 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
800 * testsuite/23_containers/unordered_set/61143.cc: New.
801 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
803 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
806 * include/std/type_traits: Move include outside namespace std.
807 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
808 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
809 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
812 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
815 2014-05-21 John Marino <gnugcc@marino.st>
817 * acinclude.m4 (*-*-dragonfly*): New target.
818 * configure: Regenerate.
819 * configure.host (*-*-dragonfly*): New target.
820 * config/locale/dragonfly/c_locale.cc: New.
821 * config/locale/dragonfly/ctype_members.cc: New.
822 * config/os/bsd/dragonfly/ctype_base.h: New.
823 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
824 * config/os/bsd/dragonfly/ctype_inline.h: New.
825 * config/os/bsd/dragonfly/os_defines.h: New.
827 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
829 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
830 libstdc++.exp imports those flags via getenv.
831 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
832 CXXFLAGS contains a '-O' flag.
834 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
838 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
841 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
842 and add unwind directives.
844 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
846 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
848 2014-05-20 Tim Shen <timshen91@gmail.com>
851 * include/bits/regex_compiler.h
852 (_BracketMatcher<>::_M_add_character_class): Add negative character
854 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
856 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
859 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
861 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
863 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
865 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
866 * libsupc++/new_opnt.cc: Likewise.
868 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
871 * include/std/future (__future_base::_State_baseV2::_M_set_result):
872 Pass lock into _M_do_set and hold it until the function returns.
873 Signal condition variable after call_once completes.
874 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
876 * testsuite/30_threads/promise/60966.cc: New.
878 2014-05-16 Iain Sandoe <iain@codesourcery.com>
879 Sandra Loosemore <sandra@codesourcery.com>
881 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
882 until after checking that the test is eligible to be run.
884 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
886 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
887 test for 32-bit target.
888 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
890 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
893 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
896 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
897 and add unwind directives.
899 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
901 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
903 * include/std/chrono (chrono_literals::__select_type::_Select_type):
905 (chrono_literals::_Checked_integral_constant): Define.
906 Simplify UDL operator templates and check for overflow.
907 * testsuite/20_util/duration/literals/range.cc: New.
909 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
910 Jonathan Wakely <jwakely@redhat.com>
913 * include/bits/parse_numbers.h: Use integral_constant to remove
914 duplication and simplify.
915 * testsuite/20_util/duration/literals/61166.cc: New.
917 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
920 * include/std/type_traits (__make_unsigned, __make_signed): Define
921 specializations for wchar_t, char16_t and char32_t.
922 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
923 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
924 test for make_unsigned<volatile wchar_t>.
925 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
927 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
929 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
931 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
934 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
936 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
937 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
938 * include/std/utility (tuple_size, tuple_element): Likewise.
939 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
940 Adjust dg-error line number.
942 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
944 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
945 (__tuple_element_t): Define.
946 (tuple_element): Use __tuple_element_t.
947 (__cv_tuple_size): Define.
948 (tuple_size<cv _Tp>): Use __cv_tuple_size.
949 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
950 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
951 (__tuple_compare): Remove size check, re-order parameters.
952 (operator==, operator<): Use static_assert to check requirements.
953 * include/std/functional (__volget): use __tuple_element_t.
954 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
955 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
957 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
960 * include/std/tuple (get, __tuple_compare): Qualify more calls to
961 prevent ADL. Cast comparison results to bool.
962 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
963 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
966 * include/debug/array (get): Qualify call to other get overload.
967 * include/profile/array (get): Likewise.
968 * include/std/array (get): Likewise.
969 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
970 * include/std/mutex (unique_lock, call_once): Use __addressof.
971 (__unlock_impl): Remove unused template.
972 (__try_to_lock): Declare inline.
973 (__try_lock_impl::__do_try_lock): Qualify function calls.
974 (lock): Avoid narrowing conversion.
975 * testsuite/20_util/bind/60497.cc: New.
976 * testsuite/23_containers/array/element_access/60497.cc: New.
977 * testsuite/30_threads/call_once/60497.cc: New.
978 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
980 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
982 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
983 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
984 * acinclude.m4 (libtool_VERSION): Bump.
985 * configure: Regenerate.
986 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
987 * testsuite/28_regex/regex_error/base.cc: New.
989 2014-05-08 Joshua Gay <jgay@gnu.org>
992 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
993 source" with "free software".
994 * doc/html/faq.html: Likewise.
996 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
999 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
1001 (operator=(const ios_base&)): Likewise.
1002 * include/std/streambuf: Remove trailing whitespace.
1003 (basic_streambuf(const basic_streambuf&)): Fix initializer for
1004 _M_out_end. Define as defaulted for C++11.
1005 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
1006 (swap(basic_streambuf&)): Define for C++11.
1007 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
1010 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
1012 * include/std/iostream: Fix URL in comment.
1013 * src/c++98/ios_init.cc: Fix path in comment.
1015 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
1017 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
1018 * configure: Regenerate.
1020 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
1023 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
1024 comparison function.
1025 * testsuite/23_containers/set/cons/61023.cc: New.
1028 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
1030 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
1031 arithmetic to obtain a mutable iterator from const_iterator.
1032 * include/bits/vector.tcc (vector::insert): Likewise.
1033 * include/debug/vector (vector::erase): Likewise.
1034 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1035 Adjust dg-error line number.
1036 * testsuite/23_containers/vector/requirements/dr438/
1037 constructor_1_neg.cc: Likewise.
1038 * testsuite/23_containers/vector/requirements/dr438/
1039 constructor_2_neg.cc: Likewise.
1040 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1043 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
1045 * include/Makefile.in: Regenerate.
1047 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
1049 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1050 parameter to pass the 2 instances to check allocator equality.
1051 * include/debug/safe_container.h: New, define _Safe_container<>.
1052 * include/Makefile.am: Add previous.
1053 * include/debug/deque (std::__debug::deque<>): Inherit
1054 _Safe_container<>. Use default implementation for all special
1056 * include/debug/forward_list (std::__debug::forward_list<>):
1058 * include/debug/list (std::__debug::list<>): Likewise.
1059 * include/debug/map.h (std::__debug::map<>): Likewise.
1060 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1061 * include/debug/set.h (std::__debug::set<>): Likewise.
1062 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1063 * include/debug/string (std::__debug::basic_string<>): Likewise.
1064 * include/debug/unordered_map
1065 (std::__debug::unordered_map<>): Likewise.
1066 (std::__debug::unordered_multimap<>): Likewise.
1067 * include/debug/unordered_set
1068 (std::__debug::unordered_set<>): Likewise.
1069 (std::__debug::unordered_multiset<>): Likewise.
1070 * include/debug/vector (std::__debug::vector<>): Likewise.
1071 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1073 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1074 (~_Safe_sequence_base()): Add noexcept.
1075 * include/debug/safe_sequence.h
1076 (std::__debug::_Safe_node_sequence<>): New.
1077 * include/debug/safe_unordered_base.h
1078 (_Safe_unordered_container_base()): Add noexcept.
1079 (~_Safe_unordered_container_base()): Likewise.
1080 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1081 * include/debug/safe_unordered_container.h:
1082 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1083 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1084 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1086 * testsuite/util/debug/checks.h (check_construct1): Just implement
1087 an invalid constructor invocation and no other operations
1088 potentially not supported by some types of container.
1089 (check_construct2): Likewise.
1090 (check_construct3): Likewise.
1091 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1092 check on iterators to make sure they are correctly moved in debug
1094 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1096 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1097 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1098 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1099 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1101 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1102 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1104 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1105 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1106 * testsuite/23_containers/unordered_map/allocator/move.cc:
1108 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1110 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1112 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1114 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1116 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1118 * testsuite/23_containers/unordered_set/allocator/move.cc:
1120 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1122 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1124 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1126 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1128 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1130 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1132 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1133 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1134 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1135 * testsuite/23_containers/map/debug/move_neg.cc: New.
1136 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1137 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1138 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1139 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1140 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1141 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1142 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1143 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1144 * testsuite/23_containers/set/debug/move_neg.cc: New.
1145 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1147 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1149 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1150 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1152 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1154 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1156 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1158 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1160 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1162 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1164 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1166 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1167 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1169 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1171 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1172 (CXXABI_1.3.9): Remove __float128 symbols.
1174 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
1177 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1178 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1179 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1180 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1182 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1185 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1186 Check the correct type in the static assertion.
1187 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1189 2014-04-27 Tim Shen <timshen91@gmail.com>
1191 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1192 Add _S_opcode_repeat support to distingush a loop from
1193 _S_opcode_alternative.
1194 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1195 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1196 _StateSeq<>::_M_clone): Likewise.
1197 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1199 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1200 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1201 Uglify local variable __i.
1202 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1203 Use size_t instead of int to compare with vector::size().
1205 2014-04-27 Tim Shen <timshen91@gmail.com>
1207 * include/bits/regex_executor.h: Add _M_rep_count to track how
1208 many times this repeat node are visited.
1209 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1210 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1213 2014-04-27 Tim Shen <timshen91@gmail.com>
1215 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1216 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1217 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1218 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1219 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1220 Adjust debug NFA dump.
1222 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1225 * include/experimental/optional (operator!=): Implement in terms of
1227 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1228 * testsuite/experimental/optional/relops/2.cc: Likewise.
1229 * testsuite/experimental/optional/relops/3.cc: Likewise.
1230 * testsuite/experimental/optional/relops/4.cc: Likewise.
1231 * testsuite/experimental/optional/relops/5.cc: Likewise.
1232 * testsuite/experimental/optional/relops/6.cc: Likewise.
1234 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
1237 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1238 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1241 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
1243 * testsuite/util/testsuite_abi.cc (check_version): Update for
1246 2014-04-24 Tim Shen <timshen91@gmail.com>
1248 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1249 Do _M_alt before _M_next.
1250 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1252 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
1255 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1256 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1257 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1259 2014-04-24 Andreas Schwab <schwab@suse.de>
1261 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1262 new CXXABI_1.3.9 symbols.
1264 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1266 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1267 (CXXABI_1.3.9): New version.
1269 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
1272 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1273 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1274 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1276 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1278 * configure.host: Remove solaris2.9 handling.
1279 Change os_include_dir to os/solaris/solaris2.10.
1280 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1281 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1282 * configure: Regenerate.
1283 * config/abi/post/solaris2.9: Remove.
1284 * config/os/solaris/solaris2.9: Rename to ...
1285 * config/os/solaris/solaris2.10: ... this.
1286 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1289 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1290 Remove Solaris 9 reference.
1291 * doc/html/manual/configure.html: Regenerate.
1293 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1294 Remove *-*-solaris2.9 xfail.
1295 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1298 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1301 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
1303 * include/std/functional (__is_location_invariant): Use __or_ helper.
1305 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
1308 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1311 * include/std/atomic (atomic<_Tp>): Add static assertion.
1312 * testsuite/29_atomics/atomic/60695.cc: New.
1315 * include/std/functional (function::_Callable): Exclude own type
1316 from the callable checks.
1317 * testsuite/20_util/function/60594.cc: New.
1319 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1320 const to constexpr member functions.
1322 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1323 delegating constructor.
1324 * include/bits/shared_ptr_base.h
1325 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1327 * include/std/atomic: Uglify parameter names.
1330 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1331 1.cc: Fix invalid explicit instantiations with unqualified names.
1332 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1334 * testsuite/20_util/tuple/53648.cc: Likweise.
1335 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1337 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1339 * testsuite/23_containers/unordered_map/requirements/
1340 debug_container.cc: Likewise.
1341 * testsuite/23_containers/unordered_map/requirements/
1342 explicit_instantiation/3.cc: Likewise.
1343 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1345 * testsuite/23_containers/unordered_multimap/requirements/
1346 explicit_instantiation/3.cc: Likewise.
1347 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1349 * testsuite/23_containers/unordered_multiset/requirements/
1350 explicit_instantiation/3.cc: Likewise.
1351 * testsuite/23_containers/unordered_set/requirements/
1352 debug_container.cc: Likewise.
1353 * testsuite/23_containers/unordered_set/requirements/
1354 explicit_instantiation/3.cc: Likewise.
1356 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1357 not use uninitialized members in mem-initializers.
1358 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1359 * testsuite/util/testsuite_common_types.h: Update comment.
1361 * include/experimental/string_view: Fix inconsistent exception specs.
1363 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1364 Remove name of unused parameter.
1366 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
1368 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1369 _Vector_base::_M_allocate): NullablePointer requirements do not
1370 include initialization from literal zero, use value-initialization.
1371 * include/bits/vector.tcc (vector::_M_insert_aux,
1372 vector::_M_explace_back_aux): Likewise for assignment.
1374 * include/bits/allocator.h (operator==, operator!=): Add exception
1378 * include/std/tuple (get): Qualify calls to prevent ADL.
1379 * testsuite/20_util/tuple/60497.cc: New.
1381 * include/std/tuple (tuple_element_t): Define.
1382 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1384 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1386 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1389 * include/bits/stl_iterator.h (move_iterator::reference,
1390 move_iterator::operator*): Implement LWG 2106.
1391 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1393 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1395 * include/std/complex (__complex_exp, pow): Specify the template
1396 parameter in calls to std::polar, for expression templates.
1398 2014-04-10 Andreas Schwab <schwab@suse.de>
1400 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1402 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1403 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1405 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1407 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1409 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1410 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1411 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1414 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1415 Jack Howarth <howarth@bromo.med.uc.edu>
1418 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1421 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1423 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1425 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1427 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1428 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1429 * doc/xml/manual/concurrency_extensions.xml
1430 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1431 * doc/html/*: Regenerate.
1433 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1434 Jonathan Wakely <jwakely@redhat.com>
1437 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1438 string if input is not quoted.
1439 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1441 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1443 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1445 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1447 * testsuite/18_support/exception_ptr/60612-terminate.cc
1448 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1449 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1451 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1453 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1455 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1456 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1458 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1460 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1462 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1463 Fix bad s/part/chapter/ substitutions.
1464 * doc/xml/manual/io.xml (std.io): Likewise.
1465 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1466 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1468 * doc/html/*: Regenerate.
1470 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1473 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1474 compatible with __cxa_exception.
1475 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1476 Fix typos in comments.
1477 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1478 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1480 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1483 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1484 Use sizeof pointer type not the element type.
1485 * testsuite/29_atomics/atomic/60658.cc: New.
1487 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1489 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1490 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1491 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1492 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1493 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1494 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1495 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1496 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1497 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1498 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1501 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1503 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1505 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1507 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1508 to delegated constructor.
1509 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1510 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1513 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1515 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1518 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1520 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1523 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1524 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1526 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1527 from different types of debug container. Use _Is_contiguous_sequence
1528 instead of is_lvalue_reference.
1529 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1530 dereferencing past-the-end iterator.
1531 (__foreign_iterator_aux4): Use const value_type* instead of
1532 potentially user-defined const_pointer type.
1533 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1534 and pass end iterator to __gnu_debug::__foreign_iterator.
1535 (__glibcxx_check_insert_range_after): Likewise.
1536 (__glibcxx_check_max_load_factor): Fix comment.
1537 * include/debug/vector (_Is_contiguous_sequence): Define partial
1539 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1540 -std=gnu++11 option and unused header.
1541 * testsuite/23_containers/vector/debug/60587.cc: New.
1542 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1544 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1546 * crossconfig.m4: Support spu-*-elf* targets.
1547 * configure: Regenerate.
1549 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1552 * include/std/future (__future_base::_Task_state<>): Change
1553 constructors to template functions using perfect forwarding.
1554 (__create_task_state): Use decayed type as stored task.
1555 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1556 * testsuite/30_threads/packaged_task/60564.cc: New.
1558 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1560 * scripts/create_testsuite_files: Add testsuite/experimental in
1561 the list of folders to search for tests.
1563 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1565 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1567 2014-03-15 Tim Shen <timshen91@gmail.com>
1569 * include/bits/regex.h: Add/modify comments.
1570 * include/bits/regex_compiler.h: Likewise.
1571 * include/bits/regex_executor.h: Likewise.
1572 * include/bits/regex_executor.tcc: Likewise.
1573 * include/bits/regex_scanner.h: Likewise.
1575 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
1578 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
1579 _ZNSt12system_errorC* symbols which are not exported on any target.
1581 2014-03-12 Roland McGrath <mcgrathr@google.com>
1582 Mark Seaborn <mseaborn@google.com>
1585 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
1586 the address of a null pointer, not with a null pointer to pointer.
1587 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
1588 * testsuite/18_support/bad_exception/59392.cc: New file.
1590 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
1593 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
1595 * include/debug/map (map::operator=(map&&)): Likewise.
1596 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
1597 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
1598 * include/debug/set (set::operator=(set&&)): Likewise.
1599 * include/debug/unordered_map
1600 (unordered_map::operator=(unordered_map&&)): Likewise.
1601 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
1602 * include/debug/unordered_set
1603 (unordered_set::operator=(unordered_set&&)): Likewise.
1604 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
1605 * include/debug/vector (vector::operator=(vector&&)): Likewise.
1606 * testsuite/23_containers/forward_list/debug/60499.cc: New
1607 * testsuite/23_containers/map/debug/60499.cc: New
1608 * testsuite/23_containers/multimap/debug/60499.cc: New
1609 * testsuite/23_containers/multiset/debug/60499.cc: New
1610 * testsuite/23_containers/set/debug/60499.cc: New
1611 * testsuite/23_containers/unordered_map/debug/60499.cc: New
1612 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
1613 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
1614 * testsuite/23_containers/unordered_set/debug/60499.cc: New
1615 * testsuite/23_containers/vector/debug/60499.cc: New
1617 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
1619 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
1620 for filesystem and fundamentals TS work items.
1622 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
1625 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
1626 Adjust dg-error directives.
1628 2014-02-26 Tim Shen <timshen91@gmail.com>
1630 * include/bits/regex.tcc (match_results<>::format,
1631 regex_replace<>): Update __out after calling std::copy.
1632 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
1634 * testsuite/28_regex/match_results/format.cc: Likewise.
1636 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
1639 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
1640 allocator_type&)): Remove redundant call to _M_initialize_map.
1641 (deque::deque(const allocator_type&)): Initialize _Base with a
1642 constructor that calls _M_initialize_map.
1646 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
1648 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
1651 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
1653 Rename testsuite directory shared_mutex to shared_timed_mutex
1655 * testsuite/30_threads/shared_mutex: Moved to...
1656 * testsuite/30_threads/shared_timed_mutex: ...here
1658 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
1660 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
1661 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
1662 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
1663 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
1664 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
1665 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
1666 * testsuite/30_threads/shared_lock/requirements/
1667 explicit_instantiation.cc: Ditto.
1668 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
1669 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
1670 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
1671 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
1672 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
1673 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
1674 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
1675 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
1676 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
1677 * testsuite/30_threads/shared_mutex/requirements/
1678 standard_layout.cc: Ditto.
1679 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
1680 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
1681 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
1682 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
1683 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
1685 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1687 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
1688 execution on i?86-*-solaris2.9, remove comment.
1689 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1691 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
1693 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
1694 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
1695 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
1697 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
1699 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
1700 not use varargs when argument could be non-POD.
1701 (__alloctr_rebind_helper): Eliminate static const bool member by
1702 using true_type and false_type.
1703 (allocator_traits::__allocate_helper): Likewise.
1704 (allocator_traits::__construct_helper): Likewise.
1705 (allocator_traits::__destroy_helper): Likewise.
1706 (allocator_traits::__maxsize_helper): Likewise.
1707 (allocator_traits::__select_helper): Likewise.
1708 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
1709 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
1710 Remove redundant condition.
1711 * include/bits/stl_vector.h (vector::operator=(const vector&)):
1713 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
1714 indirection through __alloc_traits.
1715 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1716 Eliminate static const bool members by using true_type and false_type.
1717 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
1718 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
1719 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
1721 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
1724 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
1725 (vector::_M_data_ptr): New overloaded functions to ensure empty
1726 vectors do not dereference the pointer.
1727 * testsuite/23_containers/vector/59829.cc: New.
1728 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1729 Adjust dg-error line number.
1730 * testsuite/23_containers/vector/requirements/dr438/
1731 constructor_1_neg.cc: Likewise.
1732 * testsuite/23_containers/vector/requirements/dr438/
1733 constructor_2_neg.cc: Likewise.
1734 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1738 * include/ext/array_allocator.h: Add deprecated attribute.
1741 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
1742 installation and use of python printers.
1743 * doc/xml/manual/status_cxx2011.xml: Update.
1744 * doc/html/*: Regenerate.
1746 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
1747 Kyle Lippincott <spectral@google.com>
1750 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
1751 constructor and grant friendship to weak_ptr.
1752 (weak_ptr::lock()): Use new constructor.
1753 * include/bits/shared_ptr_base.h
1754 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
1755 and define specializations.
1756 (__shared_count): Add new non-throwing constructor.
1757 (__shared_ptr): Add new non-throwing constructor and grant friendship
1759 (__weak_ptr::lock()): Use new constructor.
1760 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
1761 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1763 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
1766 * include/bits/shared_ptr_base.h
1767 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
1770 2014-01-27 Jason Merrill <jason@redhat.com>
1775 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
1776 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
1777 (__cxa_allocate_exception): Don't set it here.
1779 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
1781 * include/bits/stl_map.h: Remove anachronistic comment.
1782 * include/bits/stl_multimap.h: Add whitespace.
1783 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
1784 -std=gnu++11 instead of -std=c++11.
1785 * testsuite/23_containers/map/operators/2.cc: Likewise.
1786 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
1787 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
1788 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
1790 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
1791 * configure: Regenerate.
1793 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1796 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
1797 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
1799 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1800 Peter A. Bigot <pab@pabigot.com>
1803 * include/experimental/string_view
1804 (copy(_CharT*, size_type, size_type) const): Correct throw string.
1805 Correct copy start location.
1807 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1808 Peter A. Bigot <pab@pabigot.com>
1811 * include/experimental/string_view (operator[](size_type) const):
1812 Fix one-off index error in debug check.
1813 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
1814 test basic_string_view at size().
1815 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
1817 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1818 Peter A. Bigot <pab@pabigot.com>
1821 * include/experimental/string_view
1822 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
1823 * testsuite/experimental/string_view/operations/substr/char/1.cc:
1824 Comment out catch of out_of_range; No terminating null
1825 in basic_string_view. Check begin == end.
1826 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
1829 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
1832 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
1833 constructor to prevent it being implicitly defined as deleted, but
1834 do not copy anything.
1835 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
1836 Define copy and move constructors similar to _Safe_sequence_base's.
1837 * testsuite/23_containers/unordered_map/59548.cc: New.
1839 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
1840 Steve Ellcey <sellcey@mips.com>
1842 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
1844 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
1845 * (configure, config.h.in): Regenerate.
1846 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
1848 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
1850 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
1851 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
1854 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
1855 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
1857 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
1859 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
1860 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
1861 functions to perform moving or copying of elements from rvalue tree.
1862 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
1863 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
1864 * testsuite/23_containers/map/59872.cc: New.
1865 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
1867 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
1869 * include/bits/stl_deque.h (_Deque_impl): Move comment.
1872 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
1873 Split into separate default constructor and constructor taking
1875 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
1876 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
1878 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
1879 * include/debug/list (list::list(const _Allocator&)): Likewise.
1880 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
1882 * include/debug/multimap.h
1883 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1884 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
1886 * include/debug/multiset.h
1887 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1888 * include/debug/vector (vector::vector(const allocator_type&)):
1890 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
1891 * include/profile/list (list::list(const _Allocator&)): Likewise.
1892 * include/profile/map.h
1893 (map::map(const _Compare&, const _Allocator&)): Likewise.
1894 * include/profile/multimap.h
1895 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1896 * include/profile/set.h
1897 (set::set(const _Compare&, const _Allocator&)): Likewise.
1898 * include/profile/multiset.h
1899 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1900 * include/profile/vector (vector::vector(const _Allocator&)):
1902 * testsuite/23_containers/deque/58764.cc: New.
1903 * testsuite/23_containers/list/58764.cc: New.
1904 * testsuite/23_containers/map/58764.cc: New.
1905 * testsuite/23_containers/multimap/58764.cc: New.
1906 * testsuite/23_containers/set/58764.cc: New.
1907 * testsuite/23_containers/multiset/58764.cc: New.
1908 * testsuite/23_containers/vector/58764.cc: New.
1909 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1910 Adjust dg-error line number.
1911 * testsuite/23_containers/deque/requirements/dr438/
1912 constructor_1_neg.cc: Likewise.
1913 * testsuite/23_containers/deque/requirements/dr438/
1914 constructor_2_neg.cc: Likewise.
1915 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1917 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1919 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1921 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1923 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1925 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1927 * testsuite/23_containers/vector/requirements/dr438/
1928 constructor_1_neg.cc: Likewise.
1929 * testsuite/23_containers/vector/requirements/dr438/
1930 constructor_2_neg.cc: Likewise.
1931 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1934 PR libstdc++/58764 (again)
1935 * include/bits/stl_list.h (list): Make default constructor's exception
1936 specification conditional.
1937 * include/bits/stl_vector.h (vector): Likewise.
1938 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
1939 to default constructor.
1940 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1941 Adjust dg-error line number.
1942 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1944 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1946 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1948 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1950 * testsuite/23_containers/vector/requirements/dr438/
1951 constructor_1_neg.cc: Likewise.
1952 * testsuite/23_containers/vector/requirements/dr438/
1953 constructor_2_neg.cc: Likewise.
1954 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1957 2014-01-21 Tim Shen <timshen91@gmail.com>
1959 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
1960 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
1961 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
1963 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
1966 * include/bits/hashtable.h (__cache_default): Do not depend on
1967 whether the hash function is DefaultConstructible or CopyAssignable.
1968 (_Hashtable): Adjust static assertions.
1969 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
1970 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1971 dg-error line number.
1972 * testsuite/23_containers/unordered_set/
1973 not_default_constructible_hash_neg.cc: Remove.
1975 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
1977 * scripts/create_testsuite_files: Add testsuite/experimental in
1978 the list of folders to search for tests.
1979 * include/experimental/string_view
1980 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
1981 incompatible with constexpr qualifier.
1982 (basic_string_view<>::front()): Likewise.
1983 (basic_string_view<>::back()): Likewise.
1984 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
1985 Merge dg-options directives into one.
1986 * testsuite/experimental/string_view/element_access/char/2.cc:
1987 Likewise. Remove invalid experimental namespace scope on
1990 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
1993 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
1994 friendship to _Local_iterator_base<..., false>.
1995 (_Local_iterator_base): Give protected access to all existing members.
1996 (_Local_iterator_base::_M_curr()): New public accessor.
1997 (_Local_iterator_base::_M_get_bucket()): New public accessor.
1998 (_Local_iterator_base<..., false>::_M_init()): New function to manage
1999 the lifetime of the _Hash_code_base explicitly.
2000 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
2001 (_Local_iterator_base<..., false>): Define copy constructor and copy
2002 assignment operator that use new functions to manage _Hash_code_base.
2003 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
2004 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
2005 Use public API for _Local_iterator_base.
2006 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
2007 * include/debug/unordered_map (__debug::unordered_map::erase(),
2008 __debug::unordered_multimap::erase()): Likewise.
2009 * include/debug/unordered_set (__debug::unordered_set::erase(),
2010 __debug::unordered_multiset::erase()): Likewise.
2011 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
2013 2014-01-19 Tim Shen <timshen91@gmail.com>
2015 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
2016 Fix parse error of multiple consecutive quantifiers like "a**".
2017 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
2019 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
2021 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
2023 * include/profile/set.h (set): Implement C++11 allocator-aware
2024 container requirements.
2025 * include/profile/map.h (map): Likewise.
2026 * include/profile/multiset.h (multiset): Likewise.
2027 * include/profile/multimap.h (multimap): Likewise.
2028 * include/profile/set.h
2029 (set::operator=(const set&)): Define as default in C++11 mode.
2030 (set::operator=(set&&)): Likewise.
2031 * include/profile/map.h
2032 (map::operator=(const map&)): Likewise.
2033 (map::operator=(map&&)): Likewise.
2034 * include/profile/multiset.h
2035 (multiset::operator=(const multiset&)): Likewise.
2036 (multiset::operator=(multiset&&)): Likewise.
2037 * include/profile/multimap.h
2038 (multimap::operator=(const multimap&)): Likewise.
2039 (multimap::operator=(multimap&&)): Likewise.
2040 * include/profile/set.h (set::operator=(std::initializer_list<>)):
2041 Rely on the same operator from normal mode.
2042 * include/profile/map.h (map::operator=(std::initializer_list<>)):
2044 * include/profile/multiset.h
2045 (multiset::operator=(std::initializer_list<>)): Likewise.
2046 * include/profile/multimap.h
2047 (multimap::operator=(std::initializer_list<>)): Likewise.
2048 * include/profile/set.h (set::swap(set&)): Add noexcept
2050 * include/profile/map.h (map::swap(map&)): Likewise.
2051 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2052 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2054 2014-01-17 Tim Shen <timshen91@gmail.com>
2056 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2058 * include/bits/regex_automaton.h: Do not use std::set.
2059 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2060 _BracketMatcher<>::_M_add_collating_element(),
2061 _BracketMatcher<>::_M_add_equivalence_class(),
2062 _BracketMatcher<>::_M_make_range()): Likewise.
2063 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2065 * include/bits/regex_executor.h: Do not use std::queue.
2066 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2067 _Executor<>::_M_dfs()): Likewise.
2068 * include/std/regex: Remove <map>, <set> and <queue>.
2070 2014-01-17 Tim Shen <timshen91@gmail.com>
2072 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2073 basic_regex<>::assign()): Change __compile_nfa to accept
2075 * include/bits/regex_compiler.h: Change _Compiler's template
2076 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2077 * include/bits/regex_compiler.tcc: Likewise.
2079 2014-01-17 Tim Shen <timshen91@gmail.com>
2081 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2083 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2084 _ScannerBase from _Scanner; Change _Scanner's template argument from
2085 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2087 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2088 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2089 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2091 * include/std/regex: Add <cstring> for using strchr.
2093 2014-01-17 Tim Shen <timshen91@gmail.com>
2095 * bits/regex_automaton.tcc: Indentation fix.
2096 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2097 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2098 _BracketMatcher<>): Add bool option template parameters and
2099 specializations to make matching more efficient and space saving.
2100 * bits/regex_compiler.tcc: Likewise.
2102 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
2105 * include/bits/hashtable_policy.h: Fix some long lines.
2106 * include/bits/hashtable.h (__hash_code_base_access): Define and
2107 use it to check its _M_bucket_index noexcept qualification. Use
2109 (__access_protected_ctor): ...this.
2110 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2112 * testsuite/23_containers/unordered_set/
2113 not_default_constructible_hash_neg.cc: Likewise.
2115 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
2117 * include/debug/set.h (set): Implement C++11 allocator-aware
2118 container requirements.
2119 * include/debug/map.h (map): Likewise.
2120 * include/debug/multiset.h (multiset): Likewise.
2121 * include/debug/multimap.h (multimap): Likewise.
2122 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2123 fix implementation regarding management of safe iterators.
2124 * include/debug/map.h (map::operator=(map&&)): Likewise.
2125 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2126 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2128 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2129 Rely on the same operator from normal mode.
2130 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2132 * include/debug/multiset.h
2133 (multiset::operator=(std::initializer_list<>)): Likewise.
2134 * include/debug/multimap.h
2135 (multimap::operator=(std::initializer_list<>)): Likewise.
2136 * include/debug/set.h (set::swap(set&)): Add noexcept
2137 specification, add allocator equality check.
2138 * include/debug/map.h (map::swap(map&)): Likewise.
2139 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2140 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2142 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
2145 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2146 and stylistic improvements.
2147 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2148 and update for C++11.
2149 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2152 * doc/xml/manual/backwards_compatibility.xml
2153 (backwards.third.nocreate_noreplace): Correct and expand.
2156 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2158 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
2161 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2162 support for non-Movable types.
2165 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2167 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
2169 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2170 *this allocator instance when building temporary vector instance
2171 so that *this allocator does not get moved.
2172 * include/debug/safe_base.h
2173 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2174 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2175 move constructor from _Safe_sequence_base.
2176 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2177 safe iterators if the instance is moved.
2178 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2179 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2180 check on a vector iterator.
2181 * testsuite/23_containers/vector/allocator/move_assign.cc
2183 (test03): New, test with a non-propagating allocator.
2184 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2186 2014-01-07 Tim Shen <timshen91@gmail.com>
2188 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2189 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2190 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2191 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2192 _BracketMatcher<>::_M_add_char(),
2193 _BracketMatcher<>::_M_add_collating_element(),
2194 _BracketMatcher<>::_M_add_equivalence_class(),
2195 _BracketMatcher<>::_M_add_character_class(),
2196 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2197 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2198 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2199 to template parameter; Add cache for _BracketMatcher. Adjust
2200 declarations from here...
2201 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2202 imbuing a regex will trigger a recompilation to rebuild the cache.
2203 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2204 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2205 different template bool parameters.
2206 * include/bits/regex_executor.h: Remove unnecessary declarations.
2207 * include/std/regex: Adjust including orders.
2208 * testsuite/28_regex/traits/char/user_defined.cc: New.
2209 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2211 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2213 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2214 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2215 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2216 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2217 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2219 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2221 Update copyright years
2223 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2225 * testsuite/18_support/new_handler.cc,
2226 testsuite/18_support/terminate_handler.cc,
2227 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2228 the copyright notice.
2230 Copyright (C) 2014 Free Software Foundation, Inc.
2232 Copying and distribution of this file, with or without modification,
2233 are permitted in any medium without royalty provided the copyright
2234 notice and this notice are preserved.