1 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
3 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
4 * include/Makefile.am: Add new header.
5 * include/Makefile.in: Regenerate.
6 * include/experimental/any: New.
7 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
9 * testsuite/experimental/any/assign/1.cc: New.
10 * testsuite/experimental/any/assign/2.cc: New.
11 * testsuite/experimental/any/cons/1.cc: New.
12 * testsuite/experimental/any/cons/2.cc: New.
13 * testsuite/experimental/any/cons/3.cc: New.
14 * testsuite/experimental/any/misc/any_cast.cc: New.
15 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
16 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
17 * testsuite/experimental/any/misc/swap.cc: New.
18 * testsuite/experimental/any/modifiers/1.cc: New.
19 * testsuite/experimental/any/observers/type.cc: New.
21 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
22 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
24 * include/bits/shared_ptr.h (shared_ptr): Likewise.
25 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
27 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
29 * include/parallel/list_partition.h (__parallel::list_partition):
31 * include/std/iomanip (quoted): Likewise.
32 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
34 * doc/xml/api.xml: Link to more recent API docs.
35 * include/bits/allocator.h: Fix link in doxygen comment.
36 * include/bits/char_traits.h: Likewise.
37 * include/bits/ios_base.h: Likewise.
38 * include/bits/stl_map.h: Likewise.
39 * include/bits/stl_multimap.h: Likewise.
40 * include/bits/stl_multiset.h: Likewise.
41 * include/bits/stl_set.h: Likewise.
42 * include/bits/unordered_map.h: Likewise.
43 * include/bits/unordered_set.h: Likewise.
44 * include/ext/mt_allocator.h: Likewise.
45 * include/std/fstream: Likewise.
46 * include/std/iosfwd: Likewise.
47 * include/std/ostream: Likewise.
48 * include/std/sstream: Likewise.
49 * include/std/streambuf: Likewise.
50 * doc/html/*: Regenerate.
52 * include/experimental/any (any_cast): Combine duplicate doxygen
54 * include/experimental/string_view (basic_string_view): Update
56 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
57 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
58 (dynamic_bitset): Improve Doxygen comments.
59 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
62 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
64 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
65 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
67 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
70 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
71 (bin_search_tree_traits): Do not redeclare template-parameters.
72 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
74 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
76 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
77 parameter for DocBook HTML generation.
78 * doc/Makefile.in: Regenerate.
79 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
80 * doc/xml/faq.xml: Update content and improve formatting.
81 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
82 * doc/xml/manual/allocator.xml: Add stable ID attribute.
83 * doc/xml/manual/bitmap_allocator.xml: Likewise.
84 * doc/xml/manual/build_hacking.xml: Likewise.
85 * doc/xml/manual/codecvt.xml: Change URL.
86 * doc/xml/manual/ctype.xml: Add stable ID attribute.
87 * doc/xml/manual/debug_mode.xml: Likewise.
88 * doc/xml/manual/documentation_hacking.xml: Likewise.
89 * doc/xml/manual/evolution.xml: Likewise.
90 * doc/xml/manual/extensions.xml: Likewise.
91 * doc/xml/manual/locale.xml: Likewise.
92 * doc/xml/manual/messages.xml: Make section id consistent, improve
94 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
95 * doc/xml/manual/profile_mode.xml: Likewise.
96 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
97 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
98 * doc/xml/manual/status_cxx2011.xml: Likewise.
99 * doc/xml/manual/status_cxx2014.xml: Likewise.
100 * doc/xml/manual/status_cxxtr1.xml: Likewise.
101 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
102 * doc/xml/manual/using.xml: Likewise.
103 * doc/html/*: Regenerate.
105 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
107 * include/tr1/beta_function.tcc: Fix spelling of include guard in
110 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
112 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
114 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
116 DR 2344 - std::quoted doesn't respect padding
117 * include/std/iomanip: Allow for padding in quoted inserters.
118 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
119 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
121 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
123 * testsuite/23_containers/map/operators/1.cc: Simplify test.
125 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
127 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
129 * doc/xml/manual/backwards_compatibility.xml
130 (backwards.second.stringstreams): Likewise.
131 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
133 * doc/xml/manual/containers.xml (associative.bitset.type_string):
134 Replace <quote> in code example.
135 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
136 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
137 fix typos, improve markup.
138 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
139 <emphasis> with <replaceable>.
140 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
141 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
142 and remove newlines in string literal.
144 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
148 * testsuite/20_util/is_assignable/value.cc: Update.
150 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
152 * include/std/condition_variable (condition_variable_any::_Unlock): Do
153 not swallow __forced_unwind.
154 * include/std/future (__future_base::_Task_setter): Likewise.
155 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
157 * include/std/mutex (try_lock): Likewise.
158 * testsuite/30_threads/async/forced_unwind.cc: New.
159 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
161 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
162 members to avoid wasted space when not using a cache.
163 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
164 * include/bits/regex_compiler.tcc
165 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
167 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
168 New enumeration type to indicate match mode.
169 (__detail::_Executor::_State_info): New type holding members only
170 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
172 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
173 Replace template parameter with run-time function parameter.
174 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
175 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
176 implement DFS and BFS mode.
177 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
178 Split implementation into ...
179 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
180 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
181 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
182 argument instead of template argument.
183 (__detail::_Executor::_M_dfs): Likewise.
184 * include/bits/regex_scanner.tcc: Fix typos in comments.
185 * testsuite/performance/28_regex/range.cc: New.
187 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
188 Jonathan Wakely <jwakely@redhat.com>
190 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
192 (aligned_union): New struct (C++11).
193 (aligned_union_t): New type alias (C++14).
194 * doc/xml/manual/status_cxx2011.xml: Update.
195 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
196 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
199 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
202 * include/experimental/string_view (operator basic_string): Correct
204 (to_string): Replace with member function.
205 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
206 allow _M_str to be null.
207 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
208 default constructor semantics.
209 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
210 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
211 copyright dates. Remove unused header.
212 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
214 * testsuite/experimental/string_view/operations/data/char/1.cc:
215 Fix copyright dates. Adjust to new default constructor semantics.
216 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
218 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
220 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
221 (__uses_allocator_arg): Remove unused type.
222 (__uses_alloc0): Turn into a trivial type.
223 (__uses_alloc): Add missing template parameter in primary template.
224 (__uses_alloc_impl): Rename to __uses_alloc_t.
226 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
228 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
229 work with previous versions of Tcl.
231 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
232 Benjamin's old email address.
234 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
237 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
239 * include/tr2/bool_set: Use UTF-8 for accented characters.
240 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
241 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
242 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
244 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
247 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
249 (_State_base::_M_dot): Likewise.
251 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
253 * include/profile/map.h: Fix typo in comment; minor formatting fix.
254 * include/profile/multimap.h: Likewise.
255 * include/profile/set.h: Likewise.
256 * include/profile/multiset.h: Likewise.
258 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
260 * include/profile/array: Clean useless white chars.
261 * include/profile/base.h: Likewise.
262 * include/profile/iterator_tracker.h: Likewise.
263 * include/profile/bitset: Code cleanup and remove not instrumented code.
264 * include/profile/deque: Likewise.
265 * include/profile/forward_list: Likewise.
266 * include/profile/list (std::__profile::_List_profile<>): New.
267 (std::__profile::list<>): Inherit from latter and adapt.
268 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
269 advise to match any ordered to unordered container conversion.
270 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
272 * include/Makefile.am: Add latter.
273 * include/Makefile.in: Regenerate.
274 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
275 remove not instrumented code.
276 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
277 * include/profile/set.h (std::__profile::set<>): Likewise.
278 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
279 * include/profile/unordered_base.h: Add some line feed.
280 * include/profile/unordered_map: Clean useless white chars and replace
282 * include/profile/unordered_set: Likewise.
283 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
284 (std::__profile::_Vector_profile_post<>): New.
285 (std::__profile::vector<>): Inherit from latter and adapt.
287 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
290 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
291 dragonfly target selector to all tests that run on freebsd.
293 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
295 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
296 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
298 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
300 * testsuite/30_threads/call_once/60497.cc: Likewise.
301 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
302 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
303 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
304 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
305 * testsuite/30_threads/promise/60966.cc: Likewise.
306 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
307 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
308 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
309 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
310 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
311 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
312 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
313 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
314 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
315 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
316 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
317 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
318 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
319 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
320 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
321 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
322 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
324 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
327 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
329 * testsuite/23_containers/unordered_set/61143.cc: New.
330 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
332 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
335 * include/std/type_traits: Move include outside namespace std.
336 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
337 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
338 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
341 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
344 2014-05-21 John Marino <gnugcc@marino.st>
346 * acinclude.m4 (*-*-dragonfly*): New target.
347 * configure: Regenerate.
348 * configure.host (*-*-dragonfly*): New target.
349 * config/locale/dragonfly/c_locale.cc: New.
350 * config/locale/dragonfly/ctype_members.cc: New.
351 * config/os/bsd/dragonfly/ctype_base.h: New.
352 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
353 * config/os/bsd/dragonfly/ctype_inline.h: New.
354 * config/os/bsd/dragonfly/os_defines.h: New.
356 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
358 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
359 libstdc++.exp imports those flags via getenv.
360 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
361 CXXFLAGS contains a '-O' flag.
363 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
367 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
370 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
371 and add unwind directives.
373 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
375 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
377 2014-05-20 Tim Shen <timshen91@gmail.com>
380 * include/bits/regex_compiler.h
381 (_BracketMatcher<>::_M_add_character_class): Add negative character
383 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
385 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
388 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
390 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
392 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
394 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
395 * libsupc++/new_opnt.cc: Likewise.
397 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
400 * include/std/future (__future_base::_State_baseV2::_M_set_result):
401 Pass lock into _M_do_set and hold it until the function returns.
402 Signal condition variable after call_once completes.
403 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
405 * testsuite/30_threads/promise/60966.cc: New.
407 2014-05-16 Iain Sandoe <iain@codesourcery.com>
408 Sandra Loosemore <sandra@codesourcery.com>
410 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
411 until after checking that the test is eligible to be run.
413 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
415 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
416 test for 32-bit target.
417 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
419 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
422 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
425 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
426 and add unwind directives.
428 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
430 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
432 * include/std/chrono (chrono_literals::__select_type::_Select_type):
434 (chrono_literals::_Checked_integral_constant): Define.
435 Simplify UDL operator templates and check for overflow.
436 * testsuite/20_util/duration/literals/range.cc: New.
438 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
439 Jonathan Wakely <jwakely@redhat.com>
442 * include/bits/parse_numbers.h: Use integral_constant to remove
443 duplication and simplify.
444 * testsuite/20_util/duration/literals/61166.cc: New.
446 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
449 * include/std/type_traits (__make_unsigned, __make_signed): Define
450 specializations for wchar_t, char16_t and char32_t.
451 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
452 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
453 test for make_unsigned<volatile wchar_t>.
454 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
456 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
458 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
460 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
463 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
465 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
466 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
467 * include/std/utility (tuple_size, tuple_element): Likewise.
468 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
469 Adjust dg-error line number.
471 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
473 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
474 (__tuple_element_t): Define.
475 (tuple_element): Use __tuple_element_t.
476 (__cv_tuple_size): Define.
477 (tuple_size<cv _Tp>): Use __cv_tuple_size.
478 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
479 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
480 (__tuple_compare): Remove size check, re-order parameters.
481 (operator==, operator<): Use static_assert to check requirements.
482 * include/std/functional (__volget): use __tuple_element_t.
483 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
484 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
486 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
489 * include/std/tuple (get, __tuple_compare): Qualify more calls to
490 prevent ADL. Cast comparison results to bool.
491 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
492 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
495 * include/debug/array (get): Qualify call to other get overload.
496 * include/profile/array (get): Likewise.
497 * include/std/array (get): Likewise.
498 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
499 * include/std/mutex (unique_lock, call_once): Use __addressof.
500 (__unlock_impl): Remove unused template.
501 (__try_to_lock): Declare inline.
502 (__try_lock_impl::__do_try_lock): Qualify function calls.
503 (lock): Avoid narrowing conversion.
504 * testsuite/20_util/bind/60497.cc: New.
505 * testsuite/23_containers/array/element_access/60497.cc: New.
506 * testsuite/30_threads/call_once/60497.cc: New.
507 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
509 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
511 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
512 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
513 * acinclude.m4 (libtool_VERSION): Bump.
514 * configure: Regenerate.
515 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
516 * testsuite/28_regex/regex_error/base.cc: New.
518 2014-05-08 Joshua Gay <jgay@gnu.org>
521 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
522 source" with "free software".
523 * doc/html/faq.html: Likewise.
525 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
528 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
530 (operator=(const ios_base&)): Likewise.
531 * include/std/streambuf: Remove trailing whitespace.
532 (basic_streambuf(const basic_streambuf&)): Fix initializer for
533 _M_out_end. Define as defaulted for C++11.
534 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
535 (swap(basic_streambuf&)): Define for C++11.
536 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
539 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
541 * include/std/iostream: Fix URL in comment.
542 * src/c++98/ios_init.cc: Fix path in comment.
544 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
546 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
547 * configure: Regenerate.
549 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
552 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
554 * testsuite/23_containers/set/cons/61023.cc: New.
557 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
559 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
560 arithmetic to obtain a mutable iterator from const_iterator.
561 * include/bits/vector.tcc (vector::insert): Likewise.
562 * include/debug/vector (vector::erase): Likewise.
563 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
564 Adjust dg-error line number.
565 * testsuite/23_containers/vector/requirements/dr438/
566 constructor_1_neg.cc: Likewise.
567 * testsuite/23_containers/vector/requirements/dr438/
568 constructor_2_neg.cc: Likewise.
569 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
572 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
574 * include/Makefile.in: Regenerate.
576 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
578 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
579 parameter to pass the 2 instances to check allocator equality.
580 * include/debug/safe_container.h: New, define _Safe_container<>.
581 * include/Makefile.am: Add previous.
582 * include/debug/deque (std::__debug::deque<>): Inherit
583 _Safe_container<>. Use default implementation for all special
585 * include/debug/forward_list (std::__debug::forward_list<>):
587 * include/debug/list (std::__debug::list<>): Likewise.
588 * include/debug/map.h (std::__debug::map<>): Likewise.
589 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
590 * include/debug/set.h (std::__debug::set<>): Likewise.
591 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
592 * include/debug/string (std::__debug::basic_string<>): Likewise.
593 * include/debug/unordered_map
594 (std::__debug::unordered_map<>): Likewise.
595 (std::__debug::unordered_multimap<>): Likewise.
596 * include/debug/unordered_set
597 (std::__debug::unordered_set<>): Likewise.
598 (std::__debug::unordered_multiset<>): Likewise.
599 * include/debug/vector (std::__debug::vector<>): Likewise.
600 * include/debug/safe_base.h (_Safe_sequence_base()): Add
602 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
603 (~_Safe_sequence_base()): Add noexcept.
604 * include/debug/safe_sequence.h
605 (std::__debug::_Safe_node_sequence<>): New.
606 * include/debug/safe_unordered_base.h
607 (_Safe_unordered_container_base()): Add noexcept.
608 (~_Safe_unordered_container_base()): Likewise.
609 (_M_swap(_Safe_unordered_container_base&)): Likewise.
610 * include/debug/safe_unordered_container.h:
611 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
612 (_Safe_unordered_container<>::_M_invalidate_all()): New.
613 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
615 * testsuite/util/debug/checks.h (check_construct1): Just implement
616 an invalid constructor invocation and no other operations
617 potentially not supported by some types of container.
618 (check_construct2): Likewise.
619 (check_construct3): Likewise.
620 * testsuite/23_containers/forward_list/allocator/move.cc: Add
621 check on iterators to make sure they are correctly moved in debug
623 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
625 * testsuite/23_containers/map/allocator/move.cc: Likewise.
626 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
627 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
628 * testsuite/23_containers/multimap/allocator/move_assign.cc:
630 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
631 * testsuite/23_containers/multiset/allocator/move_assign.cc:
633 * testsuite/23_containers/set/allocator/move.cc: Likewise.
634 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
635 * testsuite/23_containers/unordered_map/allocator/move.cc:
637 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
639 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
641 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
643 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
645 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
647 * testsuite/23_containers/unordered_set/allocator/move.cc:
649 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
651 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
653 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
655 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
657 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
659 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
661 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
662 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
663 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
664 * testsuite/23_containers/map/debug/move_neg.cc: New.
665 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
666 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
667 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
668 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
669 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
670 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
671 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
672 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
673 * testsuite/23_containers/set/debug/move_neg.cc: New.
674 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
676 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
678 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
679 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
681 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
683 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
685 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
687 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
689 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
691 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
693 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
695 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
696 * testsuite/23_containers/vector/debug/move_neg.cc: New.
698 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
700 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
701 (CXXABI_1.3.9): Remove __float128 symbols.
703 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
706 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
707 function to handle both C++03 and C++11 _Rb_tree_node implementations.
708 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
709 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
711 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
714 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
715 Check the correct type in the static assertion.
716 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
718 2014-04-27 Tim Shen <timshen91@gmail.com>
720 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
721 Add _S_opcode_repeat support to distingush a loop from
722 _S_opcode_alternative.
723 * include/bits/regex_automaton.tcc (_State_base::_M_print,
724 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
725 _StateSeq<>::_M_clone): Likewise.
726 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
728 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
729 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
730 Uglify local variable __i.
731 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
732 Use size_t instead of int to compare with vector::size().
734 2014-04-27 Tim Shen <timshen91@gmail.com>
736 * include/bits/regex_executor.h: Add _M_rep_count to track how
737 many times this repeat node are visited.
738 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
739 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
742 2014-04-27 Tim Shen <timshen91@gmail.com>
744 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
745 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
746 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
747 * include/bits/regex_automaton.h: Remove quantifier counting variable.
748 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
749 Adjust debug NFA dump.
751 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
754 * include/experimental/optional (operator!=): Implement in terms of
756 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
757 * testsuite/experimental/optional/relops/2.cc: Likewise.
758 * testsuite/experimental/optional/relops/3.cc: Likewise.
759 * testsuite/experimental/optional/relops/4.cc: Likewise.
760 * testsuite/experimental/optional/relops/5.cc: Likewise.
761 * testsuite/experimental/optional/relops/6.cc: Likewise.
763 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
766 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
767 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
770 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
772 * testsuite/util/testsuite_abi.cc (check_version): Update for
775 2014-04-24 Tim Shen <timshen91@gmail.com>
777 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
778 Do _M_alt before _M_next.
779 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
781 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
784 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
785 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
786 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
788 2014-04-24 Andreas Schwab <schwab@suse.de>
790 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
791 new CXXABI_1.3.9 symbols.
793 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
795 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
796 (CXXABI_1.3.9): New version.
798 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
801 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
802 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
803 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
805 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
807 * configure.host: Remove solaris2.9 handling.
808 Change os_include_dir to os/solaris/solaris2.10.
809 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
810 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
811 * configure: Regenerate.
812 * config/abi/post/solaris2.9: Remove.
813 * config/os/solaris/solaris2.9: Rename to ...
814 * config/os/solaris/solaris2.10: ... this.
815 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
818 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
819 Remove Solaris 9 reference.
820 * doc/html/manual/configure.html: Regenerate.
822 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
823 Remove *-*-solaris2.9 xfail.
824 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
827 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
830 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
832 * include/std/functional (__is_location_invariant): Use __or_ helper.
834 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
837 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
840 * include/std/atomic (atomic<_Tp>): Add static assertion.
841 * testsuite/29_atomics/atomic/60695.cc: New.
844 * include/std/functional (function::_Callable): Exclude own type
845 from the callable checks.
846 * testsuite/20_util/function/60594.cc: New.
848 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
849 const to constexpr member functions.
851 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
852 delegating constructor.
853 * include/bits/shared_ptr_base.h
854 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
856 * include/std/atomic: Uglify parameter names.
859 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
860 1.cc: Fix invalid explicit instantiations with unqualified names.
861 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
863 * testsuite/20_util/tuple/53648.cc: Likweise.
864 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
866 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
868 * testsuite/23_containers/unordered_map/requirements/
869 debug_container.cc: Likewise.
870 * testsuite/23_containers/unordered_map/requirements/
871 explicit_instantiation/3.cc: Likewise.
872 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
874 * testsuite/23_containers/unordered_multimap/requirements/
875 explicit_instantiation/3.cc: Likewise.
876 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
878 * testsuite/23_containers/unordered_multiset/requirements/
879 explicit_instantiation/3.cc: Likewise.
880 * testsuite/23_containers/unordered_set/requirements/
881 debug_container.cc: Likewise.
882 * testsuite/23_containers/unordered_set/requirements/
883 explicit_instantiation/3.cc: Likewise.
885 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
886 not use uninitialized members in mem-initializers.
887 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
888 * testsuite/util/testsuite_common_types.h: Update comment.
890 * include/experimental/string_view: Fix inconsistent exception specs.
892 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
893 Remove name of unused parameter.
895 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
897 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
898 _Vector_base::_M_allocate): NullablePointer requirements do not
899 include initialization from literal zero, use value-initialization.
900 * include/bits/vector.tcc (vector::_M_insert_aux,
901 vector::_M_explace_back_aux): Likewise for assignment.
903 * include/bits/allocator.h (operator==, operator!=): Add exception
907 * include/std/tuple (get): Qualify calls to prevent ADL.
908 * testsuite/20_util/tuple/60497.cc: New.
910 * include/std/tuple (tuple_element_t): Define.
911 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
913 * testsuite/20_util/tuple/tuple_element_t.cc: New.
915 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
918 * include/bits/stl_iterator.h (move_iterator::reference,
919 move_iterator::operator*): Implement LWG 2106.
920 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
922 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
924 * include/std/complex (__complex_exp, pow): Specify the template
925 parameter in calls to std::polar, for expression templates.
927 2014-04-10 Andreas Schwab <schwab@suse.de>
929 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
931 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
932 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
934 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
936 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
938 * testsuite/20_util/exchange/1.cc: Add missing return statements.
939 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
940 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
943 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
944 Jack Howarth <howarth@bromo.med.uc.edu>
947 * testsuite/30_threads/condition_variable/54185.cc: Skip for
950 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
952 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
954 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
956 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
957 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
958 * doc/xml/manual/concurrency_extensions.xml
959 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
960 * doc/html/*: Regenerate.
962 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
963 Jonathan Wakely <jwakely@redhat.com>
966 * include/std/iomanip (_Quoted_string operator>>): Do not clear
967 string if input is not quoted.
968 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
970 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
972 * libsupc++/eh_ptr.cc: Improve static_assert messages.
974 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
976 * testsuite/18_support/exception_ptr/60612-terminate.cc
977 (terminate, f): Wrap in _GLIBCXX_USE_C99.
978 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
980 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
982 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
984 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
985 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
987 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
989 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
991 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
992 Fix bad s/part/chapter/ substitutions.
993 * doc/xml/manual/io.xml (std.io): Likewise.
994 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
995 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
997 * doc/html/*: Regenerate.
999 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1002 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1003 compatible with __cxa_exception.
1004 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1005 Fix typos in comments.
1006 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1007 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1009 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1012 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1013 Use sizeof pointer type not the element type.
1014 * testsuite/29_atomics/atomic/60658.cc: New.
1016 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1018 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1019 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1020 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1021 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1022 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1023 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1024 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1025 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1026 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1027 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1030 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1032 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1034 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1036 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1037 to delegated constructor.
1038 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1039 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1042 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1044 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1047 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1049 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1052 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1053 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1055 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1056 from different types of debug container. Use _Is_contiguous_sequence
1057 instead of is_lvalue_reference.
1058 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1059 dereferencing past-the-end iterator.
1060 (__foreign_iterator_aux4): Use const value_type* instead of
1061 potentially user-defined const_pointer type.
1062 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1063 and pass end iterator to __gnu_debug::__foreign_iterator.
1064 (__glibcxx_check_insert_range_after): Likewise.
1065 (__glibcxx_check_max_load_factor): Fix comment.
1066 * include/debug/vector (_Is_contiguous_sequence): Define partial
1068 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1069 -std=gnu++11 option and unused header.
1070 * testsuite/23_containers/vector/debug/60587.cc: New.
1071 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1073 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1075 * crossconfig.m4: Support spu-*-elf* targets.
1076 * configure: Regenerate.
1078 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1081 * include/std/future (__future_base::_Task_state<>): Change
1082 constructors to template functions using perfect forwarding.
1083 (__create_task_state): Use decayed type as stored task.
1084 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1085 * testsuite/30_threads/packaged_task/60564.cc: New.
1087 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1089 * scripts/create_testsuite_files: Add testsuite/experimental in
1090 the list of folders to search for tests.
1092 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1094 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1096 2014-03-15 Tim Shen <timshen91@gmail.com>
1098 * include/bits/regex.h: Add/modify comments.
1099 * include/bits/regex_compiler.h: Likewise.
1100 * include/bits/regex_executor.h: Likewise.
1101 * include/bits/regex_executor.tcc: Likewise.
1102 * include/bits/regex_scanner.h: Likewise.
1104 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
1107 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
1108 _ZNSt12system_errorC* symbols which are not exported on any target.
1110 2014-03-12 Roland McGrath <mcgrathr@google.com>
1111 Mark Seaborn <mseaborn@google.com>
1114 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
1115 the address of a null pointer, not with a null pointer to pointer.
1116 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
1117 * testsuite/18_support/bad_exception/59392.cc: New file.
1119 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
1122 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
1124 * include/debug/map (map::operator=(map&&)): Likewise.
1125 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
1126 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
1127 * include/debug/set (set::operator=(set&&)): Likewise.
1128 * include/debug/unordered_map
1129 (unordered_map::operator=(unordered_map&&)): Likewise.
1130 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
1131 * include/debug/unordered_set
1132 (unordered_set::operator=(unordered_set&&)): Likewise.
1133 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
1134 * include/debug/vector (vector::operator=(vector&&)): Likewise.
1135 * testsuite/23_containers/forward_list/debug/60499.cc: New
1136 * testsuite/23_containers/map/debug/60499.cc: New
1137 * testsuite/23_containers/multimap/debug/60499.cc: New
1138 * testsuite/23_containers/multiset/debug/60499.cc: New
1139 * testsuite/23_containers/set/debug/60499.cc: New
1140 * testsuite/23_containers/unordered_map/debug/60499.cc: New
1141 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
1142 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
1143 * testsuite/23_containers/unordered_set/debug/60499.cc: New
1144 * testsuite/23_containers/vector/debug/60499.cc: New
1146 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
1148 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
1149 for filesystem and fundamentals TS work items.
1151 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
1154 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
1155 Adjust dg-error directives.
1157 2014-02-26 Tim Shen <timshen91@gmail.com>
1159 * include/bits/regex.tcc (match_results<>::format,
1160 regex_replace<>): Update __out after calling std::copy.
1161 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
1163 * testsuite/28_regex/match_results/format.cc: Likewise.
1165 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
1168 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
1169 allocator_type&)): Remove redundant call to _M_initialize_map.
1170 (deque::deque(const allocator_type&)): Initialize _Base with a
1171 constructor that calls _M_initialize_map.
1175 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
1177 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
1180 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
1182 Rename testsuite directory shared_mutex to shared_timed_mutex
1184 * testsuite/30_threads/shared_mutex: Moved to...
1185 * testsuite/30_threads/shared_timed_mutex: ...here
1187 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
1189 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
1190 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
1191 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
1192 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
1193 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
1194 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
1195 * testsuite/30_threads/shared_lock/requirements/
1196 explicit_instantiation.cc: Ditto.
1197 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
1198 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
1199 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
1200 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
1201 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
1202 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
1203 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
1204 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
1205 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
1206 * testsuite/30_threads/shared_mutex/requirements/
1207 standard_layout.cc: Ditto.
1208 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
1209 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
1210 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
1211 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
1212 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
1214 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1216 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
1217 execution on i?86-*-solaris2.9, remove comment.
1218 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1220 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
1222 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
1223 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
1224 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
1226 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
1228 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
1229 not use varargs when argument could be non-POD.
1230 (__alloctr_rebind_helper): Eliminate static const bool member by
1231 using true_type and false_type.
1232 (allocator_traits::__allocate_helper): Likewise.
1233 (allocator_traits::__construct_helper): Likewise.
1234 (allocator_traits::__destroy_helper): Likewise.
1235 (allocator_traits::__maxsize_helper): Likewise.
1236 (allocator_traits::__select_helper): Likewise.
1237 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
1238 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
1239 Remove redundant condition.
1240 * include/bits/stl_vector.h (vector::operator=(const vector&)):
1242 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
1243 indirection through __alloc_traits.
1244 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1245 Eliminate static const bool members by using true_type and false_type.
1246 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
1247 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
1248 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
1250 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
1253 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
1254 (vector::_M_data_ptr): New overloaded functions to ensure empty
1255 vectors do not dereference the pointer.
1256 * testsuite/23_containers/vector/59829.cc: New.
1257 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1258 Adjust dg-error line number.
1259 * testsuite/23_containers/vector/requirements/dr438/
1260 constructor_1_neg.cc: Likewise.
1261 * testsuite/23_containers/vector/requirements/dr438/
1262 constructor_2_neg.cc: Likewise.
1263 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1267 * include/ext/array_allocator.h: Add deprecated attribute.
1270 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
1271 installation and use of python printers.
1272 * doc/xml/manual/status_cxx2011.xml: Update.
1273 * doc/html/*: Regenerate.
1275 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
1276 Kyle Lippincott <spectral@google.com>
1279 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
1280 constructor and grant friendship to weak_ptr.
1281 (weak_ptr::lock()): Use new constructor.
1282 * include/bits/shared_ptr_base.h
1283 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
1284 and define specializations.
1285 (__shared_count): Add new non-throwing constructor.
1286 (__shared_ptr): Add new non-throwing constructor and grant friendship
1288 (__weak_ptr::lock()): Use new constructor.
1289 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
1290 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1292 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
1295 * include/bits/shared_ptr_base.h
1296 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
1299 2014-01-27 Jason Merrill <jason@redhat.com>
1304 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
1305 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
1306 (__cxa_allocate_exception): Don't set it here.
1308 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
1310 * include/bits/stl_map.h: Remove anachronistic comment.
1311 * include/bits/stl_multimap.h: Add whitespace.
1312 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
1313 -std=gnu++11 instead of -std=c++11.
1314 * testsuite/23_containers/map/operators/2.cc: Likewise.
1315 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
1316 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
1317 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
1319 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
1320 * configure: Regenerate.
1322 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1325 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
1326 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
1328 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1329 Peter A. Bigot <pab@pabigot.com>
1332 * include/experimental/string_view
1333 (copy(_CharT*, size_type, size_type) const): Correct throw string.
1334 Correct copy start location.
1336 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1337 Peter A. Bigot <pab@pabigot.com>
1340 * include/experimental/string_view (operator[](size_type) const):
1341 Fix one-off index error in debug check.
1342 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
1343 test basic_string_view at size().
1344 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
1346 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1347 Peter A. Bigot <pab@pabigot.com>
1350 * include/experimental/string_view
1351 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
1352 * testsuite/experimental/string_view/operations/substr/char/1.cc:
1353 Comment out catch of out_of_range; No terminating null
1354 in basic_string_view. Check begin == end.
1355 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
1358 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
1361 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
1362 constructor to prevent it being implicitly defined as deleted, but
1363 do not copy anything.
1364 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
1365 Define copy and move constructors similar to _Safe_sequence_base's.
1366 * testsuite/23_containers/unordered_map/59548.cc: New.
1368 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
1369 Steve Ellcey <sellcey@mips.com>
1371 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
1373 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
1374 * (configure, config.h.in): Regenerate.
1375 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
1377 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
1379 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
1380 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
1383 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
1384 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
1386 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
1388 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
1389 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
1390 functions to perform moving or copying of elements from rvalue tree.
1391 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
1392 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
1393 * testsuite/23_containers/map/59872.cc: New.
1394 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
1396 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
1398 * include/bits/stl_deque.h (_Deque_impl): Move comment.
1401 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
1402 Split into separate default constructor and constructor taking
1404 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
1405 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
1407 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
1408 * include/debug/list (list::list(const _Allocator&)): Likewise.
1409 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
1411 * include/debug/multimap.h
1412 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1413 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
1415 * include/debug/multiset.h
1416 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1417 * include/debug/vector (vector::vector(const allocator_type&)):
1419 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
1420 * include/profile/list (list::list(const _Allocator&)): Likewise.
1421 * include/profile/map.h
1422 (map::map(const _Compare&, const _Allocator&)): Likewise.
1423 * include/profile/multimap.h
1424 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1425 * include/profile/set.h
1426 (set::set(const _Compare&, const _Allocator&)): Likewise.
1427 * include/profile/multiset.h
1428 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1429 * include/profile/vector (vector::vector(const _Allocator&)):
1431 * testsuite/23_containers/deque/58764.cc: New.
1432 * testsuite/23_containers/list/58764.cc: New.
1433 * testsuite/23_containers/map/58764.cc: New.
1434 * testsuite/23_containers/multimap/58764.cc: New.
1435 * testsuite/23_containers/set/58764.cc: New.
1436 * testsuite/23_containers/multiset/58764.cc: New.
1437 * testsuite/23_containers/vector/58764.cc: New.
1438 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1439 Adjust dg-error line number.
1440 * testsuite/23_containers/deque/requirements/dr438/
1441 constructor_1_neg.cc: Likewise.
1442 * testsuite/23_containers/deque/requirements/dr438/
1443 constructor_2_neg.cc: Likewise.
1444 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1446 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1448 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1450 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1452 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1454 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1456 * testsuite/23_containers/vector/requirements/dr438/
1457 constructor_1_neg.cc: Likewise.
1458 * testsuite/23_containers/vector/requirements/dr438/
1459 constructor_2_neg.cc: Likewise.
1460 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1463 PR libstdc++/58764 (again)
1464 * include/bits/stl_list.h (list): Make default constructor's exception
1465 specification conditional.
1466 * include/bits/stl_vector.h (vector): Likewise.
1467 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
1468 to default constructor.
1469 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1470 Adjust dg-error line number.
1471 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1473 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1475 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1477 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1479 * testsuite/23_containers/vector/requirements/dr438/
1480 constructor_1_neg.cc: Likewise.
1481 * testsuite/23_containers/vector/requirements/dr438/
1482 constructor_2_neg.cc: Likewise.
1483 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1486 2014-01-21 Tim Shen <timshen91@gmail.com>
1488 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
1489 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
1490 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
1492 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
1495 * include/bits/hashtable.h (__cache_default): Do not depend on
1496 whether the hash function is DefaultConstructible or CopyAssignable.
1497 (_Hashtable): Adjust static assertions.
1498 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
1499 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1500 dg-error line number.
1501 * testsuite/23_containers/unordered_set/
1502 not_default_constructible_hash_neg.cc: Remove.
1504 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
1506 * scripts/create_testsuite_files: Add testsuite/experimental in
1507 the list of folders to search for tests.
1508 * include/experimental/string_view
1509 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
1510 incompatible with constexpr qualifier.
1511 (basic_string_view<>::front()): Likewise.
1512 (basic_string_view<>::back()): Likewise.
1513 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
1514 Merge dg-options directives into one.
1515 * testsuite/experimental/string_view/element_access/char/2.cc:
1516 Likewise. Remove invalid experimental namespace scope on
1519 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
1522 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
1523 friendship to _Local_iterator_base<..., false>.
1524 (_Local_iterator_base): Give protected access to all existing members.
1525 (_Local_iterator_base::_M_curr()): New public accessor.
1526 (_Local_iterator_base::_M_get_bucket()): New public accessor.
1527 (_Local_iterator_base<..., false>::_M_init()): New function to manage
1528 the lifetime of the _Hash_code_base explicitly.
1529 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
1530 (_Local_iterator_base<..., false>): Define copy constructor and copy
1531 assignment operator that use new functions to manage _Hash_code_base.
1532 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
1533 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
1534 Use public API for _Local_iterator_base.
1535 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
1536 * include/debug/unordered_map (__debug::unordered_map::erase(),
1537 __debug::unordered_multimap::erase()): Likewise.
1538 * include/debug/unordered_set (__debug::unordered_set::erase(),
1539 __debug::unordered_multiset::erase()): Likewise.
1540 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
1542 2014-01-19 Tim Shen <timshen91@gmail.com>
1544 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
1545 Fix parse error of multiple consecutive quantifiers like "a**".
1546 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
1548 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
1550 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
1552 * include/profile/set.h (set): Implement C++11 allocator-aware
1553 container requirements.
1554 * include/profile/map.h (map): Likewise.
1555 * include/profile/multiset.h (multiset): Likewise.
1556 * include/profile/multimap.h (multimap): Likewise.
1557 * include/profile/set.h
1558 (set::operator=(const set&)): Define as default in C++11 mode.
1559 (set::operator=(set&&)): Likewise.
1560 * include/profile/map.h
1561 (map::operator=(const map&)): Likewise.
1562 (map::operator=(map&&)): Likewise.
1563 * include/profile/multiset.h
1564 (multiset::operator=(const multiset&)): Likewise.
1565 (multiset::operator=(multiset&&)): Likewise.
1566 * include/profile/multimap.h
1567 (multimap::operator=(const multimap&)): Likewise.
1568 (multimap::operator=(multimap&&)): Likewise.
1569 * include/profile/set.h (set::operator=(std::initializer_list<>)):
1570 Rely on the same operator from normal mode.
1571 * include/profile/map.h (map::operator=(std::initializer_list<>)):
1573 * include/profile/multiset.h
1574 (multiset::operator=(std::initializer_list<>)): Likewise.
1575 * include/profile/multimap.h
1576 (multimap::operator=(std::initializer_list<>)): Likewise.
1577 * include/profile/set.h (set::swap(set&)): Add noexcept
1579 * include/profile/map.h (map::swap(map&)): Likewise.
1580 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
1581 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
1583 2014-01-17 Tim Shen <timshen91@gmail.com>
1585 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
1587 * include/bits/regex_automaton.h: Do not use std::set.
1588 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
1589 _BracketMatcher<>::_M_add_collating_element(),
1590 _BracketMatcher<>::_M_add_equivalence_class(),
1591 _BracketMatcher<>::_M_make_range()): Likewise.
1592 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
1594 * include/bits/regex_executor.h: Do not use std::queue.
1595 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
1596 _Executor<>::_M_dfs()): Likewise.
1597 * include/std/regex: Remove <map>, <set> and <queue>.
1599 2014-01-17 Tim Shen <timshen91@gmail.com>
1601 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
1602 basic_regex<>::assign()): Change __compile_nfa to accept
1604 * include/bits/regex_compiler.h: Change _Compiler's template
1605 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
1606 * include/bits/regex_compiler.tcc: Likewise.
1608 2014-01-17 Tim Shen <timshen91@gmail.com>
1610 * include/bits/regex_compiler.h: Change _ScannerT into char-type
1612 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
1613 _ScannerBase from _Scanner; Change _Scanner's template argument from
1614 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
1616 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
1617 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
1618 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
1620 * include/std/regex: Add <cstring> for using strchr.
1622 2014-01-17 Tim Shen <timshen91@gmail.com>
1624 * bits/regex_automaton.tcc: Indentation fix.
1625 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
1626 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
1627 _BracketMatcher<>): Add bool option template parameters and
1628 specializations to make matching more efficient and space saving.
1629 * bits/regex_compiler.tcc: Likewise.
1631 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
1634 * include/bits/hashtable_policy.h: Fix some long lines.
1635 * include/bits/hashtable.h (__hash_code_base_access): Define and
1636 use it to check its _M_bucket_index noexcept qualification. Use
1638 (__access_protected_ctor): ...this.
1639 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1641 * testsuite/23_containers/unordered_set/
1642 not_default_constructible_hash_neg.cc: Likewise.
1644 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
1646 * include/debug/set.h (set): Implement C++11 allocator-aware
1647 container requirements.
1648 * include/debug/map.h (map): Likewise.
1649 * include/debug/multiset.h (multiset): Likewise.
1650 * include/debug/multimap.h (multimap): Likewise.
1651 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
1652 fix implementation regarding management of safe iterators.
1653 * include/debug/map.h (map::operator=(map&&)): Likewise.
1654 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
1655 * include/debug/multimap.h (multimap::operator=(multimap&&)):
1657 * include/debug/set.h (set::operator=(std::initializer_list<>)):
1658 Rely on the same operator from normal mode.
1659 * include/debug/map.h (map::operator=(std::initializer_list<>)):
1661 * include/debug/multiset.h
1662 (multiset::operator=(std::initializer_list<>)): Likewise.
1663 * include/debug/multimap.h
1664 (multimap::operator=(std::initializer_list<>)): Likewise.
1665 * include/debug/set.h (set::swap(set&)): Add noexcept
1666 specification, add allocator equality check.
1667 * include/debug/map.h (map::swap(map&)): Likewise.
1668 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
1669 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
1671 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
1674 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
1675 and stylistic improvements.
1676 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
1677 and update for C++11.
1678 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
1681 * doc/xml/manual/backwards_compatibility.xml
1682 (backwards.third.nocreate_noreplace): Correct and expand.
1685 * doc/xml/manual/support.xml (std.support.types.null): Update links.
1687 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
1690 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
1691 support for non-Movable types.
1694 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
1696 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
1698 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
1699 *this allocator instance when building temporary vector instance
1700 so that *this allocator does not get moved.
1701 * include/debug/safe_base.h
1702 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
1703 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
1704 move constructor from _Safe_sequence_base.
1705 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
1706 safe iterators if the instance is moved.
1707 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
1708 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
1709 check on a vector iterator.
1710 * testsuite/23_containers/vector/allocator/move_assign.cc
1712 (test03): New, test with a non-propagating allocator.
1713 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
1715 2014-01-07 Tim Shen <timshen91@gmail.com>
1717 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
1718 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
1719 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
1720 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
1721 _BracketMatcher<>::_M_add_char(),
1722 _BracketMatcher<>::_M_add_collating_element(),
1723 _BracketMatcher<>::_M_add_equivalence_class(),
1724 _BracketMatcher<>::_M_add_character_class(),
1725 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
1726 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
1727 Fix _AnyMatcher behavior of POSIX style and move _M_flags
1728 to template parameter; Add cache for _BracketMatcher. Adjust
1729 declarations from here...
1730 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
1731 imbuing a regex will trigger a recompilation to rebuild the cache.
1732 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
1733 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
1734 different template bool parameters.
1735 * include/bits/regex_executor.h: Remove unnecessary declarations.
1736 * include/std/regex: Adjust including orders.
1737 * testsuite/28_regex/traits/char/user_defined.cc: New.
1738 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
1740 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1742 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1743 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1744 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1745 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1746 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1748 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1750 Update copyright years
1752 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1754 * testsuite/18_support/new_handler.cc,
1755 testsuite/18_support/terminate_handler.cc,
1756 testsuite/18_support/unexpected_handler.cc: Use the standard form for
1757 the copyright notice.
1759 Copyright (C) 2014 Free Software Foundation, Inc.
1761 Copying and distribution of this file, with or without modification,
1762 are permitted in any medium without royalty provided the copyright
1763 notice and this notice are preserved.