1 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
3 * include/bits/stl_queue.h: Include missing header.
4 * include/bits/stl_stack.h: Likewise.
5 * testsuite/23_containers/priority_queue/requirements/
6 uses_allocator.cc: New.
7 * testsuite/23_containers/queue/requirements/uses_allocator.cc: New.
8 * testsuite/23_containers/stack/requirements/uses_allocator.cc: New.
10 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
12 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
13 * doc/xml/manual/status_cxx2014.xml: Update TS status.
14 * doc/html/manual/status.html: Regenerate.
16 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
18 * include/std/mutex (try_lock): Do not swallow exceptions.
19 * testsuite/30_threads/try_lock/4.cc: Fix test.
21 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
25 * config/abi/pre/gnu.ver: Add new exports.
26 * config/io/basic_file_stdio.h (__basic_file): Support moving and
28 * include/bits/basic_ios.h (basic_ios::move, basic_ios::swap):
30 * include/bits/ios_base.h (ios_base::_M_move, ios_base::_M_swap):
32 * include/bits/fstream.tcc (basic_filebuf): Likewise.
33 * include/bits/move.h (__exchange): Define for C++11 mode.
34 * include/ext/stdio_filebuf.h (stdio_filebuf): Support moving and
36 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf): Likewise.
37 * include/std/fstream (basic_filebuf, basic_ifstream, basic_ofstream,
38 basic_fstream): Likewise.
39 * include/std/ios: Remove whitespace.
40 * include/std/istream (basic_istream, basic_iostream): Support moving
42 * include/std/ostream (basic_ostream): Likewise.
43 * include/std/sstream (basic_stringbuf, basic_istringstream,
44 basic_ostringstream, basic_stringstream): Likewise.
45 * include/std/streambuf (basic_streambuf): Do not default copy
46 constructor and assignment on first declaration.
47 * include/std/utility (exchange): Forward to __exchange.
48 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
49 * src/c++11/Makefile.am: Add stream-related files.
50 * src/c++11/Makefile.in: Regenerate.
51 * src/c++11/ext11-inst.cc (stdio_filebuf, stdio_sync_filebuf):
52 New file for explicit instantiation definitions.
53 * src/c++11/ios.cc: Move from src/c++98 to here.
54 (ios_base::_M_move, ios_base::_M_swap): Define.
55 * src/c++11/ios-inst.cc: Move from src/c++98 to here.
56 * src/c++11/iostream-inst.cc: Likewise.
57 * src/c++11/istream-inst.cc: Likewise.
58 * src/c++11/ostream-inst.cc: Likewise.
59 * src/c++11/sstream-inst.cc: Likewise.
60 * src/c++11/streambuf-inst.cc: Likewise.
61 * src/c++98/Makefile.am: Remove stream-related files.
62 * src/c++98/Makefile.in: Regenerate.
63 * src/c++98/ext-inst.cc (stdio_filebuf): Remove explicit
65 * src/c++98/misc-inst.cc (stdio_sync_filebuf): Likewise.
66 * src/c++98/ios-inst.cc: Move to src/c++11/.
67 * src/c++98/ios.cc: Move to src/c++11/.
68 * src/c++98/iostream-inst.cc: Likewise.
69 * src/c++98/istream-inst.cc: Likewise.
70 * src/c++98/ostream-inst.cc: Likewise.
71 * src/c++98/sstream-inst.cc: Likewise.
72 * src/c++98/streambuf-inst.cc: Likewise.
73 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
74 * testsuite/27_io/basic_fstream/cons/move.cc: New.
75 * testsuite/27_io/basic_fstream/assign/1.cc: New.
76 * testsuite/27_io/basic_ifstream/cons/move.cc: New.
77 * testsuite/27_io/basic_ifstream/assign/1.cc: New.
78 * testsuite/27_io/basic_istringstream/assign/1.cc: New.
79 * testsuite/27_io/basic_istringstream/cons/move.cc: New.
80 * testsuite/27_io/basic_ofstream/cons/move.cc: New.
81 * testsuite/27_io/basic_ofstream/assign/1.cc: New.
82 * testsuite/27_io/basic_ostringstream/assign/1.cc: New.
83 * testsuite/27_io/basic_ostringstream/cons/move.cc: New.
84 * testsuite/27_io/basic_stringstream/assign/1.cc: New.
85 * testsuite/27_io/basic_stringstream/cons/move.cc: New.
87 2014-09-17 Jason Merrill <jason@redhat.com>
89 * libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
90 dynamic_cast more gracefully.
92 2014-09-15 Jakub Jelinek <jakub@redhat.com>
94 * testsuite/Makefile.am (check_p_numbers0, check_p_numbers1,
95 check_p_numbers2, check_p_numbers3, check_p_numbers4,
96 check_p_numbers5, check_p_numbers6, check_p_numbers,
97 check_p_subdirs): New variables.
98 (check_DEJAGNU_normal_targets): Use check_p_subdirs.
99 (check-DEJAGNU): Rewritten so that for parallelized
100 testing each job runs all the *.exp files, with
101 GCC_RUNTEST_PARALLELIZE_DIR set in environment.
102 * testsuite/Makefile.in: Regenerated.
103 * testsuite/lib/libstdc++.exp (gcc_parallel_test_run_p,
104 gcc_parallel_test_enable): New procedures. If
105 GCC_RUNTEST_PARALLELIZE_DIR is set in environment, override
106 runtest_file_p to invoke also gcc_parallel_test_run_p.
107 * testsuite/libstdc++-abi/abi.exp: Run all the tests serially
108 by the first parallel runtest encountering it. Fix up path
109 of the extract_symvers script.
110 * testsuite/libstdc++-xmethods/xmethods.exp: Run all the tests
111 serially by the first parallel runtest encountering it. Run
112 dg-finish even in case of error.
114 2014-09-15 Jonathan Wakely <jwakely@redhat.com>
116 * include/bits/regex.h (basic_regex): Rename _Ch_typeraits template
117 parameters to _Ch_traits.
119 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
121 * include/debug/deque (__gnu_debug::deque): Make base class C++11
124 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
127 * include/bits/stl_algo.h (random_shuffle): Prevent self-swapping.
128 * testsuite/25_algorithms/random_shuffle/59603.cc: New.
130 2014-09-11 Jonathan Wakely <jwakely@redhat.com>
133 * include/bits/regex.h (match_results::format): Remove stray template
135 * include/bits/regex_compiler.h (_RegexTranslator::_RegexTranslator):
136 Remove parameter name to avoid -Wunused-parameter warning.
137 * include/bits/regex_executor.h (_State_info::_State_info): Reorder
138 mem-initializers to avoid -Wreorder warning.
139 * include/bits/regex_executor.tcc (_Executor::_M_word_boundary):
140 Remove parameter name to avoid -Wunused-parameter warning.
141 * include/bits/regex_scanner.tcc (_Scanner::_M_advance): Add braces
142 to avoid -Wempty-body warning when not in debug mode.
144 2014-09-10 Siva Chandra Reddy <sivachandra@google.com>
146 * python/hook.in: Load the xmethods.
147 * python/Makefile.am (nobase_python_DATA): Add xmethods.py.
148 * python/Makefile.in: Regenerated.
149 * python/libstdcxx/v6/xmethods.py: New file.
150 * testsuite/lib/gdb-test.exp (gdb_version_check_xmethods): New
152 (gdb-test): New optional argument LOAD_XMETHODS. Load xmethods
153 python script if LOAD_XMETHODS is true.
154 * testsuite/libstdc++-xmethods/unique_ptr.cc: New file.
155 * testsuite/libstdc++-xmethods/vector.cc: New file.
156 * testsuite/libstdc++-xmethods/xmethods.exp: New file.
158 2014-09-10 Tony Wang <tony.wang@arm.com>
161 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
162 Return with CONTINUE_UNWINDING when the state pattern
163 contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND
165 2014-09-09 Jonathan Wakely <jwakely@redhat.com>
167 * include/bits/deque.tcc (deque::operator=(const deque&)): Handle
168 allocator propagation.
169 (deque::emplace_front, deque::emplace_back): Use allocator traits.
170 (deque::_M_push_back_aux, deque::_M_push_front_aux): Likewise.
171 (deque::_M_pop_back_aux, deque::_M_pop_front_aux): Likewise.
172 * include/bits/stl_deque.h (__deque_buf_size): Add constexpr.
173 (_Deque_iterator): Handle allocators with custom pointers.
174 (_Deque_base): Likewise. Use allocator traits.
175 (deque): Likewise. Add allocator-extended constructors.
176 (deque::_M_move_assign1, deque::_M_move_assign2): Implement move
177 assignment via tag dispatching.
178 (deque::_M_replace_map): Replace existing data.
179 * include/debug/deque (deque): Add allocator-extended constructors.
180 * include/profile/deque (deque): Likewise.
181 * testsuite/23_containers/deque/allocator/copy.cc: New.
182 * testsuite/23_containers/deque/allocator/copy_assign.cc: New.
183 * testsuite/23_containers/deque/allocator/ext_ptr.cc: New.
184 * testsuite/23_containers/deque/allocator/minimal.cc: New.
185 * testsuite/23_containers/deque/allocator/move.cc: New.
186 * testsuite/23_containers/deque/allocator/move_assign-2.cc: New.
187 * testsuite/23_containers/deque/allocator/move_assign.cc: New.
188 * testsuite/23_containers/deque/allocator/noexcept.cc: New.
189 * testsuite/23_containers/deque/allocator/swap.cc: New.
190 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
191 Adjust dg-error line number.
192 * testsuite/23_containers/deque/requirements/dr438/
193 constructor_1_neg.cc: Likewise.
194 * testsuite/23_containers/deque/requirements/dr438/
195 constructor_2_neg.cc: Likewise.
196 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
198 * testsuite/23_containers/vector/52591.cc: Test both the propagating
199 and always-equal cases.
201 2014-09-06 François Dumont <fdumont@gcc.gnu.org>
203 * include/bits/hashtable_policy.h (_Prime_rehash_policy): Constructor
205 (_Hash_code_base<>): All specialization default constructible if
207 (_Hashtable_base<>): Likewise.
208 * include/bits/hashtable.h (_Hashtable<>()): Implementation defaulted.
209 * include/bits/unordered_map.h (unordered_map<>::unordered_map()): New,
210 implementation defaulted.
211 (unordered_multimap<>::unordered_multimap()): Likewise.
212 * include/bits/unordered_set.h
213 (unordered_set<>::unordered_set()): Likewise.
214 (unordered_multiset<>::unordered_multiset()): Likewise.
215 * include/debug/unordered_map: Likewise.
216 * include/debug/unordered_set: Likewise.
217 * testsuite/23_containers/unordered_map/allocator/noexcept.cc
219 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc
221 * testsuite/23_containers/unordered_set/allocator/noexcept.cc
223 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc
226 2014-08-30 John David Anglin <danglin@gcc.gnu.org>
228 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
230 2014-08-29 Jonathan Wakely <jwakely@redhat.com>
232 * include/std/complex (complex): Define copy constructor and
233 assignment operator as defaulted. Improve Doxygen comments.
235 2014-08-28 Jonathan Wakely <jwakely@redhat.com>
237 * testsuite/ext/random/*: Fix incorrect standard references in
240 2014-08-27 Jonathan Wakely <jwakely@redhat.com>
243 * include/Makefile.am (install-freestanding-headers): Add missing
245 * include/Makefile.in: Regenerate.
247 2014-08-21 Tony Wang <tony.wang@arm.com>
249 * testsuite/18_support/nested_exception/62154.cc: Disable when the
250 target doesn't provide atomic builtins.
252 2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
253 Kai Tietz <ktietz@redhat.com>
255 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
257 * config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
259 * libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
260 #include <windows.h>.
261 (struct elt): Add dll member.
262 (run): Decrement dll refcount.
263 (__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.
265 2014-08-15 Jonathan Wakely <jwakely@redhat.com>
268 * libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
269 Rewrite to conform to C++11 requirements.
270 * testsuite/18_support/nested_exception/62154.cc: New.
272 2014-08-14 Matthias Klose <doko@ubuntu.com>
274 * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
275 Remove empty directory.
277 2014-08-14 Paolo Carlini <paolo.carlini@oracle.com>
279 * testsuite/26_numerics/random/linear_congruential_engine/
280 requirements/non_uint_neg.cc: Adjust for parser change.
281 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
282 requirements/non_uint_neg.cc: Likewise.
284 2014-08-13 Jonathan Wakely <jwakely@redhat.com>
287 * include/std/thread (thread::_M_start_thread): Declare new overload.
288 (thread::thread<_Callable, _Args...>): Call new overload with an
289 explicit reference to pthread_create.
290 * src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
291 * config/abi/pre/gnu.ver: Export new function.
293 2014-08-13 Sylvestre Ledru <sylvestre@debian.org>
295 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
297 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
299 * Fix thinko in the last commit.
301 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
304 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
305 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
307 2014-08-12 Jonathan Wakely <jwakely@redhat.com>
309 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
310 and add overloads for rvalue streams.
311 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
313 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
316 * include/bits/basic_string.h (getline): Declare inline.
318 2014-08-09 Ulrich Drepper <drepper@gmail.com>
320 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
321 (uniform_on_sphere_distribution::operator()): Use the new helper
322 class for the implementation.
324 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
325 equal.cc: Remove bogus part of comment.
326 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
327 inequal.cc: Likewise.
328 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
329 serialize.cc: Add check to verify result of serialzation and
331 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
332 generate.cc: New file.
334 2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
336 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
337 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
339 2014-08-09 François Dumont <fdumont@gcc.gnu.org>
342 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
343 _M_need_rehash to initialize the rehash policy and check if a rehash is
345 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
347 2014-08-07 Jonathan Wakely <jwakely@redhat.com>
349 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
351 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
352 Adjust dg-error line number.
353 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
355 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
357 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
360 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
362 (_State_baseV2::_M_do_set): Change parameters to pointers.
363 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
364 (_State_baseV2::__setter): Initialize _Setter with pointers.
365 (_State_baseV2::__setter(promise<void>*)): Remove overload.
366 (promise::set_value, promise::set_exception): Pass setter directly
368 (_State_baseV2::_Task_setter): Add template parameter for callable
369 type and replace std::function member with pointer to that type.
370 Change _M_result member from reference to pointer.
371 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
372 and initialize _Task_setter with pointers.
373 (__location_invariant): Specialize for _Setter and _Task_setter.
375 * include/std/future (__location_invariant): Move specializations
376 after preprocessor condition.
378 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
381 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
383 2014-08-01 Zifei Tong <zifeitong@gmail.com>
385 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
386 _GLIBCXX_ prefix to macro.
388 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
390 * python/libstdcxx/v6/printers.py
391 (SingleObjContainerPrinter._contained): Use compatibility mixin.
393 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
395 * testsuite/util/testsuite_allocator.h
396 (tracker_allocator_counter::allocate): Remove new invocation, only
398 (tracker_allocator_counter::deallocate): Remove delete invocation, only
400 (check_inconsistent_alloc_value_type): New.
401 (tracker_allocator): Transform as a facade for any allocator type.
402 (uneq_allocator): Likewise.
403 (propagating_allocator): Likewise.
404 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
405 explicitly non propagating allocator.
406 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
407 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
408 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
409 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
410 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
412 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
414 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
416 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
418 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
420 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
423 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
424 const allocator_type&)): Pass non-const allocator to
426 * testsuite/ext/rope/61946.cc: New.
429 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
430 disambiguate unary constructors.
431 (_Tuple_impl): Pass allocator_arg_t arguments.
432 * testsuite/20_util/tuple/61947.cc: New.
433 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
435 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
437 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
438 * include/bits/random.h (_Adaptor): static_assert for non floating-point
440 * include/bits/random.tcc (generate_canonical): Ditto.
441 * include/ext/random.tcc (hypergeometric_distribution::operator()):
442 Use double as a rng result type.
443 * testsuite/26_numerics/random/pr60037-neg.cc: New.
444 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
446 2014-07-25 Uros Bizjak <ubizjak@gmail.com>
448 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
450 2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
452 * include/experimental/string_view: Make the literal operators
453 constexpr like the ctors they call.
455 2014-07-23 H.J. Lu <hongjiu.lu@intel.com>
457 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
459 2014-07-23 Jonathan Wakely <jwakely@redhat.com>
461 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
462 to string instead of using gdb.Type.name attribute.
464 2014-07-19 Jonathan Wakely <jwakely@redhat.com>
466 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
469 2014-07-18 Jonathan Wakely <jwakely@redhat.com>
472 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
474 (SingleObjContainerPrinter): Check if type printers are in use.
476 2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
478 * include/ext/random: Minor formatting and cosmetic tweaks.
479 (uniform_on_sphere_distribution<>::operator==
480 (const uniform_on_sphere_distribution&,
481 const uniform_on_sphere_distribution&)): Compare the _M_nds.
482 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
483 (operator!=(const uniform_on_sphere_distribution&,
484 const uniform_on_sphere_distribution&)): Adjust.
485 * include/ext/random.tcc: Minor cosmetc tweaks.
487 2014-07-15 Jonathan Wakely <jwakely@redhat.com>
489 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
490 printer for class templates.
491 (register_type_printers): Use TemplateTypePrinter for containers
492 and other class templates with default template arguments.
493 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
495 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
496 base class for experimental::any and experimental::optional printers.
497 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
498 New printers for Fundamentals TS types.
499 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
501 2014-07-15 Tim Shen <timshen@google.com>
504 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
505 Clear match queue for next use.
506 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
508 2014-07-14 Ulrich Drepper <drepper@gmail.com>
510 * include/ext/random.tcc: Unfortunately more fixes for
511 operator>> and operator<< for uniform_on_sphere_distribution.
513 2014-07-13 Ulrich Drepper <drepper@gmail.com>
515 * include/ext/random.tcc: Fix operator>> and operator<< for
516 uniform_on_sphere_distribution.
518 2014-07-12 Ulrich Drepper <drepper@gmail.com>
520 * include/ext/random: Add uniform_on_sphere_distribution definition.
521 * include/ext/random.tcc: Add out-of-band member function definitions
522 for uniform_on_sphere_distribution.
523 * testsuite/ext/random/uniform_on_sphere_distribution/
524 cons/default.cc: New file.
525 * testsuite/ext/random/uniform_on_sphere_distribution/
526 operators/equal.cc: New file.
527 * testsuite/ext/random/uniform_on_sphere_distribution/
528 operators/inequal.cc: New file.
529 * testsuite/ext/random/uniform_on_sphere_distribution/
530 operators/serialize.cc: New file.
532 2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
534 Add the logistic_distribution as an extension.
535 * include/ext/random: Add the logistic_distribution.
536 * include/ext/random.tcc: Add the logistic_distribution.
537 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
538 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
539 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
541 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
542 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
543 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
546 2014-07-11 Samuel Bronson <naesten@gmail.com>
548 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
549 instead of insisting that GCC understand -fdiagnostics-color=never
551 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
554 2014-07-11 Samuel Bronson <naesten@gmail.com>
555 Matthias Klose <doko@ubuntu.com>
558 * python/libstdcxx/v6/printers.py: Port to Python 2+3
559 (imap): New compat function.
561 (Iterator): New mixin to allow writing iterators in Python 3 style
562 regardless of which version we're running on.
563 [Python3] (long) New compat alias for "int".
564 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
566 2014-07-10 Jonathan Wakely <jwakely@redhat.com>
568 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
569 tuple members to simplify pretty printing.
570 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
572 * testsuite/experimental/any/cons/4.cc: New.
574 2014-07-09 Jason Merrill <jason@redhat.com>
577 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
578 * libsupc++/tinfo.h: Not here.
580 2014-07-08 Jonathan Wakely <jwakely@redhat.com>
582 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
584 * include/experimental/any: Remove unused header.
585 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
586 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
587 * testsuite/util/testsuite_regex.h: Move include guard.
589 2014-07-01 Tim Shen <timshen@google.com>
593 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
594 a NFA state limit. If it's exceeded, regex_constants::error_space
596 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
597 map (which is sparse) instead of vector. This reduce n times clones'
598 cost from O(n^2) to O(n).
599 * include/std/regex: Add map dependency.
600 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
603 2014-07-01 Tim Shen <timshen@google.com>
606 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
607 not just regex containing back-references.
608 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
609 exchange _M_next and _M_alt for alternative operator,
610 making matching from left to right.
611 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
612 Add position tracking fom DFS.
613 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
614 _Executor<>::_M_dfs): Likewise.
615 * include/bits/regex_scanner.h: Remove unused enum entry.
616 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
619 2014-06-30 Jason Merrill <jason@redhat.com>
621 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
624 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
627 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
628 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
631 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
633 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
635 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
637 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
639 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
642 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
644 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
645 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
646 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
648 * include/ext/alloc_traits.h: Fix comment.
650 * include/Makefile.am: Add new header.
651 * include/Makefile.in: Regenerate.
652 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
653 New RAII utilities for working with allocators.
654 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
655 __allocator_type typedef and use new __allocated_ptr type.
656 (_Sp_counted_ptr_inplace): Likewise.
657 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
658 __allocate_guarded to to simplify exception handling.
659 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
660 * include/std/future (_Result_alloc::_M_destroy): Likewise.
661 (_Result_alloc::_S_allocate_result): Likewise.
662 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
663 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
664 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
665 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
667 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
669 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
671 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
672 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
674 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
676 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
677 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
678 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
679 Remove unused typedef.
680 (time_get::do_get_monthname): Likewise.
681 * include/bits/stl_tree.h: Add system_header pragma.
682 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
683 redundant const-qualifier.
684 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
685 instead of _GLIBCXX_USE_CONSTEXPR.
687 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
689 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
690 * include/std/chrono (_Checked_integral_constant): Allow zero.
691 * testsuite/20_util/duration/literals/values.cc: Test non-positive
692 values and digit separators.
693 * include/experimental/any
696 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
697 apply the signed specifier to wchar_t.
698 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
699 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
700 cv-qualifier and size.
701 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
704 * include/experimental/any (any_v1): Rename namespace to
705 fundamentals_v1. Change string returned by bad_any_cast::what().
706 * include/experimental/optional (fundamentals_v1): Add namespace.
707 * include/experimental/string_view (fundamentals_v1): Likewise.
708 * testsuite/experimental/any/typedefs.cc: New.
709 * testsuite/experimental/optional/typedefs.cc: New.
710 * testsuite/experimental/string_view/typedefs.cc: New.
712 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
713 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
716 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
718 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
720 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
721 * include/Makefile.am: Add new header.
722 * include/Makefile.in: Regenerate.
723 * include/experimental/any: New.
724 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
726 * testsuite/experimental/any/assign/1.cc: New.
727 * testsuite/experimental/any/assign/2.cc: New.
728 * testsuite/experimental/any/cons/1.cc: New.
729 * testsuite/experimental/any/cons/2.cc: New.
730 * testsuite/experimental/any/cons/3.cc: New.
731 * testsuite/experimental/any/misc/any_cast.cc: New.
732 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
733 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
734 * testsuite/experimental/any/misc/swap.cc: New.
735 * testsuite/experimental/any/modifiers/1.cc: New.
736 * testsuite/experimental/any/observers/type.cc: New.
738 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
739 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
741 * include/bits/shared_ptr.h (shared_ptr): Likewise.
742 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
744 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
746 * include/parallel/list_partition.h (__parallel::list_partition):
748 * include/std/iomanip (quoted): Likewise.
749 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
751 * doc/xml/api.xml: Link to more recent API docs.
752 * include/bits/allocator.h: Fix link in doxygen comment.
753 * include/bits/char_traits.h: Likewise.
754 * include/bits/ios_base.h: Likewise.
755 * include/bits/stl_map.h: Likewise.
756 * include/bits/stl_multimap.h: Likewise.
757 * include/bits/stl_multiset.h: Likewise.
758 * include/bits/stl_set.h: Likewise.
759 * include/bits/unordered_map.h: Likewise.
760 * include/bits/unordered_set.h: Likewise.
761 * include/ext/mt_allocator.h: Likewise.
762 * include/std/fstream: Likewise.
763 * include/std/iosfwd: Likewise.
764 * include/std/ostream: Likewise.
765 * include/std/sstream: Likewise.
766 * include/std/streambuf: Likewise.
767 * doc/html/*: Regenerate.
769 * include/experimental/any (any_cast): Combine duplicate doxygen
771 * include/experimental/string_view (basic_string_view): Update
773 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
774 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
775 (dynamic_bitset): Improve Doxygen comments.
776 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
779 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
781 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
782 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
784 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
787 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
788 (bin_search_tree_traits): Do not redeclare template-parameters.
789 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
791 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
793 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
794 parameter for DocBook HTML generation.
795 * doc/Makefile.in: Regenerate.
796 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
797 * doc/xml/faq.xml: Update content and improve formatting.
798 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
799 * doc/xml/manual/allocator.xml: Add stable ID attribute.
800 * doc/xml/manual/bitmap_allocator.xml: Likewise.
801 * doc/xml/manual/build_hacking.xml: Likewise.
802 * doc/xml/manual/codecvt.xml: Change URL.
803 * doc/xml/manual/ctype.xml: Add stable ID attribute.
804 * doc/xml/manual/debug_mode.xml: Likewise.
805 * doc/xml/manual/documentation_hacking.xml: Likewise.
806 * doc/xml/manual/evolution.xml: Likewise.
807 * doc/xml/manual/extensions.xml: Likewise.
808 * doc/xml/manual/locale.xml: Likewise.
809 * doc/xml/manual/messages.xml: Make section id consistent, improve
811 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
812 * doc/xml/manual/profile_mode.xml: Likewise.
813 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
814 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
815 * doc/xml/manual/status_cxx2011.xml: Likewise.
816 * doc/xml/manual/status_cxx2014.xml: Likewise.
817 * doc/xml/manual/status_cxxtr1.xml: Likewise.
818 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
819 * doc/xml/manual/using.xml: Likewise.
820 * doc/html/*: Regenerate.
822 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
824 * include/tr1/beta_function.tcc: Fix spelling of include guard in
827 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
829 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
831 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
833 DR 2344 - std::quoted doesn't respect padding
834 * include/std/iomanip: Allow for padding in quoted inserters.
835 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
836 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
838 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
840 * testsuite/23_containers/map/operators/1.cc: Simplify test.
842 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
844 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
846 * doc/xml/manual/backwards_compatibility.xml
847 (backwards.second.stringstreams): Likewise.
848 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
850 * doc/xml/manual/containers.xml (associative.bitset.type_string):
851 Replace <quote> in code example.
852 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
853 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
854 fix typos, improve markup.
855 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
856 <emphasis> with <replaceable>.
857 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
858 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
859 and remove newlines in string literal.
861 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
865 * testsuite/20_util/is_assignable/value.cc: Update.
867 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
869 * include/std/condition_variable (condition_variable_any::_Unlock): Do
870 not swallow __forced_unwind.
871 * include/std/future (__future_base::_Task_setter): Likewise.
872 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
874 * include/std/mutex (try_lock): Likewise.
875 * testsuite/30_threads/async/forced_unwind.cc: New.
876 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
878 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
879 members to avoid wasted space when not using a cache.
880 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
881 * include/bits/regex_compiler.tcc
882 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
884 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
885 New enumeration type to indicate match mode.
886 (__detail::_Executor::_State_info): New type holding members only
887 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
889 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
890 Replace template parameter with run-time function parameter.
891 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
892 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
893 implement DFS and BFS mode.
894 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
895 Split implementation into ...
896 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
897 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
898 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
899 argument instead of template argument.
900 (__detail::_Executor::_M_dfs): Likewise.
901 * include/bits/regex_scanner.tcc: Fix typos in comments.
902 * testsuite/performance/28_regex/range.cc: New.
904 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
905 Jonathan Wakely <jwakely@redhat.com>
907 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
909 (aligned_union): New struct (C++11).
910 (aligned_union_t): New type alias (C++14).
911 * doc/xml/manual/status_cxx2011.xml: Update.
912 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
913 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
916 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
919 * include/experimental/string_view (operator basic_string): Correct
921 (to_string): Replace with member function.
922 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
923 allow _M_str to be null.
924 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
925 default constructor semantics.
926 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
927 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
928 copyright dates. Remove unused header.
929 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
931 * testsuite/experimental/string_view/operations/data/char/1.cc:
932 Fix copyright dates. Adjust to new default constructor semantics.
933 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
935 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
937 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
938 (__uses_allocator_arg): Remove unused type.
939 (__uses_alloc0): Turn into a trivial type.
940 (__uses_alloc): Add missing template parameter in primary template.
941 (__uses_alloc_impl): Rename to __uses_alloc_t.
943 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
945 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
946 work with previous versions of Tcl.
948 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
949 Benjamin's old email address.
951 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
954 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
956 * include/tr2/bool_set: Use UTF-8 for accented characters.
957 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
958 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
959 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
961 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
964 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
966 (_State_base::_M_dot): Likewise.
968 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
970 * include/profile/map.h: Fix typo in comment; minor formatting fix.
971 * include/profile/multimap.h: Likewise.
972 * include/profile/set.h: Likewise.
973 * include/profile/multiset.h: Likewise.
975 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
977 * include/profile/array: Clean useless white chars.
978 * include/profile/base.h: Likewise.
979 * include/profile/iterator_tracker.h: Likewise.
980 * include/profile/bitset: Code cleanup and remove not instrumented code.
981 * include/profile/deque: Likewise.
982 * include/profile/forward_list: Likewise.
983 * include/profile/list (std::__profile::_List_profile<>): New.
984 (std::__profile::list<>): Inherit from latter and adapt.
985 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
986 advise to match any ordered to unordered container conversion.
987 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
989 * include/Makefile.am: Add latter.
990 * include/Makefile.in: Regenerate.
991 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
992 remove not instrumented code.
993 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
994 * include/profile/set.h (std::__profile::set<>): Likewise.
995 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
996 * include/profile/unordered_base.h: Add some line feed.
997 * include/profile/unordered_map: Clean useless white chars and replace
999 * include/profile/unordered_set: Likewise.
1000 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
1001 (std::__profile::_Vector_profile_post<>): New.
1002 (std::__profile::vector<>): Inherit from latter and adapt.
1004 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
1007 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
1008 dragonfly target selector to all tests that run on freebsd.
1010 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
1012 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
1013 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
1015 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
1017 * testsuite/30_threads/call_once/60497.cc: Likewise.
1018 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
1019 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
1020 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
1021 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
1022 * testsuite/30_threads/promise/60966.cc: Likewise.
1023 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
1024 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
1025 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
1026 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
1027 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
1028 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
1029 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
1030 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
1031 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
1032 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
1033 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
1034 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
1035 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
1036 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
1037 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
1038 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
1039 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
1041 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
1044 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
1046 * testsuite/23_containers/unordered_set/61143.cc: New.
1047 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
1049 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
1052 * include/std/type_traits: Move include outside namespace std.
1053 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
1054 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1055 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1058 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
1061 2014-05-21 John Marino <gnugcc@marino.st>
1063 * acinclude.m4 (*-*-dragonfly*): New target.
1064 * configure: Regenerate.
1065 * configure.host (*-*-dragonfly*): New target.
1066 * config/locale/dragonfly/c_locale.cc: New.
1067 * config/locale/dragonfly/ctype_members.cc: New.
1068 * config/os/bsd/dragonfly/ctype_base.h: New.
1069 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
1070 * config/os/bsd/dragonfly/ctype_inline.h: New.
1071 * config/os/bsd/dragonfly/os_defines.h: New.
1073 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
1075 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
1076 libstdc++.exp imports those flags via getenv.
1077 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
1078 CXXFLAGS contains a '-O' flag.
1080 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1084 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1087 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1088 and add unwind directives.
1090 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
1092 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
1094 2014-05-20 Tim Shen <timshen91@gmail.com>
1097 * include/bits/regex_compiler.h
1098 (_BracketMatcher<>::_M_add_character_class): Add negative character
1100 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
1102 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
1105 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
1107 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
1109 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
1111 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
1112 * libsupc++/new_opnt.cc: Likewise.
1114 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
1117 * include/std/future (__future_base::_State_baseV2::_M_set_result):
1118 Pass lock into _M_do_set and hold it until the function returns.
1119 Signal condition variable after call_once completes.
1120 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
1122 * testsuite/30_threads/promise/60966.cc: New.
1124 2014-05-16 Iain Sandoe <iain@codesourcery.com>
1125 Sandra Loosemore <sandra@codesourcery.com>
1127 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
1128 until after checking that the test is eligible to be run.
1130 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1132 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
1133 test for 32-bit target.
1134 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1136 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
1139 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1142 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1143 and add unwind directives.
1145 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1147 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
1149 * include/std/chrono (chrono_literals::__select_type::_Select_type):
1151 (chrono_literals::_Checked_integral_constant): Define.
1152 Simplify UDL operator templates and check for overflow.
1153 * testsuite/20_util/duration/literals/range.cc: New.
1155 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
1156 Jonathan Wakely <jwakely@redhat.com>
1159 * include/bits/parse_numbers.h: Use integral_constant to remove
1160 duplication and simplify.
1161 * testsuite/20_util/duration/literals/61166.cc: New.
1163 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1166 * include/std/type_traits (__make_unsigned, __make_signed): Define
1167 specializations for wchar_t, char16_t and char32_t.
1168 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
1169 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
1170 test for make_unsigned<volatile wchar_t>.
1171 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1173 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1175 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1177 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1180 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1182 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
1183 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
1184 * include/std/utility (tuple_size, tuple_element): Likewise.
1185 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1186 Adjust dg-error line number.
1188 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
1190 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
1191 (__tuple_element_t): Define.
1192 (tuple_element): Use __tuple_element_t.
1193 (__cv_tuple_size): Define.
1194 (tuple_size<cv _Tp>): Use __cv_tuple_size.
1195 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
1196 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
1197 (__tuple_compare): Remove size check, re-order parameters.
1198 (operator==, operator<): Use static_assert to check requirements.
1199 * include/std/functional (__volget): use __tuple_element_t.
1200 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
1201 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
1203 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
1206 * include/std/tuple (get, __tuple_compare): Qualify more calls to
1207 prevent ADL. Cast comparison results to bool.
1208 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
1209 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
1212 * include/debug/array (get): Qualify call to other get overload.
1213 * include/profile/array (get): Likewise.
1214 * include/std/array (get): Likewise.
1215 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
1216 * include/std/mutex (unique_lock, call_once): Use __addressof.
1217 (__unlock_impl): Remove unused template.
1218 (__try_to_lock): Declare inline.
1219 (__try_lock_impl::__do_try_lock): Qualify function calls.
1220 (lock): Avoid narrowing conversion.
1221 * testsuite/20_util/bind/60497.cc: New.
1222 * testsuite/23_containers/array/element_access/60497.cc: New.
1223 * testsuite/30_threads/call_once/60497.cc: New.
1224 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
1226 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
1228 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
1229 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
1230 * acinclude.m4 (libtool_VERSION): Bump.
1231 * configure: Regenerate.
1232 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
1233 * testsuite/28_regex/regex_error/base.cc: New.
1235 2014-05-08 Joshua Gay <jgay@gnu.org>
1238 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
1239 source" with "free software".
1240 * doc/html/faq.html: Likewise.
1242 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
1245 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
1247 (operator=(const ios_base&)): Likewise.
1248 * include/std/streambuf: Remove trailing whitespace.
1249 (basic_streambuf(const basic_streambuf&)): Fix initializer for
1250 _M_out_end. Define as defaulted for C++11.
1251 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
1252 (swap(basic_streambuf&)): Define for C++11.
1253 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
1256 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
1258 * include/std/iostream: Fix URL in comment.
1259 * src/c++98/ios_init.cc: Fix path in comment.
1261 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
1263 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
1264 * configure: Regenerate.
1266 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
1269 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
1270 comparison function.
1271 * testsuite/23_containers/set/cons/61023.cc: New.
1274 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
1276 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
1277 arithmetic to obtain a mutable iterator from const_iterator.
1278 * include/bits/vector.tcc (vector::insert): Likewise.
1279 * include/debug/vector (vector::erase): Likewise.
1280 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1281 Adjust dg-error line number.
1282 * testsuite/23_containers/vector/requirements/dr438/
1283 constructor_1_neg.cc: Likewise.
1284 * testsuite/23_containers/vector/requirements/dr438/
1285 constructor_2_neg.cc: Likewise.
1286 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1289 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
1291 * include/Makefile.in: Regenerate.
1293 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
1295 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1296 parameter to pass the 2 instances to check allocator equality.
1297 * include/debug/safe_container.h: New, define _Safe_container<>.
1298 * include/Makefile.am: Add previous.
1299 * include/debug/deque (std::__debug::deque<>): Inherit
1300 _Safe_container<>. Use default implementation for all special
1302 * include/debug/forward_list (std::__debug::forward_list<>):
1304 * include/debug/list (std::__debug::list<>): Likewise.
1305 * include/debug/map.h (std::__debug::map<>): Likewise.
1306 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1307 * include/debug/set.h (std::__debug::set<>): Likewise.
1308 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1309 * include/debug/string (std::__debug::basic_string<>): Likewise.
1310 * include/debug/unordered_map
1311 (std::__debug::unordered_map<>): Likewise.
1312 (std::__debug::unordered_multimap<>): Likewise.
1313 * include/debug/unordered_set
1314 (std::__debug::unordered_set<>): Likewise.
1315 (std::__debug::unordered_multiset<>): Likewise.
1316 * include/debug/vector (std::__debug::vector<>): Likewise.
1317 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1319 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1320 (~_Safe_sequence_base()): Add noexcept.
1321 * include/debug/safe_sequence.h
1322 (std::__debug::_Safe_node_sequence<>): New.
1323 * include/debug/safe_unordered_base.h
1324 (_Safe_unordered_container_base()): Add noexcept.
1325 (~_Safe_unordered_container_base()): Likewise.
1326 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1327 * include/debug/safe_unordered_container.h:
1328 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1329 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1330 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1332 * testsuite/util/debug/checks.h (check_construct1): Just implement
1333 an invalid constructor invocation and no other operations
1334 potentially not supported by some types of container.
1335 (check_construct2): Likewise.
1336 (check_construct3): Likewise.
1337 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1338 check on iterators to make sure they are correctly moved in debug
1340 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1342 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1343 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1344 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1345 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1347 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1348 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1350 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1351 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1352 * testsuite/23_containers/unordered_map/allocator/move.cc:
1354 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1356 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1358 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1360 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1362 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1364 * testsuite/23_containers/unordered_set/allocator/move.cc:
1366 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1368 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1370 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1372 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1374 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1376 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1378 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1379 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1380 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1381 * testsuite/23_containers/map/debug/move_neg.cc: New.
1382 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1383 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1384 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1385 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1386 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1387 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1388 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1389 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1390 * testsuite/23_containers/set/debug/move_neg.cc: New.
1391 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1393 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1395 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1396 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1398 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1400 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1402 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1404 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1406 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1408 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1410 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1412 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1413 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1415 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1417 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1418 (CXXABI_1.3.9): Remove __float128 symbols.
1420 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
1423 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1424 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1425 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1426 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1428 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1431 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1432 Check the correct type in the static assertion.
1433 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1435 2014-04-27 Tim Shen <timshen91@gmail.com>
1437 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1438 Add _S_opcode_repeat support to distingush a loop from
1439 _S_opcode_alternative.
1440 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1441 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1442 _StateSeq<>::_M_clone): Likewise.
1443 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1445 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1446 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1447 Uglify local variable __i.
1448 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1449 Use size_t instead of int to compare with vector::size().
1451 2014-04-27 Tim Shen <timshen91@gmail.com>
1453 * include/bits/regex_executor.h: Add _M_rep_count to track how
1454 many times this repeat node are visited.
1455 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1456 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1459 2014-04-27 Tim Shen <timshen91@gmail.com>
1461 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1462 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1463 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1464 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1465 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1466 Adjust debug NFA dump.
1468 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1471 * include/experimental/optional (operator!=): Implement in terms of
1473 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1474 * testsuite/experimental/optional/relops/2.cc: Likewise.
1475 * testsuite/experimental/optional/relops/3.cc: Likewise.
1476 * testsuite/experimental/optional/relops/4.cc: Likewise.
1477 * testsuite/experimental/optional/relops/5.cc: Likewise.
1478 * testsuite/experimental/optional/relops/6.cc: Likewise.
1480 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
1483 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1484 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1487 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
1489 * testsuite/util/testsuite_abi.cc (check_version): Update for
1492 2014-04-24 Tim Shen <timshen91@gmail.com>
1494 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1495 Do _M_alt before _M_next.
1496 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1498 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
1501 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1502 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1503 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1505 2014-04-24 Andreas Schwab <schwab@suse.de>
1507 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1508 new CXXABI_1.3.9 symbols.
1510 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1512 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1513 (CXXABI_1.3.9): New version.
1515 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
1518 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1519 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1520 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1522 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1524 * configure.host: Remove solaris2.9 handling.
1525 Change os_include_dir to os/solaris/solaris2.10.
1526 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1527 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1528 * configure: Regenerate.
1529 * config/abi/post/solaris2.9: Remove.
1530 * config/os/solaris/solaris2.9: Rename to ...
1531 * config/os/solaris/solaris2.10: ... this.
1532 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1535 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1536 Remove Solaris 9 reference.
1537 * doc/html/manual/configure.html: Regenerate.
1539 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1540 Remove *-*-solaris2.9 xfail.
1541 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1544 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1547 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
1549 * include/std/functional (__is_location_invariant): Use __or_ helper.
1551 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
1554 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1557 * include/std/atomic (atomic<_Tp>): Add static assertion.
1558 * testsuite/29_atomics/atomic/60695.cc: New.
1561 * include/std/functional (function::_Callable): Exclude own type
1562 from the callable checks.
1563 * testsuite/20_util/function/60594.cc: New.
1565 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1566 const to constexpr member functions.
1568 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1569 delegating constructor.
1570 * include/bits/shared_ptr_base.h
1571 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1573 * include/std/atomic: Uglify parameter names.
1576 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1577 1.cc: Fix invalid explicit instantiations with unqualified names.
1578 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1580 * testsuite/20_util/tuple/53648.cc: Likweise.
1581 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1583 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1585 * testsuite/23_containers/unordered_map/requirements/
1586 debug_container.cc: Likewise.
1587 * testsuite/23_containers/unordered_map/requirements/
1588 explicit_instantiation/3.cc: Likewise.
1589 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1591 * testsuite/23_containers/unordered_multimap/requirements/
1592 explicit_instantiation/3.cc: Likewise.
1593 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1595 * testsuite/23_containers/unordered_multiset/requirements/
1596 explicit_instantiation/3.cc: Likewise.
1597 * testsuite/23_containers/unordered_set/requirements/
1598 debug_container.cc: Likewise.
1599 * testsuite/23_containers/unordered_set/requirements/
1600 explicit_instantiation/3.cc: Likewise.
1602 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1603 not use uninitialized members in mem-initializers.
1604 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1605 * testsuite/util/testsuite_common_types.h: Update comment.
1607 * include/experimental/string_view: Fix inconsistent exception specs.
1609 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1610 Remove name of unused parameter.
1612 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
1614 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1615 _Vector_base::_M_allocate): NullablePointer requirements do not
1616 include initialization from literal zero, use value-initialization.
1617 * include/bits/vector.tcc (vector::_M_insert_aux,
1618 vector::_M_explace_back_aux): Likewise for assignment.
1620 * include/bits/allocator.h (operator==, operator!=): Add exception
1624 * include/std/tuple (get): Qualify calls to prevent ADL.
1625 * testsuite/20_util/tuple/60497.cc: New.
1627 * include/std/tuple (tuple_element_t): Define.
1628 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1630 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1632 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1635 * include/bits/stl_iterator.h (move_iterator::reference,
1636 move_iterator::operator*): Implement LWG 2106.
1637 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1639 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1641 * include/std/complex (__complex_exp, pow): Specify the template
1642 parameter in calls to std::polar, for expression templates.
1644 2014-04-10 Andreas Schwab <schwab@suse.de>
1646 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1648 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1649 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1651 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1653 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1655 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1656 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1657 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1660 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1661 Jack Howarth <howarth@bromo.med.uc.edu>
1664 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1667 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1669 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1671 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1673 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1674 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1675 * doc/xml/manual/concurrency_extensions.xml
1676 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1677 * doc/html/*: Regenerate.
1679 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1680 Jonathan Wakely <jwakely@redhat.com>
1683 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1684 string if input is not quoted.
1685 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1687 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1689 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1691 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1693 * testsuite/18_support/exception_ptr/60612-terminate.cc
1694 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1695 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1697 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1699 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1701 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1702 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1704 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1706 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1708 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1709 Fix bad s/part/chapter/ substitutions.
1710 * doc/xml/manual/io.xml (std.io): Likewise.
1711 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1712 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1714 * doc/html/*: Regenerate.
1716 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1719 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1720 compatible with __cxa_exception.
1721 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1722 Fix typos in comments.
1723 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1724 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1726 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1729 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1730 Use sizeof pointer type not the element type.
1731 * testsuite/29_atomics/atomic/60658.cc: New.
1733 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1735 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1736 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1737 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1738 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1739 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1740 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1741 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1742 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1743 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1744 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1747 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1749 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1751 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1753 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1754 to delegated constructor.
1755 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1756 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1759 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1761 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1764 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1766 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1769 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1770 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1772 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1773 from different types of debug container. Use _Is_contiguous_sequence
1774 instead of is_lvalue_reference.
1775 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1776 dereferencing past-the-end iterator.
1777 (__foreign_iterator_aux4): Use const value_type* instead of
1778 potentially user-defined const_pointer type.
1779 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1780 and pass end iterator to __gnu_debug::__foreign_iterator.
1781 (__glibcxx_check_insert_range_after): Likewise.
1782 (__glibcxx_check_max_load_factor): Fix comment.
1783 * include/debug/vector (_Is_contiguous_sequence): Define partial
1785 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1786 -std=gnu++11 option and unused header.
1787 * testsuite/23_containers/vector/debug/60587.cc: New.
1788 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1790 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1792 * crossconfig.m4: Support spu-*-elf* targets.
1793 * configure: Regenerate.
1795 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1798 * include/std/future (__future_base::_Task_state<>): Change
1799 constructors to template functions using perfect forwarding.
1800 (__create_task_state): Use decayed type as stored task.
1801 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1802 * testsuite/30_threads/packaged_task/60564.cc: New.
1804 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1806 * scripts/create_testsuite_files: Add testsuite/experimental in
1807 the list of folders to search for tests.
1809 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1811 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1813 2014-03-15 Tim Shen <timshen91@gmail.com>
1815 * include/bits/regex.h: Add/modify comments.
1816 * include/bits/regex_compiler.h: Likewise.
1817 * include/bits/regex_executor.h: Likewise.
1818 * include/bits/regex_executor.tcc: Likewise.
1819 * include/bits/regex_scanner.h: Likewise.
1821 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
1824 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
1825 _ZNSt12system_errorC* symbols which are not exported on any target.
1827 2014-03-12 Roland McGrath <mcgrathr@google.com>
1828 Mark Seaborn <mseaborn@google.com>
1831 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
1832 the address of a null pointer, not with a null pointer to pointer.
1833 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
1834 * testsuite/18_support/bad_exception/59392.cc: New file.
1836 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
1839 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
1841 * include/debug/map (map::operator=(map&&)): Likewise.
1842 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
1843 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
1844 * include/debug/set (set::operator=(set&&)): Likewise.
1845 * include/debug/unordered_map
1846 (unordered_map::operator=(unordered_map&&)): Likewise.
1847 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
1848 * include/debug/unordered_set
1849 (unordered_set::operator=(unordered_set&&)): Likewise.
1850 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
1851 * include/debug/vector (vector::operator=(vector&&)): Likewise.
1852 * testsuite/23_containers/forward_list/debug/60499.cc: New
1853 * testsuite/23_containers/map/debug/60499.cc: New
1854 * testsuite/23_containers/multimap/debug/60499.cc: New
1855 * testsuite/23_containers/multiset/debug/60499.cc: New
1856 * testsuite/23_containers/set/debug/60499.cc: New
1857 * testsuite/23_containers/unordered_map/debug/60499.cc: New
1858 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
1859 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
1860 * testsuite/23_containers/unordered_set/debug/60499.cc: New
1861 * testsuite/23_containers/vector/debug/60499.cc: New
1863 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
1865 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
1866 for filesystem and fundamentals TS work items.
1868 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
1871 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
1872 Adjust dg-error directives.
1874 2014-02-26 Tim Shen <timshen91@gmail.com>
1876 * include/bits/regex.tcc (match_results<>::format,
1877 regex_replace<>): Update __out after calling std::copy.
1878 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
1880 * testsuite/28_regex/match_results/format.cc: Likewise.
1882 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
1885 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
1886 allocator_type&)): Remove redundant call to _M_initialize_map.
1887 (deque::deque(const allocator_type&)): Initialize _Base with a
1888 constructor that calls _M_initialize_map.
1892 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
1894 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
1897 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
1899 Rename testsuite directory shared_mutex to shared_timed_mutex
1901 * testsuite/30_threads/shared_mutex: Moved to...
1902 * testsuite/30_threads/shared_timed_mutex: ...here
1904 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
1906 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
1907 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
1908 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
1909 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
1910 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
1911 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
1912 * testsuite/30_threads/shared_lock/requirements/
1913 explicit_instantiation.cc: Ditto.
1914 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
1915 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
1916 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
1917 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
1918 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
1919 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
1920 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
1921 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
1922 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
1923 * testsuite/30_threads/shared_mutex/requirements/
1924 standard_layout.cc: Ditto.
1925 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
1926 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
1927 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
1928 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
1929 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
1931 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1933 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
1934 execution on i?86-*-solaris2.9, remove comment.
1935 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1937 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
1939 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
1940 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
1941 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
1943 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
1945 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
1946 not use varargs when argument could be non-POD.
1947 (__alloctr_rebind_helper): Eliminate static const bool member by
1948 using true_type and false_type.
1949 (allocator_traits::__allocate_helper): Likewise.
1950 (allocator_traits::__construct_helper): Likewise.
1951 (allocator_traits::__destroy_helper): Likewise.
1952 (allocator_traits::__maxsize_helper): Likewise.
1953 (allocator_traits::__select_helper): Likewise.
1954 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
1955 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
1956 Remove redundant condition.
1957 * include/bits/stl_vector.h (vector::operator=(const vector&)):
1959 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
1960 indirection through __alloc_traits.
1961 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1962 Eliminate static const bool members by using true_type and false_type.
1963 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
1964 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
1965 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
1967 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
1970 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
1971 (vector::_M_data_ptr): New overloaded functions to ensure empty
1972 vectors do not dereference the pointer.
1973 * testsuite/23_containers/vector/59829.cc: New.
1974 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1975 Adjust dg-error line number.
1976 * testsuite/23_containers/vector/requirements/dr438/
1977 constructor_1_neg.cc: Likewise.
1978 * testsuite/23_containers/vector/requirements/dr438/
1979 constructor_2_neg.cc: Likewise.
1980 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1984 * include/ext/array_allocator.h: Add deprecated attribute.
1987 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
1988 installation and use of python printers.
1989 * doc/xml/manual/status_cxx2011.xml: Update.
1990 * doc/html/*: Regenerate.
1992 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
1993 Kyle Lippincott <spectral@google.com>
1996 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
1997 constructor and grant friendship to weak_ptr.
1998 (weak_ptr::lock()): Use new constructor.
1999 * include/bits/shared_ptr_base.h
2000 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
2001 and define specializations.
2002 (__shared_count): Add new non-throwing constructor.
2003 (__shared_ptr): Add new non-throwing constructor and grant friendship
2005 (__weak_ptr::lock()): Use new constructor.
2006 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
2007 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
2009 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
2012 * include/bits/shared_ptr_base.h
2013 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
2016 2014-01-27 Jason Merrill <jason@redhat.com>
2021 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
2022 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
2023 (__cxa_allocate_exception): Don't set it here.
2025 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
2027 * include/bits/stl_map.h: Remove anachronistic comment.
2028 * include/bits/stl_multimap.h: Add whitespace.
2029 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
2030 -std=gnu++11 instead of -std=c++11.
2031 * testsuite/23_containers/map/operators/2.cc: Likewise.
2032 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
2033 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
2034 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
2036 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
2037 * configure: Regenerate.
2039 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2042 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
2043 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
2045 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2046 Peter A. Bigot <pab@pabigot.com>
2049 * include/experimental/string_view
2050 (copy(_CharT*, size_type, size_type) const): Correct throw string.
2051 Correct copy start location.
2053 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2054 Peter A. Bigot <pab@pabigot.com>
2057 * include/experimental/string_view (operator[](size_type) const):
2058 Fix one-off index error in debug check.
2059 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
2060 test basic_string_view at size().
2061 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
2063 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2064 Peter A. Bigot <pab@pabigot.com>
2067 * include/experimental/string_view
2068 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
2069 * testsuite/experimental/string_view/operations/substr/char/1.cc:
2070 Comment out catch of out_of_range; No terminating null
2071 in basic_string_view. Check begin == end.
2072 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
2075 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
2078 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
2079 constructor to prevent it being implicitly defined as deleted, but
2080 do not copy anything.
2081 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
2082 Define copy and move constructors similar to _Safe_sequence_base's.
2083 * testsuite/23_containers/unordered_map/59548.cc: New.
2085 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2086 Steve Ellcey <sellcey@mips.com>
2088 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
2090 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
2091 * (configure, config.h.in): Regenerate.
2092 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
2094 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
2096 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
2097 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
2100 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
2101 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
2103 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
2105 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
2106 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
2107 functions to perform moving or copying of elements from rvalue tree.
2108 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
2109 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
2110 * testsuite/23_containers/map/59872.cc: New.
2111 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
2113 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
2115 * include/bits/stl_deque.h (_Deque_impl): Move comment.
2118 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
2119 Split into separate default constructor and constructor taking
2121 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
2122 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
2124 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
2125 * include/debug/list (list::list(const _Allocator&)): Likewise.
2126 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
2128 * include/debug/multimap.h
2129 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2130 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
2132 * include/debug/multiset.h
2133 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2134 * include/debug/vector (vector::vector(const allocator_type&)):
2136 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
2137 * include/profile/list (list::list(const _Allocator&)): Likewise.
2138 * include/profile/map.h
2139 (map::map(const _Compare&, const _Allocator&)): Likewise.
2140 * include/profile/multimap.h
2141 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2142 * include/profile/set.h
2143 (set::set(const _Compare&, const _Allocator&)): Likewise.
2144 * include/profile/multiset.h
2145 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2146 * include/profile/vector (vector::vector(const _Allocator&)):
2148 * testsuite/23_containers/deque/58764.cc: New.
2149 * testsuite/23_containers/list/58764.cc: New.
2150 * testsuite/23_containers/map/58764.cc: New.
2151 * testsuite/23_containers/multimap/58764.cc: New.
2152 * testsuite/23_containers/set/58764.cc: New.
2153 * testsuite/23_containers/multiset/58764.cc: New.
2154 * testsuite/23_containers/vector/58764.cc: New.
2155 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2156 Adjust dg-error line number.
2157 * testsuite/23_containers/deque/requirements/dr438/
2158 constructor_1_neg.cc: Likewise.
2159 * testsuite/23_containers/deque/requirements/dr438/
2160 constructor_2_neg.cc: Likewise.
2161 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2163 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2165 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2167 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2169 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2171 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2173 * testsuite/23_containers/vector/requirements/dr438/
2174 constructor_1_neg.cc: Likewise.
2175 * testsuite/23_containers/vector/requirements/dr438/
2176 constructor_2_neg.cc: Likewise.
2177 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2180 PR libstdc++/58764 (again)
2181 * include/bits/stl_list.h (list): Make default constructor's exception
2182 specification conditional.
2183 * include/bits/stl_vector.h (vector): Likewise.
2184 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
2185 to default constructor.
2186 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2187 Adjust dg-error line number.
2188 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2190 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2192 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2194 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2196 * testsuite/23_containers/vector/requirements/dr438/
2197 constructor_1_neg.cc: Likewise.
2198 * testsuite/23_containers/vector/requirements/dr438/
2199 constructor_2_neg.cc: Likewise.
2200 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2203 2014-01-21 Tim Shen <timshen91@gmail.com>
2205 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
2206 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
2207 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
2209 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
2212 * include/bits/hashtable.h (__cache_default): Do not depend on
2213 whether the hash function is DefaultConstructible or CopyAssignable.
2214 (_Hashtable): Adjust static assertions.
2215 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
2216 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2217 dg-error line number.
2218 * testsuite/23_containers/unordered_set/
2219 not_default_constructible_hash_neg.cc: Remove.
2221 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
2223 * scripts/create_testsuite_files: Add testsuite/experimental in
2224 the list of folders to search for tests.
2225 * include/experimental/string_view
2226 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
2227 incompatible with constexpr qualifier.
2228 (basic_string_view<>::front()): Likewise.
2229 (basic_string_view<>::back()): Likewise.
2230 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
2231 Merge dg-options directives into one.
2232 * testsuite/experimental/string_view/element_access/char/2.cc:
2233 Likewise. Remove invalid experimental namespace scope on
2236 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
2239 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
2240 friendship to _Local_iterator_base<..., false>.
2241 (_Local_iterator_base): Give protected access to all existing members.
2242 (_Local_iterator_base::_M_curr()): New public accessor.
2243 (_Local_iterator_base::_M_get_bucket()): New public accessor.
2244 (_Local_iterator_base<..., false>::_M_init()): New function to manage
2245 the lifetime of the _Hash_code_base explicitly.
2246 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
2247 (_Local_iterator_base<..., false>): Define copy constructor and copy
2248 assignment operator that use new functions to manage _Hash_code_base.
2249 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
2250 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
2251 Use public API for _Local_iterator_base.
2252 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
2253 * include/debug/unordered_map (__debug::unordered_map::erase(),
2254 __debug::unordered_multimap::erase()): Likewise.
2255 * include/debug/unordered_set (__debug::unordered_set::erase(),
2256 __debug::unordered_multiset::erase()): Likewise.
2257 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
2259 2014-01-19 Tim Shen <timshen91@gmail.com>
2261 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
2262 Fix parse error of multiple consecutive quantifiers like "a**".
2263 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
2265 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
2267 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
2269 * include/profile/set.h (set): Implement C++11 allocator-aware
2270 container requirements.
2271 * include/profile/map.h (map): Likewise.
2272 * include/profile/multiset.h (multiset): Likewise.
2273 * include/profile/multimap.h (multimap): Likewise.
2274 * include/profile/set.h
2275 (set::operator=(const set&)): Define as default in C++11 mode.
2276 (set::operator=(set&&)): Likewise.
2277 * include/profile/map.h
2278 (map::operator=(const map&)): Likewise.
2279 (map::operator=(map&&)): Likewise.
2280 * include/profile/multiset.h
2281 (multiset::operator=(const multiset&)): Likewise.
2282 (multiset::operator=(multiset&&)): Likewise.
2283 * include/profile/multimap.h
2284 (multimap::operator=(const multimap&)): Likewise.
2285 (multimap::operator=(multimap&&)): Likewise.
2286 * include/profile/set.h (set::operator=(std::initializer_list<>)):
2287 Rely on the same operator from normal mode.
2288 * include/profile/map.h (map::operator=(std::initializer_list<>)):
2290 * include/profile/multiset.h
2291 (multiset::operator=(std::initializer_list<>)): Likewise.
2292 * include/profile/multimap.h
2293 (multimap::operator=(std::initializer_list<>)): Likewise.
2294 * include/profile/set.h (set::swap(set&)): Add noexcept
2296 * include/profile/map.h (map::swap(map&)): Likewise.
2297 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2298 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2300 2014-01-17 Tim Shen <timshen91@gmail.com>
2302 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2304 * include/bits/regex_automaton.h: Do not use std::set.
2305 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2306 _BracketMatcher<>::_M_add_collating_element(),
2307 _BracketMatcher<>::_M_add_equivalence_class(),
2308 _BracketMatcher<>::_M_make_range()): Likewise.
2309 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2311 * include/bits/regex_executor.h: Do not use std::queue.
2312 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2313 _Executor<>::_M_dfs()): Likewise.
2314 * include/std/regex: Remove <map>, <set> and <queue>.
2316 2014-01-17 Tim Shen <timshen91@gmail.com>
2318 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2319 basic_regex<>::assign()): Change __compile_nfa to accept
2321 * include/bits/regex_compiler.h: Change _Compiler's template
2322 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2323 * include/bits/regex_compiler.tcc: Likewise.
2325 2014-01-17 Tim Shen <timshen91@gmail.com>
2327 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2329 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2330 _ScannerBase from _Scanner; Change _Scanner's template argument from
2331 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2333 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2334 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2335 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2337 * include/std/regex: Add <cstring> for using strchr.
2339 2014-01-17 Tim Shen <timshen91@gmail.com>
2341 * bits/regex_automaton.tcc: Indentation fix.
2342 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2343 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2344 _BracketMatcher<>): Add bool option template parameters and
2345 specializations to make matching more efficient and space saving.
2346 * bits/regex_compiler.tcc: Likewise.
2348 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
2351 * include/bits/hashtable_policy.h: Fix some long lines.
2352 * include/bits/hashtable.h (__hash_code_base_access): Define and
2353 use it to check its _M_bucket_index noexcept qualification. Use
2355 (__access_protected_ctor): ...this.
2356 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2358 * testsuite/23_containers/unordered_set/
2359 not_default_constructible_hash_neg.cc: Likewise.
2361 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
2363 * include/debug/set.h (set): Implement C++11 allocator-aware
2364 container requirements.
2365 * include/debug/map.h (map): Likewise.
2366 * include/debug/multiset.h (multiset): Likewise.
2367 * include/debug/multimap.h (multimap): Likewise.
2368 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2369 fix implementation regarding management of safe iterators.
2370 * include/debug/map.h (map::operator=(map&&)): Likewise.
2371 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2372 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2374 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2375 Rely on the same operator from normal mode.
2376 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2378 * include/debug/multiset.h
2379 (multiset::operator=(std::initializer_list<>)): Likewise.
2380 * include/debug/multimap.h
2381 (multimap::operator=(std::initializer_list<>)): Likewise.
2382 * include/debug/set.h (set::swap(set&)): Add noexcept
2383 specification, add allocator equality check.
2384 * include/debug/map.h (map::swap(map&)): Likewise.
2385 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2386 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2388 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
2391 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2392 and stylistic improvements.
2393 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2394 and update for C++11.
2395 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2398 * doc/xml/manual/backwards_compatibility.xml
2399 (backwards.third.nocreate_noreplace): Correct and expand.
2402 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2404 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
2407 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2408 support for non-Movable types.
2411 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2413 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
2415 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2416 *this allocator instance when building temporary vector instance
2417 so that *this allocator does not get moved.
2418 * include/debug/safe_base.h
2419 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2420 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2421 move constructor from _Safe_sequence_base.
2422 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2423 safe iterators if the instance is moved.
2424 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2425 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2426 check on a vector iterator.
2427 * testsuite/23_containers/vector/allocator/move_assign.cc
2429 (test03): New, test with a non-propagating allocator.
2430 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2432 2014-01-07 Tim Shen <timshen91@gmail.com>
2434 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2435 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2436 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2437 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2438 _BracketMatcher<>::_M_add_char(),
2439 _BracketMatcher<>::_M_add_collating_element(),
2440 _BracketMatcher<>::_M_add_equivalence_class(),
2441 _BracketMatcher<>::_M_add_character_class(),
2442 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2443 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2444 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2445 to template parameter; Add cache for _BracketMatcher. Adjust
2446 declarations from here...
2447 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2448 imbuing a regex will trigger a recompilation to rebuild the cache.
2449 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2450 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2451 different template bool parameters.
2452 * include/bits/regex_executor.h: Remove unnecessary declarations.
2453 * include/std/regex: Adjust including orders.
2454 * testsuite/28_regex/traits/char/user_defined.cc: New.
2455 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2457 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2459 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2460 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2461 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2462 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2463 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2465 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2467 Update copyright years
2469 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2471 * testsuite/18_support/new_handler.cc,
2472 testsuite/18_support/terminate_handler.cc,
2473 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2474 the copyright notice.
2476 Copyright (C) 2014 Free Software Foundation, Inc.
2478 Copying and distribution of this file, with or without modification,
2479 are permitted in any medium without royalty provided the copyright
2480 notice and this notice are preserved.