1 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
3 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
6 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
8 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
9 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
10 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
12 * include/ext/alloc_traits.h: Fix comment.
14 * include/Makefile.am: Add new header.
15 * include/Makefile.in: Regenerate.
16 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
17 New RAII utilities for working with allocators.
18 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
19 __allocator_type typedef and use new __allocated_ptr type.
20 (_Sp_counted_ptr_inplace): Likewise.
21 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
22 __allocate_guarded to to simplify exception handling.
23 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
24 * include/std/future (_Result_alloc::_M_destroy): Likewise.
25 (_Result_alloc::_S_allocate_result): Likewise.
26 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
27 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
28 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
29 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
31 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
33 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
35 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
36 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
38 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
40 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
41 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
42 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
43 Remove unused typedef.
44 (time_get::do_get_monthname): Likewise.
45 * include/bits/stl_tree.h: Add system_header pragma.
46 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
47 redundant const-qualifier.
48 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
49 instead of _GLIBCXX_USE_CONSTEXPR.
51 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
53 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
54 * include/std/chrono (_Checked_integral_constant): Allow zero.
55 * testsuite/20_util/duration/literals/values.cc: Test non-positive
56 values and digit separators.
57 * include/experimental/any
60 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
61 apply the signed specifier to wchar_t.
62 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
63 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
64 cv-qualifier and size.
65 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
68 * include/experimental/any (any_v1): Rename namespace to
69 fundamentals_v1. Change string returned by bad_any_cast::what().
70 * include/experimental/optional (fundamentals_v1): Add namespace.
71 * include/experimental/string_view (fundamentals_v1): Likewise.
72 * testsuite/experimental/any/typedefs.cc: New.
73 * testsuite/experimental/optional/typedefs.cc: New.
74 * testsuite/experimental/string_view/typedefs.cc: New.
76 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
77 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
80 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
82 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
84 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
85 * include/Makefile.am: Add new header.
86 * include/Makefile.in: Regenerate.
87 * include/experimental/any: New.
88 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
90 * testsuite/experimental/any/assign/1.cc: New.
91 * testsuite/experimental/any/assign/2.cc: New.
92 * testsuite/experimental/any/cons/1.cc: New.
93 * testsuite/experimental/any/cons/2.cc: New.
94 * testsuite/experimental/any/cons/3.cc: New.
95 * testsuite/experimental/any/misc/any_cast.cc: New.
96 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
97 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
98 * testsuite/experimental/any/misc/swap.cc: New.
99 * testsuite/experimental/any/modifiers/1.cc: New.
100 * testsuite/experimental/any/observers/type.cc: New.
102 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
103 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
105 * include/bits/shared_ptr.h (shared_ptr): Likewise.
106 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
108 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
110 * include/parallel/list_partition.h (__parallel::list_partition):
112 * include/std/iomanip (quoted): Likewise.
113 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
115 * doc/xml/api.xml: Link to more recent API docs.
116 * include/bits/allocator.h: Fix link in doxygen comment.
117 * include/bits/char_traits.h: Likewise.
118 * include/bits/ios_base.h: Likewise.
119 * include/bits/stl_map.h: Likewise.
120 * include/bits/stl_multimap.h: Likewise.
121 * include/bits/stl_multiset.h: Likewise.
122 * include/bits/stl_set.h: Likewise.
123 * include/bits/unordered_map.h: Likewise.
124 * include/bits/unordered_set.h: Likewise.
125 * include/ext/mt_allocator.h: Likewise.
126 * include/std/fstream: Likewise.
127 * include/std/iosfwd: Likewise.
128 * include/std/ostream: Likewise.
129 * include/std/sstream: Likewise.
130 * include/std/streambuf: Likewise.
131 * doc/html/*: Regenerate.
133 * include/experimental/any (any_cast): Combine duplicate doxygen
135 * include/experimental/string_view (basic_string_view): Update
137 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
138 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
139 (dynamic_bitset): Improve Doxygen comments.
140 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
143 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
145 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
146 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
148 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
151 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
152 (bin_search_tree_traits): Do not redeclare template-parameters.
153 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
155 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
157 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
158 parameter for DocBook HTML generation.
159 * doc/Makefile.in: Regenerate.
160 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
161 * doc/xml/faq.xml: Update content and improve formatting.
162 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
163 * doc/xml/manual/allocator.xml: Add stable ID attribute.
164 * doc/xml/manual/bitmap_allocator.xml: Likewise.
165 * doc/xml/manual/build_hacking.xml: Likewise.
166 * doc/xml/manual/codecvt.xml: Change URL.
167 * doc/xml/manual/ctype.xml: Add stable ID attribute.
168 * doc/xml/manual/debug_mode.xml: Likewise.
169 * doc/xml/manual/documentation_hacking.xml: Likewise.
170 * doc/xml/manual/evolution.xml: Likewise.
171 * doc/xml/manual/extensions.xml: Likewise.
172 * doc/xml/manual/locale.xml: Likewise.
173 * doc/xml/manual/messages.xml: Make section id consistent, improve
175 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
176 * doc/xml/manual/profile_mode.xml: Likewise.
177 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
178 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
179 * doc/xml/manual/status_cxx2011.xml: Likewise.
180 * doc/xml/manual/status_cxx2014.xml: Likewise.
181 * doc/xml/manual/status_cxxtr1.xml: Likewise.
182 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
183 * doc/xml/manual/using.xml: Likewise.
184 * doc/html/*: Regenerate.
186 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
188 * include/tr1/beta_function.tcc: Fix spelling of include guard in
191 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
193 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
195 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
197 DR 2344 - std::quoted doesn't respect padding
198 * include/std/iomanip: Allow for padding in quoted inserters.
199 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
200 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
202 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
204 * testsuite/23_containers/map/operators/1.cc: Simplify test.
206 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
208 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
210 * doc/xml/manual/backwards_compatibility.xml
211 (backwards.second.stringstreams): Likewise.
212 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
214 * doc/xml/manual/containers.xml (associative.bitset.type_string):
215 Replace <quote> in code example.
216 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
217 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
218 fix typos, improve markup.
219 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
220 <emphasis> with <replaceable>.
221 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
222 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
223 and remove newlines in string literal.
225 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
229 * testsuite/20_util/is_assignable/value.cc: Update.
231 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
233 * include/std/condition_variable (condition_variable_any::_Unlock): Do
234 not swallow __forced_unwind.
235 * include/std/future (__future_base::_Task_setter): Likewise.
236 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
238 * include/std/mutex (try_lock): Likewise.
239 * testsuite/30_threads/async/forced_unwind.cc: New.
240 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
242 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
243 members to avoid wasted space when not using a cache.
244 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
245 * include/bits/regex_compiler.tcc
246 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
248 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
249 New enumeration type to indicate match mode.
250 (__detail::_Executor::_State_info): New type holding members only
251 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
253 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
254 Replace template parameter with run-time function parameter.
255 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
256 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
257 implement DFS and BFS mode.
258 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
259 Split implementation into ...
260 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
261 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
262 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
263 argument instead of template argument.
264 (__detail::_Executor::_M_dfs): Likewise.
265 * include/bits/regex_scanner.tcc: Fix typos in comments.
266 * testsuite/performance/28_regex/range.cc: New.
268 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
269 Jonathan Wakely <jwakely@redhat.com>
271 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
273 (aligned_union): New struct (C++11).
274 (aligned_union_t): New type alias (C++14).
275 * doc/xml/manual/status_cxx2011.xml: Update.
276 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
277 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
280 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
283 * include/experimental/string_view (operator basic_string): Correct
285 (to_string): Replace with member function.
286 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
287 allow _M_str to be null.
288 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
289 default constructor semantics.
290 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
291 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
292 copyright dates. Remove unused header.
293 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
295 * testsuite/experimental/string_view/operations/data/char/1.cc:
296 Fix copyright dates. Adjust to new default constructor semantics.
297 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
299 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
301 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
302 (__uses_allocator_arg): Remove unused type.
303 (__uses_alloc0): Turn into a trivial type.
304 (__uses_alloc): Add missing template parameter in primary template.
305 (__uses_alloc_impl): Rename to __uses_alloc_t.
307 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
309 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
310 work with previous versions of Tcl.
312 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
313 Benjamin's old email address.
315 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
318 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
320 * include/tr2/bool_set: Use UTF-8 for accented characters.
321 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
322 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
323 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
325 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
328 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
330 (_State_base::_M_dot): Likewise.
332 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
334 * include/profile/map.h: Fix typo in comment; minor formatting fix.
335 * include/profile/multimap.h: Likewise.
336 * include/profile/set.h: Likewise.
337 * include/profile/multiset.h: Likewise.
339 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
341 * include/profile/array: Clean useless white chars.
342 * include/profile/base.h: Likewise.
343 * include/profile/iterator_tracker.h: Likewise.
344 * include/profile/bitset: Code cleanup and remove not instrumented code.
345 * include/profile/deque: Likewise.
346 * include/profile/forward_list: Likewise.
347 * include/profile/list (std::__profile::_List_profile<>): New.
348 (std::__profile::list<>): Inherit from latter and adapt.
349 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
350 advise to match any ordered to unordered container conversion.
351 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
353 * include/Makefile.am: Add latter.
354 * include/Makefile.in: Regenerate.
355 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
356 remove not instrumented code.
357 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
358 * include/profile/set.h (std::__profile::set<>): Likewise.
359 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
360 * include/profile/unordered_base.h: Add some line feed.
361 * include/profile/unordered_map: Clean useless white chars and replace
363 * include/profile/unordered_set: Likewise.
364 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
365 (std::__profile::_Vector_profile_post<>): New.
366 (std::__profile::vector<>): Inherit from latter and adapt.
368 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
371 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
372 dragonfly target selector to all tests that run on freebsd.
374 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
376 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
377 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
379 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
381 * testsuite/30_threads/call_once/60497.cc: Likewise.
382 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
383 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
384 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
385 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
386 * testsuite/30_threads/promise/60966.cc: Likewise.
387 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
388 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
389 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
390 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
391 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
392 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
393 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
394 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
395 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
396 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
397 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
398 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
399 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
400 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
401 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
402 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
403 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
405 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
408 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
410 * testsuite/23_containers/unordered_set/61143.cc: New.
411 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
413 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
416 * include/std/type_traits: Move include outside namespace std.
417 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
418 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
419 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
422 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
425 2014-05-21 John Marino <gnugcc@marino.st>
427 * acinclude.m4 (*-*-dragonfly*): New target.
428 * configure: Regenerate.
429 * configure.host (*-*-dragonfly*): New target.
430 * config/locale/dragonfly/c_locale.cc: New.
431 * config/locale/dragonfly/ctype_members.cc: New.
432 * config/os/bsd/dragonfly/ctype_base.h: New.
433 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
434 * config/os/bsd/dragonfly/ctype_inline.h: New.
435 * config/os/bsd/dragonfly/os_defines.h: New.
437 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
439 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
440 libstdc++.exp imports those flags via getenv.
441 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
442 CXXFLAGS contains a '-O' flag.
444 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
448 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
451 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
452 and add unwind directives.
454 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
456 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
458 2014-05-20 Tim Shen <timshen91@gmail.com>
461 * include/bits/regex_compiler.h
462 (_BracketMatcher<>::_M_add_character_class): Add negative character
464 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
466 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
469 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
471 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
473 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
475 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
476 * libsupc++/new_opnt.cc: Likewise.
478 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
481 * include/std/future (__future_base::_State_baseV2::_M_set_result):
482 Pass lock into _M_do_set and hold it until the function returns.
483 Signal condition variable after call_once completes.
484 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
486 * testsuite/30_threads/promise/60966.cc: New.
488 2014-05-16 Iain Sandoe <iain@codesourcery.com>
489 Sandra Loosemore <sandra@codesourcery.com>
491 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
492 until after checking that the test is eligible to be run.
494 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
496 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
497 test for 32-bit target.
498 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
500 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
503 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
506 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
507 and add unwind directives.
509 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
511 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
513 * include/std/chrono (chrono_literals::__select_type::_Select_type):
515 (chrono_literals::_Checked_integral_constant): Define.
516 Simplify UDL operator templates and check for overflow.
517 * testsuite/20_util/duration/literals/range.cc: New.
519 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
520 Jonathan Wakely <jwakely@redhat.com>
523 * include/bits/parse_numbers.h: Use integral_constant to remove
524 duplication and simplify.
525 * testsuite/20_util/duration/literals/61166.cc: New.
527 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
530 * include/std/type_traits (__make_unsigned, __make_signed): Define
531 specializations for wchar_t, char16_t and char32_t.
532 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
533 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
534 test for make_unsigned<volatile wchar_t>.
535 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
537 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
539 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
541 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
544 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
546 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
547 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
548 * include/std/utility (tuple_size, tuple_element): Likewise.
549 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
550 Adjust dg-error line number.
552 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
554 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
555 (__tuple_element_t): Define.
556 (tuple_element): Use __tuple_element_t.
557 (__cv_tuple_size): Define.
558 (tuple_size<cv _Tp>): Use __cv_tuple_size.
559 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
560 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
561 (__tuple_compare): Remove size check, re-order parameters.
562 (operator==, operator<): Use static_assert to check requirements.
563 * include/std/functional (__volget): use __tuple_element_t.
564 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
565 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
567 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
570 * include/std/tuple (get, __tuple_compare): Qualify more calls to
571 prevent ADL. Cast comparison results to bool.
572 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
573 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
576 * include/debug/array (get): Qualify call to other get overload.
577 * include/profile/array (get): Likewise.
578 * include/std/array (get): Likewise.
579 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
580 * include/std/mutex (unique_lock, call_once): Use __addressof.
581 (__unlock_impl): Remove unused template.
582 (__try_to_lock): Declare inline.
583 (__try_lock_impl::__do_try_lock): Qualify function calls.
584 (lock): Avoid narrowing conversion.
585 * testsuite/20_util/bind/60497.cc: New.
586 * testsuite/23_containers/array/element_access/60497.cc: New.
587 * testsuite/30_threads/call_once/60497.cc: New.
588 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
590 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
592 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
593 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
594 * acinclude.m4 (libtool_VERSION): Bump.
595 * configure: Regenerate.
596 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
597 * testsuite/28_regex/regex_error/base.cc: New.
599 2014-05-08 Joshua Gay <jgay@gnu.org>
602 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
603 source" with "free software".
604 * doc/html/faq.html: Likewise.
606 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
609 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
611 (operator=(const ios_base&)): Likewise.
612 * include/std/streambuf: Remove trailing whitespace.
613 (basic_streambuf(const basic_streambuf&)): Fix initializer for
614 _M_out_end. Define as defaulted for C++11.
615 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
616 (swap(basic_streambuf&)): Define for C++11.
617 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
620 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
622 * include/std/iostream: Fix URL in comment.
623 * src/c++98/ios_init.cc: Fix path in comment.
625 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
627 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
628 * configure: Regenerate.
630 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
633 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
635 * testsuite/23_containers/set/cons/61023.cc: New.
638 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
640 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
641 arithmetic to obtain a mutable iterator from const_iterator.
642 * include/bits/vector.tcc (vector::insert): Likewise.
643 * include/debug/vector (vector::erase): Likewise.
644 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
645 Adjust dg-error line number.
646 * testsuite/23_containers/vector/requirements/dr438/
647 constructor_1_neg.cc: Likewise.
648 * testsuite/23_containers/vector/requirements/dr438/
649 constructor_2_neg.cc: Likewise.
650 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
653 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
655 * include/Makefile.in: Regenerate.
657 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
659 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
660 parameter to pass the 2 instances to check allocator equality.
661 * include/debug/safe_container.h: New, define _Safe_container<>.
662 * include/Makefile.am: Add previous.
663 * include/debug/deque (std::__debug::deque<>): Inherit
664 _Safe_container<>. Use default implementation for all special
666 * include/debug/forward_list (std::__debug::forward_list<>):
668 * include/debug/list (std::__debug::list<>): Likewise.
669 * include/debug/map.h (std::__debug::map<>): Likewise.
670 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
671 * include/debug/set.h (std::__debug::set<>): Likewise.
672 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
673 * include/debug/string (std::__debug::basic_string<>): Likewise.
674 * include/debug/unordered_map
675 (std::__debug::unordered_map<>): Likewise.
676 (std::__debug::unordered_multimap<>): Likewise.
677 * include/debug/unordered_set
678 (std::__debug::unordered_set<>): Likewise.
679 (std::__debug::unordered_multiset<>): Likewise.
680 * include/debug/vector (std::__debug::vector<>): Likewise.
681 * include/debug/safe_base.h (_Safe_sequence_base()): Add
683 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
684 (~_Safe_sequence_base()): Add noexcept.
685 * include/debug/safe_sequence.h
686 (std::__debug::_Safe_node_sequence<>): New.
687 * include/debug/safe_unordered_base.h
688 (_Safe_unordered_container_base()): Add noexcept.
689 (~_Safe_unordered_container_base()): Likewise.
690 (_M_swap(_Safe_unordered_container_base&)): Likewise.
691 * include/debug/safe_unordered_container.h:
692 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
693 (_Safe_unordered_container<>::_M_invalidate_all()): New.
694 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
696 * testsuite/util/debug/checks.h (check_construct1): Just implement
697 an invalid constructor invocation and no other operations
698 potentially not supported by some types of container.
699 (check_construct2): Likewise.
700 (check_construct3): Likewise.
701 * testsuite/23_containers/forward_list/allocator/move.cc: Add
702 check on iterators to make sure they are correctly moved in debug
704 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
706 * testsuite/23_containers/map/allocator/move.cc: Likewise.
707 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
708 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
709 * testsuite/23_containers/multimap/allocator/move_assign.cc:
711 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
712 * testsuite/23_containers/multiset/allocator/move_assign.cc:
714 * testsuite/23_containers/set/allocator/move.cc: Likewise.
715 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
716 * testsuite/23_containers/unordered_map/allocator/move.cc:
718 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
720 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
722 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
724 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
726 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
728 * testsuite/23_containers/unordered_set/allocator/move.cc:
730 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
732 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
734 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
736 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
738 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
740 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
742 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
743 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
744 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
745 * testsuite/23_containers/map/debug/move_neg.cc: New.
746 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
747 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
748 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
749 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
750 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
751 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
752 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
753 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
754 * testsuite/23_containers/set/debug/move_neg.cc: New.
755 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
757 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
759 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
760 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
762 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
764 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
766 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
768 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
770 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
772 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
774 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
776 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
777 * testsuite/23_containers/vector/debug/move_neg.cc: New.
779 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
781 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
782 (CXXABI_1.3.9): Remove __float128 symbols.
784 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
787 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
788 function to handle both C++03 and C++11 _Rb_tree_node implementations.
789 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
790 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
792 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
795 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
796 Check the correct type in the static assertion.
797 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
799 2014-04-27 Tim Shen <timshen91@gmail.com>
801 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
802 Add _S_opcode_repeat support to distingush a loop from
803 _S_opcode_alternative.
804 * include/bits/regex_automaton.tcc (_State_base::_M_print,
805 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
806 _StateSeq<>::_M_clone): Likewise.
807 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
809 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
810 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
811 Uglify local variable __i.
812 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
813 Use size_t instead of int to compare with vector::size().
815 2014-04-27 Tim Shen <timshen91@gmail.com>
817 * include/bits/regex_executor.h: Add _M_rep_count to track how
818 many times this repeat node are visited.
819 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
820 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
823 2014-04-27 Tim Shen <timshen91@gmail.com>
825 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
826 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
827 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
828 * include/bits/regex_automaton.h: Remove quantifier counting variable.
829 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
830 Adjust debug NFA dump.
832 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
835 * include/experimental/optional (operator!=): Implement in terms of
837 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
838 * testsuite/experimental/optional/relops/2.cc: Likewise.
839 * testsuite/experimental/optional/relops/3.cc: Likewise.
840 * testsuite/experimental/optional/relops/4.cc: Likewise.
841 * testsuite/experimental/optional/relops/5.cc: Likewise.
842 * testsuite/experimental/optional/relops/6.cc: Likewise.
844 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
847 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
848 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
851 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
853 * testsuite/util/testsuite_abi.cc (check_version): Update for
856 2014-04-24 Tim Shen <timshen91@gmail.com>
858 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
859 Do _M_alt before _M_next.
860 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
862 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
865 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
866 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
867 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
869 2014-04-24 Andreas Schwab <schwab@suse.de>
871 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
872 new CXXABI_1.3.9 symbols.
874 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
876 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
877 (CXXABI_1.3.9): New version.
879 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
882 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
883 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
884 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
886 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
888 * configure.host: Remove solaris2.9 handling.
889 Change os_include_dir to os/solaris/solaris2.10.
890 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
891 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
892 * configure: Regenerate.
893 * config/abi/post/solaris2.9: Remove.
894 * config/os/solaris/solaris2.9: Rename to ...
895 * config/os/solaris/solaris2.10: ... this.
896 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
899 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
900 Remove Solaris 9 reference.
901 * doc/html/manual/configure.html: Regenerate.
903 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
904 Remove *-*-solaris2.9 xfail.
905 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
908 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
911 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
913 * include/std/functional (__is_location_invariant): Use __or_ helper.
915 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
918 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
921 * include/std/atomic (atomic<_Tp>): Add static assertion.
922 * testsuite/29_atomics/atomic/60695.cc: New.
925 * include/std/functional (function::_Callable): Exclude own type
926 from the callable checks.
927 * testsuite/20_util/function/60594.cc: New.
929 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
930 const to constexpr member functions.
932 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
933 delegating constructor.
934 * include/bits/shared_ptr_base.h
935 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
937 * include/std/atomic: Uglify parameter names.
940 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
941 1.cc: Fix invalid explicit instantiations with unqualified names.
942 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
944 * testsuite/20_util/tuple/53648.cc: Likweise.
945 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
947 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
949 * testsuite/23_containers/unordered_map/requirements/
950 debug_container.cc: Likewise.
951 * testsuite/23_containers/unordered_map/requirements/
952 explicit_instantiation/3.cc: Likewise.
953 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
955 * testsuite/23_containers/unordered_multimap/requirements/
956 explicit_instantiation/3.cc: Likewise.
957 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
959 * testsuite/23_containers/unordered_multiset/requirements/
960 explicit_instantiation/3.cc: Likewise.
961 * testsuite/23_containers/unordered_set/requirements/
962 debug_container.cc: Likewise.
963 * testsuite/23_containers/unordered_set/requirements/
964 explicit_instantiation/3.cc: Likewise.
966 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
967 not use uninitialized members in mem-initializers.
968 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
969 * testsuite/util/testsuite_common_types.h: Update comment.
971 * include/experimental/string_view: Fix inconsistent exception specs.
973 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
974 Remove name of unused parameter.
976 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
978 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
979 _Vector_base::_M_allocate): NullablePointer requirements do not
980 include initialization from literal zero, use value-initialization.
981 * include/bits/vector.tcc (vector::_M_insert_aux,
982 vector::_M_explace_back_aux): Likewise for assignment.
984 * include/bits/allocator.h (operator==, operator!=): Add exception
988 * include/std/tuple (get): Qualify calls to prevent ADL.
989 * testsuite/20_util/tuple/60497.cc: New.
991 * include/std/tuple (tuple_element_t): Define.
992 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
994 * testsuite/20_util/tuple/tuple_element_t.cc: New.
996 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
999 * include/bits/stl_iterator.h (move_iterator::reference,
1000 move_iterator::operator*): Implement LWG 2106.
1001 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1003 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1005 * include/std/complex (__complex_exp, pow): Specify the template
1006 parameter in calls to std::polar, for expression templates.
1008 2014-04-10 Andreas Schwab <schwab@suse.de>
1010 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1012 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1013 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1015 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1017 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1019 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1020 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1021 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1024 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1025 Jack Howarth <howarth@bromo.med.uc.edu>
1028 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1031 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1033 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1035 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1037 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1038 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1039 * doc/xml/manual/concurrency_extensions.xml
1040 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1041 * doc/html/*: Regenerate.
1043 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1044 Jonathan Wakely <jwakely@redhat.com>
1047 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1048 string if input is not quoted.
1049 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1051 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1053 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1055 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1057 * testsuite/18_support/exception_ptr/60612-terminate.cc
1058 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1059 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1061 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1063 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1065 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1066 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1068 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1070 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1072 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1073 Fix bad s/part/chapter/ substitutions.
1074 * doc/xml/manual/io.xml (std.io): Likewise.
1075 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1076 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1078 * doc/html/*: Regenerate.
1080 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1083 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1084 compatible with __cxa_exception.
1085 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1086 Fix typos in comments.
1087 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1088 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1090 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1093 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1094 Use sizeof pointer type not the element type.
1095 * testsuite/29_atomics/atomic/60658.cc: New.
1097 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1099 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1100 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1101 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1102 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1103 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1104 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1105 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1106 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1107 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1108 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1111 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1113 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1115 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1117 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1118 to delegated constructor.
1119 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1120 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1123 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1125 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1128 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1130 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1133 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1134 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1136 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1137 from different types of debug container. Use _Is_contiguous_sequence
1138 instead of is_lvalue_reference.
1139 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1140 dereferencing past-the-end iterator.
1141 (__foreign_iterator_aux4): Use const value_type* instead of
1142 potentially user-defined const_pointer type.
1143 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1144 and pass end iterator to __gnu_debug::__foreign_iterator.
1145 (__glibcxx_check_insert_range_after): Likewise.
1146 (__glibcxx_check_max_load_factor): Fix comment.
1147 * include/debug/vector (_Is_contiguous_sequence): Define partial
1149 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1150 -std=gnu++11 option and unused header.
1151 * testsuite/23_containers/vector/debug/60587.cc: New.
1152 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1154 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1156 * crossconfig.m4: Support spu-*-elf* targets.
1157 * configure: Regenerate.
1159 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1162 * include/std/future (__future_base::_Task_state<>): Change
1163 constructors to template functions using perfect forwarding.
1164 (__create_task_state): Use decayed type as stored task.
1165 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1166 * testsuite/30_threads/packaged_task/60564.cc: New.
1168 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1170 * scripts/create_testsuite_files: Add testsuite/experimental in
1171 the list of folders to search for tests.
1173 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1175 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1177 2014-03-15 Tim Shen <timshen91@gmail.com>
1179 * include/bits/regex.h: Add/modify comments.
1180 * include/bits/regex_compiler.h: Likewise.
1181 * include/bits/regex_executor.h: Likewise.
1182 * include/bits/regex_executor.tcc: Likewise.
1183 * include/bits/regex_scanner.h: Likewise.
1185 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
1188 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
1189 _ZNSt12system_errorC* symbols which are not exported on any target.
1191 2014-03-12 Roland McGrath <mcgrathr@google.com>
1192 Mark Seaborn <mseaborn@google.com>
1195 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
1196 the address of a null pointer, not with a null pointer to pointer.
1197 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
1198 * testsuite/18_support/bad_exception/59392.cc: New file.
1200 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
1203 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
1205 * include/debug/map (map::operator=(map&&)): Likewise.
1206 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
1207 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
1208 * include/debug/set (set::operator=(set&&)): Likewise.
1209 * include/debug/unordered_map
1210 (unordered_map::operator=(unordered_map&&)): Likewise.
1211 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
1212 * include/debug/unordered_set
1213 (unordered_set::operator=(unordered_set&&)): Likewise.
1214 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
1215 * include/debug/vector (vector::operator=(vector&&)): Likewise.
1216 * testsuite/23_containers/forward_list/debug/60499.cc: New
1217 * testsuite/23_containers/map/debug/60499.cc: New
1218 * testsuite/23_containers/multimap/debug/60499.cc: New
1219 * testsuite/23_containers/multiset/debug/60499.cc: New
1220 * testsuite/23_containers/set/debug/60499.cc: New
1221 * testsuite/23_containers/unordered_map/debug/60499.cc: New
1222 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
1223 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
1224 * testsuite/23_containers/unordered_set/debug/60499.cc: New
1225 * testsuite/23_containers/vector/debug/60499.cc: New
1227 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
1229 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
1230 for filesystem and fundamentals TS work items.
1232 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
1235 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
1236 Adjust dg-error directives.
1238 2014-02-26 Tim Shen <timshen91@gmail.com>
1240 * include/bits/regex.tcc (match_results<>::format,
1241 regex_replace<>): Update __out after calling std::copy.
1242 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
1244 * testsuite/28_regex/match_results/format.cc: Likewise.
1246 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
1249 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
1250 allocator_type&)): Remove redundant call to _M_initialize_map.
1251 (deque::deque(const allocator_type&)): Initialize _Base with a
1252 constructor that calls _M_initialize_map.
1256 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
1258 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
1261 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
1263 Rename testsuite directory shared_mutex to shared_timed_mutex
1265 * testsuite/30_threads/shared_mutex: Moved to...
1266 * testsuite/30_threads/shared_timed_mutex: ...here
1268 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
1270 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
1271 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
1272 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
1273 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
1274 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
1275 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
1276 * testsuite/30_threads/shared_lock/requirements/
1277 explicit_instantiation.cc: Ditto.
1278 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
1279 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
1280 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
1281 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
1282 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
1283 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
1284 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
1285 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
1286 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
1287 * testsuite/30_threads/shared_mutex/requirements/
1288 standard_layout.cc: Ditto.
1289 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
1290 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
1291 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
1292 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
1293 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
1295 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1297 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
1298 execution on i?86-*-solaris2.9, remove comment.
1299 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1301 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
1303 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
1304 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
1305 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
1307 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
1309 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
1310 not use varargs when argument could be non-POD.
1311 (__alloctr_rebind_helper): Eliminate static const bool member by
1312 using true_type and false_type.
1313 (allocator_traits::__allocate_helper): Likewise.
1314 (allocator_traits::__construct_helper): Likewise.
1315 (allocator_traits::__destroy_helper): Likewise.
1316 (allocator_traits::__maxsize_helper): Likewise.
1317 (allocator_traits::__select_helper): Likewise.
1318 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
1319 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
1320 Remove redundant condition.
1321 * include/bits/stl_vector.h (vector::operator=(const vector&)):
1323 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
1324 indirection through __alloc_traits.
1325 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1326 Eliminate static const bool members by using true_type and false_type.
1327 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
1328 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
1329 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
1331 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
1334 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
1335 (vector::_M_data_ptr): New overloaded functions to ensure empty
1336 vectors do not dereference the pointer.
1337 * testsuite/23_containers/vector/59829.cc: New.
1338 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1339 Adjust dg-error line number.
1340 * testsuite/23_containers/vector/requirements/dr438/
1341 constructor_1_neg.cc: Likewise.
1342 * testsuite/23_containers/vector/requirements/dr438/
1343 constructor_2_neg.cc: Likewise.
1344 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1348 * include/ext/array_allocator.h: Add deprecated attribute.
1351 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
1352 installation and use of python printers.
1353 * doc/xml/manual/status_cxx2011.xml: Update.
1354 * doc/html/*: Regenerate.
1356 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
1357 Kyle Lippincott <spectral@google.com>
1360 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
1361 constructor and grant friendship to weak_ptr.
1362 (weak_ptr::lock()): Use new constructor.
1363 * include/bits/shared_ptr_base.h
1364 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
1365 and define specializations.
1366 (__shared_count): Add new non-throwing constructor.
1367 (__shared_ptr): Add new non-throwing constructor and grant friendship
1369 (__weak_ptr::lock()): Use new constructor.
1370 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
1371 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1373 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
1376 * include/bits/shared_ptr_base.h
1377 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
1380 2014-01-27 Jason Merrill <jason@redhat.com>
1385 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
1386 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
1387 (__cxa_allocate_exception): Don't set it here.
1389 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
1391 * include/bits/stl_map.h: Remove anachronistic comment.
1392 * include/bits/stl_multimap.h: Add whitespace.
1393 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
1394 -std=gnu++11 instead of -std=c++11.
1395 * testsuite/23_containers/map/operators/2.cc: Likewise.
1396 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
1397 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
1398 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
1400 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
1401 * configure: Regenerate.
1403 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1406 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
1407 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
1409 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1410 Peter A. Bigot <pab@pabigot.com>
1413 * include/experimental/string_view
1414 (copy(_CharT*, size_type, size_type) const): Correct throw string.
1415 Correct copy start location.
1417 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1418 Peter A. Bigot <pab@pabigot.com>
1421 * include/experimental/string_view (operator[](size_type) const):
1422 Fix one-off index error in debug check.
1423 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
1424 test basic_string_view at size().
1425 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
1427 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1428 Peter A. Bigot <pab@pabigot.com>
1431 * include/experimental/string_view
1432 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
1433 * testsuite/experimental/string_view/operations/substr/char/1.cc:
1434 Comment out catch of out_of_range; No terminating null
1435 in basic_string_view. Check begin == end.
1436 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
1439 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
1442 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
1443 constructor to prevent it being implicitly defined as deleted, but
1444 do not copy anything.
1445 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
1446 Define copy and move constructors similar to _Safe_sequence_base's.
1447 * testsuite/23_containers/unordered_map/59548.cc: New.
1449 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
1450 Steve Ellcey <sellcey@mips.com>
1452 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
1454 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
1455 * (configure, config.h.in): Regenerate.
1456 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
1458 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
1460 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
1461 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
1464 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
1465 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
1467 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
1469 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
1470 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
1471 functions to perform moving or copying of elements from rvalue tree.
1472 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
1473 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
1474 * testsuite/23_containers/map/59872.cc: New.
1475 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
1477 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
1479 * include/bits/stl_deque.h (_Deque_impl): Move comment.
1482 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
1483 Split into separate default constructor and constructor taking
1485 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
1486 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
1488 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
1489 * include/debug/list (list::list(const _Allocator&)): Likewise.
1490 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
1492 * include/debug/multimap.h
1493 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1494 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
1496 * include/debug/multiset.h
1497 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1498 * include/debug/vector (vector::vector(const allocator_type&)):
1500 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
1501 * include/profile/list (list::list(const _Allocator&)): Likewise.
1502 * include/profile/map.h
1503 (map::map(const _Compare&, const _Allocator&)): Likewise.
1504 * include/profile/multimap.h
1505 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1506 * include/profile/set.h
1507 (set::set(const _Compare&, const _Allocator&)): Likewise.
1508 * include/profile/multiset.h
1509 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1510 * include/profile/vector (vector::vector(const _Allocator&)):
1512 * testsuite/23_containers/deque/58764.cc: New.
1513 * testsuite/23_containers/list/58764.cc: New.
1514 * testsuite/23_containers/map/58764.cc: New.
1515 * testsuite/23_containers/multimap/58764.cc: New.
1516 * testsuite/23_containers/set/58764.cc: New.
1517 * testsuite/23_containers/multiset/58764.cc: New.
1518 * testsuite/23_containers/vector/58764.cc: New.
1519 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1520 Adjust dg-error line number.
1521 * testsuite/23_containers/deque/requirements/dr438/
1522 constructor_1_neg.cc: Likewise.
1523 * testsuite/23_containers/deque/requirements/dr438/
1524 constructor_2_neg.cc: Likewise.
1525 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1527 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1529 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1531 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1533 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1535 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1537 * testsuite/23_containers/vector/requirements/dr438/
1538 constructor_1_neg.cc: Likewise.
1539 * testsuite/23_containers/vector/requirements/dr438/
1540 constructor_2_neg.cc: Likewise.
1541 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1544 PR libstdc++/58764 (again)
1545 * include/bits/stl_list.h (list): Make default constructor's exception
1546 specification conditional.
1547 * include/bits/stl_vector.h (vector): Likewise.
1548 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
1549 to default constructor.
1550 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1551 Adjust dg-error line number.
1552 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1554 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1556 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1558 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1560 * testsuite/23_containers/vector/requirements/dr438/
1561 constructor_1_neg.cc: Likewise.
1562 * testsuite/23_containers/vector/requirements/dr438/
1563 constructor_2_neg.cc: Likewise.
1564 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1567 2014-01-21 Tim Shen <timshen91@gmail.com>
1569 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
1570 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
1571 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
1573 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
1576 * include/bits/hashtable.h (__cache_default): Do not depend on
1577 whether the hash function is DefaultConstructible or CopyAssignable.
1578 (_Hashtable): Adjust static assertions.
1579 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
1580 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1581 dg-error line number.
1582 * testsuite/23_containers/unordered_set/
1583 not_default_constructible_hash_neg.cc: Remove.
1585 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
1587 * scripts/create_testsuite_files: Add testsuite/experimental in
1588 the list of folders to search for tests.
1589 * include/experimental/string_view
1590 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
1591 incompatible with constexpr qualifier.
1592 (basic_string_view<>::front()): Likewise.
1593 (basic_string_view<>::back()): Likewise.
1594 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
1595 Merge dg-options directives into one.
1596 * testsuite/experimental/string_view/element_access/char/2.cc:
1597 Likewise. Remove invalid experimental namespace scope on
1600 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
1603 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
1604 friendship to _Local_iterator_base<..., false>.
1605 (_Local_iterator_base): Give protected access to all existing members.
1606 (_Local_iterator_base::_M_curr()): New public accessor.
1607 (_Local_iterator_base::_M_get_bucket()): New public accessor.
1608 (_Local_iterator_base<..., false>::_M_init()): New function to manage
1609 the lifetime of the _Hash_code_base explicitly.
1610 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
1611 (_Local_iterator_base<..., false>): Define copy constructor and copy
1612 assignment operator that use new functions to manage _Hash_code_base.
1613 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
1614 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
1615 Use public API for _Local_iterator_base.
1616 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
1617 * include/debug/unordered_map (__debug::unordered_map::erase(),
1618 __debug::unordered_multimap::erase()): Likewise.
1619 * include/debug/unordered_set (__debug::unordered_set::erase(),
1620 __debug::unordered_multiset::erase()): Likewise.
1621 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
1623 2014-01-19 Tim Shen <timshen91@gmail.com>
1625 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
1626 Fix parse error of multiple consecutive quantifiers like "a**".
1627 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
1629 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
1631 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
1633 * include/profile/set.h (set): Implement C++11 allocator-aware
1634 container requirements.
1635 * include/profile/map.h (map): Likewise.
1636 * include/profile/multiset.h (multiset): Likewise.
1637 * include/profile/multimap.h (multimap): Likewise.
1638 * include/profile/set.h
1639 (set::operator=(const set&)): Define as default in C++11 mode.
1640 (set::operator=(set&&)): Likewise.
1641 * include/profile/map.h
1642 (map::operator=(const map&)): Likewise.
1643 (map::operator=(map&&)): Likewise.
1644 * include/profile/multiset.h
1645 (multiset::operator=(const multiset&)): Likewise.
1646 (multiset::operator=(multiset&&)): Likewise.
1647 * include/profile/multimap.h
1648 (multimap::operator=(const multimap&)): Likewise.
1649 (multimap::operator=(multimap&&)): Likewise.
1650 * include/profile/set.h (set::operator=(std::initializer_list<>)):
1651 Rely on the same operator from normal mode.
1652 * include/profile/map.h (map::operator=(std::initializer_list<>)):
1654 * include/profile/multiset.h
1655 (multiset::operator=(std::initializer_list<>)): Likewise.
1656 * include/profile/multimap.h
1657 (multimap::operator=(std::initializer_list<>)): Likewise.
1658 * include/profile/set.h (set::swap(set&)): Add noexcept
1660 * include/profile/map.h (map::swap(map&)): Likewise.
1661 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
1662 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
1664 2014-01-17 Tim Shen <timshen91@gmail.com>
1666 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
1668 * include/bits/regex_automaton.h: Do not use std::set.
1669 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
1670 _BracketMatcher<>::_M_add_collating_element(),
1671 _BracketMatcher<>::_M_add_equivalence_class(),
1672 _BracketMatcher<>::_M_make_range()): Likewise.
1673 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
1675 * include/bits/regex_executor.h: Do not use std::queue.
1676 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
1677 _Executor<>::_M_dfs()): Likewise.
1678 * include/std/regex: Remove <map>, <set> and <queue>.
1680 2014-01-17 Tim Shen <timshen91@gmail.com>
1682 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
1683 basic_regex<>::assign()): Change __compile_nfa to accept
1685 * include/bits/regex_compiler.h: Change _Compiler's template
1686 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
1687 * include/bits/regex_compiler.tcc: Likewise.
1689 2014-01-17 Tim Shen <timshen91@gmail.com>
1691 * include/bits/regex_compiler.h: Change _ScannerT into char-type
1693 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
1694 _ScannerBase from _Scanner; Change _Scanner's template argument from
1695 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
1697 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
1698 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
1699 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
1701 * include/std/regex: Add <cstring> for using strchr.
1703 2014-01-17 Tim Shen <timshen91@gmail.com>
1705 * bits/regex_automaton.tcc: Indentation fix.
1706 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
1707 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
1708 _BracketMatcher<>): Add bool option template parameters and
1709 specializations to make matching more efficient and space saving.
1710 * bits/regex_compiler.tcc: Likewise.
1712 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
1715 * include/bits/hashtable_policy.h: Fix some long lines.
1716 * include/bits/hashtable.h (__hash_code_base_access): Define and
1717 use it to check its _M_bucket_index noexcept qualification. Use
1719 (__access_protected_ctor): ...this.
1720 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1722 * testsuite/23_containers/unordered_set/
1723 not_default_constructible_hash_neg.cc: Likewise.
1725 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
1727 * include/debug/set.h (set): Implement C++11 allocator-aware
1728 container requirements.
1729 * include/debug/map.h (map): Likewise.
1730 * include/debug/multiset.h (multiset): Likewise.
1731 * include/debug/multimap.h (multimap): Likewise.
1732 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
1733 fix implementation regarding management of safe iterators.
1734 * include/debug/map.h (map::operator=(map&&)): Likewise.
1735 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
1736 * include/debug/multimap.h (multimap::operator=(multimap&&)):
1738 * include/debug/set.h (set::operator=(std::initializer_list<>)):
1739 Rely on the same operator from normal mode.
1740 * include/debug/map.h (map::operator=(std::initializer_list<>)):
1742 * include/debug/multiset.h
1743 (multiset::operator=(std::initializer_list<>)): Likewise.
1744 * include/debug/multimap.h
1745 (multimap::operator=(std::initializer_list<>)): Likewise.
1746 * include/debug/set.h (set::swap(set&)): Add noexcept
1747 specification, add allocator equality check.
1748 * include/debug/map.h (map::swap(map&)): Likewise.
1749 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
1750 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
1752 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
1755 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
1756 and stylistic improvements.
1757 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
1758 and update for C++11.
1759 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
1762 * doc/xml/manual/backwards_compatibility.xml
1763 (backwards.third.nocreate_noreplace): Correct and expand.
1766 * doc/xml/manual/support.xml (std.support.types.null): Update links.
1768 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
1771 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
1772 support for non-Movable types.
1775 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
1777 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
1779 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
1780 *this allocator instance when building temporary vector instance
1781 so that *this allocator does not get moved.
1782 * include/debug/safe_base.h
1783 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
1784 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
1785 move constructor from _Safe_sequence_base.
1786 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
1787 safe iterators if the instance is moved.
1788 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
1789 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
1790 check on a vector iterator.
1791 * testsuite/23_containers/vector/allocator/move_assign.cc
1793 (test03): New, test with a non-propagating allocator.
1794 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
1796 2014-01-07 Tim Shen <timshen91@gmail.com>
1798 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
1799 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
1800 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
1801 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
1802 _BracketMatcher<>::_M_add_char(),
1803 _BracketMatcher<>::_M_add_collating_element(),
1804 _BracketMatcher<>::_M_add_equivalence_class(),
1805 _BracketMatcher<>::_M_add_character_class(),
1806 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
1807 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
1808 Fix _AnyMatcher behavior of POSIX style and move _M_flags
1809 to template parameter; Add cache for _BracketMatcher. Adjust
1810 declarations from here...
1811 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
1812 imbuing a regex will trigger a recompilation to rebuild the cache.
1813 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
1814 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
1815 different template bool parameters.
1816 * include/bits/regex_executor.h: Remove unnecessary declarations.
1817 * include/std/regex: Adjust including orders.
1818 * testsuite/28_regex/traits/char/user_defined.cc: New.
1819 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
1821 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1823 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1824 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1825 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1826 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1827 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1829 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1831 Update copyright years
1833 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1835 * testsuite/18_support/new_handler.cc,
1836 testsuite/18_support/terminate_handler.cc,
1837 testsuite/18_support/unexpected_handler.cc: Use the standard form for
1838 the copyright notice.
1840 Copyright (C) 2014 Free Software Foundation, Inc.
1842 Copying and distribution of this file, with or without modification,
1843 are permitted in any medium without royalty provided the copyright
1844 notice and this notice are preserved.