1 2014-06-30 Jason Merrill <jason@redhat.com>
3 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
6 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
9 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
10 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
13 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
15 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
17 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
19 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
21 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
24 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
26 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
27 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
28 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
30 * include/ext/alloc_traits.h: Fix comment.
32 * include/Makefile.am: Add new header.
33 * include/Makefile.in: Regenerate.
34 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
35 New RAII utilities for working with allocators.
36 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
37 __allocator_type typedef and use new __allocated_ptr type.
38 (_Sp_counted_ptr_inplace): Likewise.
39 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
40 __allocate_guarded to to simplify exception handling.
41 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
42 * include/std/future (_Result_alloc::_M_destroy): Likewise.
43 (_Result_alloc::_S_allocate_result): Likewise.
44 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
45 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
46 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
47 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
49 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
51 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
53 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
54 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
56 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
58 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
59 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
60 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
61 Remove unused typedef.
62 (time_get::do_get_monthname): Likewise.
63 * include/bits/stl_tree.h: Add system_header pragma.
64 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
65 redundant const-qualifier.
66 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
67 instead of _GLIBCXX_USE_CONSTEXPR.
69 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
71 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
72 * include/std/chrono (_Checked_integral_constant): Allow zero.
73 * testsuite/20_util/duration/literals/values.cc: Test non-positive
74 values and digit separators.
75 * include/experimental/any
78 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
79 apply the signed specifier to wchar_t.
80 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
81 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
82 cv-qualifier and size.
83 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
86 * include/experimental/any (any_v1): Rename namespace to
87 fundamentals_v1. Change string returned by bad_any_cast::what().
88 * include/experimental/optional (fundamentals_v1): Add namespace.
89 * include/experimental/string_view (fundamentals_v1): Likewise.
90 * testsuite/experimental/any/typedefs.cc: New.
91 * testsuite/experimental/optional/typedefs.cc: New.
92 * testsuite/experimental/string_view/typedefs.cc: New.
94 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
95 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
98 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
100 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
102 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
103 * include/Makefile.am: Add new header.
104 * include/Makefile.in: Regenerate.
105 * include/experimental/any: New.
106 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
108 * testsuite/experimental/any/assign/1.cc: New.
109 * testsuite/experimental/any/assign/2.cc: New.
110 * testsuite/experimental/any/cons/1.cc: New.
111 * testsuite/experimental/any/cons/2.cc: New.
112 * testsuite/experimental/any/cons/3.cc: New.
113 * testsuite/experimental/any/misc/any_cast.cc: New.
114 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
115 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
116 * testsuite/experimental/any/misc/swap.cc: New.
117 * testsuite/experimental/any/modifiers/1.cc: New.
118 * testsuite/experimental/any/observers/type.cc: New.
120 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
121 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
123 * include/bits/shared_ptr.h (shared_ptr): Likewise.
124 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
126 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
128 * include/parallel/list_partition.h (__parallel::list_partition):
130 * include/std/iomanip (quoted): Likewise.
131 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
133 * doc/xml/api.xml: Link to more recent API docs.
134 * include/bits/allocator.h: Fix link in doxygen comment.
135 * include/bits/char_traits.h: Likewise.
136 * include/bits/ios_base.h: Likewise.
137 * include/bits/stl_map.h: Likewise.
138 * include/bits/stl_multimap.h: Likewise.
139 * include/bits/stl_multiset.h: Likewise.
140 * include/bits/stl_set.h: Likewise.
141 * include/bits/unordered_map.h: Likewise.
142 * include/bits/unordered_set.h: Likewise.
143 * include/ext/mt_allocator.h: Likewise.
144 * include/std/fstream: Likewise.
145 * include/std/iosfwd: Likewise.
146 * include/std/ostream: Likewise.
147 * include/std/sstream: Likewise.
148 * include/std/streambuf: Likewise.
149 * doc/html/*: Regenerate.
151 * include/experimental/any (any_cast): Combine duplicate doxygen
153 * include/experimental/string_view (basic_string_view): Update
155 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
156 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
157 (dynamic_bitset): Improve Doxygen comments.
158 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
161 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
163 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
164 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
166 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
169 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
170 (bin_search_tree_traits): Do not redeclare template-parameters.
171 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
173 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
175 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
176 parameter for DocBook HTML generation.
177 * doc/Makefile.in: Regenerate.
178 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
179 * doc/xml/faq.xml: Update content and improve formatting.
180 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
181 * doc/xml/manual/allocator.xml: Add stable ID attribute.
182 * doc/xml/manual/bitmap_allocator.xml: Likewise.
183 * doc/xml/manual/build_hacking.xml: Likewise.
184 * doc/xml/manual/codecvt.xml: Change URL.
185 * doc/xml/manual/ctype.xml: Add stable ID attribute.
186 * doc/xml/manual/debug_mode.xml: Likewise.
187 * doc/xml/manual/documentation_hacking.xml: Likewise.
188 * doc/xml/manual/evolution.xml: Likewise.
189 * doc/xml/manual/extensions.xml: Likewise.
190 * doc/xml/manual/locale.xml: Likewise.
191 * doc/xml/manual/messages.xml: Make section id consistent, improve
193 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
194 * doc/xml/manual/profile_mode.xml: Likewise.
195 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
196 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
197 * doc/xml/manual/status_cxx2011.xml: Likewise.
198 * doc/xml/manual/status_cxx2014.xml: Likewise.
199 * doc/xml/manual/status_cxxtr1.xml: Likewise.
200 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
201 * doc/xml/manual/using.xml: Likewise.
202 * doc/html/*: Regenerate.
204 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
206 * include/tr1/beta_function.tcc: Fix spelling of include guard in
209 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
211 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
213 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
215 DR 2344 - std::quoted doesn't respect padding
216 * include/std/iomanip: Allow for padding in quoted inserters.
217 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
218 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
220 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
222 * testsuite/23_containers/map/operators/1.cc: Simplify test.
224 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
226 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
228 * doc/xml/manual/backwards_compatibility.xml
229 (backwards.second.stringstreams): Likewise.
230 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
232 * doc/xml/manual/containers.xml (associative.bitset.type_string):
233 Replace <quote> in code example.
234 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
235 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
236 fix typos, improve markup.
237 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
238 <emphasis> with <replaceable>.
239 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
240 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
241 and remove newlines in string literal.
243 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
247 * testsuite/20_util/is_assignable/value.cc: Update.
249 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
251 * include/std/condition_variable (condition_variable_any::_Unlock): Do
252 not swallow __forced_unwind.
253 * include/std/future (__future_base::_Task_setter): Likewise.
254 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
256 * include/std/mutex (try_lock): Likewise.
257 * testsuite/30_threads/async/forced_unwind.cc: New.
258 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
260 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
261 members to avoid wasted space when not using a cache.
262 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
263 * include/bits/regex_compiler.tcc
264 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
266 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
267 New enumeration type to indicate match mode.
268 (__detail::_Executor::_State_info): New type holding members only
269 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
271 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
272 Replace template parameter with run-time function parameter.
273 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
274 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
275 implement DFS and BFS mode.
276 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
277 Split implementation into ...
278 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
279 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
280 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
281 argument instead of template argument.
282 (__detail::_Executor::_M_dfs): Likewise.
283 * include/bits/regex_scanner.tcc: Fix typos in comments.
284 * testsuite/performance/28_regex/range.cc: New.
286 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
287 Jonathan Wakely <jwakely@redhat.com>
289 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
291 (aligned_union): New struct (C++11).
292 (aligned_union_t): New type alias (C++14).
293 * doc/xml/manual/status_cxx2011.xml: Update.
294 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
295 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
298 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
301 * include/experimental/string_view (operator basic_string): Correct
303 (to_string): Replace with member function.
304 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
305 allow _M_str to be null.
306 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
307 default constructor semantics.
308 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
309 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
310 copyright dates. Remove unused header.
311 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
313 * testsuite/experimental/string_view/operations/data/char/1.cc:
314 Fix copyright dates. Adjust to new default constructor semantics.
315 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
317 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
319 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
320 (__uses_allocator_arg): Remove unused type.
321 (__uses_alloc0): Turn into a trivial type.
322 (__uses_alloc): Add missing template parameter in primary template.
323 (__uses_alloc_impl): Rename to __uses_alloc_t.
325 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
327 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
328 work with previous versions of Tcl.
330 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
331 Benjamin's old email address.
333 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
336 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
338 * include/tr2/bool_set: Use UTF-8 for accented characters.
339 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
340 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
341 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
343 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
346 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
348 (_State_base::_M_dot): Likewise.
350 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
352 * include/profile/map.h: Fix typo in comment; minor formatting fix.
353 * include/profile/multimap.h: Likewise.
354 * include/profile/set.h: Likewise.
355 * include/profile/multiset.h: Likewise.
357 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
359 * include/profile/array: Clean useless white chars.
360 * include/profile/base.h: Likewise.
361 * include/profile/iterator_tracker.h: Likewise.
362 * include/profile/bitset: Code cleanup and remove not instrumented code.
363 * include/profile/deque: Likewise.
364 * include/profile/forward_list: Likewise.
365 * include/profile/list (std::__profile::_List_profile<>): New.
366 (std::__profile::list<>): Inherit from latter and adapt.
367 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
368 advise to match any ordered to unordered container conversion.
369 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
371 * include/Makefile.am: Add latter.
372 * include/Makefile.in: Regenerate.
373 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
374 remove not instrumented code.
375 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
376 * include/profile/set.h (std::__profile::set<>): Likewise.
377 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
378 * include/profile/unordered_base.h: Add some line feed.
379 * include/profile/unordered_map: Clean useless white chars and replace
381 * include/profile/unordered_set: Likewise.
382 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
383 (std::__profile::_Vector_profile_post<>): New.
384 (std::__profile::vector<>): Inherit from latter and adapt.
386 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
389 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
390 dragonfly target selector to all tests that run on freebsd.
392 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
394 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
395 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
397 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
399 * testsuite/30_threads/call_once/60497.cc: Likewise.
400 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
401 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
402 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
403 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
404 * testsuite/30_threads/promise/60966.cc: Likewise.
405 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
406 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
407 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
408 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
409 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
410 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
411 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
412 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
413 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
414 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
415 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
416 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
417 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
418 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
419 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
420 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
421 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
423 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
426 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
428 * testsuite/23_containers/unordered_set/61143.cc: New.
429 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
431 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
434 * include/std/type_traits: Move include outside namespace std.
435 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
436 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
437 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
440 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
443 2014-05-21 John Marino <gnugcc@marino.st>
445 * acinclude.m4 (*-*-dragonfly*): New target.
446 * configure: Regenerate.
447 * configure.host (*-*-dragonfly*): New target.
448 * config/locale/dragonfly/c_locale.cc: New.
449 * config/locale/dragonfly/ctype_members.cc: New.
450 * config/os/bsd/dragonfly/ctype_base.h: New.
451 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
452 * config/os/bsd/dragonfly/ctype_inline.h: New.
453 * config/os/bsd/dragonfly/os_defines.h: New.
455 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
457 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
458 libstdc++.exp imports those flags via getenv.
459 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
460 CXXFLAGS contains a '-O' flag.
462 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
466 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
469 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
470 and add unwind directives.
472 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
474 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
476 2014-05-20 Tim Shen <timshen91@gmail.com>
479 * include/bits/regex_compiler.h
480 (_BracketMatcher<>::_M_add_character_class): Add negative character
482 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
484 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
487 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
489 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
491 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
493 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
494 * libsupc++/new_opnt.cc: Likewise.
496 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
499 * include/std/future (__future_base::_State_baseV2::_M_set_result):
500 Pass lock into _M_do_set and hold it until the function returns.
501 Signal condition variable after call_once completes.
502 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
504 * testsuite/30_threads/promise/60966.cc: New.
506 2014-05-16 Iain Sandoe <iain@codesourcery.com>
507 Sandra Loosemore <sandra@codesourcery.com>
509 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
510 until after checking that the test is eligible to be run.
512 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
514 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
515 test for 32-bit target.
516 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
518 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
521 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
524 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
525 and add unwind directives.
527 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
529 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
531 * include/std/chrono (chrono_literals::__select_type::_Select_type):
533 (chrono_literals::_Checked_integral_constant): Define.
534 Simplify UDL operator templates and check for overflow.
535 * testsuite/20_util/duration/literals/range.cc: New.
537 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
538 Jonathan Wakely <jwakely@redhat.com>
541 * include/bits/parse_numbers.h: Use integral_constant to remove
542 duplication and simplify.
543 * testsuite/20_util/duration/literals/61166.cc: New.
545 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
548 * include/std/type_traits (__make_unsigned, __make_signed): Define
549 specializations for wchar_t, char16_t and char32_t.
550 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
551 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
552 test for make_unsigned<volatile wchar_t>.
553 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
555 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
557 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
559 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
562 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
564 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
565 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
566 * include/std/utility (tuple_size, tuple_element): Likewise.
567 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
568 Adjust dg-error line number.
570 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
572 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
573 (__tuple_element_t): Define.
574 (tuple_element): Use __tuple_element_t.
575 (__cv_tuple_size): Define.
576 (tuple_size<cv _Tp>): Use __cv_tuple_size.
577 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
578 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
579 (__tuple_compare): Remove size check, re-order parameters.
580 (operator==, operator<): Use static_assert to check requirements.
581 * include/std/functional (__volget): use __tuple_element_t.
582 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
583 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
585 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
588 * include/std/tuple (get, __tuple_compare): Qualify more calls to
589 prevent ADL. Cast comparison results to bool.
590 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
591 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
594 * include/debug/array (get): Qualify call to other get overload.
595 * include/profile/array (get): Likewise.
596 * include/std/array (get): Likewise.
597 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
598 * include/std/mutex (unique_lock, call_once): Use __addressof.
599 (__unlock_impl): Remove unused template.
600 (__try_to_lock): Declare inline.
601 (__try_lock_impl::__do_try_lock): Qualify function calls.
602 (lock): Avoid narrowing conversion.
603 * testsuite/20_util/bind/60497.cc: New.
604 * testsuite/23_containers/array/element_access/60497.cc: New.
605 * testsuite/30_threads/call_once/60497.cc: New.
606 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
608 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
610 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
611 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
612 * acinclude.m4 (libtool_VERSION): Bump.
613 * configure: Regenerate.
614 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
615 * testsuite/28_regex/regex_error/base.cc: New.
617 2014-05-08 Joshua Gay <jgay@gnu.org>
620 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
621 source" with "free software".
622 * doc/html/faq.html: Likewise.
624 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
627 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
629 (operator=(const ios_base&)): Likewise.
630 * include/std/streambuf: Remove trailing whitespace.
631 (basic_streambuf(const basic_streambuf&)): Fix initializer for
632 _M_out_end. Define as defaulted for C++11.
633 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
634 (swap(basic_streambuf&)): Define for C++11.
635 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
638 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
640 * include/std/iostream: Fix URL in comment.
641 * src/c++98/ios_init.cc: Fix path in comment.
643 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
645 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
646 * configure: Regenerate.
648 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
651 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
653 * testsuite/23_containers/set/cons/61023.cc: New.
656 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
658 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
659 arithmetic to obtain a mutable iterator from const_iterator.
660 * include/bits/vector.tcc (vector::insert): Likewise.
661 * include/debug/vector (vector::erase): Likewise.
662 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
663 Adjust dg-error line number.
664 * testsuite/23_containers/vector/requirements/dr438/
665 constructor_1_neg.cc: Likewise.
666 * testsuite/23_containers/vector/requirements/dr438/
667 constructor_2_neg.cc: Likewise.
668 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
671 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
673 * include/Makefile.in: Regenerate.
675 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
677 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
678 parameter to pass the 2 instances to check allocator equality.
679 * include/debug/safe_container.h: New, define _Safe_container<>.
680 * include/Makefile.am: Add previous.
681 * include/debug/deque (std::__debug::deque<>): Inherit
682 _Safe_container<>. Use default implementation for all special
684 * include/debug/forward_list (std::__debug::forward_list<>):
686 * include/debug/list (std::__debug::list<>): Likewise.
687 * include/debug/map.h (std::__debug::map<>): Likewise.
688 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
689 * include/debug/set.h (std::__debug::set<>): Likewise.
690 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
691 * include/debug/string (std::__debug::basic_string<>): Likewise.
692 * include/debug/unordered_map
693 (std::__debug::unordered_map<>): Likewise.
694 (std::__debug::unordered_multimap<>): Likewise.
695 * include/debug/unordered_set
696 (std::__debug::unordered_set<>): Likewise.
697 (std::__debug::unordered_multiset<>): Likewise.
698 * include/debug/vector (std::__debug::vector<>): Likewise.
699 * include/debug/safe_base.h (_Safe_sequence_base()): Add
701 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
702 (~_Safe_sequence_base()): Add noexcept.
703 * include/debug/safe_sequence.h
704 (std::__debug::_Safe_node_sequence<>): New.
705 * include/debug/safe_unordered_base.h
706 (_Safe_unordered_container_base()): Add noexcept.
707 (~_Safe_unordered_container_base()): Likewise.
708 (_M_swap(_Safe_unordered_container_base&)): Likewise.
709 * include/debug/safe_unordered_container.h:
710 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
711 (_Safe_unordered_container<>::_M_invalidate_all()): New.
712 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
714 * testsuite/util/debug/checks.h (check_construct1): Just implement
715 an invalid constructor invocation and no other operations
716 potentially not supported by some types of container.
717 (check_construct2): Likewise.
718 (check_construct3): Likewise.
719 * testsuite/23_containers/forward_list/allocator/move.cc: Add
720 check on iterators to make sure they are correctly moved in debug
722 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
724 * testsuite/23_containers/map/allocator/move.cc: Likewise.
725 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
726 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
727 * testsuite/23_containers/multimap/allocator/move_assign.cc:
729 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
730 * testsuite/23_containers/multiset/allocator/move_assign.cc:
732 * testsuite/23_containers/set/allocator/move.cc: Likewise.
733 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
734 * testsuite/23_containers/unordered_map/allocator/move.cc:
736 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
738 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
740 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
742 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
744 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
746 * testsuite/23_containers/unordered_set/allocator/move.cc:
748 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
750 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
752 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
754 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
756 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
758 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
760 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
761 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
762 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
763 * testsuite/23_containers/map/debug/move_neg.cc: New.
764 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
765 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
766 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
767 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
768 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
769 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
770 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
771 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
772 * testsuite/23_containers/set/debug/move_neg.cc: New.
773 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
775 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
777 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
778 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
780 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
782 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
784 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
786 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
788 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
790 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
792 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
794 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
795 * testsuite/23_containers/vector/debug/move_neg.cc: New.
797 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
799 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
800 (CXXABI_1.3.9): Remove __float128 symbols.
802 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
805 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
806 function to handle both C++03 and C++11 _Rb_tree_node implementations.
807 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
808 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
810 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
813 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
814 Check the correct type in the static assertion.
815 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
817 2014-04-27 Tim Shen <timshen91@gmail.com>
819 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
820 Add _S_opcode_repeat support to distingush a loop from
821 _S_opcode_alternative.
822 * include/bits/regex_automaton.tcc (_State_base::_M_print,
823 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
824 _StateSeq<>::_M_clone): Likewise.
825 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
827 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
828 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
829 Uglify local variable __i.
830 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
831 Use size_t instead of int to compare with vector::size().
833 2014-04-27 Tim Shen <timshen91@gmail.com>
835 * include/bits/regex_executor.h: Add _M_rep_count to track how
836 many times this repeat node are visited.
837 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
838 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
841 2014-04-27 Tim Shen <timshen91@gmail.com>
843 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
844 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
845 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
846 * include/bits/regex_automaton.h: Remove quantifier counting variable.
847 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
848 Adjust debug NFA dump.
850 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
853 * include/experimental/optional (operator!=): Implement in terms of
855 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
856 * testsuite/experimental/optional/relops/2.cc: Likewise.
857 * testsuite/experimental/optional/relops/3.cc: Likewise.
858 * testsuite/experimental/optional/relops/4.cc: Likewise.
859 * testsuite/experimental/optional/relops/5.cc: Likewise.
860 * testsuite/experimental/optional/relops/6.cc: Likewise.
862 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
865 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
866 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
869 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
871 * testsuite/util/testsuite_abi.cc (check_version): Update for
874 2014-04-24 Tim Shen <timshen91@gmail.com>
876 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
877 Do _M_alt before _M_next.
878 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
880 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
883 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
884 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
885 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
887 2014-04-24 Andreas Schwab <schwab@suse.de>
889 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
890 new CXXABI_1.3.9 symbols.
892 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
894 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
895 (CXXABI_1.3.9): New version.
897 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
900 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
901 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
902 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
904 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
906 * configure.host: Remove solaris2.9 handling.
907 Change os_include_dir to os/solaris/solaris2.10.
908 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
909 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
910 * configure: Regenerate.
911 * config/abi/post/solaris2.9: Remove.
912 * config/os/solaris/solaris2.9: Rename to ...
913 * config/os/solaris/solaris2.10: ... this.
914 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
917 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
918 Remove Solaris 9 reference.
919 * doc/html/manual/configure.html: Regenerate.
921 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
922 Remove *-*-solaris2.9 xfail.
923 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
926 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
929 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
931 * include/std/functional (__is_location_invariant): Use __or_ helper.
933 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
936 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
939 * include/std/atomic (atomic<_Tp>): Add static assertion.
940 * testsuite/29_atomics/atomic/60695.cc: New.
943 * include/std/functional (function::_Callable): Exclude own type
944 from the callable checks.
945 * testsuite/20_util/function/60594.cc: New.
947 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
948 const to constexpr member functions.
950 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
951 delegating constructor.
952 * include/bits/shared_ptr_base.h
953 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
955 * include/std/atomic: Uglify parameter names.
958 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
959 1.cc: Fix invalid explicit instantiations with unqualified names.
960 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
962 * testsuite/20_util/tuple/53648.cc: Likweise.
963 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
965 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
967 * testsuite/23_containers/unordered_map/requirements/
968 debug_container.cc: Likewise.
969 * testsuite/23_containers/unordered_map/requirements/
970 explicit_instantiation/3.cc: Likewise.
971 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
973 * testsuite/23_containers/unordered_multimap/requirements/
974 explicit_instantiation/3.cc: Likewise.
975 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
977 * testsuite/23_containers/unordered_multiset/requirements/
978 explicit_instantiation/3.cc: Likewise.
979 * testsuite/23_containers/unordered_set/requirements/
980 debug_container.cc: Likewise.
981 * testsuite/23_containers/unordered_set/requirements/
982 explicit_instantiation/3.cc: Likewise.
984 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
985 not use uninitialized members in mem-initializers.
986 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
987 * testsuite/util/testsuite_common_types.h: Update comment.
989 * include/experimental/string_view: Fix inconsistent exception specs.
991 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
992 Remove name of unused parameter.
994 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
996 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
997 _Vector_base::_M_allocate): NullablePointer requirements do not
998 include initialization from literal zero, use value-initialization.
999 * include/bits/vector.tcc (vector::_M_insert_aux,
1000 vector::_M_explace_back_aux): Likewise for assignment.
1002 * include/bits/allocator.h (operator==, operator!=): Add exception
1006 * include/std/tuple (get): Qualify calls to prevent ADL.
1007 * testsuite/20_util/tuple/60497.cc: New.
1009 * include/std/tuple (tuple_element_t): Define.
1010 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1012 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1014 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1017 * include/bits/stl_iterator.h (move_iterator::reference,
1018 move_iterator::operator*): Implement LWG 2106.
1019 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1021 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1023 * include/std/complex (__complex_exp, pow): Specify the template
1024 parameter in calls to std::polar, for expression templates.
1026 2014-04-10 Andreas Schwab <schwab@suse.de>
1028 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1030 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1031 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1033 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1035 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1037 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1038 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1039 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1042 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1043 Jack Howarth <howarth@bromo.med.uc.edu>
1046 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1049 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1051 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1053 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1055 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1056 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1057 * doc/xml/manual/concurrency_extensions.xml
1058 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1059 * doc/html/*: Regenerate.
1061 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1062 Jonathan Wakely <jwakely@redhat.com>
1065 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1066 string if input is not quoted.
1067 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1069 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1071 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1073 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1075 * testsuite/18_support/exception_ptr/60612-terminate.cc
1076 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1077 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1079 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1081 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1083 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1084 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1086 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1088 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1090 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1091 Fix bad s/part/chapter/ substitutions.
1092 * doc/xml/manual/io.xml (std.io): Likewise.
1093 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1094 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1096 * doc/html/*: Regenerate.
1098 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1101 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1102 compatible with __cxa_exception.
1103 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1104 Fix typos in comments.
1105 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1106 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1108 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1111 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1112 Use sizeof pointer type not the element type.
1113 * testsuite/29_atomics/atomic/60658.cc: New.
1115 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1117 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1118 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1119 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1120 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1121 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1122 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1123 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1124 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1125 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1126 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1129 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1131 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1133 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1135 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1136 to delegated constructor.
1137 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1138 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1141 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1143 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1146 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1148 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1151 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1152 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1154 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1155 from different types of debug container. Use _Is_contiguous_sequence
1156 instead of is_lvalue_reference.
1157 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1158 dereferencing past-the-end iterator.
1159 (__foreign_iterator_aux4): Use const value_type* instead of
1160 potentially user-defined const_pointer type.
1161 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1162 and pass end iterator to __gnu_debug::__foreign_iterator.
1163 (__glibcxx_check_insert_range_after): Likewise.
1164 (__glibcxx_check_max_load_factor): Fix comment.
1165 * include/debug/vector (_Is_contiguous_sequence): Define partial
1167 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1168 -std=gnu++11 option and unused header.
1169 * testsuite/23_containers/vector/debug/60587.cc: New.
1170 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1172 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1174 * crossconfig.m4: Support spu-*-elf* targets.
1175 * configure: Regenerate.
1177 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1180 * include/std/future (__future_base::_Task_state<>): Change
1181 constructors to template functions using perfect forwarding.
1182 (__create_task_state): Use decayed type as stored task.
1183 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1184 * testsuite/30_threads/packaged_task/60564.cc: New.
1186 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1188 * scripts/create_testsuite_files: Add testsuite/experimental in
1189 the list of folders to search for tests.
1191 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1193 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1195 2014-03-15 Tim Shen <timshen91@gmail.com>
1197 * include/bits/regex.h: Add/modify comments.
1198 * include/bits/regex_compiler.h: Likewise.
1199 * include/bits/regex_executor.h: Likewise.
1200 * include/bits/regex_executor.tcc: Likewise.
1201 * include/bits/regex_scanner.h: Likewise.
1203 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
1206 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
1207 _ZNSt12system_errorC* symbols which are not exported on any target.
1209 2014-03-12 Roland McGrath <mcgrathr@google.com>
1210 Mark Seaborn <mseaborn@google.com>
1213 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
1214 the address of a null pointer, not with a null pointer to pointer.
1215 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
1216 * testsuite/18_support/bad_exception/59392.cc: New file.
1218 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
1221 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
1223 * include/debug/map (map::operator=(map&&)): Likewise.
1224 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
1225 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
1226 * include/debug/set (set::operator=(set&&)): Likewise.
1227 * include/debug/unordered_map
1228 (unordered_map::operator=(unordered_map&&)): Likewise.
1229 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
1230 * include/debug/unordered_set
1231 (unordered_set::operator=(unordered_set&&)): Likewise.
1232 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
1233 * include/debug/vector (vector::operator=(vector&&)): Likewise.
1234 * testsuite/23_containers/forward_list/debug/60499.cc: New
1235 * testsuite/23_containers/map/debug/60499.cc: New
1236 * testsuite/23_containers/multimap/debug/60499.cc: New
1237 * testsuite/23_containers/multiset/debug/60499.cc: New
1238 * testsuite/23_containers/set/debug/60499.cc: New
1239 * testsuite/23_containers/unordered_map/debug/60499.cc: New
1240 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
1241 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
1242 * testsuite/23_containers/unordered_set/debug/60499.cc: New
1243 * testsuite/23_containers/vector/debug/60499.cc: New
1245 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
1247 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
1248 for filesystem and fundamentals TS work items.
1250 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
1253 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
1254 Adjust dg-error directives.
1256 2014-02-26 Tim Shen <timshen91@gmail.com>
1258 * include/bits/regex.tcc (match_results<>::format,
1259 regex_replace<>): Update __out after calling std::copy.
1260 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
1262 * testsuite/28_regex/match_results/format.cc: Likewise.
1264 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
1267 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
1268 allocator_type&)): Remove redundant call to _M_initialize_map.
1269 (deque::deque(const allocator_type&)): Initialize _Base with a
1270 constructor that calls _M_initialize_map.
1274 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
1276 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
1279 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
1281 Rename testsuite directory shared_mutex to shared_timed_mutex
1283 * testsuite/30_threads/shared_mutex: Moved to...
1284 * testsuite/30_threads/shared_timed_mutex: ...here
1286 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
1288 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
1289 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
1290 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
1291 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
1292 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
1293 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
1294 * testsuite/30_threads/shared_lock/requirements/
1295 explicit_instantiation.cc: Ditto.
1296 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
1297 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
1298 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
1299 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
1300 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
1301 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
1302 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
1303 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
1304 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
1305 * testsuite/30_threads/shared_mutex/requirements/
1306 standard_layout.cc: Ditto.
1307 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
1308 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
1309 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
1310 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
1311 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
1313 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1315 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
1316 execution on i?86-*-solaris2.9, remove comment.
1317 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1319 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
1321 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
1322 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
1323 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
1325 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
1327 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
1328 not use varargs when argument could be non-POD.
1329 (__alloctr_rebind_helper): Eliminate static const bool member by
1330 using true_type and false_type.
1331 (allocator_traits::__allocate_helper): Likewise.
1332 (allocator_traits::__construct_helper): Likewise.
1333 (allocator_traits::__destroy_helper): Likewise.
1334 (allocator_traits::__maxsize_helper): Likewise.
1335 (allocator_traits::__select_helper): Likewise.
1336 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
1337 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
1338 Remove redundant condition.
1339 * include/bits/stl_vector.h (vector::operator=(const vector&)):
1341 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
1342 indirection through __alloc_traits.
1343 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1344 Eliminate static const bool members by using true_type and false_type.
1345 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
1346 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
1347 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
1349 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
1352 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
1353 (vector::_M_data_ptr): New overloaded functions to ensure empty
1354 vectors do not dereference the pointer.
1355 * testsuite/23_containers/vector/59829.cc: New.
1356 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1357 Adjust dg-error line number.
1358 * testsuite/23_containers/vector/requirements/dr438/
1359 constructor_1_neg.cc: Likewise.
1360 * testsuite/23_containers/vector/requirements/dr438/
1361 constructor_2_neg.cc: Likewise.
1362 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1366 * include/ext/array_allocator.h: Add deprecated attribute.
1369 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
1370 installation and use of python printers.
1371 * doc/xml/manual/status_cxx2011.xml: Update.
1372 * doc/html/*: Regenerate.
1374 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
1375 Kyle Lippincott <spectral@google.com>
1378 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
1379 constructor and grant friendship to weak_ptr.
1380 (weak_ptr::lock()): Use new constructor.
1381 * include/bits/shared_ptr_base.h
1382 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
1383 and define specializations.
1384 (__shared_count): Add new non-throwing constructor.
1385 (__shared_ptr): Add new non-throwing constructor and grant friendship
1387 (__weak_ptr::lock()): Use new constructor.
1388 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
1389 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1391 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
1394 * include/bits/shared_ptr_base.h
1395 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
1398 2014-01-27 Jason Merrill <jason@redhat.com>
1403 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
1404 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
1405 (__cxa_allocate_exception): Don't set it here.
1407 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
1409 * include/bits/stl_map.h: Remove anachronistic comment.
1410 * include/bits/stl_multimap.h: Add whitespace.
1411 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
1412 -std=gnu++11 instead of -std=c++11.
1413 * testsuite/23_containers/map/operators/2.cc: Likewise.
1414 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
1415 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
1416 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
1418 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
1419 * configure: Regenerate.
1421 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1424 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
1425 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
1427 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1428 Peter A. Bigot <pab@pabigot.com>
1431 * include/experimental/string_view
1432 (copy(_CharT*, size_type, size_type) const): Correct throw string.
1433 Correct copy start location.
1435 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1436 Peter A. Bigot <pab@pabigot.com>
1439 * include/experimental/string_view (operator[](size_type) const):
1440 Fix one-off index error in debug check.
1441 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
1442 test basic_string_view at size().
1443 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
1445 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1446 Peter A. Bigot <pab@pabigot.com>
1449 * include/experimental/string_view
1450 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
1451 * testsuite/experimental/string_view/operations/substr/char/1.cc:
1452 Comment out catch of out_of_range; No terminating null
1453 in basic_string_view. Check begin == end.
1454 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
1457 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
1460 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
1461 constructor to prevent it being implicitly defined as deleted, but
1462 do not copy anything.
1463 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
1464 Define copy and move constructors similar to _Safe_sequence_base's.
1465 * testsuite/23_containers/unordered_map/59548.cc: New.
1467 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
1468 Steve Ellcey <sellcey@mips.com>
1470 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
1472 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
1473 * (configure, config.h.in): Regenerate.
1474 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
1476 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
1478 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
1479 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
1482 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
1483 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
1485 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
1487 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
1488 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
1489 functions to perform moving or copying of elements from rvalue tree.
1490 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
1491 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
1492 * testsuite/23_containers/map/59872.cc: New.
1493 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
1495 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
1497 * include/bits/stl_deque.h (_Deque_impl): Move comment.
1500 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
1501 Split into separate default constructor and constructor taking
1503 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
1504 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
1506 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
1507 * include/debug/list (list::list(const _Allocator&)): Likewise.
1508 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
1510 * include/debug/multimap.h
1511 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1512 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
1514 * include/debug/multiset.h
1515 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1516 * include/debug/vector (vector::vector(const allocator_type&)):
1518 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
1519 * include/profile/list (list::list(const _Allocator&)): Likewise.
1520 * include/profile/map.h
1521 (map::map(const _Compare&, const _Allocator&)): Likewise.
1522 * include/profile/multimap.h
1523 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1524 * include/profile/set.h
1525 (set::set(const _Compare&, const _Allocator&)): Likewise.
1526 * include/profile/multiset.h
1527 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1528 * include/profile/vector (vector::vector(const _Allocator&)):
1530 * testsuite/23_containers/deque/58764.cc: New.
1531 * testsuite/23_containers/list/58764.cc: New.
1532 * testsuite/23_containers/map/58764.cc: New.
1533 * testsuite/23_containers/multimap/58764.cc: New.
1534 * testsuite/23_containers/set/58764.cc: New.
1535 * testsuite/23_containers/multiset/58764.cc: New.
1536 * testsuite/23_containers/vector/58764.cc: New.
1537 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1538 Adjust dg-error line number.
1539 * testsuite/23_containers/deque/requirements/dr438/
1540 constructor_1_neg.cc: Likewise.
1541 * testsuite/23_containers/deque/requirements/dr438/
1542 constructor_2_neg.cc: Likewise.
1543 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1545 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1547 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1549 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1551 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1553 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1555 * testsuite/23_containers/vector/requirements/dr438/
1556 constructor_1_neg.cc: Likewise.
1557 * testsuite/23_containers/vector/requirements/dr438/
1558 constructor_2_neg.cc: Likewise.
1559 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1562 PR libstdc++/58764 (again)
1563 * include/bits/stl_list.h (list): Make default constructor's exception
1564 specification conditional.
1565 * include/bits/stl_vector.h (vector): Likewise.
1566 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
1567 to default constructor.
1568 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1569 Adjust dg-error line number.
1570 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1572 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1574 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1576 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1578 * testsuite/23_containers/vector/requirements/dr438/
1579 constructor_1_neg.cc: Likewise.
1580 * testsuite/23_containers/vector/requirements/dr438/
1581 constructor_2_neg.cc: Likewise.
1582 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1585 2014-01-21 Tim Shen <timshen91@gmail.com>
1587 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
1588 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
1589 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
1591 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
1594 * include/bits/hashtable.h (__cache_default): Do not depend on
1595 whether the hash function is DefaultConstructible or CopyAssignable.
1596 (_Hashtable): Adjust static assertions.
1597 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
1598 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1599 dg-error line number.
1600 * testsuite/23_containers/unordered_set/
1601 not_default_constructible_hash_neg.cc: Remove.
1603 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
1605 * scripts/create_testsuite_files: Add testsuite/experimental in
1606 the list of folders to search for tests.
1607 * include/experimental/string_view
1608 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
1609 incompatible with constexpr qualifier.
1610 (basic_string_view<>::front()): Likewise.
1611 (basic_string_view<>::back()): Likewise.
1612 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
1613 Merge dg-options directives into one.
1614 * testsuite/experimental/string_view/element_access/char/2.cc:
1615 Likewise. Remove invalid experimental namespace scope on
1618 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
1621 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
1622 friendship to _Local_iterator_base<..., false>.
1623 (_Local_iterator_base): Give protected access to all existing members.
1624 (_Local_iterator_base::_M_curr()): New public accessor.
1625 (_Local_iterator_base::_M_get_bucket()): New public accessor.
1626 (_Local_iterator_base<..., false>::_M_init()): New function to manage
1627 the lifetime of the _Hash_code_base explicitly.
1628 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
1629 (_Local_iterator_base<..., false>): Define copy constructor and copy
1630 assignment operator that use new functions to manage _Hash_code_base.
1631 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
1632 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
1633 Use public API for _Local_iterator_base.
1634 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
1635 * include/debug/unordered_map (__debug::unordered_map::erase(),
1636 __debug::unordered_multimap::erase()): Likewise.
1637 * include/debug/unordered_set (__debug::unordered_set::erase(),
1638 __debug::unordered_multiset::erase()): Likewise.
1639 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
1641 2014-01-19 Tim Shen <timshen91@gmail.com>
1643 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
1644 Fix parse error of multiple consecutive quantifiers like "a**".
1645 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
1647 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
1649 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
1651 * include/profile/set.h (set): Implement C++11 allocator-aware
1652 container requirements.
1653 * include/profile/map.h (map): Likewise.
1654 * include/profile/multiset.h (multiset): Likewise.
1655 * include/profile/multimap.h (multimap): Likewise.
1656 * include/profile/set.h
1657 (set::operator=(const set&)): Define as default in C++11 mode.
1658 (set::operator=(set&&)): Likewise.
1659 * include/profile/map.h
1660 (map::operator=(const map&)): Likewise.
1661 (map::operator=(map&&)): Likewise.
1662 * include/profile/multiset.h
1663 (multiset::operator=(const multiset&)): Likewise.
1664 (multiset::operator=(multiset&&)): Likewise.
1665 * include/profile/multimap.h
1666 (multimap::operator=(const multimap&)): Likewise.
1667 (multimap::operator=(multimap&&)): Likewise.
1668 * include/profile/set.h (set::operator=(std::initializer_list<>)):
1669 Rely on the same operator from normal mode.
1670 * include/profile/map.h (map::operator=(std::initializer_list<>)):
1672 * include/profile/multiset.h
1673 (multiset::operator=(std::initializer_list<>)): Likewise.
1674 * include/profile/multimap.h
1675 (multimap::operator=(std::initializer_list<>)): Likewise.
1676 * include/profile/set.h (set::swap(set&)): Add noexcept
1678 * include/profile/map.h (map::swap(map&)): Likewise.
1679 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
1680 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
1682 2014-01-17 Tim Shen <timshen91@gmail.com>
1684 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
1686 * include/bits/regex_automaton.h: Do not use std::set.
1687 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
1688 _BracketMatcher<>::_M_add_collating_element(),
1689 _BracketMatcher<>::_M_add_equivalence_class(),
1690 _BracketMatcher<>::_M_make_range()): Likewise.
1691 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
1693 * include/bits/regex_executor.h: Do not use std::queue.
1694 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
1695 _Executor<>::_M_dfs()): Likewise.
1696 * include/std/regex: Remove <map>, <set> and <queue>.
1698 2014-01-17 Tim Shen <timshen91@gmail.com>
1700 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
1701 basic_regex<>::assign()): Change __compile_nfa to accept
1703 * include/bits/regex_compiler.h: Change _Compiler's template
1704 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
1705 * include/bits/regex_compiler.tcc: Likewise.
1707 2014-01-17 Tim Shen <timshen91@gmail.com>
1709 * include/bits/regex_compiler.h: Change _ScannerT into char-type
1711 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
1712 _ScannerBase from _Scanner; Change _Scanner's template argument from
1713 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
1715 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
1716 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
1717 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
1719 * include/std/regex: Add <cstring> for using strchr.
1721 2014-01-17 Tim Shen <timshen91@gmail.com>
1723 * bits/regex_automaton.tcc: Indentation fix.
1724 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
1725 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
1726 _BracketMatcher<>): Add bool option template parameters and
1727 specializations to make matching more efficient and space saving.
1728 * bits/regex_compiler.tcc: Likewise.
1730 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
1733 * include/bits/hashtable_policy.h: Fix some long lines.
1734 * include/bits/hashtable.h (__hash_code_base_access): Define and
1735 use it to check its _M_bucket_index noexcept qualification. Use
1737 (__access_protected_ctor): ...this.
1738 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1740 * testsuite/23_containers/unordered_set/
1741 not_default_constructible_hash_neg.cc: Likewise.
1743 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
1745 * include/debug/set.h (set): Implement C++11 allocator-aware
1746 container requirements.
1747 * include/debug/map.h (map): Likewise.
1748 * include/debug/multiset.h (multiset): Likewise.
1749 * include/debug/multimap.h (multimap): Likewise.
1750 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
1751 fix implementation regarding management of safe iterators.
1752 * include/debug/map.h (map::operator=(map&&)): Likewise.
1753 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
1754 * include/debug/multimap.h (multimap::operator=(multimap&&)):
1756 * include/debug/set.h (set::operator=(std::initializer_list<>)):
1757 Rely on the same operator from normal mode.
1758 * include/debug/map.h (map::operator=(std::initializer_list<>)):
1760 * include/debug/multiset.h
1761 (multiset::operator=(std::initializer_list<>)): Likewise.
1762 * include/debug/multimap.h
1763 (multimap::operator=(std::initializer_list<>)): Likewise.
1764 * include/debug/set.h (set::swap(set&)): Add noexcept
1765 specification, add allocator equality check.
1766 * include/debug/map.h (map::swap(map&)): Likewise.
1767 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
1768 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
1770 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
1773 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
1774 and stylistic improvements.
1775 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
1776 and update for C++11.
1777 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
1780 * doc/xml/manual/backwards_compatibility.xml
1781 (backwards.third.nocreate_noreplace): Correct and expand.
1784 * doc/xml/manual/support.xml (std.support.types.null): Update links.
1786 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
1789 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
1790 support for non-Movable types.
1793 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
1795 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
1797 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
1798 *this allocator instance when building temporary vector instance
1799 so that *this allocator does not get moved.
1800 * include/debug/safe_base.h
1801 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
1802 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
1803 move constructor from _Safe_sequence_base.
1804 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
1805 safe iterators if the instance is moved.
1806 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
1807 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
1808 check on a vector iterator.
1809 * testsuite/23_containers/vector/allocator/move_assign.cc
1811 (test03): New, test with a non-propagating allocator.
1812 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
1814 2014-01-07 Tim Shen <timshen91@gmail.com>
1816 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
1817 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
1818 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
1819 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
1820 _BracketMatcher<>::_M_add_char(),
1821 _BracketMatcher<>::_M_add_collating_element(),
1822 _BracketMatcher<>::_M_add_equivalence_class(),
1823 _BracketMatcher<>::_M_add_character_class(),
1824 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
1825 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
1826 Fix _AnyMatcher behavior of POSIX style and move _M_flags
1827 to template parameter; Add cache for _BracketMatcher. Adjust
1828 declarations from here...
1829 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
1830 imbuing a regex will trigger a recompilation to rebuild the cache.
1831 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
1832 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
1833 different template bool parameters.
1834 * include/bits/regex_executor.h: Remove unnecessary declarations.
1835 * include/std/regex: Adjust including orders.
1836 * testsuite/28_regex/traits/char/user_defined.cc: New.
1837 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
1839 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1841 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1842 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1843 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1844 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1845 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1847 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1849 Update copyright years
1851 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1853 * testsuite/18_support/new_handler.cc,
1854 testsuite/18_support/terminate_handler.cc,
1855 testsuite/18_support/unexpected_handler.cc: Use the standard form for
1856 the copyright notice.
1858 Copyright (C) 2014 Free Software Foundation, Inc.
1860 Copying and distribution of this file, with or without modification,
1861 are permitted in any medium without royalty provided the copyright
1862 notice and this notice are preserved.