1 2014-09-30 Siva Chandra Reddy <sivachandra@google.com>
3 * python/hook.in: Only import libstdcxx.v6.
4 * python/libstdcxx/v6/__init__.py: Load printers and xmethods.
6 2014-09-30 Jonathan Wakely <jwakely@redhat.com>
8 * doc/xml/manual/status_cxx2011.xml: Update.
9 * doc/html/manual/status.html: Regenerate.
11 2014-09-30 Andreas Schwab <schwab@linux-m68k.org>
13 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: New
16 * configure.host (abi_baseline_pair): If try_cpu is generic use
17 host_cpu for the default.
19 2014-09-29 François Dumont <fdumont@gcc.gnu.org>
22 * include/debug/safe_base.h
23 (_Safe_iterator_base(const _Safe_iterator_base&)): Delete declaration.
24 (_Safe_iterator_base& operator=(const _Safe_iterator_base&)): Likewise.
25 * include/debug/safe_iterator.h (_Safe_iterator<>): Move normal iterator
26 before _Safe_iterator_base in memory. Lock before modifying the iterator
28 * include/debug/safe_local_iterator.h
29 (_Safe_local_iterator_base(const _Safe_local_iterator_base&)): Delete
31 (_Safe_local_iterator_base& operator=(const _Safe_local_iterator_base&)):
33 * include/debug/safe_unordered_base.h (_Safe_local_iterator<>): Move
34 normal iterator before _Safe_iterator_base in memory. Lock before
35 modifying the iterator in numerous places.
36 * include/debug/forward_list (_Safe_forward_list<>::_M_swap_aux): Adapt.
37 * include/debug/safe_sequence.tcc
38 (_Safe_sequence<>::_M_transfer_from_if): Adapt.
40 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
43 * doc/xml/manual/status_cxx2011.xml: Update.
44 * include/bits/stl_uninitialized.h (uninitialized_fill_n): Return
46 (__uninitialized_fill_n_a, __uninitialized_default_n_a): Likewise.
47 * include/bits/stl_vector.h (vector::_M_fill_initialize,
48 vector::_M_default_initialize): Use returned iterator.
49 * include/bits/vector.tcc (vector::_M_fill_assign,
50 vector::_M_fill_insert, vector::_M_default_append): Likewise.
51 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
52 16505.cc: Adjust return type.
53 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
56 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
58 * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.
60 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
62 * testsuite/27_io/basic_ios/conv/bool_neg.cc: New.
63 * testsuite/27_io/basic_ios/conv/bool.cc: New.
64 * testsuite/27_io/basic_ios/conv/voidptr.cc: New.
66 * testsuite/27_io/basic_ios/conv/bool_neg.cc: Add dg-do compile.
68 2014-09-25 Tim Shen <timshen@google.com>
71 * include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign,
72 basic_regex::imbue, basic_regex::getloc, basic_regex::swap): Add
73 _M_loc for basic_regex.
74 * include/bits/regex_automaton.h: Add _M_traits for _NFA.
75 * include/bits/regex_compiler.h (_Compiler::_M_get_nfa, __compile_nfa):
76 Make _Compiler::_M_nfa heap allocated.
77 * include/bits/regex_compiler.tcc (_Compiler::_Compiler): Make
78 _Compiler::_M_nfa heap allocated.
79 * include/bits/regex_executor.h (_Executor::_M_is_word):
80 Fix accessing _M_traits.
81 * include/bits/regex_executor.tcc (_Executor::_M_dfs):
82 Fix accessing _M_traits.
83 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
86 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
88 * config/abi/pre/gnu.ver: Make GLIBCXX_3.4 patterns stricter so the
89 new GLIBCXX_3.4.21 symbols don't match them.
92 * config/abi/pre/gnu.ver: Add new exports.
93 * include/bits/basic_ios.h (basic_ios::operator bool): Define.
94 * src/c++98/ios_locale.cc (basic_ios::operator void*): Instantiate.
96 2014-09-24 François Dumont <fdumont@gcc.gnu.org>
99 * include/bits/stl_tree.h (_Rb_tree_reuse_or_alloc_node<>): New.
100 (_Rb_tree_alloc_node<>): New.
101 (_Rb_tree<>::operator=(_Rb_tree<>&&)): New.
102 (_Rb_tree<>::_M_assign_unique): New.
103 (_Rb_tree<>::_M_assign_equal): New.
104 (_Rb_tree<>): Adapt to reuse allocated nodes as much as possible.
105 * include/bits/stl_map.h
106 (std::map<>::operator=(std::map<>&&)): Default implementation.
107 (std::map<>::operator=(initializer_list<>)): Adapt to use
108 _Rb_tree::_M_assign_unique.
109 * include/bits/stl_multimap.h
110 (std::multimap<>::operator=(std::multimap<>&&)): Default implementation.
111 (std::multimap<>::operator=(initializer_list<>)): Adapt to use
112 _Rb_tree::_M_assign_equal.
113 * include/bits/stl_set.h
114 (std::set<>::operator=(std::set<>&&)): Default implementation.
115 (std::set<>::operator=(initializer_list<>)): Adapt to use
116 _Rb_tree::_M_assign_unique.
117 * include/bits/stl_multiset.h
118 (std::multiset<>::operator=(std::multiset<>&&)): Default implementation.
119 (std::multiset<>::operator=(initializer_list<>)): Adapt to use
120 _Rb_tree::_M_assign_equal.
121 * testsuite/23_containers/map/allocator/copy_assign.cc (test03): New.
122 * testsuite/23_containers/map/allocator/init-list.cc: New.
123 * testsuite/23_containers/map/allocator/move_assign.cc (test03): New.
124 * testsuite/23_containers/multimap/allocator/copy_assign.cc
126 * testsuite/23_containers/multimap/allocator/init-list.cc: New.
127 * testsuite/23_containers/multimap/allocator/move_assign.cc
129 * testsuite/23_containers/multiset/allocator/copy_assign.cc
131 * testsuite/23_containers/multiset/allocator/init-list.cc: New.
132 * testsuite/23_containers/multiset/allocator/move_assign.cc
134 * testsuite/23_containers/set/allocator/copy_assign.cc (test03): New.
135 * testsuite/23_containers/set/allocator/init-list.cc: New.
136 * testsuite/23_containers/set/allocator/move_assign.cc (test03): New.
138 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
141 * src/c++11/ios.cc (ios_base::_M_swap): Fix typo.
143 2014-09-23 Jonathan Wakely <jwakely@redhat.com>
145 * config/abi/pre/gnu.ver: Adjust basic_ostream exports.
146 * include/std/istream (basic_iostream(basic_iostream&&)): Pass *this
147 to ostream constructor.
148 * include/std/ostream (basic_ostream(basic_iostream*)): Change to take
149 parameter by reference, to avoid ambiguity.
150 * testsuite/27_io/basic_ostream/cons/char/null.cc: New.
152 2014-09-22 Jason Merrill <jason@redhat.com>
154 * testsuite/Makefile.am (%/site.exp): Add @.
155 (check-DEJAGNU): Likewise.
156 * testsuite/Makefile.in: Regenerate.
158 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
160 * include/bits/stl_queue.h: Include missing header.
161 * include/bits/stl_stack.h: Likewise.
162 * testsuite/23_containers/priority_queue/requirements/
163 uses_allocator.cc: New.
164 * testsuite/23_containers/queue/requirements/uses_allocator.cc: New.
165 * testsuite/23_containers/stack/requirements/uses_allocator.cc: New.
167 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
169 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
170 * doc/xml/manual/status_cxx2014.xml: Update TS status.
171 * doc/html/manual/status.html: Regenerate.
173 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
175 * include/std/mutex (try_lock): Do not swallow exceptions.
176 * testsuite/30_threads/try_lock/4.cc: Fix test.
178 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
182 * config/abi/pre/gnu.ver: Add new exports.
183 * config/io/basic_file_stdio.h (__basic_file): Support moving and
185 * include/bits/basic_ios.h (basic_ios::move, basic_ios::swap):
187 * include/bits/ios_base.h (ios_base::_M_move, ios_base::_M_swap):
189 * include/bits/fstream.tcc (basic_filebuf): Likewise.
190 * include/bits/move.h (__exchange): Define for C++11 mode.
191 * include/ext/stdio_filebuf.h (stdio_filebuf): Support moving and
193 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf): Likewise.
194 * include/std/fstream (basic_filebuf, basic_ifstream, basic_ofstream,
195 basic_fstream): Likewise.
196 * include/std/ios: Remove whitespace.
197 * include/std/istream (basic_istream, basic_iostream): Support moving
199 * include/std/ostream (basic_ostream): Likewise.
200 * include/std/sstream (basic_stringbuf, basic_istringstream,
201 basic_ostringstream, basic_stringstream): Likewise.
202 * include/std/streambuf (basic_streambuf): Do not default copy
203 constructor and assignment on first declaration.
204 * include/std/utility (exchange): Forward to __exchange.
205 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
206 * src/c++11/Makefile.am: Add stream-related files.
207 * src/c++11/Makefile.in: Regenerate.
208 * src/c++11/ext11-inst.cc (stdio_filebuf, stdio_sync_filebuf):
209 New file for explicit instantiation definitions.
210 * src/c++11/ios.cc: Move from src/c++98 to here.
211 (ios_base::_M_move, ios_base::_M_swap): Define.
212 * src/c++11/ios-inst.cc: Move from src/c++98 to here.
213 * src/c++11/iostream-inst.cc: Likewise.
214 * src/c++11/istream-inst.cc: Likewise.
215 * src/c++11/ostream-inst.cc: Likewise.
216 * src/c++11/sstream-inst.cc: Likewise.
217 * src/c++11/streambuf-inst.cc: Likewise.
218 * src/c++98/Makefile.am: Remove stream-related files.
219 * src/c++98/Makefile.in: Regenerate.
220 * src/c++98/ext-inst.cc (stdio_filebuf): Remove explicit
222 * src/c++98/misc-inst.cc (stdio_sync_filebuf): Likewise.
223 * src/c++98/ios-inst.cc: Move to src/c++11/.
224 * src/c++98/ios.cc: Move to src/c++11/.
225 * src/c++98/iostream-inst.cc: Likewise.
226 * src/c++98/istream-inst.cc: Likewise.
227 * src/c++98/ostream-inst.cc: Likewise.
228 * src/c++98/sstream-inst.cc: Likewise.
229 * src/c++98/streambuf-inst.cc: Likewise.
230 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
231 * testsuite/27_io/basic_fstream/cons/move.cc: New.
232 * testsuite/27_io/basic_fstream/assign/1.cc: New.
233 * testsuite/27_io/basic_ifstream/cons/move.cc: New.
234 * testsuite/27_io/basic_ifstream/assign/1.cc: New.
235 * testsuite/27_io/basic_istringstream/assign/1.cc: New.
236 * testsuite/27_io/basic_istringstream/cons/move.cc: New.
237 * testsuite/27_io/basic_ofstream/cons/move.cc: New.
238 * testsuite/27_io/basic_ofstream/assign/1.cc: New.
239 * testsuite/27_io/basic_ostringstream/assign/1.cc: New.
240 * testsuite/27_io/basic_ostringstream/cons/move.cc: New.
241 * testsuite/27_io/basic_stringstream/assign/1.cc: New.
242 * testsuite/27_io/basic_stringstream/cons/move.cc: New.
244 2014-09-17 Jason Merrill <jason@redhat.com>
246 * libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
247 dynamic_cast more gracefully.
249 2014-09-15 Jakub Jelinek <jakub@redhat.com>
251 * testsuite/Makefile.am (check_p_numbers0, check_p_numbers1,
252 check_p_numbers2, check_p_numbers3, check_p_numbers4,
253 check_p_numbers5, check_p_numbers6, check_p_numbers,
254 check_p_subdirs): New variables.
255 (check_DEJAGNU_normal_targets): Use check_p_subdirs.
256 (check-DEJAGNU): Rewritten so that for parallelized
257 testing each job runs all the *.exp files, with
258 GCC_RUNTEST_PARALLELIZE_DIR set in environment.
259 * testsuite/Makefile.in: Regenerated.
260 * testsuite/lib/libstdc++.exp (gcc_parallel_test_run_p,
261 gcc_parallel_test_enable): New procedures. If
262 GCC_RUNTEST_PARALLELIZE_DIR is set in environment, override
263 runtest_file_p to invoke also gcc_parallel_test_run_p.
264 * testsuite/libstdc++-abi/abi.exp: Run all the tests serially
265 by the first parallel runtest encountering it. Fix up path
266 of the extract_symvers script.
267 * testsuite/libstdc++-xmethods/xmethods.exp: Run all the tests
268 serially by the first parallel runtest encountering it. Run
269 dg-finish even in case of error.
271 2014-09-15 Jonathan Wakely <jwakely@redhat.com>
273 * include/bits/regex.h (basic_regex): Rename _Ch_typeraits template
274 parameters to _Ch_traits.
276 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
278 * include/debug/deque (__gnu_debug::deque): Make base class C++11
281 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
284 * include/bits/stl_algo.h (random_shuffle): Prevent self-swapping.
285 * testsuite/25_algorithms/random_shuffle/59603.cc: New.
287 2014-09-11 Jonathan Wakely <jwakely@redhat.com>
290 * include/bits/regex.h (match_results::format): Remove stray template
292 * include/bits/regex_compiler.h (_RegexTranslator::_RegexTranslator):
293 Remove parameter name to avoid -Wunused-parameter warning.
294 * include/bits/regex_executor.h (_State_info::_State_info): Reorder
295 mem-initializers to avoid -Wreorder warning.
296 * include/bits/regex_executor.tcc (_Executor::_M_word_boundary):
297 Remove parameter name to avoid -Wunused-parameter warning.
298 * include/bits/regex_scanner.tcc (_Scanner::_M_advance): Add braces
299 to avoid -Wempty-body warning when not in debug mode.
301 2014-09-10 Siva Chandra Reddy <sivachandra@google.com>
303 * python/hook.in: Load the xmethods.
304 * python/Makefile.am (nobase_python_DATA): Add xmethods.py.
305 * python/Makefile.in: Regenerated.
306 * python/libstdcxx/v6/xmethods.py: New file.
307 * testsuite/lib/gdb-test.exp (gdb_version_check_xmethods): New
309 (gdb-test): New optional argument LOAD_XMETHODS. Load xmethods
310 python script if LOAD_XMETHODS is true.
311 * testsuite/libstdc++-xmethods/unique_ptr.cc: New file.
312 * testsuite/libstdc++-xmethods/vector.cc: New file.
313 * testsuite/libstdc++-xmethods/xmethods.exp: New file.
315 2014-09-10 Tony Wang <tony.wang@arm.com>
318 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
319 Return with CONTINUE_UNWINDING when the state pattern
320 contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND
322 2014-09-09 Jonathan Wakely <jwakely@redhat.com>
324 * include/bits/deque.tcc (deque::operator=(const deque&)): Handle
325 allocator propagation.
326 (deque::emplace_front, deque::emplace_back): Use allocator traits.
327 (deque::_M_push_back_aux, deque::_M_push_front_aux): Likewise.
328 (deque::_M_pop_back_aux, deque::_M_pop_front_aux): Likewise.
329 * include/bits/stl_deque.h (__deque_buf_size): Add constexpr.
330 (_Deque_iterator): Handle allocators with custom pointers.
331 (_Deque_base): Likewise. Use allocator traits.
332 (deque): Likewise. Add allocator-extended constructors.
333 (deque::_M_move_assign1, deque::_M_move_assign2): Implement move
334 assignment via tag dispatching.
335 (deque::_M_replace_map): Replace existing data.
336 * include/debug/deque (deque): Add allocator-extended constructors.
337 * include/profile/deque (deque): Likewise.
338 * testsuite/23_containers/deque/allocator/copy.cc: New.
339 * testsuite/23_containers/deque/allocator/copy_assign.cc: New.
340 * testsuite/23_containers/deque/allocator/ext_ptr.cc: New.
341 * testsuite/23_containers/deque/allocator/minimal.cc: New.
342 * testsuite/23_containers/deque/allocator/move.cc: New.
343 * testsuite/23_containers/deque/allocator/move_assign-2.cc: New.
344 * testsuite/23_containers/deque/allocator/move_assign.cc: New.
345 * testsuite/23_containers/deque/allocator/noexcept.cc: New.
346 * testsuite/23_containers/deque/allocator/swap.cc: New.
347 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
348 Adjust dg-error line number.
349 * testsuite/23_containers/deque/requirements/dr438/
350 constructor_1_neg.cc: Likewise.
351 * testsuite/23_containers/deque/requirements/dr438/
352 constructor_2_neg.cc: Likewise.
353 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
355 * testsuite/23_containers/vector/52591.cc: Test both the propagating
356 and always-equal cases.
358 2014-09-06 François Dumont <fdumont@gcc.gnu.org>
360 * include/bits/hashtable_policy.h (_Prime_rehash_policy): Constructor
362 (_Hash_code_base<>): All specialization default constructible if
364 (_Hashtable_base<>): Likewise.
365 * include/bits/hashtable.h (_Hashtable<>()): Implementation defaulted.
366 * include/bits/unordered_map.h (unordered_map<>::unordered_map()): New,
367 implementation defaulted.
368 (unordered_multimap<>::unordered_multimap()): Likewise.
369 * include/bits/unordered_set.h
370 (unordered_set<>::unordered_set()): Likewise.
371 (unordered_multiset<>::unordered_multiset()): Likewise.
372 * include/debug/unordered_map: Likewise.
373 * include/debug/unordered_set: Likewise.
374 * testsuite/23_containers/unordered_map/allocator/noexcept.cc
376 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc
378 * testsuite/23_containers/unordered_set/allocator/noexcept.cc
380 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc
383 2014-08-30 John David Anglin <danglin@gcc.gnu.org>
385 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
387 2014-08-29 Jonathan Wakely <jwakely@redhat.com>
389 * include/std/complex (complex): Define copy constructor and
390 assignment operator as defaulted. Improve Doxygen comments.
392 2014-08-28 Jonathan Wakely <jwakely@redhat.com>
394 * testsuite/ext/random/*: Fix incorrect standard references in
397 2014-08-27 Jonathan Wakely <jwakely@redhat.com>
400 * include/Makefile.am (install-freestanding-headers): Add missing
402 * include/Makefile.in: Regenerate.
404 2014-08-21 Tony Wang <tony.wang@arm.com>
406 * testsuite/18_support/nested_exception/62154.cc: Disable when the
407 target doesn't provide atomic builtins.
409 2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
410 Kai Tietz <ktietz@redhat.com>
412 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
414 * config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
416 * libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
417 #include <windows.h>.
418 (struct elt): Add dll member.
419 (run): Decrement dll refcount.
420 (__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.
422 2014-08-15 Jonathan Wakely <jwakely@redhat.com>
425 * libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
426 Rewrite to conform to C++11 requirements.
427 * testsuite/18_support/nested_exception/62154.cc: New.
429 2014-08-14 Matthias Klose <doko@ubuntu.com>
431 * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
432 Remove empty directory.
434 2014-08-14 Paolo Carlini <paolo.carlini@oracle.com>
436 * testsuite/26_numerics/random/linear_congruential_engine/
437 requirements/non_uint_neg.cc: Adjust for parser change.
438 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
439 requirements/non_uint_neg.cc: Likewise.
441 2014-08-13 Jonathan Wakely <jwakely@redhat.com>
444 * include/std/thread (thread::_M_start_thread): Declare new overload.
445 (thread::thread<_Callable, _Args...>): Call new overload with an
446 explicit reference to pthread_create.
447 * src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
448 * config/abi/pre/gnu.ver: Export new function.
450 2014-08-13 Sylvestre Ledru <sylvestre@debian.org>
452 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
454 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
456 * Fix thinko in the last commit.
458 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
461 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
462 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
464 2014-08-12 Jonathan Wakely <jwakely@redhat.com>
466 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
467 and add overloads for rvalue streams.
468 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
470 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
473 * include/bits/basic_string.h (getline): Declare inline.
475 2014-08-09 Ulrich Drepper <drepper@gmail.com>
477 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
478 (uniform_on_sphere_distribution::operator()): Use the new helper
479 class for the implementation.
481 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
482 equal.cc: Remove bogus part of comment.
483 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
484 inequal.cc: Likewise.
485 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
486 serialize.cc: Add check to verify result of serialzation and
488 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
489 generate.cc: New file.
491 2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
493 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
494 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
496 2014-08-09 François Dumont <fdumont@gcc.gnu.org>
499 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
500 _M_need_rehash to initialize the rehash policy and check if a rehash is
502 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
504 2014-08-07 Jonathan Wakely <jwakely@redhat.com>
506 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
508 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
509 Adjust dg-error line number.
510 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
512 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
514 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
517 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
519 (_State_baseV2::_M_do_set): Change parameters to pointers.
520 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
521 (_State_baseV2::__setter): Initialize _Setter with pointers.
522 (_State_baseV2::__setter(promise<void>*)): Remove overload.
523 (promise::set_value, promise::set_exception): Pass setter directly
525 (_State_baseV2::_Task_setter): Add template parameter for callable
526 type and replace std::function member with pointer to that type.
527 Change _M_result member from reference to pointer.
528 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
529 and initialize _Task_setter with pointers.
530 (__location_invariant): Specialize for _Setter and _Task_setter.
532 * include/std/future (__location_invariant): Move specializations
533 after preprocessor condition.
535 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
538 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
540 2014-08-01 Zifei Tong <zifeitong@gmail.com>
542 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
543 _GLIBCXX_ prefix to macro.
545 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
547 * python/libstdcxx/v6/printers.py
548 (SingleObjContainerPrinter._contained): Use compatibility mixin.
550 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
552 * testsuite/util/testsuite_allocator.h
553 (tracker_allocator_counter::allocate): Remove new invocation, only
555 (tracker_allocator_counter::deallocate): Remove delete invocation, only
557 (check_inconsistent_alloc_value_type): New.
558 (tracker_allocator): Transform as a facade for any allocator type.
559 (uneq_allocator): Likewise.
560 (propagating_allocator): Likewise.
561 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
562 explicitly non propagating allocator.
563 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
564 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
565 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
566 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
567 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
569 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
571 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
573 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
575 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
577 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
580 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
581 const allocator_type&)): Pass non-const allocator to
583 * testsuite/ext/rope/61946.cc: New.
586 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
587 disambiguate unary constructors.
588 (_Tuple_impl): Pass allocator_arg_t arguments.
589 * testsuite/20_util/tuple/61947.cc: New.
590 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
592 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
594 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
595 * include/bits/random.h (_Adaptor): static_assert for non floating-point
597 * include/bits/random.tcc (generate_canonical): Ditto.
598 * include/ext/random.tcc (hypergeometric_distribution::operator()):
599 Use double as a rng result type.
600 * testsuite/26_numerics/random/pr60037-neg.cc: New.
601 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
603 2014-07-25 Uros Bizjak <ubizjak@gmail.com>
605 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
607 2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
609 * include/experimental/string_view: Make the literal operators
610 constexpr like the ctors they call.
612 2014-07-23 H.J. Lu <hongjiu.lu@intel.com>
614 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
616 2014-07-23 Jonathan Wakely <jwakely@redhat.com>
618 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
619 to string instead of using gdb.Type.name attribute.
621 2014-07-19 Jonathan Wakely <jwakely@redhat.com>
623 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
626 2014-07-18 Jonathan Wakely <jwakely@redhat.com>
629 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
631 (SingleObjContainerPrinter): Check if type printers are in use.
633 2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
635 * include/ext/random: Minor formatting and cosmetic tweaks.
636 (uniform_on_sphere_distribution<>::operator==
637 (const uniform_on_sphere_distribution&,
638 const uniform_on_sphere_distribution&)): Compare the _M_nds.
639 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
640 (operator!=(const uniform_on_sphere_distribution&,
641 const uniform_on_sphere_distribution&)): Adjust.
642 * include/ext/random.tcc: Minor cosmetc tweaks.
644 2014-07-15 Jonathan Wakely <jwakely@redhat.com>
646 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
647 printer for class templates.
648 (register_type_printers): Use TemplateTypePrinter for containers
649 and other class templates with default template arguments.
650 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
652 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
653 base class for experimental::any and experimental::optional printers.
654 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
655 New printers for Fundamentals TS types.
656 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
658 2014-07-15 Tim Shen <timshen@google.com>
661 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
662 Clear match queue for next use.
663 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
665 2014-07-14 Ulrich Drepper <drepper@gmail.com>
667 * include/ext/random.tcc: Unfortunately more fixes for
668 operator>> and operator<< for uniform_on_sphere_distribution.
670 2014-07-13 Ulrich Drepper <drepper@gmail.com>
672 * include/ext/random.tcc: Fix operator>> and operator<< for
673 uniform_on_sphere_distribution.
675 2014-07-12 Ulrich Drepper <drepper@gmail.com>
677 * include/ext/random: Add uniform_on_sphere_distribution definition.
678 * include/ext/random.tcc: Add out-of-band member function definitions
679 for uniform_on_sphere_distribution.
680 * testsuite/ext/random/uniform_on_sphere_distribution/
681 cons/default.cc: New file.
682 * testsuite/ext/random/uniform_on_sphere_distribution/
683 operators/equal.cc: New file.
684 * testsuite/ext/random/uniform_on_sphere_distribution/
685 operators/inequal.cc: New file.
686 * testsuite/ext/random/uniform_on_sphere_distribution/
687 operators/serialize.cc: New file.
689 2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
691 Add the logistic_distribution as an extension.
692 * include/ext/random: Add the logistic_distribution.
693 * include/ext/random.tcc: Add the logistic_distribution.
694 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
695 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
696 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
698 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
699 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
700 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
703 2014-07-11 Samuel Bronson <naesten@gmail.com>
705 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
706 instead of insisting that GCC understand -fdiagnostics-color=never
708 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
711 2014-07-11 Samuel Bronson <naesten@gmail.com>
712 Matthias Klose <doko@ubuntu.com>
715 * python/libstdcxx/v6/printers.py: Port to Python 2+3
716 (imap): New compat function.
718 (Iterator): New mixin to allow writing iterators in Python 3 style
719 regardless of which version we're running on.
720 [Python3] (long) New compat alias for "int".
721 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
723 2014-07-10 Jonathan Wakely <jwakely@redhat.com>
725 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
726 tuple members to simplify pretty printing.
727 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
729 * testsuite/experimental/any/cons/4.cc: New.
731 2014-07-09 Jason Merrill <jason@redhat.com>
734 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
735 * libsupc++/tinfo.h: Not here.
737 2014-07-08 Jonathan Wakely <jwakely@redhat.com>
739 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
741 * include/experimental/any: Remove unused header.
742 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
743 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
744 * testsuite/util/testsuite_regex.h: Move include guard.
746 2014-07-01 Tim Shen <timshen@google.com>
750 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
751 a NFA state limit. If it's exceeded, regex_constants::error_space
753 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
754 map (which is sparse) instead of vector. This reduce n times clones'
755 cost from O(n^2) to O(n).
756 * include/std/regex: Add map dependency.
757 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
760 2014-07-01 Tim Shen <timshen@google.com>
763 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
764 not just regex containing back-references.
765 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
766 exchange _M_next and _M_alt for alternative operator,
767 making matching from left to right.
768 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
769 Add position tracking fom DFS.
770 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
771 _Executor<>::_M_dfs): Likewise.
772 * include/bits/regex_scanner.h: Remove unused enum entry.
773 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
776 2014-06-30 Jason Merrill <jason@redhat.com>
778 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
781 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
784 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
785 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
788 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
790 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
792 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
794 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
796 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
799 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
801 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
802 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
803 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
805 * include/ext/alloc_traits.h: Fix comment.
807 * include/Makefile.am: Add new header.
808 * include/Makefile.in: Regenerate.
809 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
810 New RAII utilities for working with allocators.
811 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
812 __allocator_type typedef and use new __allocated_ptr type.
813 (_Sp_counted_ptr_inplace): Likewise.
814 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
815 __allocate_guarded to to simplify exception handling.
816 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
817 * include/std/future (_Result_alloc::_M_destroy): Likewise.
818 (_Result_alloc::_S_allocate_result): Likewise.
819 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
820 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
821 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
822 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
824 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
826 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
828 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
829 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
831 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
833 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
834 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
835 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
836 Remove unused typedef.
837 (time_get::do_get_monthname): Likewise.
838 * include/bits/stl_tree.h: Add system_header pragma.
839 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
840 redundant const-qualifier.
841 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
842 instead of _GLIBCXX_USE_CONSTEXPR.
844 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
846 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
847 * include/std/chrono (_Checked_integral_constant): Allow zero.
848 * testsuite/20_util/duration/literals/values.cc: Test non-positive
849 values and digit separators.
850 * include/experimental/any
853 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
854 apply the signed specifier to wchar_t.
855 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
856 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
857 cv-qualifier and size.
858 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
861 * include/experimental/any (any_v1): Rename namespace to
862 fundamentals_v1. Change string returned by bad_any_cast::what().
863 * include/experimental/optional (fundamentals_v1): Add namespace.
864 * include/experimental/string_view (fundamentals_v1): Likewise.
865 * testsuite/experimental/any/typedefs.cc: New.
866 * testsuite/experimental/optional/typedefs.cc: New.
867 * testsuite/experimental/string_view/typedefs.cc: New.
869 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
870 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
873 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
875 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
877 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
878 * include/Makefile.am: Add new header.
879 * include/Makefile.in: Regenerate.
880 * include/experimental/any: New.
881 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
883 * testsuite/experimental/any/assign/1.cc: New.
884 * testsuite/experimental/any/assign/2.cc: New.
885 * testsuite/experimental/any/cons/1.cc: New.
886 * testsuite/experimental/any/cons/2.cc: New.
887 * testsuite/experimental/any/cons/3.cc: New.
888 * testsuite/experimental/any/misc/any_cast.cc: New.
889 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
890 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
891 * testsuite/experimental/any/misc/swap.cc: New.
892 * testsuite/experimental/any/modifiers/1.cc: New.
893 * testsuite/experimental/any/observers/type.cc: New.
895 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
896 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
898 * include/bits/shared_ptr.h (shared_ptr): Likewise.
899 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
901 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
903 * include/parallel/list_partition.h (__parallel::list_partition):
905 * include/std/iomanip (quoted): Likewise.
906 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
908 * doc/xml/api.xml: Link to more recent API docs.
909 * include/bits/allocator.h: Fix link in doxygen comment.
910 * include/bits/char_traits.h: Likewise.
911 * include/bits/ios_base.h: Likewise.
912 * include/bits/stl_map.h: Likewise.
913 * include/bits/stl_multimap.h: Likewise.
914 * include/bits/stl_multiset.h: Likewise.
915 * include/bits/stl_set.h: Likewise.
916 * include/bits/unordered_map.h: Likewise.
917 * include/bits/unordered_set.h: Likewise.
918 * include/ext/mt_allocator.h: Likewise.
919 * include/std/fstream: Likewise.
920 * include/std/iosfwd: Likewise.
921 * include/std/ostream: Likewise.
922 * include/std/sstream: Likewise.
923 * include/std/streambuf: Likewise.
924 * doc/html/*: Regenerate.
926 * include/experimental/any (any_cast): Combine duplicate doxygen
928 * include/experimental/string_view (basic_string_view): Update
930 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
931 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
932 (dynamic_bitset): Improve Doxygen comments.
933 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
936 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
938 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
939 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
941 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
944 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
945 (bin_search_tree_traits): Do not redeclare template-parameters.
946 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
948 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
950 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
951 parameter for DocBook HTML generation.
952 * doc/Makefile.in: Regenerate.
953 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
954 * doc/xml/faq.xml: Update content and improve formatting.
955 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
956 * doc/xml/manual/allocator.xml: Add stable ID attribute.
957 * doc/xml/manual/bitmap_allocator.xml: Likewise.
958 * doc/xml/manual/build_hacking.xml: Likewise.
959 * doc/xml/manual/codecvt.xml: Change URL.
960 * doc/xml/manual/ctype.xml: Add stable ID attribute.
961 * doc/xml/manual/debug_mode.xml: Likewise.
962 * doc/xml/manual/documentation_hacking.xml: Likewise.
963 * doc/xml/manual/evolution.xml: Likewise.
964 * doc/xml/manual/extensions.xml: Likewise.
965 * doc/xml/manual/locale.xml: Likewise.
966 * doc/xml/manual/messages.xml: Make section id consistent, improve
968 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
969 * doc/xml/manual/profile_mode.xml: Likewise.
970 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
971 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
972 * doc/xml/manual/status_cxx2011.xml: Likewise.
973 * doc/xml/manual/status_cxx2014.xml: Likewise.
974 * doc/xml/manual/status_cxxtr1.xml: Likewise.
975 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
976 * doc/xml/manual/using.xml: Likewise.
977 * doc/html/*: Regenerate.
979 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
981 * include/tr1/beta_function.tcc: Fix spelling of include guard in
984 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
986 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
988 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
990 DR 2344 - std::quoted doesn't respect padding
991 * include/std/iomanip: Allow for padding in quoted inserters.
992 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
993 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
995 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
997 * testsuite/23_containers/map/operators/1.cc: Simplify test.
999 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
1001 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
1003 * doc/xml/manual/backwards_compatibility.xml
1004 (backwards.second.stringstreams): Likewise.
1005 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
1007 * doc/xml/manual/containers.xml (associative.bitset.type_string):
1008 Replace <quote> in code example.
1009 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
1010 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
1011 fix typos, improve markup.
1012 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
1013 <emphasis> with <replaceable>.
1014 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
1015 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
1016 and remove newlines in string literal.
1018 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
1022 * testsuite/20_util/is_assignable/value.cc: Update.
1024 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
1026 * include/std/condition_variable (condition_variable_any::_Unlock): Do
1027 not swallow __forced_unwind.
1028 * include/std/future (__future_base::_Task_setter): Likewise.
1029 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
1030 promise and rethrow.
1031 * include/std/mutex (try_lock): Likewise.
1032 * testsuite/30_threads/async/forced_unwind.cc: New.
1033 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
1035 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
1036 members to avoid wasted space when not using a cache.
1037 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
1038 * include/bits/regex_compiler.tcc
1039 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
1041 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
1042 New enumeration type to indicate match mode.
1043 (__detail::_Executor::_State_info): New type holding members only
1044 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
1046 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
1047 Replace template parameter with run-time function parameter.
1048 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
1049 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
1050 implement DFS and BFS mode.
1051 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
1052 Split implementation into ...
1053 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
1054 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
1055 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
1056 argument instead of template argument.
1057 (__detail::_Executor::_M_dfs): Likewise.
1058 * include/bits/regex_scanner.tcc: Fix typos in comments.
1059 * testsuite/performance/28_regex/range.cc: New.
1061 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
1062 Jonathan Wakely <jwakely@redhat.com>
1064 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
1066 (aligned_union): New struct (C++11).
1067 (aligned_union_t): New type alias (C++14).
1068 * doc/xml/manual/status_cxx2011.xml: Update.
1069 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
1070 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1073 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
1076 * include/experimental/string_view (operator basic_string): Correct
1078 (to_string): Replace with member function.
1079 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
1080 allow _M_str to be null.
1081 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
1082 default constructor semantics.
1083 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
1084 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
1085 copyright dates. Remove unused header.
1086 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
1088 * testsuite/experimental/string_view/operations/data/char/1.cc:
1089 Fix copyright dates. Adjust to new default constructor semantics.
1090 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
1092 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
1094 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
1095 (__uses_allocator_arg): Remove unused type.
1096 (__uses_alloc0): Turn into a trivial type.
1097 (__uses_alloc): Add missing template parameter in primary template.
1098 (__uses_alloc_impl): Rename to __uses_alloc_t.
1100 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
1102 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
1103 work with previous versions of Tcl.
1105 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
1106 Benjamin's old email address.
1108 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
1109 Paolo's address too.
1111 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
1113 * include/tr2/bool_set: Use UTF-8 for accented characters.
1114 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
1115 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
1116 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
1118 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
1121 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
1123 (_State_base::_M_dot): Likewise.
1125 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
1127 * include/profile/map.h: Fix typo in comment; minor formatting fix.
1128 * include/profile/multimap.h: Likewise.
1129 * include/profile/set.h: Likewise.
1130 * include/profile/multiset.h: Likewise.
1132 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
1134 * include/profile/array: Clean useless white chars.
1135 * include/profile/base.h: Likewise.
1136 * include/profile/iterator_tracker.h: Likewise.
1137 * include/profile/bitset: Code cleanup and remove not instrumented code.
1138 * include/profile/deque: Likewise.
1139 * include/profile/forward_list: Likewise.
1140 * include/profile/list (std::__profile::_List_profile<>): New.
1141 (std::__profile::list<>): Inherit from latter and adapt.
1142 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
1143 advise to match any ordered to unordered container conversion.
1144 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
1146 * include/Makefile.am: Add latter.
1147 * include/Makefile.in: Regenerate.
1148 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
1149 remove not instrumented code.
1150 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
1151 * include/profile/set.h (std::__profile::set<>): Likewise.
1152 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
1153 * include/profile/unordered_base.h: Add some line feed.
1154 * include/profile/unordered_map: Clean useless white chars and replace
1156 * include/profile/unordered_set: Likewise.
1157 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
1158 (std::__profile::_Vector_profile_post<>): New.
1159 (std::__profile::vector<>): Inherit from latter and adapt.
1161 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
1164 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
1165 dragonfly target selector to all tests that run on freebsd.
1167 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
1169 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
1170 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
1172 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
1174 * testsuite/30_threads/call_once/60497.cc: Likewise.
1175 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
1176 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
1177 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
1178 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
1179 * testsuite/30_threads/promise/60966.cc: Likewise.
1180 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
1181 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
1182 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
1183 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
1184 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
1185 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
1186 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
1187 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
1188 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
1189 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
1190 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
1191 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
1192 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
1193 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
1194 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
1195 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
1196 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
1198 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
1201 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
1203 * testsuite/23_containers/unordered_set/61143.cc: New.
1204 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
1206 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
1209 * include/std/type_traits: Move include outside namespace std.
1210 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
1211 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1212 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1215 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
1218 2014-05-21 John Marino <gnugcc@marino.st>
1220 * acinclude.m4 (*-*-dragonfly*): New target.
1221 * configure: Regenerate.
1222 * configure.host (*-*-dragonfly*): New target.
1223 * config/locale/dragonfly/c_locale.cc: New.
1224 * config/locale/dragonfly/ctype_members.cc: New.
1225 * config/os/bsd/dragonfly/ctype_base.h: New.
1226 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
1227 * config/os/bsd/dragonfly/ctype_inline.h: New.
1228 * config/os/bsd/dragonfly/os_defines.h: New.
1230 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
1232 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
1233 libstdc++.exp imports those flags via getenv.
1234 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
1235 CXXFLAGS contains a '-O' flag.
1237 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1241 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1244 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1245 and add unwind directives.
1247 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
1249 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
1251 2014-05-20 Tim Shen <timshen91@gmail.com>
1254 * include/bits/regex_compiler.h
1255 (_BracketMatcher<>::_M_add_character_class): Add negative character
1257 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
1259 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
1262 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
1264 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
1266 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
1268 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
1269 * libsupc++/new_opnt.cc: Likewise.
1271 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
1274 * include/std/future (__future_base::_State_baseV2::_M_set_result):
1275 Pass lock into _M_do_set and hold it until the function returns.
1276 Signal condition variable after call_once completes.
1277 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
1279 * testsuite/30_threads/promise/60966.cc: New.
1281 2014-05-16 Iain Sandoe <iain@codesourcery.com>
1282 Sandra Loosemore <sandra@codesourcery.com>
1284 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
1285 until after checking that the test is eligible to be run.
1287 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1289 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
1290 test for 32-bit target.
1291 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1293 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
1296 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1299 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1300 and add unwind directives.
1302 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1304 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
1306 * include/std/chrono (chrono_literals::__select_type::_Select_type):
1308 (chrono_literals::_Checked_integral_constant): Define.
1309 Simplify UDL operator templates and check for overflow.
1310 * testsuite/20_util/duration/literals/range.cc: New.
1312 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
1313 Jonathan Wakely <jwakely@redhat.com>
1316 * include/bits/parse_numbers.h: Use integral_constant to remove
1317 duplication and simplify.
1318 * testsuite/20_util/duration/literals/61166.cc: New.
1320 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1323 * include/std/type_traits (__make_unsigned, __make_signed): Define
1324 specializations for wchar_t, char16_t and char32_t.
1325 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
1326 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
1327 test for make_unsigned<volatile wchar_t>.
1328 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1330 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1332 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1334 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1337 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1339 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
1340 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
1341 * include/std/utility (tuple_size, tuple_element): Likewise.
1342 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1343 Adjust dg-error line number.
1345 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
1347 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
1348 (__tuple_element_t): Define.
1349 (tuple_element): Use __tuple_element_t.
1350 (__cv_tuple_size): Define.
1351 (tuple_size<cv _Tp>): Use __cv_tuple_size.
1352 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
1353 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
1354 (__tuple_compare): Remove size check, re-order parameters.
1355 (operator==, operator<): Use static_assert to check requirements.
1356 * include/std/functional (__volget): use __tuple_element_t.
1357 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
1358 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
1360 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
1363 * include/std/tuple (get, __tuple_compare): Qualify more calls to
1364 prevent ADL. Cast comparison results to bool.
1365 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
1366 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
1369 * include/debug/array (get): Qualify call to other get overload.
1370 * include/profile/array (get): Likewise.
1371 * include/std/array (get): Likewise.
1372 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
1373 * include/std/mutex (unique_lock, call_once): Use __addressof.
1374 (__unlock_impl): Remove unused template.
1375 (__try_to_lock): Declare inline.
1376 (__try_lock_impl::__do_try_lock): Qualify function calls.
1377 (lock): Avoid narrowing conversion.
1378 * testsuite/20_util/bind/60497.cc: New.
1379 * testsuite/23_containers/array/element_access/60497.cc: New.
1380 * testsuite/30_threads/call_once/60497.cc: New.
1381 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
1383 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
1385 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
1386 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
1387 * acinclude.m4 (libtool_VERSION): Bump.
1388 * configure: Regenerate.
1389 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
1390 * testsuite/28_regex/regex_error/base.cc: New.
1392 2014-05-08 Joshua Gay <jgay@gnu.org>
1395 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
1396 source" with "free software".
1397 * doc/html/faq.html: Likewise.
1399 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
1402 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
1404 (operator=(const ios_base&)): Likewise.
1405 * include/std/streambuf: Remove trailing whitespace.
1406 (basic_streambuf(const basic_streambuf&)): Fix initializer for
1407 _M_out_end. Define as defaulted for C++11.
1408 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
1409 (swap(basic_streambuf&)): Define for C++11.
1410 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
1413 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
1415 * include/std/iostream: Fix URL in comment.
1416 * src/c++98/ios_init.cc: Fix path in comment.
1418 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
1420 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
1421 * configure: Regenerate.
1423 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
1426 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
1427 comparison function.
1428 * testsuite/23_containers/set/cons/61023.cc: New.
1431 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
1433 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
1434 arithmetic to obtain a mutable iterator from const_iterator.
1435 * include/bits/vector.tcc (vector::insert): Likewise.
1436 * include/debug/vector (vector::erase): Likewise.
1437 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1438 Adjust dg-error line number.
1439 * testsuite/23_containers/vector/requirements/dr438/
1440 constructor_1_neg.cc: Likewise.
1441 * testsuite/23_containers/vector/requirements/dr438/
1442 constructor_2_neg.cc: Likewise.
1443 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1446 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
1448 * include/Makefile.in: Regenerate.
1450 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
1452 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1453 parameter to pass the 2 instances to check allocator equality.
1454 * include/debug/safe_container.h: New, define _Safe_container<>.
1455 * include/Makefile.am: Add previous.
1456 * include/debug/deque (std::__debug::deque<>): Inherit
1457 _Safe_container<>. Use default implementation for all special
1459 * include/debug/forward_list (std::__debug::forward_list<>):
1461 * include/debug/list (std::__debug::list<>): Likewise.
1462 * include/debug/map.h (std::__debug::map<>): Likewise.
1463 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1464 * include/debug/set.h (std::__debug::set<>): Likewise.
1465 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1466 * include/debug/string (std::__debug::basic_string<>): Likewise.
1467 * include/debug/unordered_map
1468 (std::__debug::unordered_map<>): Likewise.
1469 (std::__debug::unordered_multimap<>): Likewise.
1470 * include/debug/unordered_set
1471 (std::__debug::unordered_set<>): Likewise.
1472 (std::__debug::unordered_multiset<>): Likewise.
1473 * include/debug/vector (std::__debug::vector<>): Likewise.
1474 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1476 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1477 (~_Safe_sequence_base()): Add noexcept.
1478 * include/debug/safe_sequence.h
1479 (std::__debug::_Safe_node_sequence<>): New.
1480 * include/debug/safe_unordered_base.h
1481 (_Safe_unordered_container_base()): Add noexcept.
1482 (~_Safe_unordered_container_base()): Likewise.
1483 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1484 * include/debug/safe_unordered_container.h:
1485 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1486 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1487 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1489 * testsuite/util/debug/checks.h (check_construct1): Just implement
1490 an invalid constructor invocation and no other operations
1491 potentially not supported by some types of container.
1492 (check_construct2): Likewise.
1493 (check_construct3): Likewise.
1494 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1495 check on iterators to make sure they are correctly moved in debug
1497 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1499 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1500 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1501 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1502 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1504 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1505 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1507 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1508 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1509 * testsuite/23_containers/unordered_map/allocator/move.cc:
1511 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1513 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1515 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1517 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1519 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1521 * testsuite/23_containers/unordered_set/allocator/move.cc:
1523 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1525 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1527 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1529 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1531 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1533 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1535 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1536 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1537 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1538 * testsuite/23_containers/map/debug/move_neg.cc: New.
1539 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1540 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1541 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1542 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1543 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1544 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1545 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1546 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1547 * testsuite/23_containers/set/debug/move_neg.cc: New.
1548 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1550 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1552 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1553 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1555 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1557 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1559 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1561 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1563 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1565 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1567 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1569 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1570 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1572 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1574 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1575 (CXXABI_1.3.9): Remove __float128 symbols.
1577 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
1580 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1581 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1582 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1583 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1585 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1588 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1589 Check the correct type in the static assertion.
1590 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1592 2014-04-27 Tim Shen <timshen91@gmail.com>
1594 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1595 Add _S_opcode_repeat support to distingush a loop from
1596 _S_opcode_alternative.
1597 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1598 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1599 _StateSeq<>::_M_clone): Likewise.
1600 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1602 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1603 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1604 Uglify local variable __i.
1605 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1606 Use size_t instead of int to compare with vector::size().
1608 2014-04-27 Tim Shen <timshen91@gmail.com>
1610 * include/bits/regex_executor.h: Add _M_rep_count to track how
1611 many times this repeat node are visited.
1612 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1613 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1616 2014-04-27 Tim Shen <timshen91@gmail.com>
1618 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1619 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1620 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1621 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1622 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1623 Adjust debug NFA dump.
1625 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1628 * include/experimental/optional (operator!=): Implement in terms of
1630 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1631 * testsuite/experimental/optional/relops/2.cc: Likewise.
1632 * testsuite/experimental/optional/relops/3.cc: Likewise.
1633 * testsuite/experimental/optional/relops/4.cc: Likewise.
1634 * testsuite/experimental/optional/relops/5.cc: Likewise.
1635 * testsuite/experimental/optional/relops/6.cc: Likewise.
1637 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
1640 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1641 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1644 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
1646 * testsuite/util/testsuite_abi.cc (check_version): Update for
1649 2014-04-24 Tim Shen <timshen91@gmail.com>
1651 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1652 Do _M_alt before _M_next.
1653 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1655 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
1658 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1659 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1660 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1662 2014-04-24 Andreas Schwab <schwab@suse.de>
1664 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1665 new CXXABI_1.3.9 symbols.
1667 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1669 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1670 (CXXABI_1.3.9): New version.
1672 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
1675 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1676 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1677 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1679 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1681 * configure.host: Remove solaris2.9 handling.
1682 Change os_include_dir to os/solaris/solaris2.10.
1683 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1684 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1685 * configure: Regenerate.
1686 * config/abi/post/solaris2.9: Remove.
1687 * config/os/solaris/solaris2.9: Rename to ...
1688 * config/os/solaris/solaris2.10: ... this.
1689 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1692 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1693 Remove Solaris 9 reference.
1694 * doc/html/manual/configure.html: Regenerate.
1696 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1697 Remove *-*-solaris2.9 xfail.
1698 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1701 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1704 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
1706 * include/std/functional (__is_location_invariant): Use __or_ helper.
1708 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
1711 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1714 * include/std/atomic (atomic<_Tp>): Add static assertion.
1715 * testsuite/29_atomics/atomic/60695.cc: New.
1718 * include/std/functional (function::_Callable): Exclude own type
1719 from the callable checks.
1720 * testsuite/20_util/function/60594.cc: New.
1722 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1723 const to constexpr member functions.
1725 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1726 delegating constructor.
1727 * include/bits/shared_ptr_base.h
1728 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1730 * include/std/atomic: Uglify parameter names.
1733 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1734 1.cc: Fix invalid explicit instantiations with unqualified names.
1735 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1737 * testsuite/20_util/tuple/53648.cc: Likweise.
1738 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1740 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1742 * testsuite/23_containers/unordered_map/requirements/
1743 debug_container.cc: Likewise.
1744 * testsuite/23_containers/unordered_map/requirements/
1745 explicit_instantiation/3.cc: Likewise.
1746 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1748 * testsuite/23_containers/unordered_multimap/requirements/
1749 explicit_instantiation/3.cc: Likewise.
1750 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1752 * testsuite/23_containers/unordered_multiset/requirements/
1753 explicit_instantiation/3.cc: Likewise.
1754 * testsuite/23_containers/unordered_set/requirements/
1755 debug_container.cc: Likewise.
1756 * testsuite/23_containers/unordered_set/requirements/
1757 explicit_instantiation/3.cc: Likewise.
1759 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1760 not use uninitialized members in mem-initializers.
1761 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1762 * testsuite/util/testsuite_common_types.h: Update comment.
1764 * include/experimental/string_view: Fix inconsistent exception specs.
1766 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1767 Remove name of unused parameter.
1769 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
1771 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1772 _Vector_base::_M_allocate): NullablePointer requirements do not
1773 include initialization from literal zero, use value-initialization.
1774 * include/bits/vector.tcc (vector::_M_insert_aux,
1775 vector::_M_explace_back_aux): Likewise for assignment.
1777 * include/bits/allocator.h (operator==, operator!=): Add exception
1781 * include/std/tuple (get): Qualify calls to prevent ADL.
1782 * testsuite/20_util/tuple/60497.cc: New.
1784 * include/std/tuple (tuple_element_t): Define.
1785 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1787 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1789 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1792 * include/bits/stl_iterator.h (move_iterator::reference,
1793 move_iterator::operator*): Implement LWG 2106.
1794 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1796 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1798 * include/std/complex (__complex_exp, pow): Specify the template
1799 parameter in calls to std::polar, for expression templates.
1801 2014-04-10 Andreas Schwab <schwab@suse.de>
1803 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1805 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1806 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1808 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1810 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1812 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1813 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1814 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1817 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1818 Jack Howarth <howarth@bromo.med.uc.edu>
1821 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1824 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1826 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1828 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1830 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1831 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1832 * doc/xml/manual/concurrency_extensions.xml
1833 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1834 * doc/html/*: Regenerate.
1836 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1837 Jonathan Wakely <jwakely@redhat.com>
1840 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1841 string if input is not quoted.
1842 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1844 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1846 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1848 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1850 * testsuite/18_support/exception_ptr/60612-terminate.cc
1851 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1852 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1854 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1856 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1858 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1859 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1861 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1863 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1865 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1866 Fix bad s/part/chapter/ substitutions.
1867 * doc/xml/manual/io.xml (std.io): Likewise.
1868 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1869 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1871 * doc/html/*: Regenerate.
1873 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1876 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1877 compatible with __cxa_exception.
1878 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1879 Fix typos in comments.
1880 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1881 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1883 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1886 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1887 Use sizeof pointer type not the element type.
1888 * testsuite/29_atomics/atomic/60658.cc: New.
1890 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1892 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1893 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1894 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1895 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1896 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1897 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1898 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1899 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1900 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1901 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1904 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1906 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1908 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1910 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1911 to delegated constructor.
1912 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1913 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1916 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1918 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1921 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1923 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1926 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1927 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1929 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1930 from different types of debug container. Use _Is_contiguous_sequence
1931 instead of is_lvalue_reference.
1932 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1933 dereferencing past-the-end iterator.
1934 (__foreign_iterator_aux4): Use const value_type* instead of
1935 potentially user-defined const_pointer type.
1936 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1937 and pass end iterator to __gnu_debug::__foreign_iterator.
1938 (__glibcxx_check_insert_range_after): Likewise.
1939 (__glibcxx_check_max_load_factor): Fix comment.
1940 * include/debug/vector (_Is_contiguous_sequence): Define partial
1942 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1943 -std=gnu++11 option and unused header.
1944 * testsuite/23_containers/vector/debug/60587.cc: New.
1945 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1947 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1949 * crossconfig.m4: Support spu-*-elf* targets.
1950 * configure: Regenerate.
1952 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1955 * include/std/future (__future_base::_Task_state<>): Change
1956 constructors to template functions using perfect forwarding.
1957 (__create_task_state): Use decayed type as stored task.
1958 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1959 * testsuite/30_threads/packaged_task/60564.cc: New.
1961 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1963 * scripts/create_testsuite_files: Add testsuite/experimental in
1964 the list of folders to search for tests.
1966 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1968 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1970 2014-03-15 Tim Shen <timshen91@gmail.com>
1972 * include/bits/regex.h: Add/modify comments.
1973 * include/bits/regex_compiler.h: Likewise.
1974 * include/bits/regex_executor.h: Likewise.
1975 * include/bits/regex_executor.tcc: Likewise.
1976 * include/bits/regex_scanner.h: Likewise.
1978 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
1981 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
1982 _ZNSt12system_errorC* symbols which are not exported on any target.
1984 2014-03-12 Roland McGrath <mcgrathr@google.com>
1985 Mark Seaborn <mseaborn@google.com>
1988 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
1989 the address of a null pointer, not with a null pointer to pointer.
1990 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
1991 * testsuite/18_support/bad_exception/59392.cc: New file.
1993 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
1996 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
1998 * include/debug/map (map::operator=(map&&)): Likewise.
1999 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
2000 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
2001 * include/debug/set (set::operator=(set&&)): Likewise.
2002 * include/debug/unordered_map
2003 (unordered_map::operator=(unordered_map&&)): Likewise.
2004 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
2005 * include/debug/unordered_set
2006 (unordered_set::operator=(unordered_set&&)): Likewise.
2007 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
2008 * include/debug/vector (vector::operator=(vector&&)): Likewise.
2009 * testsuite/23_containers/forward_list/debug/60499.cc: New
2010 * testsuite/23_containers/map/debug/60499.cc: New
2011 * testsuite/23_containers/multimap/debug/60499.cc: New
2012 * testsuite/23_containers/multiset/debug/60499.cc: New
2013 * testsuite/23_containers/set/debug/60499.cc: New
2014 * testsuite/23_containers/unordered_map/debug/60499.cc: New
2015 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
2016 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
2017 * testsuite/23_containers/unordered_set/debug/60499.cc: New
2018 * testsuite/23_containers/vector/debug/60499.cc: New
2020 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
2022 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
2023 for filesystem and fundamentals TS work items.
2025 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
2028 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
2029 Adjust dg-error directives.
2031 2014-02-26 Tim Shen <timshen91@gmail.com>
2033 * include/bits/regex.tcc (match_results<>::format,
2034 regex_replace<>): Update __out after calling std::copy.
2035 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
2037 * testsuite/28_regex/match_results/format.cc: Likewise.
2039 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
2042 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
2043 allocator_type&)): Remove redundant call to _M_initialize_map.
2044 (deque::deque(const allocator_type&)): Initialize _Base with a
2045 constructor that calls _M_initialize_map.
2049 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
2051 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
2054 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
2056 Rename testsuite directory shared_mutex to shared_timed_mutex
2058 * testsuite/30_threads/shared_mutex: Moved to...
2059 * testsuite/30_threads/shared_timed_mutex: ...here
2061 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
2063 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
2064 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
2065 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
2066 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
2067 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
2068 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
2069 * testsuite/30_threads/shared_lock/requirements/
2070 explicit_instantiation.cc: Ditto.
2071 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
2072 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
2073 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
2074 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
2075 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
2076 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
2077 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
2078 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
2079 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
2080 * testsuite/30_threads/shared_mutex/requirements/
2081 standard_layout.cc: Ditto.
2082 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
2083 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
2084 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
2085 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
2086 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
2088 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2090 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
2091 execution on i?86-*-solaris2.9, remove comment.
2092 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2094 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
2096 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
2097 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
2098 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
2100 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
2102 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
2103 not use varargs when argument could be non-POD.
2104 (__alloctr_rebind_helper): Eliminate static const bool member by
2105 using true_type and false_type.
2106 (allocator_traits::__allocate_helper): Likewise.
2107 (allocator_traits::__construct_helper): Likewise.
2108 (allocator_traits::__destroy_helper): Likewise.
2109 (allocator_traits::__maxsize_helper): Likewise.
2110 (allocator_traits::__select_helper): Likewise.
2111 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
2112 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
2113 Remove redundant condition.
2114 * include/bits/stl_vector.h (vector::operator=(const vector&)):
2116 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
2117 indirection through __alloc_traits.
2118 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
2119 Eliminate static const bool members by using true_type and false_type.
2120 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
2121 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
2122 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
2124 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
2127 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
2128 (vector::_M_data_ptr): New overloaded functions to ensure empty
2129 vectors do not dereference the pointer.
2130 * testsuite/23_containers/vector/59829.cc: New.
2131 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2132 Adjust dg-error line number.
2133 * testsuite/23_containers/vector/requirements/dr438/
2134 constructor_1_neg.cc: Likewise.
2135 * testsuite/23_containers/vector/requirements/dr438/
2136 constructor_2_neg.cc: Likewise.
2137 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2141 * include/ext/array_allocator.h: Add deprecated attribute.
2144 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
2145 installation and use of python printers.
2146 * doc/xml/manual/status_cxx2011.xml: Update.
2147 * doc/html/*: Regenerate.
2149 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
2150 Kyle Lippincott <spectral@google.com>
2153 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
2154 constructor and grant friendship to weak_ptr.
2155 (weak_ptr::lock()): Use new constructor.
2156 * include/bits/shared_ptr_base.h
2157 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
2158 and define specializations.
2159 (__shared_count): Add new non-throwing constructor.
2160 (__shared_ptr): Add new non-throwing constructor and grant friendship
2162 (__weak_ptr::lock()): Use new constructor.
2163 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
2164 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
2166 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
2169 * include/bits/shared_ptr_base.h
2170 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
2173 2014-01-27 Jason Merrill <jason@redhat.com>
2178 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
2179 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
2180 (__cxa_allocate_exception): Don't set it here.
2182 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
2184 * include/bits/stl_map.h: Remove anachronistic comment.
2185 * include/bits/stl_multimap.h: Add whitespace.
2186 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
2187 -std=gnu++11 instead of -std=c++11.
2188 * testsuite/23_containers/map/operators/2.cc: Likewise.
2189 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
2190 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
2191 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
2193 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
2194 * configure: Regenerate.
2196 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2199 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
2200 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
2202 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2203 Peter A. Bigot <pab@pabigot.com>
2206 * include/experimental/string_view
2207 (copy(_CharT*, size_type, size_type) const): Correct throw string.
2208 Correct copy start location.
2210 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2211 Peter A. Bigot <pab@pabigot.com>
2214 * include/experimental/string_view (operator[](size_type) const):
2215 Fix one-off index error in debug check.
2216 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
2217 test basic_string_view at size().
2218 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
2220 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2221 Peter A. Bigot <pab@pabigot.com>
2224 * include/experimental/string_view
2225 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
2226 * testsuite/experimental/string_view/operations/substr/char/1.cc:
2227 Comment out catch of out_of_range; No terminating null
2228 in basic_string_view. Check begin == end.
2229 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
2232 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
2235 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
2236 constructor to prevent it being implicitly defined as deleted, but
2237 do not copy anything.
2238 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
2239 Define copy and move constructors similar to _Safe_sequence_base's.
2240 * testsuite/23_containers/unordered_map/59548.cc: New.
2242 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2243 Steve Ellcey <sellcey@mips.com>
2245 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
2247 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
2248 * (configure, config.h.in): Regenerate.
2249 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
2251 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
2253 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
2254 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
2257 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
2258 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
2260 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
2262 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
2263 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
2264 functions to perform moving or copying of elements from rvalue tree.
2265 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
2266 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
2267 * testsuite/23_containers/map/59872.cc: New.
2268 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
2270 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
2272 * include/bits/stl_deque.h (_Deque_impl): Move comment.
2275 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
2276 Split into separate default constructor and constructor taking
2278 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
2279 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
2281 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
2282 * include/debug/list (list::list(const _Allocator&)): Likewise.
2283 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
2285 * include/debug/multimap.h
2286 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2287 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
2289 * include/debug/multiset.h
2290 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2291 * include/debug/vector (vector::vector(const allocator_type&)):
2293 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
2294 * include/profile/list (list::list(const _Allocator&)): Likewise.
2295 * include/profile/map.h
2296 (map::map(const _Compare&, const _Allocator&)): Likewise.
2297 * include/profile/multimap.h
2298 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2299 * include/profile/set.h
2300 (set::set(const _Compare&, const _Allocator&)): Likewise.
2301 * include/profile/multiset.h
2302 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2303 * include/profile/vector (vector::vector(const _Allocator&)):
2305 * testsuite/23_containers/deque/58764.cc: New.
2306 * testsuite/23_containers/list/58764.cc: New.
2307 * testsuite/23_containers/map/58764.cc: New.
2308 * testsuite/23_containers/multimap/58764.cc: New.
2309 * testsuite/23_containers/set/58764.cc: New.
2310 * testsuite/23_containers/multiset/58764.cc: New.
2311 * testsuite/23_containers/vector/58764.cc: New.
2312 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2313 Adjust dg-error line number.
2314 * testsuite/23_containers/deque/requirements/dr438/
2315 constructor_1_neg.cc: Likewise.
2316 * testsuite/23_containers/deque/requirements/dr438/
2317 constructor_2_neg.cc: Likewise.
2318 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2320 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2322 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2324 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2326 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2328 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2330 * testsuite/23_containers/vector/requirements/dr438/
2331 constructor_1_neg.cc: Likewise.
2332 * testsuite/23_containers/vector/requirements/dr438/
2333 constructor_2_neg.cc: Likewise.
2334 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2337 PR libstdc++/58764 (again)
2338 * include/bits/stl_list.h (list): Make default constructor's exception
2339 specification conditional.
2340 * include/bits/stl_vector.h (vector): Likewise.
2341 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
2342 to default constructor.
2343 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2344 Adjust dg-error line number.
2345 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2347 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2349 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2351 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2353 * testsuite/23_containers/vector/requirements/dr438/
2354 constructor_1_neg.cc: Likewise.
2355 * testsuite/23_containers/vector/requirements/dr438/
2356 constructor_2_neg.cc: Likewise.
2357 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2360 2014-01-21 Tim Shen <timshen91@gmail.com>
2362 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
2363 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
2364 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
2366 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
2369 * include/bits/hashtable.h (__cache_default): Do not depend on
2370 whether the hash function is DefaultConstructible or CopyAssignable.
2371 (_Hashtable): Adjust static assertions.
2372 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
2373 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2374 dg-error line number.
2375 * testsuite/23_containers/unordered_set/
2376 not_default_constructible_hash_neg.cc: Remove.
2378 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
2380 * scripts/create_testsuite_files: Add testsuite/experimental in
2381 the list of folders to search for tests.
2382 * include/experimental/string_view
2383 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
2384 incompatible with constexpr qualifier.
2385 (basic_string_view<>::front()): Likewise.
2386 (basic_string_view<>::back()): Likewise.
2387 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
2388 Merge dg-options directives into one.
2389 * testsuite/experimental/string_view/element_access/char/2.cc:
2390 Likewise. Remove invalid experimental namespace scope on
2393 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
2396 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
2397 friendship to _Local_iterator_base<..., false>.
2398 (_Local_iterator_base): Give protected access to all existing members.
2399 (_Local_iterator_base::_M_curr()): New public accessor.
2400 (_Local_iterator_base::_M_get_bucket()): New public accessor.
2401 (_Local_iterator_base<..., false>::_M_init()): New function to manage
2402 the lifetime of the _Hash_code_base explicitly.
2403 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
2404 (_Local_iterator_base<..., false>): Define copy constructor and copy
2405 assignment operator that use new functions to manage _Hash_code_base.
2406 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
2407 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
2408 Use public API for _Local_iterator_base.
2409 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
2410 * include/debug/unordered_map (__debug::unordered_map::erase(),
2411 __debug::unordered_multimap::erase()): Likewise.
2412 * include/debug/unordered_set (__debug::unordered_set::erase(),
2413 __debug::unordered_multiset::erase()): Likewise.
2414 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
2416 2014-01-19 Tim Shen <timshen91@gmail.com>
2418 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
2419 Fix parse error of multiple consecutive quantifiers like "a**".
2420 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
2422 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
2424 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
2426 * include/profile/set.h (set): Implement C++11 allocator-aware
2427 container requirements.
2428 * include/profile/map.h (map): Likewise.
2429 * include/profile/multiset.h (multiset): Likewise.
2430 * include/profile/multimap.h (multimap): Likewise.
2431 * include/profile/set.h
2432 (set::operator=(const set&)): Define as default in C++11 mode.
2433 (set::operator=(set&&)): Likewise.
2434 * include/profile/map.h
2435 (map::operator=(const map&)): Likewise.
2436 (map::operator=(map&&)): Likewise.
2437 * include/profile/multiset.h
2438 (multiset::operator=(const multiset&)): Likewise.
2439 (multiset::operator=(multiset&&)): Likewise.
2440 * include/profile/multimap.h
2441 (multimap::operator=(const multimap&)): Likewise.
2442 (multimap::operator=(multimap&&)): Likewise.
2443 * include/profile/set.h (set::operator=(std::initializer_list<>)):
2444 Rely on the same operator from normal mode.
2445 * include/profile/map.h (map::operator=(std::initializer_list<>)):
2447 * include/profile/multiset.h
2448 (multiset::operator=(std::initializer_list<>)): Likewise.
2449 * include/profile/multimap.h
2450 (multimap::operator=(std::initializer_list<>)): Likewise.
2451 * include/profile/set.h (set::swap(set&)): Add noexcept
2453 * include/profile/map.h (map::swap(map&)): Likewise.
2454 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2455 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2457 2014-01-17 Tim Shen <timshen91@gmail.com>
2459 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2461 * include/bits/regex_automaton.h: Do not use std::set.
2462 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2463 _BracketMatcher<>::_M_add_collating_element(),
2464 _BracketMatcher<>::_M_add_equivalence_class(),
2465 _BracketMatcher<>::_M_make_range()): Likewise.
2466 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2468 * include/bits/regex_executor.h: Do not use std::queue.
2469 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2470 _Executor<>::_M_dfs()): Likewise.
2471 * include/std/regex: Remove <map>, <set> and <queue>.
2473 2014-01-17 Tim Shen <timshen91@gmail.com>
2475 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2476 basic_regex<>::assign()): Change __compile_nfa to accept
2478 * include/bits/regex_compiler.h: Change _Compiler's template
2479 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2480 * include/bits/regex_compiler.tcc: Likewise.
2482 2014-01-17 Tim Shen <timshen91@gmail.com>
2484 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2486 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2487 _ScannerBase from _Scanner; Change _Scanner's template argument from
2488 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2490 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2491 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2492 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2494 * include/std/regex: Add <cstring> for using strchr.
2496 2014-01-17 Tim Shen <timshen91@gmail.com>
2498 * bits/regex_automaton.tcc: Indentation fix.
2499 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2500 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2501 _BracketMatcher<>): Add bool option template parameters and
2502 specializations to make matching more efficient and space saving.
2503 * bits/regex_compiler.tcc: Likewise.
2505 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
2508 * include/bits/hashtable_policy.h: Fix some long lines.
2509 * include/bits/hashtable.h (__hash_code_base_access): Define and
2510 use it to check its _M_bucket_index noexcept qualification. Use
2512 (__access_protected_ctor): ...this.
2513 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2515 * testsuite/23_containers/unordered_set/
2516 not_default_constructible_hash_neg.cc: Likewise.
2518 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
2520 * include/debug/set.h (set): Implement C++11 allocator-aware
2521 container requirements.
2522 * include/debug/map.h (map): Likewise.
2523 * include/debug/multiset.h (multiset): Likewise.
2524 * include/debug/multimap.h (multimap): Likewise.
2525 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2526 fix implementation regarding management of safe iterators.
2527 * include/debug/map.h (map::operator=(map&&)): Likewise.
2528 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2529 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2531 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2532 Rely on the same operator from normal mode.
2533 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2535 * include/debug/multiset.h
2536 (multiset::operator=(std::initializer_list<>)): Likewise.
2537 * include/debug/multimap.h
2538 (multimap::operator=(std::initializer_list<>)): Likewise.
2539 * include/debug/set.h (set::swap(set&)): Add noexcept
2540 specification, add allocator equality check.
2541 * include/debug/map.h (map::swap(map&)): Likewise.
2542 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2543 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2545 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
2548 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2549 and stylistic improvements.
2550 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2551 and update for C++11.
2552 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2555 * doc/xml/manual/backwards_compatibility.xml
2556 (backwards.third.nocreate_noreplace): Correct and expand.
2559 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2561 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
2564 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2565 support for non-Movable types.
2568 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2570 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
2572 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2573 *this allocator instance when building temporary vector instance
2574 so that *this allocator does not get moved.
2575 * include/debug/safe_base.h
2576 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2577 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2578 move constructor from _Safe_sequence_base.
2579 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2580 safe iterators if the instance is moved.
2581 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2582 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2583 check on a vector iterator.
2584 * testsuite/23_containers/vector/allocator/move_assign.cc
2586 (test03): New, test with a non-propagating allocator.
2587 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2589 2014-01-07 Tim Shen <timshen91@gmail.com>
2591 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2592 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2593 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2594 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2595 _BracketMatcher<>::_M_add_char(),
2596 _BracketMatcher<>::_M_add_collating_element(),
2597 _BracketMatcher<>::_M_add_equivalence_class(),
2598 _BracketMatcher<>::_M_add_character_class(),
2599 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2600 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2601 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2602 to template parameter; Add cache for _BracketMatcher. Adjust
2603 declarations from here...
2604 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2605 imbuing a regex will trigger a recompilation to rebuild the cache.
2606 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2607 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2608 different template bool parameters.
2609 * include/bits/regex_executor.h: Remove unnecessary declarations.
2610 * include/std/regex: Adjust including orders.
2611 * testsuite/28_regex/traits/char/user_defined.cc: New.
2612 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2614 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2616 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2617 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2618 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2619 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2620 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2622 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2624 Update copyright years
2626 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2628 * testsuite/18_support/new_handler.cc,
2629 testsuite/18_support/terminate_handler.cc,
2630 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2631 the copyright notice.
2633 Copyright (C) 2014 Free Software Foundation, Inc.
2635 Copying and distribution of this file, with or without modification,
2636 are permitted in any medium without royalty provided the copyright
2637 notice and this notice are preserved.