1 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
3 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
4 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
6 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
9 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
10 (bin_search_tree_traits): Do not redeclare template-parameters.
11 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
13 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
15 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
16 parameter for DocBook HTML generation.
17 * doc/Makefile.in: Regenerate.
18 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
19 * doc/xml/faq.xml: Update content and improve formatting.
20 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
21 * doc/xml/manual/allocator.xml: Add stable ID attribute.
22 * doc/xml/manual/bitmap_allocator.xml: Likewise.
23 * doc/xml/manual/build_hacking.xml: Likewise.
24 * doc/xml/manual/codecvt.xml: Change URL.
25 * doc/xml/manual/ctype.xml: Add stable ID attribute.
26 * doc/xml/manual/debug_mode.xml: Likewise.
27 * doc/xml/manual/documentation_hacking.xml: Likewise.
28 * doc/xml/manual/evolution.xml: Likewise.
29 * doc/xml/manual/extensions.xml: Likewise.
30 * doc/xml/manual/locale.xml: Likewise.
31 * doc/xml/manual/messages.xml: Make section id consistent, improve
33 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
34 * doc/xml/manual/profile_mode.xml: Likewise.
35 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
36 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
37 * doc/xml/manual/status_cxx2011.xml: Likewise.
38 * doc/xml/manual/status_cxx2014.xml: Likewise.
39 * doc/xml/manual/status_cxxtr1.xml: Likewise.
40 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
41 * doc/xml/manual/using.xml: Likewise.
42 * doc/html/*: Regenerate.
44 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
46 * include/tr1/beta_function.tcc: Fix spelling of include guard in
49 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
51 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
53 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
55 DR 2344 - std::quoted doesn't respect padding
56 * include/std/iomanip: Allow for padding in quoted inserters.
57 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
58 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
60 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
62 * testsuite/23_containers/map/operators/1.cc: Simplify test.
64 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
66 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
68 * doc/xml/manual/backwards_compatibility.xml
69 (backwards.second.stringstreams): Likewise.
70 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
72 * doc/xml/manual/containers.xml (associative.bitset.type_string):
73 Replace <quote> in code example.
74 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
75 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
76 fix typos, improve markup.
77 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
78 <emphasis> with <replaceable>.
79 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
80 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
81 and remove newlines in string literal.
83 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
87 * testsuite/20_util/is_assignable/value.cc: Update.
89 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
91 * include/std/condition_variable (condition_variable_any::_Unlock): Do
92 not swallow __forced_unwind.
93 * include/std/future (__future_base::_Task_setter): Likewise.
94 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
96 * include/std/mutex (try_lock): Likewise.
97 * testsuite/30_threads/async/forced_unwind.cc: New.
98 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
100 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
101 members to avoid wasted space when not using a cache.
102 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
103 * include/bits/regex_compiler.tcc
104 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
106 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
107 New enumeration type to indicate match mode.
108 (__detail::_Executor::_State_info): New type holding members only
109 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
111 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
112 Replace template parameter with run-time function parameter.
113 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
114 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
115 implement DFS and BFS mode.
116 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
117 Split implementation into ...
118 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
119 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
120 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
121 argument instead of template argument.
122 (__detail::_Executor::_M_dfs): Likewise.
123 * include/bits/regex_scanner.tcc: Fix typos in comments.
124 * testsuite/performance/28_regex/range.cc: New.
126 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
127 Jonathan Wakely <jwakely@redhat.com>
129 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
131 (aligned_union): New struct (C++11).
132 (aligned_union_t): New type alias (C++14).
133 * doc/xml/manual/status_cxx2011.xml: Update.
134 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
135 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
138 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
141 * include/experimental/string_view (operator basic_string): Correct
143 (to_string): Replace with member function.
144 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
145 allow _M_str to be null.
146 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
147 default constructor semantics.
148 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
149 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
150 copyright dates. Remove unused header.
151 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
153 * testsuite/experimental/string_view/operations/data/char/1.cc:
154 Fix copyright dates. Adjust to new default constructor semantics.
155 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
157 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
159 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
160 (__uses_allocator_arg): Remove unused type.
161 (__uses_alloc0): Turn into a trivial type.
162 (__uses_alloc): Add missing template parameter in primary template.
163 (__uses_alloc_impl): Rename to __uses_alloc_t.
165 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
167 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
168 work with previous versions of Tcl.
170 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
171 Benjamin's old email address.
173 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
176 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
178 * include/tr2/bool_set: Use UTF-8 for accented characters.
179 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
180 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
181 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
183 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
186 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
188 (_State_base::_M_dot): Likewise.
190 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
192 * include/profile/map.h: Fix typo in comment; minor formatting fix.
193 * include/profile/multimap.h: Likewise.
194 * include/profile/set.h: Likewise.
195 * include/profile/multiset.h: Likewise.
197 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
199 * include/profile/array: Clean useless white chars.
200 * include/profile/base.h: Likewise.
201 * include/profile/iterator_tracker.h: Likewise.
202 * include/profile/bitset: Code cleanup and remove not instrumented code.
203 * include/profile/deque: Likewise.
204 * include/profile/forward_list: Likewise.
205 * include/profile/list (std::__profile::_List_profile<>): New.
206 (std::__profile::list<>): Inherit from latter and adapt.
207 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
208 advise to match any ordered to unordered container conversion.
209 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
211 * include/Makefile.am: Add latter.
212 * include/Makefile.in: Regenerate.
213 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
214 remove not instrumented code.
215 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
216 * include/profile/set.h (std::__profile::set<>): Likewise.
217 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
218 * include/profile/unordered_base.h: Add some line feed.
219 * include/profile/unordered_map: Clean useless white chars and replace
221 * include/profile/unordered_set: Likewise.
222 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
223 (std::__profile::_Vector_profile_post<>): New.
224 (std::__profile::vector<>): Inherit from latter and adapt.
226 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
229 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
230 dragonfly target selector to all tests that run on freebsd.
232 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
234 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
235 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
237 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
239 * testsuite/30_threads/call_once/60497.cc: Likewise.
240 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
241 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
242 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
243 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
244 * testsuite/30_threads/promise/60966.cc: Likewise.
245 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
246 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
247 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
248 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
249 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
250 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
251 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
252 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
253 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
254 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
255 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
256 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
257 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
258 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
259 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
260 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
261 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
263 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
266 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
268 * testsuite/23_containers/unordered_set/61143.cc: New.
269 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
271 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
274 * include/std/type_traits: Move include outside namespace std.
275 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
276 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
277 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
280 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
283 2014-05-21 John Marino <gnugcc@marino.st>
285 * acinclude.m4 (*-*-dragonfly*): New target.
286 * configure: Regenerate.
287 * configure.host (*-*-dragonfly*): New target.
288 * config/locale/dragonfly/c_locale.cc: New.
289 * config/locale/dragonfly/ctype_members.cc: New.
290 * config/os/bsd/dragonfly/ctype_base.h: New.
291 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
292 * config/os/bsd/dragonfly/ctype_inline.h: New.
293 * config/os/bsd/dragonfly/os_defines.h: New.
295 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
297 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
298 libstdc++.exp imports those flags via getenv.
299 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
300 CXXFLAGS contains a '-O' flag.
302 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
306 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
309 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
310 and add unwind directives.
312 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
314 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
316 2014-05-20 Tim Shen <timshen91@gmail.com>
319 * include/bits/regex_compiler.h
320 (_BracketMatcher<>::_M_add_character_class): Add negative character
322 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
324 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
327 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
329 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
331 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
333 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
334 * libsupc++/new_opnt.cc: Likewise.
336 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
339 * include/std/future (__future_base::_State_baseV2::_M_set_result):
340 Pass lock into _M_do_set and hold it until the function returns.
341 Signal condition variable after call_once completes.
342 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
344 * testsuite/30_threads/promise/60966.cc: New.
346 2014-05-16 Iain Sandoe <iain@codesourcery.com>
347 Sandra Loosemore <sandra@codesourcery.com>
349 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
350 until after checking that the test is eligible to be run.
352 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
354 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
355 test for 32-bit target.
356 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
358 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
361 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
364 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
365 and add unwind directives.
367 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
369 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
371 * include/std/chrono (chrono_literals::__select_type::_Select_type):
373 (chrono_literals::_Checked_integral_constant): Define.
374 Simplify UDL operator templates and check for overflow.
375 * testsuite/20_util/duration/literals/range.cc: New.
377 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
378 Jonathan Wakely <jwakely@redhat.com>
381 * include/bits/parse_numbers.h: Use integral_constant to remove
382 duplication and simplify.
383 * testsuite/20_util/duration/literals/61166.cc: New.
385 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
388 * include/std/type_traits (__make_unsigned, __make_signed): Define
389 specializations for wchar_t, char16_t and char32_t.
390 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
391 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
392 test for make_unsigned<volatile wchar_t>.
393 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
395 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
397 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
399 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
402 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
404 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
405 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
406 * include/std/utility (tuple_size, tuple_element): Likewise.
407 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
408 Adjust dg-error line number.
410 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
412 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
413 (__tuple_element_t): Define.
414 (tuple_element): Use __tuple_element_t.
415 (__cv_tuple_size): Define.
416 (tuple_size<cv _Tp>): Use __cv_tuple_size.
417 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
418 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
419 (__tuple_compare): Remove size check, re-order parameters.
420 (operator==, operator<): Use static_assert to check requirements.
421 * include/std/functional (__volget): use __tuple_element_t.
422 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
423 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
425 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
428 * include/std/tuple (get, __tuple_compare): Qualify more calls to
429 prevent ADL. Cast comparison results to bool.
430 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
431 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
434 * include/debug/array (get): Qualify call to other get overload.
435 * include/profile/array (get): Likewise.
436 * include/std/array (get): Likewise.
437 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
438 * include/std/mutex (unique_lock, call_once): Use __addressof.
439 (__unlock_impl): Remove unused template.
440 (__try_to_lock): Declare inline.
441 (__try_lock_impl::__do_try_lock): Qualify function calls.
442 (lock): Avoid narrowing conversion.
443 * testsuite/20_util/bind/60497.cc: New.
444 * testsuite/23_containers/array/element_access/60497.cc: New.
445 * testsuite/30_threads/call_once/60497.cc: New.
446 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
448 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
450 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
451 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
452 * acinclude.m4 (libtool_VERSION): Bump.
453 * configure: Regenerate.
454 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
455 * testsuite/28_regex/regex_error/base.cc: New.
457 2014-05-08 Joshua Gay <jgay@gnu.org>
460 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
461 source" with "free software".
462 * doc/html/faq.html: Likewise.
464 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
467 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
469 (operator=(const ios_base&)): Likewise.
470 * include/std/streambuf: Remove trailing whitespace.
471 (basic_streambuf(const basic_streambuf&)): Fix initializer for
472 _M_out_end. Define as defaulted for C++11.
473 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
474 (swap(basic_streambuf&)): Define for C++11.
475 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
478 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
480 * include/std/iostream: Fix URL in comment.
481 * src/c++98/ios_init.cc: Fix path in comment.
483 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
485 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
486 * configure: Regenerate.
488 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
491 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
493 * testsuite/23_containers/set/cons/61023.cc: New.
496 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
498 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
499 arithmetic to obtain a mutable iterator from const_iterator.
500 * include/bits/vector.tcc (vector::insert): Likewise.
501 * include/debug/vector (vector::erase): Likewise.
502 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
503 Adjust dg-error line number.
504 * testsuite/23_containers/vector/requirements/dr438/
505 constructor_1_neg.cc: Likewise.
506 * testsuite/23_containers/vector/requirements/dr438/
507 constructor_2_neg.cc: Likewise.
508 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
511 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
513 * include/Makefile.in: Regenerate.
515 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
517 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
518 parameter to pass the 2 instances to check allocator equality.
519 * include/debug/safe_container.h: New, define _Safe_container<>.
520 * include/Makefile.am: Add previous.
521 * include/debug/deque (std::__debug::deque<>): Inherit
522 _Safe_container<>. Use default implementation for all special
524 * include/debug/forward_list (std::__debug::forward_list<>):
526 * include/debug/list (std::__debug::list<>): Likewise.
527 * include/debug/map.h (std::__debug::map<>): Likewise.
528 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
529 * include/debug/set.h (std::__debug::set<>): Likewise.
530 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
531 * include/debug/string (std::__debug::basic_string<>): Likewise.
532 * include/debug/unordered_map
533 (std::__debug::unordered_map<>): Likewise.
534 (std::__debug::unordered_multimap<>): Likewise.
535 * include/debug/unordered_set
536 (std::__debug::unordered_set<>): Likewise.
537 (std::__debug::unordered_multiset<>): Likewise.
538 * include/debug/vector (std::__debug::vector<>): Likewise.
539 * include/debug/safe_base.h (_Safe_sequence_base()): Add
541 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
542 (~_Safe_sequence_base()): Add noexcept.
543 * include/debug/safe_sequence.h
544 (std::__debug::_Safe_node_sequence<>): New.
545 * include/debug/safe_unordered_base.h
546 (_Safe_unordered_container_base()): Add noexcept.
547 (~_Safe_unordered_container_base()): Likewise.
548 (_M_swap(_Safe_unordered_container_base&)): Likewise.
549 * include/debug/safe_unordered_container.h:
550 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
551 (_Safe_unordered_container<>::_M_invalidate_all()): New.
552 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
554 * testsuite/util/debug/checks.h (check_construct1): Just implement
555 an invalid constructor invocation and no other operations
556 potentially not supported by some types of container.
557 (check_construct2): Likewise.
558 (check_construct3): Likewise.
559 * testsuite/23_containers/forward_list/allocator/move.cc: Add
560 check on iterators to make sure they are correctly moved in debug
562 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
564 * testsuite/23_containers/map/allocator/move.cc: Likewise.
565 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
566 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
567 * testsuite/23_containers/multimap/allocator/move_assign.cc:
569 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
570 * testsuite/23_containers/multiset/allocator/move_assign.cc:
572 * testsuite/23_containers/set/allocator/move.cc: Likewise.
573 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
574 * testsuite/23_containers/unordered_map/allocator/move.cc:
576 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
578 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
580 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
582 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
584 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
586 * testsuite/23_containers/unordered_set/allocator/move.cc:
588 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
590 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
592 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
594 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
596 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
598 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
600 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
601 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
602 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
603 * testsuite/23_containers/map/debug/move_neg.cc: New.
604 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
605 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
606 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
607 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
608 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
609 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
610 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
611 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
612 * testsuite/23_containers/set/debug/move_neg.cc: New.
613 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
615 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
617 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
618 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
620 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
622 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
624 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
626 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
628 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
630 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
632 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
634 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
635 * testsuite/23_containers/vector/debug/move_neg.cc: New.
637 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
639 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
640 (CXXABI_1.3.9): Remove __float128 symbols.
642 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
645 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
646 function to handle both C++03 and C++11 _Rb_tree_node implementations.
647 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
648 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
650 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
653 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
654 Check the correct type in the static assertion.
655 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
657 2014-04-27 Tim Shen <timshen91@gmail.com>
659 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
660 Add _S_opcode_repeat support to distingush a loop from
661 _S_opcode_alternative.
662 * include/bits/regex_automaton.tcc (_State_base::_M_print,
663 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
664 _StateSeq<>::_M_clone): Likewise.
665 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
667 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
668 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
669 Uglify local variable __i.
670 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
671 Use size_t instead of int to compare with vector::size().
673 2014-04-27 Tim Shen <timshen91@gmail.com>
675 * include/bits/regex_executor.h: Add _M_rep_count to track how
676 many times this repeat node are visited.
677 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
678 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
681 2014-04-27 Tim Shen <timshen91@gmail.com>
683 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
684 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
685 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
686 * include/bits/regex_automaton.h: Remove quantifier counting variable.
687 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
688 Adjust debug NFA dump.
690 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
693 * include/experimental/optional (operator!=): Implement in terms of
695 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
696 * testsuite/experimental/optional/relops/2.cc: Likewise.
697 * testsuite/experimental/optional/relops/3.cc: Likewise.
698 * testsuite/experimental/optional/relops/4.cc: Likewise.
699 * testsuite/experimental/optional/relops/5.cc: Likewise.
700 * testsuite/experimental/optional/relops/6.cc: Likewise.
702 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
705 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
706 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
709 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
711 * testsuite/util/testsuite_abi.cc (check_version): Update for
714 2014-04-24 Tim Shen <timshen91@gmail.com>
716 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
717 Do _M_alt before _M_next.
718 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
720 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
723 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
724 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
725 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
727 2014-04-24 Andreas Schwab <schwab@suse.de>
729 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
730 new CXXABI_1.3.9 symbols.
732 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
734 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
735 (CXXABI_1.3.9): New version.
737 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
740 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
741 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
742 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
744 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
746 * configure.host: Remove solaris2.9 handling.
747 Change os_include_dir to os/solaris/solaris2.10.
748 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
749 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
750 * configure: Regenerate.
751 * config/abi/post/solaris2.9: Remove.
752 * config/os/solaris/solaris2.9: Rename to ...
753 * config/os/solaris/solaris2.10: ... this.
754 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
757 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
758 Remove Solaris 9 reference.
759 * doc/html/manual/configure.html: Regenerate.
761 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
762 Remove *-*-solaris2.9 xfail.
763 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
766 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
769 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
771 * include/std/functional (__is_location_invariant): Use __or_ helper.
773 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
776 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
779 * include/std/atomic (atomic<_Tp>): Add static assertion.
780 * testsuite/29_atomics/atomic/60695.cc: New.
783 * include/std/functional (function::_Callable): Exclude own type
784 from the callable checks.
785 * testsuite/20_util/function/60594.cc: New.
787 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
788 const to constexpr member functions.
790 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
791 delegating constructor.
792 * include/bits/shared_ptr_base.h
793 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
795 * include/std/atomic: Uglify parameter names.
798 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
799 1.cc: Fix invalid explicit instantiations with unqualified names.
800 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
802 * testsuite/20_util/tuple/53648.cc: Likweise.
803 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
805 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
807 * testsuite/23_containers/unordered_map/requirements/
808 debug_container.cc: Likewise.
809 * testsuite/23_containers/unordered_map/requirements/
810 explicit_instantiation/3.cc: Likewise.
811 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
813 * testsuite/23_containers/unordered_multimap/requirements/
814 explicit_instantiation/3.cc: Likewise.
815 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
817 * testsuite/23_containers/unordered_multiset/requirements/
818 explicit_instantiation/3.cc: Likewise.
819 * testsuite/23_containers/unordered_set/requirements/
820 debug_container.cc: Likewise.
821 * testsuite/23_containers/unordered_set/requirements/
822 explicit_instantiation/3.cc: Likewise.
824 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
825 not use uninitialized members in mem-initializers.
826 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
827 * testsuite/util/testsuite_common_types.h: Update comment.
829 * include/experimental/string_view: Fix inconsistent exception specs.
831 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
832 Remove name of unused parameter.
834 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
836 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
837 _Vector_base::_M_allocate): NullablePointer requirements do not
838 include initialization from literal zero, use value-initialization.
839 * include/bits/vector.tcc (vector::_M_insert_aux,
840 vector::_M_explace_back_aux): Likewise for assignment.
842 * include/bits/allocator.h (operator==, operator!=): Add exception
846 * include/std/tuple (get): Qualify calls to prevent ADL.
847 * testsuite/20_util/tuple/60497.cc: New.
849 * include/std/tuple (tuple_element_t): Define.
850 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
852 * testsuite/20_util/tuple/tuple_element_t.cc: New.
854 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
857 * include/bits/stl_iterator.h (move_iterator::reference,
858 move_iterator::operator*): Implement LWG 2106.
859 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
861 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
863 * include/std/complex (__complex_exp, pow): Specify the template
864 parameter in calls to std::polar, for expression templates.
866 2014-04-10 Andreas Schwab <schwab@suse.de>
868 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
870 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
871 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
873 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
875 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
877 * testsuite/20_util/exchange/1.cc: Add missing return statements.
878 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
879 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
882 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
883 Jack Howarth <howarth@bromo.med.uc.edu>
886 * testsuite/30_threads/condition_variable/54185.cc: Skip for
889 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
891 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
893 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
895 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
896 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
897 * doc/xml/manual/concurrency_extensions.xml
898 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
899 * doc/html/*: Regenerate.
901 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
902 Jonathan Wakely <jwakely@redhat.com>
905 * include/std/iomanip (_Quoted_string operator>>): Do not clear
906 string if input is not quoted.
907 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
909 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
911 * libsupc++/eh_ptr.cc: Improve static_assert messages.
913 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
915 * testsuite/18_support/exception_ptr/60612-terminate.cc
916 (terminate, f): Wrap in _GLIBCXX_USE_C99.
917 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
919 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
921 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
923 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
924 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
926 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
928 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
930 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
931 Fix bad s/part/chapter/ substitutions.
932 * doc/xml/manual/io.xml (std.io): Likewise.
933 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
934 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
936 * doc/html/*: Regenerate.
938 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
941 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
942 compatible with __cxa_exception.
943 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
944 Fix typos in comments.
945 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
946 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
948 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
951 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
952 Use sizeof pointer type not the element type.
953 * testsuite/29_atomics/atomic/60658.cc: New.
955 2014-03-24 Jakub Jelinek <jakub@redhat.com>
957 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
958 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
959 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
960 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
961 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
962 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
963 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
964 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
965 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
966 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
969 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
971 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
973 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
975 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
976 to delegated constructor.
977 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
978 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
981 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
983 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
986 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
988 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
991 * include/debug/functions.h (_Is_contiguous_sequence): Define.
992 (__foreign_iterator): Accept additional iterator. Do not dispatch on
994 (__foreign_iterator_aux2): Likewise. Add overload for iterators
995 from different types of debug container. Use _Is_contiguous_sequence
996 instead of is_lvalue_reference.
997 (__foreign_iterator_aux3): Accept additional iterator. Avoid
998 dereferencing past-the-end iterator.
999 (__foreign_iterator_aux4): Use const value_type* instead of
1000 potentially user-defined const_pointer type.
1001 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1002 and pass end iterator to __gnu_debug::__foreign_iterator.
1003 (__glibcxx_check_insert_range_after): Likewise.
1004 (__glibcxx_check_max_load_factor): Fix comment.
1005 * include/debug/vector (_Is_contiguous_sequence): Define partial
1007 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1008 -std=gnu++11 option and unused header.
1009 * testsuite/23_containers/vector/debug/60587.cc: New.
1010 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1012 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1014 * crossconfig.m4: Support spu-*-elf* targets.
1015 * configure: Regenerate.
1017 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1020 * include/std/future (__future_base::_Task_state<>): Change
1021 constructors to template functions using perfect forwarding.
1022 (__create_task_state): Use decayed type as stored task.
1023 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1024 * testsuite/30_threads/packaged_task/60564.cc: New.
1026 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1028 * scripts/create_testsuite_files: Add testsuite/experimental in
1029 the list of folders to search for tests.
1031 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1033 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1035 2014-03-15 Tim Shen <timshen91@gmail.com>
1037 * include/bits/regex.h: Add/modify comments.
1038 * include/bits/regex_compiler.h: Likewise.
1039 * include/bits/regex_executor.h: Likewise.
1040 * include/bits/regex_executor.tcc: Likewise.
1041 * include/bits/regex_scanner.h: Likewise.
1043 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
1046 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
1047 _ZNSt12system_errorC* symbols which are not exported on any target.
1049 2014-03-12 Roland McGrath <mcgrathr@google.com>
1050 Mark Seaborn <mseaborn@google.com>
1053 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
1054 the address of a null pointer, not with a null pointer to pointer.
1055 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
1056 * testsuite/18_support/bad_exception/59392.cc: New file.
1058 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
1061 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
1063 * include/debug/map (map::operator=(map&&)): Likewise.
1064 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
1065 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
1066 * include/debug/set (set::operator=(set&&)): Likewise.
1067 * include/debug/unordered_map
1068 (unordered_map::operator=(unordered_map&&)): Likewise.
1069 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
1070 * include/debug/unordered_set
1071 (unordered_set::operator=(unordered_set&&)): Likewise.
1072 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
1073 * include/debug/vector (vector::operator=(vector&&)): Likewise.
1074 * testsuite/23_containers/forward_list/debug/60499.cc: New
1075 * testsuite/23_containers/map/debug/60499.cc: New
1076 * testsuite/23_containers/multimap/debug/60499.cc: New
1077 * testsuite/23_containers/multiset/debug/60499.cc: New
1078 * testsuite/23_containers/set/debug/60499.cc: New
1079 * testsuite/23_containers/unordered_map/debug/60499.cc: New
1080 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
1081 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
1082 * testsuite/23_containers/unordered_set/debug/60499.cc: New
1083 * testsuite/23_containers/vector/debug/60499.cc: New
1085 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
1087 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
1088 for filesystem and fundamentals TS work items.
1090 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
1093 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
1094 Adjust dg-error directives.
1096 2014-02-26 Tim Shen <timshen91@gmail.com>
1098 * include/bits/regex.tcc (match_results<>::format,
1099 regex_replace<>): Update __out after calling std::copy.
1100 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
1102 * testsuite/28_regex/match_results/format.cc: Likewise.
1104 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
1107 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
1108 allocator_type&)): Remove redundant call to _M_initialize_map.
1109 (deque::deque(const allocator_type&)): Initialize _Base with a
1110 constructor that calls _M_initialize_map.
1114 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
1116 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
1119 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
1121 Rename testsuite directory shared_mutex to shared_timed_mutex
1123 * testsuite/30_threads/shared_mutex: Moved to...
1124 * testsuite/30_threads/shared_timed_mutex: ...here
1126 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
1128 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
1129 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
1130 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
1131 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
1132 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
1133 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
1134 * testsuite/30_threads/shared_lock/requirements/
1135 explicit_instantiation.cc: Ditto.
1136 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
1137 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
1138 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
1139 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
1140 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
1141 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
1142 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
1143 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
1144 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
1145 * testsuite/30_threads/shared_mutex/requirements/
1146 standard_layout.cc: Ditto.
1147 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
1148 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
1149 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
1150 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
1151 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
1153 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1155 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
1156 execution on i?86-*-solaris2.9, remove comment.
1157 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1159 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
1161 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
1162 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
1163 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
1165 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
1167 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
1168 not use varargs when argument could be non-POD.
1169 (__alloctr_rebind_helper): Eliminate static const bool member by
1170 using true_type and false_type.
1171 (allocator_traits::__allocate_helper): Likewise.
1172 (allocator_traits::__construct_helper): Likewise.
1173 (allocator_traits::__destroy_helper): Likewise.
1174 (allocator_traits::__maxsize_helper): Likewise.
1175 (allocator_traits::__select_helper): Likewise.
1176 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
1177 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
1178 Remove redundant condition.
1179 * include/bits/stl_vector.h (vector::operator=(const vector&)):
1181 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
1182 indirection through __alloc_traits.
1183 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1184 Eliminate static const bool members by using true_type and false_type.
1185 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
1186 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
1187 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
1189 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
1192 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
1193 (vector::_M_data_ptr): New overloaded functions to ensure empty
1194 vectors do not dereference the pointer.
1195 * testsuite/23_containers/vector/59829.cc: New.
1196 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1197 Adjust dg-error line number.
1198 * testsuite/23_containers/vector/requirements/dr438/
1199 constructor_1_neg.cc: Likewise.
1200 * testsuite/23_containers/vector/requirements/dr438/
1201 constructor_2_neg.cc: Likewise.
1202 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1206 * include/ext/array_allocator.h: Add deprecated attribute.
1209 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
1210 installation and use of python printers.
1211 * doc/xml/manual/status_cxx2011.xml: Update.
1212 * doc/html/*: Regenerate.
1214 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
1215 Kyle Lippincott <spectral@google.com>
1218 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
1219 constructor and grant friendship to weak_ptr.
1220 (weak_ptr::lock()): Use new constructor.
1221 * include/bits/shared_ptr_base.h
1222 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
1223 and define specializations.
1224 (__shared_count): Add new non-throwing constructor.
1225 (__shared_ptr): Add new non-throwing constructor and grant friendship
1227 (__weak_ptr::lock()): Use new constructor.
1228 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
1229 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1231 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
1234 * include/bits/shared_ptr_base.h
1235 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
1238 2014-01-27 Jason Merrill <jason@redhat.com>
1243 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
1244 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
1245 (__cxa_allocate_exception): Don't set it here.
1247 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
1249 * include/bits/stl_map.h: Remove anachronistic comment.
1250 * include/bits/stl_multimap.h: Add whitespace.
1251 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
1252 -std=gnu++11 instead of -std=c++11.
1253 * testsuite/23_containers/map/operators/2.cc: Likewise.
1254 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
1255 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
1256 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
1258 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
1259 * configure: Regenerate.
1261 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1264 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
1265 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
1267 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1268 Peter A. Bigot <pab@pabigot.com>
1271 * include/experimental/string_view
1272 (copy(_CharT*, size_type, size_type) const): Correct throw string.
1273 Correct copy start location.
1275 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1276 Peter A. Bigot <pab@pabigot.com>
1279 * include/experimental/string_view (operator[](size_type) const):
1280 Fix one-off index error in debug check.
1281 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
1282 test basic_string_view at size().
1283 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
1285 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1286 Peter A. Bigot <pab@pabigot.com>
1289 * include/experimental/string_view
1290 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
1291 * testsuite/experimental/string_view/operations/substr/char/1.cc:
1292 Comment out catch of out_of_range; No terminating null
1293 in basic_string_view. Check begin == end.
1294 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
1297 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
1300 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
1301 constructor to prevent it being implicitly defined as deleted, but
1302 do not copy anything.
1303 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
1304 Define copy and move constructors similar to _Safe_sequence_base's.
1305 * testsuite/23_containers/unordered_map/59548.cc: New.
1307 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
1308 Steve Ellcey <sellcey@mips.com>
1310 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
1312 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
1313 * (configure, config.h.in): Regenerate.
1314 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
1316 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
1318 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
1319 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
1322 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
1323 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
1325 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
1327 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
1328 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
1329 functions to perform moving or copying of elements from rvalue tree.
1330 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
1331 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
1332 * testsuite/23_containers/map/59872.cc: New.
1333 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
1335 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
1337 * include/bits/stl_deque.h (_Deque_impl): Move comment.
1340 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
1341 Split into separate default constructor and constructor taking
1343 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
1344 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
1346 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
1347 * include/debug/list (list::list(const _Allocator&)): Likewise.
1348 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
1350 * include/debug/multimap.h
1351 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1352 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
1354 * include/debug/multiset.h
1355 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1356 * include/debug/vector (vector::vector(const allocator_type&)):
1358 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
1359 * include/profile/list (list::list(const _Allocator&)): Likewise.
1360 * include/profile/map.h
1361 (map::map(const _Compare&, const _Allocator&)): Likewise.
1362 * include/profile/multimap.h
1363 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1364 * include/profile/set.h
1365 (set::set(const _Compare&, const _Allocator&)): Likewise.
1366 * include/profile/multiset.h
1367 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1368 * include/profile/vector (vector::vector(const _Allocator&)):
1370 * testsuite/23_containers/deque/58764.cc: New.
1371 * testsuite/23_containers/list/58764.cc: New.
1372 * testsuite/23_containers/map/58764.cc: New.
1373 * testsuite/23_containers/multimap/58764.cc: New.
1374 * testsuite/23_containers/set/58764.cc: New.
1375 * testsuite/23_containers/multiset/58764.cc: New.
1376 * testsuite/23_containers/vector/58764.cc: New.
1377 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1378 Adjust dg-error line number.
1379 * testsuite/23_containers/deque/requirements/dr438/
1380 constructor_1_neg.cc: Likewise.
1381 * testsuite/23_containers/deque/requirements/dr438/
1382 constructor_2_neg.cc: Likewise.
1383 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1385 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1387 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1389 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1391 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1393 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1395 * testsuite/23_containers/vector/requirements/dr438/
1396 constructor_1_neg.cc: Likewise.
1397 * testsuite/23_containers/vector/requirements/dr438/
1398 constructor_2_neg.cc: Likewise.
1399 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1402 PR libstdc++/58764 (again)
1403 * include/bits/stl_list.h (list): Make default constructor's exception
1404 specification conditional.
1405 * include/bits/stl_vector.h (vector): Likewise.
1406 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
1407 to default constructor.
1408 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1409 Adjust dg-error line number.
1410 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1412 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1414 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1416 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1418 * testsuite/23_containers/vector/requirements/dr438/
1419 constructor_1_neg.cc: Likewise.
1420 * testsuite/23_containers/vector/requirements/dr438/
1421 constructor_2_neg.cc: Likewise.
1422 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1425 2014-01-21 Tim Shen <timshen91@gmail.com>
1427 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
1428 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
1429 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
1431 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
1434 * include/bits/hashtable.h (__cache_default): Do not depend on
1435 whether the hash function is DefaultConstructible or CopyAssignable.
1436 (_Hashtable): Adjust static assertions.
1437 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
1438 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1439 dg-error line number.
1440 * testsuite/23_containers/unordered_set/
1441 not_default_constructible_hash_neg.cc: Remove.
1443 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
1445 * scripts/create_testsuite_files: Add testsuite/experimental in
1446 the list of folders to search for tests.
1447 * include/experimental/string_view
1448 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
1449 incompatible with constexpr qualifier.
1450 (basic_string_view<>::front()): Likewise.
1451 (basic_string_view<>::back()): Likewise.
1452 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
1453 Merge dg-options directives into one.
1454 * testsuite/experimental/string_view/element_access/char/2.cc:
1455 Likewise. Remove invalid experimental namespace scope on
1458 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
1461 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
1462 friendship to _Local_iterator_base<..., false>.
1463 (_Local_iterator_base): Give protected access to all existing members.
1464 (_Local_iterator_base::_M_curr()): New public accessor.
1465 (_Local_iterator_base::_M_get_bucket()): New public accessor.
1466 (_Local_iterator_base<..., false>::_M_init()): New function to manage
1467 the lifetime of the _Hash_code_base explicitly.
1468 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
1469 (_Local_iterator_base<..., false>): Define copy constructor and copy
1470 assignment operator that use new functions to manage _Hash_code_base.
1471 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
1472 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
1473 Use public API for _Local_iterator_base.
1474 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
1475 * include/debug/unordered_map (__debug::unordered_map::erase(),
1476 __debug::unordered_multimap::erase()): Likewise.
1477 * include/debug/unordered_set (__debug::unordered_set::erase(),
1478 __debug::unordered_multiset::erase()): Likewise.
1479 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
1481 2014-01-19 Tim Shen <timshen91@gmail.com>
1483 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
1484 Fix parse error of multiple consecutive quantifiers like "a**".
1485 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
1487 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
1489 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
1491 * include/profile/set.h (set): Implement C++11 allocator-aware
1492 container requirements.
1493 * include/profile/map.h (map): Likewise.
1494 * include/profile/multiset.h (multiset): Likewise.
1495 * include/profile/multimap.h (multimap): Likewise.
1496 * include/profile/set.h
1497 (set::operator=(const set&)): Define as default in C++11 mode.
1498 (set::operator=(set&&)): Likewise.
1499 * include/profile/map.h
1500 (map::operator=(const map&)): Likewise.
1501 (map::operator=(map&&)): Likewise.
1502 * include/profile/multiset.h
1503 (multiset::operator=(const multiset&)): Likewise.
1504 (multiset::operator=(multiset&&)): Likewise.
1505 * include/profile/multimap.h
1506 (multimap::operator=(const multimap&)): Likewise.
1507 (multimap::operator=(multimap&&)): Likewise.
1508 * include/profile/set.h (set::operator=(std::initializer_list<>)):
1509 Rely on the same operator from normal mode.
1510 * include/profile/map.h (map::operator=(std::initializer_list<>)):
1512 * include/profile/multiset.h
1513 (multiset::operator=(std::initializer_list<>)): Likewise.
1514 * include/profile/multimap.h
1515 (multimap::operator=(std::initializer_list<>)): Likewise.
1516 * include/profile/set.h (set::swap(set&)): Add noexcept
1518 * include/profile/map.h (map::swap(map&)): Likewise.
1519 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
1520 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
1522 2014-01-17 Tim Shen <timshen91@gmail.com>
1524 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
1526 * include/bits/regex_automaton.h: Do not use std::set.
1527 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
1528 _BracketMatcher<>::_M_add_collating_element(),
1529 _BracketMatcher<>::_M_add_equivalence_class(),
1530 _BracketMatcher<>::_M_make_range()): Likewise.
1531 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
1533 * include/bits/regex_executor.h: Do not use std::queue.
1534 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
1535 _Executor<>::_M_dfs()): Likewise.
1536 * include/std/regex: Remove <map>, <set> and <queue>.
1538 2014-01-17 Tim Shen <timshen91@gmail.com>
1540 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
1541 basic_regex<>::assign()): Change __compile_nfa to accept
1543 * include/bits/regex_compiler.h: Change _Compiler's template
1544 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
1545 * include/bits/regex_compiler.tcc: Likewise.
1547 2014-01-17 Tim Shen <timshen91@gmail.com>
1549 * include/bits/regex_compiler.h: Change _ScannerT into char-type
1551 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
1552 _ScannerBase from _Scanner; Change _Scanner's template argument from
1553 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
1555 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
1556 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
1557 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
1559 * include/std/regex: Add <cstring> for using strchr.
1561 2014-01-17 Tim Shen <timshen91@gmail.com>
1563 * bits/regex_automaton.tcc: Indentation fix.
1564 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
1565 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
1566 _BracketMatcher<>): Add bool option template parameters and
1567 specializations to make matching more efficient and space saving.
1568 * bits/regex_compiler.tcc: Likewise.
1570 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
1573 * include/bits/hashtable_policy.h: Fix some long lines.
1574 * include/bits/hashtable.h (__hash_code_base_access): Define and
1575 use it to check its _M_bucket_index noexcept qualification. Use
1577 (__access_protected_ctor): ...this.
1578 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1580 * testsuite/23_containers/unordered_set/
1581 not_default_constructible_hash_neg.cc: Likewise.
1583 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
1585 * include/debug/set.h (set): Implement C++11 allocator-aware
1586 container requirements.
1587 * include/debug/map.h (map): Likewise.
1588 * include/debug/multiset.h (multiset): Likewise.
1589 * include/debug/multimap.h (multimap): Likewise.
1590 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
1591 fix implementation regarding management of safe iterators.
1592 * include/debug/map.h (map::operator=(map&&)): Likewise.
1593 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
1594 * include/debug/multimap.h (multimap::operator=(multimap&&)):
1596 * include/debug/set.h (set::operator=(std::initializer_list<>)):
1597 Rely on the same operator from normal mode.
1598 * include/debug/map.h (map::operator=(std::initializer_list<>)):
1600 * include/debug/multiset.h
1601 (multiset::operator=(std::initializer_list<>)): Likewise.
1602 * include/debug/multimap.h
1603 (multimap::operator=(std::initializer_list<>)): Likewise.
1604 * include/debug/set.h (set::swap(set&)): Add noexcept
1605 specification, add allocator equality check.
1606 * include/debug/map.h (map::swap(map&)): Likewise.
1607 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
1608 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
1610 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
1613 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
1614 and stylistic improvements.
1615 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
1616 and update for C++11.
1617 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
1620 * doc/xml/manual/backwards_compatibility.xml
1621 (backwards.third.nocreate_noreplace): Correct and expand.
1624 * doc/xml/manual/support.xml (std.support.types.null): Update links.
1626 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
1629 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
1630 support for non-Movable types.
1633 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
1635 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
1637 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
1638 *this allocator instance when building temporary vector instance
1639 so that *this allocator does not get moved.
1640 * include/debug/safe_base.h
1641 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
1642 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
1643 move constructor from _Safe_sequence_base.
1644 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
1645 safe iterators if the instance is moved.
1646 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
1647 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
1648 check on a vector iterator.
1649 * testsuite/23_containers/vector/allocator/move_assign.cc
1651 (test03): New, test with a non-propagating allocator.
1652 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
1654 2014-01-07 Tim Shen <timshen91@gmail.com>
1656 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
1657 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
1658 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
1659 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
1660 _BracketMatcher<>::_M_add_char(),
1661 _BracketMatcher<>::_M_add_collating_element(),
1662 _BracketMatcher<>::_M_add_equivalence_class(),
1663 _BracketMatcher<>::_M_add_character_class(),
1664 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
1665 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
1666 Fix _AnyMatcher behavior of POSIX style and move _M_flags
1667 to template parameter; Add cache for _BracketMatcher. Adjust
1668 declarations from here...
1669 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
1670 imbuing a regex will trigger a recompilation to rebuild the cache.
1671 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
1672 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
1673 different template bool parameters.
1674 * include/bits/regex_executor.h: Remove unnecessary declarations.
1675 * include/std/regex: Adjust including orders.
1676 * testsuite/28_regex/traits/char/user_defined.cc: New.
1677 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
1679 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1681 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1682 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1683 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1684 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1685 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1687 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1689 Update copyright years
1691 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1693 * testsuite/18_support/new_handler.cc,
1694 testsuite/18_support/terminate_handler.cc,
1695 testsuite/18_support/unexpected_handler.cc: Use the standard form for
1696 the copyright notice.
1698 Copyright (C) 2014 Free Software Foundation, Inc.
1700 Copying and distribution of this file, with or without modification,
1701 are permitted in any medium without royalty provided the copyright
1702 notice and this notice are preserved.