1 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
3 * include/std/type_traits: Add is_final<> type trait for C++14.
4 * testsuite/util/testsuite_tr1.h: Add
5 * testsuite/20_util/is_final/requirements/
6 explicit_instantiation.cc: New.
7 * testsuite/20_util/is_final/requirements/typedefs.cc: New.
8 * testsuite/20_util/is_final/value.cc: New.
9 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
10 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
11 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
13 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
15 Implement SD-6: SG10 Feature Test Recommendations
16 * include/bits/basic_string.h: Add __cpp_lib feature test macro.
17 * include/bits/stl_algobase.h: Ditto.
18 * include/bits/stl_function.h: Ditto.
19 * include/bits/unique_ptr.h: Ditto.
20 * include/std/chrono: Ditto.
21 * include/std/complex: Ditto.
22 * include/std/iomanip: Ditto.
23 * include/std/shared_mutex: Ditto.
24 * include/std/tuple: Ditto.
25 * include/std/type_traits: Ditto.
26 * include/std/utility: Ditto.
27 * testsuite/experimental/feat-cxx14.cc: New.
28 * testsuite/experimental/feat-lib-fund.cc: New.
29 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
30 * testsuite/20_util/duration/literals/range.cc: Adjust.
31 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
32 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
33 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
34 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
35 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
36 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
37 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
40 2014-09-30 Siva Chandra Reddy <sivachandra@google.com>
42 * python/hook.in: Only import libstdcxx.v6.
43 * python/libstdcxx/v6/__init__.py: Load printers and xmethods.
45 2014-09-30 Jonathan Wakely <jwakely@redhat.com>
47 * doc/xml/manual/status_cxx2011.xml: Update.
48 * doc/html/manual/status.html: Regenerate.
50 2014-09-30 Andreas Schwab <schwab@linux-m68k.org>
52 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: New
55 * configure.host (abi_baseline_pair): If try_cpu is generic use
56 host_cpu for the default.
58 2014-09-29 François Dumont <fdumont@gcc.gnu.org>
61 * include/debug/safe_base.h
62 (_Safe_iterator_base(const _Safe_iterator_base&)): Delete declaration.
63 (_Safe_iterator_base& operator=(const _Safe_iterator_base&)): Likewise.
64 * include/debug/safe_iterator.h (_Safe_iterator<>): Move normal iterator
65 before _Safe_iterator_base in memory. Lock before modifying the iterator
67 * include/debug/safe_local_iterator.h
68 (_Safe_local_iterator_base(const _Safe_local_iterator_base&)): Delete
70 (_Safe_local_iterator_base& operator=(const _Safe_local_iterator_base&)):
72 * include/debug/safe_unordered_base.h (_Safe_local_iterator<>): Move
73 normal iterator before _Safe_iterator_base in memory. Lock before
74 modifying the iterator in numerous places.
75 * include/debug/forward_list (_Safe_forward_list<>::_M_swap_aux): Adapt.
76 * include/debug/safe_sequence.tcc
77 (_Safe_sequence<>::_M_transfer_from_if): Adapt.
79 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
82 * doc/xml/manual/status_cxx2011.xml: Update.
83 * include/bits/stl_uninitialized.h (uninitialized_fill_n): Return
85 (__uninitialized_fill_n_a, __uninitialized_default_n_a): Likewise.
86 * include/bits/stl_vector.h (vector::_M_fill_initialize,
87 vector::_M_default_initialize): Use returned iterator.
88 * include/bits/vector.tcc (vector::_M_fill_assign,
89 vector::_M_fill_insert, vector::_M_default_append): Likewise.
90 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
91 16505.cc: Adjust return type.
92 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
95 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
97 * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.
99 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
101 * testsuite/27_io/basic_ios/conv/bool_neg.cc: New.
102 * testsuite/27_io/basic_ios/conv/bool.cc: New.
103 * testsuite/27_io/basic_ios/conv/voidptr.cc: New.
105 * testsuite/27_io/basic_ios/conv/bool_neg.cc: Add dg-do compile.
107 2014-09-25 Tim Shen <timshen@google.com>
110 * include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign,
111 basic_regex::imbue, basic_regex::getloc, basic_regex::swap): Add
112 _M_loc for basic_regex.
113 * include/bits/regex_automaton.h: Add _M_traits for _NFA.
114 * include/bits/regex_compiler.h (_Compiler::_M_get_nfa, __compile_nfa):
115 Make _Compiler::_M_nfa heap allocated.
116 * include/bits/regex_compiler.tcc (_Compiler::_Compiler): Make
117 _Compiler::_M_nfa heap allocated.
118 * include/bits/regex_executor.h (_Executor::_M_is_word):
119 Fix accessing _M_traits.
120 * include/bits/regex_executor.tcc (_Executor::_M_dfs):
121 Fix accessing _M_traits.
122 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
125 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
127 * config/abi/pre/gnu.ver: Make GLIBCXX_3.4 patterns stricter so the
128 new GLIBCXX_3.4.21 symbols don't match them.
131 * config/abi/pre/gnu.ver: Add new exports.
132 * include/bits/basic_ios.h (basic_ios::operator bool): Define.
133 * src/c++98/ios_locale.cc (basic_ios::operator void*): Instantiate.
135 2014-09-24 François Dumont <fdumont@gcc.gnu.org>
138 * include/bits/stl_tree.h (_Rb_tree_reuse_or_alloc_node<>): New.
139 (_Rb_tree_alloc_node<>): New.
140 (_Rb_tree<>::operator=(_Rb_tree<>&&)): New.
141 (_Rb_tree<>::_M_assign_unique): New.
142 (_Rb_tree<>::_M_assign_equal): New.
143 (_Rb_tree<>): Adapt to reuse allocated nodes as much as possible.
144 * include/bits/stl_map.h
145 (std::map<>::operator=(std::map<>&&)): Default implementation.
146 (std::map<>::operator=(initializer_list<>)): Adapt to use
147 _Rb_tree::_M_assign_unique.
148 * include/bits/stl_multimap.h
149 (std::multimap<>::operator=(std::multimap<>&&)): Default implementation.
150 (std::multimap<>::operator=(initializer_list<>)): Adapt to use
151 _Rb_tree::_M_assign_equal.
152 * include/bits/stl_set.h
153 (std::set<>::operator=(std::set<>&&)): Default implementation.
154 (std::set<>::operator=(initializer_list<>)): Adapt to use
155 _Rb_tree::_M_assign_unique.
156 * include/bits/stl_multiset.h
157 (std::multiset<>::operator=(std::multiset<>&&)): Default implementation.
158 (std::multiset<>::operator=(initializer_list<>)): Adapt to use
159 _Rb_tree::_M_assign_equal.
160 * testsuite/23_containers/map/allocator/copy_assign.cc (test03): New.
161 * testsuite/23_containers/map/allocator/init-list.cc: New.
162 * testsuite/23_containers/map/allocator/move_assign.cc (test03): New.
163 * testsuite/23_containers/multimap/allocator/copy_assign.cc
165 * testsuite/23_containers/multimap/allocator/init-list.cc: New.
166 * testsuite/23_containers/multimap/allocator/move_assign.cc
168 * testsuite/23_containers/multiset/allocator/copy_assign.cc
170 * testsuite/23_containers/multiset/allocator/init-list.cc: New.
171 * testsuite/23_containers/multiset/allocator/move_assign.cc
173 * testsuite/23_containers/set/allocator/copy_assign.cc (test03): New.
174 * testsuite/23_containers/set/allocator/init-list.cc: New.
175 * testsuite/23_containers/set/allocator/move_assign.cc (test03): New.
177 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
180 * src/c++11/ios.cc (ios_base::_M_swap): Fix typo.
182 2014-09-23 Jonathan Wakely <jwakely@redhat.com>
184 * config/abi/pre/gnu.ver: Adjust basic_ostream exports.
185 * include/std/istream (basic_iostream(basic_iostream&&)): Pass *this
186 to ostream constructor.
187 * include/std/ostream (basic_ostream(basic_iostream*)): Change to take
188 parameter by reference, to avoid ambiguity.
189 * testsuite/27_io/basic_ostream/cons/char/null.cc: New.
191 2014-09-22 Jason Merrill <jason@redhat.com>
193 * testsuite/Makefile.am (%/site.exp): Add @.
194 (check-DEJAGNU): Likewise.
195 * testsuite/Makefile.in: Regenerate.
197 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
199 * include/bits/stl_queue.h: Include missing header.
200 * include/bits/stl_stack.h: Likewise.
201 * testsuite/23_containers/priority_queue/requirements/
202 uses_allocator.cc: New.
203 * testsuite/23_containers/queue/requirements/uses_allocator.cc: New.
204 * testsuite/23_containers/stack/requirements/uses_allocator.cc: New.
206 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
208 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
209 * doc/xml/manual/status_cxx2014.xml: Update TS status.
210 * doc/html/manual/status.html: Regenerate.
212 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
214 * include/std/mutex (try_lock): Do not swallow exceptions.
215 * testsuite/30_threads/try_lock/4.cc: Fix test.
217 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
221 * config/abi/pre/gnu.ver: Add new exports.
222 * config/io/basic_file_stdio.h (__basic_file): Support moving and
224 * include/bits/basic_ios.h (basic_ios::move, basic_ios::swap):
226 * include/bits/ios_base.h (ios_base::_M_move, ios_base::_M_swap):
228 * include/bits/fstream.tcc (basic_filebuf): Likewise.
229 * include/bits/move.h (__exchange): Define for C++11 mode.
230 * include/ext/stdio_filebuf.h (stdio_filebuf): Support moving and
232 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf): Likewise.
233 * include/std/fstream (basic_filebuf, basic_ifstream, basic_ofstream,
234 basic_fstream): Likewise.
235 * include/std/ios: Remove whitespace.
236 * include/std/istream (basic_istream, basic_iostream): Support moving
238 * include/std/ostream (basic_ostream): Likewise.
239 * include/std/sstream (basic_stringbuf, basic_istringstream,
240 basic_ostringstream, basic_stringstream): Likewise.
241 * include/std/streambuf (basic_streambuf): Do not default copy
242 constructor and assignment on first declaration.
243 * include/std/utility (exchange): Forward to __exchange.
244 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
245 * src/c++11/Makefile.am: Add stream-related files.
246 * src/c++11/Makefile.in: Regenerate.
247 * src/c++11/ext11-inst.cc (stdio_filebuf, stdio_sync_filebuf):
248 New file for explicit instantiation definitions.
249 * src/c++11/ios.cc: Move from src/c++98 to here.
250 (ios_base::_M_move, ios_base::_M_swap): Define.
251 * src/c++11/ios-inst.cc: Move from src/c++98 to here.
252 * src/c++11/iostream-inst.cc: Likewise.
253 * src/c++11/istream-inst.cc: Likewise.
254 * src/c++11/ostream-inst.cc: Likewise.
255 * src/c++11/sstream-inst.cc: Likewise.
256 * src/c++11/streambuf-inst.cc: Likewise.
257 * src/c++98/Makefile.am: Remove stream-related files.
258 * src/c++98/Makefile.in: Regenerate.
259 * src/c++98/ext-inst.cc (stdio_filebuf): Remove explicit
261 * src/c++98/misc-inst.cc (stdio_sync_filebuf): Likewise.
262 * src/c++98/ios-inst.cc: Move to src/c++11/.
263 * src/c++98/ios.cc: Move to src/c++11/.
264 * src/c++98/iostream-inst.cc: Likewise.
265 * src/c++98/istream-inst.cc: Likewise.
266 * src/c++98/ostream-inst.cc: Likewise.
267 * src/c++98/sstream-inst.cc: Likewise.
268 * src/c++98/streambuf-inst.cc: Likewise.
269 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
270 * testsuite/27_io/basic_fstream/cons/move.cc: New.
271 * testsuite/27_io/basic_fstream/assign/1.cc: New.
272 * testsuite/27_io/basic_ifstream/cons/move.cc: New.
273 * testsuite/27_io/basic_ifstream/assign/1.cc: New.
274 * testsuite/27_io/basic_istringstream/assign/1.cc: New.
275 * testsuite/27_io/basic_istringstream/cons/move.cc: New.
276 * testsuite/27_io/basic_ofstream/cons/move.cc: New.
277 * testsuite/27_io/basic_ofstream/assign/1.cc: New.
278 * testsuite/27_io/basic_ostringstream/assign/1.cc: New.
279 * testsuite/27_io/basic_ostringstream/cons/move.cc: New.
280 * testsuite/27_io/basic_stringstream/assign/1.cc: New.
281 * testsuite/27_io/basic_stringstream/cons/move.cc: New.
283 2014-09-17 Jason Merrill <jason@redhat.com>
285 * libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
286 dynamic_cast more gracefully.
288 2014-09-15 Jakub Jelinek <jakub@redhat.com>
290 * testsuite/Makefile.am (check_p_numbers0, check_p_numbers1,
291 check_p_numbers2, check_p_numbers3, check_p_numbers4,
292 check_p_numbers5, check_p_numbers6, check_p_numbers,
293 check_p_subdirs): New variables.
294 (check_DEJAGNU_normal_targets): Use check_p_subdirs.
295 (check-DEJAGNU): Rewritten so that for parallelized
296 testing each job runs all the *.exp files, with
297 GCC_RUNTEST_PARALLELIZE_DIR set in environment.
298 * testsuite/Makefile.in: Regenerated.
299 * testsuite/lib/libstdc++.exp (gcc_parallel_test_run_p,
300 gcc_parallel_test_enable): New procedures. If
301 GCC_RUNTEST_PARALLELIZE_DIR is set in environment, override
302 runtest_file_p to invoke also gcc_parallel_test_run_p.
303 * testsuite/libstdc++-abi/abi.exp: Run all the tests serially
304 by the first parallel runtest encountering it. Fix up path
305 of the extract_symvers script.
306 * testsuite/libstdc++-xmethods/xmethods.exp: Run all the tests
307 serially by the first parallel runtest encountering it. Run
308 dg-finish even in case of error.
310 2014-09-15 Jonathan Wakely <jwakely@redhat.com>
312 * include/bits/regex.h (basic_regex): Rename _Ch_typeraits template
313 parameters to _Ch_traits.
315 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
317 * include/debug/deque (__gnu_debug::deque): Make base class C++11
320 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
323 * include/bits/stl_algo.h (random_shuffle): Prevent self-swapping.
324 * testsuite/25_algorithms/random_shuffle/59603.cc: New.
326 2014-09-11 Jonathan Wakely <jwakely@redhat.com>
329 * include/bits/regex.h (match_results::format): Remove stray template
331 * include/bits/regex_compiler.h (_RegexTranslator::_RegexTranslator):
332 Remove parameter name to avoid -Wunused-parameter warning.
333 * include/bits/regex_executor.h (_State_info::_State_info): Reorder
334 mem-initializers to avoid -Wreorder warning.
335 * include/bits/regex_executor.tcc (_Executor::_M_word_boundary):
336 Remove parameter name to avoid -Wunused-parameter warning.
337 * include/bits/regex_scanner.tcc (_Scanner::_M_advance): Add braces
338 to avoid -Wempty-body warning when not in debug mode.
340 2014-09-10 Siva Chandra Reddy <sivachandra@google.com>
342 * python/hook.in: Load the xmethods.
343 * python/Makefile.am (nobase_python_DATA): Add xmethods.py.
344 * python/Makefile.in: Regenerated.
345 * python/libstdcxx/v6/xmethods.py: New file.
346 * testsuite/lib/gdb-test.exp (gdb_version_check_xmethods): New
348 (gdb-test): New optional argument LOAD_XMETHODS. Load xmethods
349 python script if LOAD_XMETHODS is true.
350 * testsuite/libstdc++-xmethods/unique_ptr.cc: New file.
351 * testsuite/libstdc++-xmethods/vector.cc: New file.
352 * testsuite/libstdc++-xmethods/xmethods.exp: New file.
354 2014-09-10 Tony Wang <tony.wang@arm.com>
357 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
358 Return with CONTINUE_UNWINDING when the state pattern
359 contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND
361 2014-09-09 Jonathan Wakely <jwakely@redhat.com>
363 * include/bits/deque.tcc (deque::operator=(const deque&)): Handle
364 allocator propagation.
365 (deque::emplace_front, deque::emplace_back): Use allocator traits.
366 (deque::_M_push_back_aux, deque::_M_push_front_aux): Likewise.
367 (deque::_M_pop_back_aux, deque::_M_pop_front_aux): Likewise.
368 * include/bits/stl_deque.h (__deque_buf_size): Add constexpr.
369 (_Deque_iterator): Handle allocators with custom pointers.
370 (_Deque_base): Likewise. Use allocator traits.
371 (deque): Likewise. Add allocator-extended constructors.
372 (deque::_M_move_assign1, deque::_M_move_assign2): Implement move
373 assignment via tag dispatching.
374 (deque::_M_replace_map): Replace existing data.
375 * include/debug/deque (deque): Add allocator-extended constructors.
376 * include/profile/deque (deque): Likewise.
377 * testsuite/23_containers/deque/allocator/copy.cc: New.
378 * testsuite/23_containers/deque/allocator/copy_assign.cc: New.
379 * testsuite/23_containers/deque/allocator/ext_ptr.cc: New.
380 * testsuite/23_containers/deque/allocator/minimal.cc: New.
381 * testsuite/23_containers/deque/allocator/move.cc: New.
382 * testsuite/23_containers/deque/allocator/move_assign-2.cc: New.
383 * testsuite/23_containers/deque/allocator/move_assign.cc: New.
384 * testsuite/23_containers/deque/allocator/noexcept.cc: New.
385 * testsuite/23_containers/deque/allocator/swap.cc: New.
386 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
387 Adjust dg-error line number.
388 * testsuite/23_containers/deque/requirements/dr438/
389 constructor_1_neg.cc: Likewise.
390 * testsuite/23_containers/deque/requirements/dr438/
391 constructor_2_neg.cc: Likewise.
392 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
394 * testsuite/23_containers/vector/52591.cc: Test both the propagating
395 and always-equal cases.
397 2014-09-06 François Dumont <fdumont@gcc.gnu.org>
399 * include/bits/hashtable_policy.h (_Prime_rehash_policy): Constructor
401 (_Hash_code_base<>): All specialization default constructible if
403 (_Hashtable_base<>): Likewise.
404 * include/bits/hashtable.h (_Hashtable<>()): Implementation defaulted.
405 * include/bits/unordered_map.h (unordered_map<>::unordered_map()): New,
406 implementation defaulted.
407 (unordered_multimap<>::unordered_multimap()): Likewise.
408 * include/bits/unordered_set.h
409 (unordered_set<>::unordered_set()): Likewise.
410 (unordered_multiset<>::unordered_multiset()): Likewise.
411 * include/debug/unordered_map: Likewise.
412 * include/debug/unordered_set: Likewise.
413 * testsuite/23_containers/unordered_map/allocator/noexcept.cc
415 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc
417 * testsuite/23_containers/unordered_set/allocator/noexcept.cc
419 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc
422 2014-08-30 John David Anglin <danglin@gcc.gnu.org>
424 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
426 2014-08-29 Jonathan Wakely <jwakely@redhat.com>
428 * include/std/complex (complex): Define copy constructor and
429 assignment operator as defaulted. Improve Doxygen comments.
431 2014-08-28 Jonathan Wakely <jwakely@redhat.com>
433 * testsuite/ext/random/*: Fix incorrect standard references in
436 2014-08-27 Jonathan Wakely <jwakely@redhat.com>
439 * include/Makefile.am (install-freestanding-headers): Add missing
441 * include/Makefile.in: Regenerate.
443 2014-08-21 Tony Wang <tony.wang@arm.com>
445 * testsuite/18_support/nested_exception/62154.cc: Disable when the
446 target doesn't provide atomic builtins.
448 2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
449 Kai Tietz <ktietz@redhat.com>
451 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
453 * config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
455 * libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
456 #include <windows.h>.
457 (struct elt): Add dll member.
458 (run): Decrement dll refcount.
459 (__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.
461 2014-08-15 Jonathan Wakely <jwakely@redhat.com>
464 * libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
465 Rewrite to conform to C++11 requirements.
466 * testsuite/18_support/nested_exception/62154.cc: New.
468 2014-08-14 Matthias Klose <doko@ubuntu.com>
470 * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
471 Remove empty directory.
473 2014-08-14 Paolo Carlini <paolo.carlini@oracle.com>
475 * testsuite/26_numerics/random/linear_congruential_engine/
476 requirements/non_uint_neg.cc: Adjust for parser change.
477 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
478 requirements/non_uint_neg.cc: Likewise.
480 2014-08-13 Jonathan Wakely <jwakely@redhat.com>
483 * include/std/thread (thread::_M_start_thread): Declare new overload.
484 (thread::thread<_Callable, _Args...>): Call new overload with an
485 explicit reference to pthread_create.
486 * src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
487 * config/abi/pre/gnu.ver: Export new function.
489 2014-08-13 Sylvestre Ledru <sylvestre@debian.org>
491 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
493 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
495 * Fix thinko in the last commit.
497 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
500 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
501 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
503 2014-08-12 Jonathan Wakely <jwakely@redhat.com>
505 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
506 and add overloads for rvalue streams.
507 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
509 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
512 * include/bits/basic_string.h (getline): Declare inline.
514 2014-08-09 Ulrich Drepper <drepper@gmail.com>
516 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
517 (uniform_on_sphere_distribution::operator()): Use the new helper
518 class for the implementation.
520 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
521 equal.cc: Remove bogus part of comment.
522 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
523 inequal.cc: Likewise.
524 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
525 serialize.cc: Add check to verify result of serialzation and
527 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
528 generate.cc: New file.
530 2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
532 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
533 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
535 2014-08-09 François Dumont <fdumont@gcc.gnu.org>
538 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
539 _M_need_rehash to initialize the rehash policy and check if a rehash is
541 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
543 2014-08-07 Jonathan Wakely <jwakely@redhat.com>
545 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
547 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
548 Adjust dg-error line number.
549 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
551 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
553 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
556 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
558 (_State_baseV2::_M_do_set): Change parameters to pointers.
559 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
560 (_State_baseV2::__setter): Initialize _Setter with pointers.
561 (_State_baseV2::__setter(promise<void>*)): Remove overload.
562 (promise::set_value, promise::set_exception): Pass setter directly
564 (_State_baseV2::_Task_setter): Add template parameter for callable
565 type and replace std::function member with pointer to that type.
566 Change _M_result member from reference to pointer.
567 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
568 and initialize _Task_setter with pointers.
569 (__location_invariant): Specialize for _Setter and _Task_setter.
571 * include/std/future (__location_invariant): Move specializations
572 after preprocessor condition.
574 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
577 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
579 2014-08-01 Zifei Tong <zifeitong@gmail.com>
581 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
582 _GLIBCXX_ prefix to macro.
584 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
586 * python/libstdcxx/v6/printers.py
587 (SingleObjContainerPrinter._contained): Use compatibility mixin.
589 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
591 * testsuite/util/testsuite_allocator.h
592 (tracker_allocator_counter::allocate): Remove new invocation, only
594 (tracker_allocator_counter::deallocate): Remove delete invocation, only
596 (check_inconsistent_alloc_value_type): New.
597 (tracker_allocator): Transform as a facade for any allocator type.
598 (uneq_allocator): Likewise.
599 (propagating_allocator): Likewise.
600 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
601 explicitly non propagating allocator.
602 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
603 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
604 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
605 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
606 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
608 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
610 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
612 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
614 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
616 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
619 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
620 const allocator_type&)): Pass non-const allocator to
622 * testsuite/ext/rope/61946.cc: New.
625 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
626 disambiguate unary constructors.
627 (_Tuple_impl): Pass allocator_arg_t arguments.
628 * testsuite/20_util/tuple/61947.cc: New.
629 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
631 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
633 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
634 * include/bits/random.h (_Adaptor): static_assert for non floating-point
636 * include/bits/random.tcc (generate_canonical): Ditto.
637 * include/ext/random.tcc (hypergeometric_distribution::operator()):
638 Use double as a rng result type.
639 * testsuite/26_numerics/random/pr60037-neg.cc: New.
640 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
642 2014-07-25 Uros Bizjak <ubizjak@gmail.com>
644 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
646 2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
648 * include/experimental/string_view: Make the literal operators
649 constexpr like the ctors they call.
651 2014-07-23 H.J. Lu <hongjiu.lu@intel.com>
653 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
655 2014-07-23 Jonathan Wakely <jwakely@redhat.com>
657 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
658 to string instead of using gdb.Type.name attribute.
660 2014-07-19 Jonathan Wakely <jwakely@redhat.com>
662 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
665 2014-07-18 Jonathan Wakely <jwakely@redhat.com>
668 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
670 (SingleObjContainerPrinter): Check if type printers are in use.
672 2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
674 * include/ext/random: Minor formatting and cosmetic tweaks.
675 (uniform_on_sphere_distribution<>::operator==
676 (const uniform_on_sphere_distribution&,
677 const uniform_on_sphere_distribution&)): Compare the _M_nds.
678 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
679 (operator!=(const uniform_on_sphere_distribution&,
680 const uniform_on_sphere_distribution&)): Adjust.
681 * include/ext/random.tcc: Minor cosmetc tweaks.
683 2014-07-15 Jonathan Wakely <jwakely@redhat.com>
685 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
686 printer for class templates.
687 (register_type_printers): Use TemplateTypePrinter for containers
688 and other class templates with default template arguments.
689 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
691 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
692 base class for experimental::any and experimental::optional printers.
693 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
694 New printers for Fundamentals TS types.
695 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
697 2014-07-15 Tim Shen <timshen@google.com>
700 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
701 Clear match queue for next use.
702 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
704 2014-07-14 Ulrich Drepper <drepper@gmail.com>
706 * include/ext/random.tcc: Unfortunately more fixes for
707 operator>> and operator<< for uniform_on_sphere_distribution.
709 2014-07-13 Ulrich Drepper <drepper@gmail.com>
711 * include/ext/random.tcc: Fix operator>> and operator<< for
712 uniform_on_sphere_distribution.
714 2014-07-12 Ulrich Drepper <drepper@gmail.com>
716 * include/ext/random: Add uniform_on_sphere_distribution definition.
717 * include/ext/random.tcc: Add out-of-band member function definitions
718 for uniform_on_sphere_distribution.
719 * testsuite/ext/random/uniform_on_sphere_distribution/
720 cons/default.cc: New file.
721 * testsuite/ext/random/uniform_on_sphere_distribution/
722 operators/equal.cc: New file.
723 * testsuite/ext/random/uniform_on_sphere_distribution/
724 operators/inequal.cc: New file.
725 * testsuite/ext/random/uniform_on_sphere_distribution/
726 operators/serialize.cc: New file.
728 2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
730 Add the logistic_distribution as an extension.
731 * include/ext/random: Add the logistic_distribution.
732 * include/ext/random.tcc: Add the logistic_distribution.
733 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
734 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
735 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
737 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
738 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
739 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
742 2014-07-11 Samuel Bronson <naesten@gmail.com>
744 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
745 instead of insisting that GCC understand -fdiagnostics-color=never
747 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
750 2014-07-11 Samuel Bronson <naesten@gmail.com>
751 Matthias Klose <doko@ubuntu.com>
754 * python/libstdcxx/v6/printers.py: Port to Python 2+3
755 (imap): New compat function.
757 (Iterator): New mixin to allow writing iterators in Python 3 style
758 regardless of which version we're running on.
759 [Python3] (long) New compat alias for "int".
760 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
762 2014-07-10 Jonathan Wakely <jwakely@redhat.com>
764 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
765 tuple members to simplify pretty printing.
766 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
768 * testsuite/experimental/any/cons/4.cc: New.
770 2014-07-09 Jason Merrill <jason@redhat.com>
773 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
774 * libsupc++/tinfo.h: Not here.
776 2014-07-08 Jonathan Wakely <jwakely@redhat.com>
778 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
780 * include/experimental/any: Remove unused header.
781 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
782 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
783 * testsuite/util/testsuite_regex.h: Move include guard.
785 2014-07-01 Tim Shen <timshen@google.com>
789 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
790 a NFA state limit. If it's exceeded, regex_constants::error_space
792 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
793 map (which is sparse) instead of vector. This reduce n times clones'
794 cost from O(n^2) to O(n).
795 * include/std/regex: Add map dependency.
796 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
799 2014-07-01 Tim Shen <timshen@google.com>
802 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
803 not just regex containing back-references.
804 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
805 exchange _M_next and _M_alt for alternative operator,
806 making matching from left to right.
807 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
808 Add position tracking fom DFS.
809 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
810 _Executor<>::_M_dfs): Likewise.
811 * include/bits/regex_scanner.h: Remove unused enum entry.
812 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
815 2014-06-30 Jason Merrill <jason@redhat.com>
817 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
820 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
823 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
824 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
827 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
829 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
831 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
833 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
835 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
838 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
840 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
841 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
842 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
844 * include/ext/alloc_traits.h: Fix comment.
846 * include/Makefile.am: Add new header.
847 * include/Makefile.in: Regenerate.
848 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
849 New RAII utilities for working with allocators.
850 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
851 __allocator_type typedef and use new __allocated_ptr type.
852 (_Sp_counted_ptr_inplace): Likewise.
853 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
854 __allocate_guarded to to simplify exception handling.
855 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
856 * include/std/future (_Result_alloc::_M_destroy): Likewise.
857 (_Result_alloc::_S_allocate_result): Likewise.
858 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
859 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
860 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
861 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
863 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
865 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
867 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
868 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
870 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
872 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
873 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
874 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
875 Remove unused typedef.
876 (time_get::do_get_monthname): Likewise.
877 * include/bits/stl_tree.h: Add system_header pragma.
878 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
879 redundant const-qualifier.
880 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
881 instead of _GLIBCXX_USE_CONSTEXPR.
883 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
885 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
886 * include/std/chrono (_Checked_integral_constant): Allow zero.
887 * testsuite/20_util/duration/literals/values.cc: Test non-positive
888 values and digit separators.
889 * include/experimental/any
892 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
893 apply the signed specifier to wchar_t.
894 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
895 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
896 cv-qualifier and size.
897 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
900 * include/experimental/any (any_v1): Rename namespace to
901 fundamentals_v1. Change string returned by bad_any_cast::what().
902 * include/experimental/optional (fundamentals_v1): Add namespace.
903 * include/experimental/string_view (fundamentals_v1): Likewise.
904 * testsuite/experimental/any/typedefs.cc: New.
905 * testsuite/experimental/optional/typedefs.cc: New.
906 * testsuite/experimental/string_view/typedefs.cc: New.
908 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
909 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
912 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
914 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
916 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
917 * include/Makefile.am: Add new header.
918 * include/Makefile.in: Regenerate.
919 * include/experimental/any: New.
920 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
922 * testsuite/experimental/any/assign/1.cc: New.
923 * testsuite/experimental/any/assign/2.cc: New.
924 * testsuite/experimental/any/cons/1.cc: New.
925 * testsuite/experimental/any/cons/2.cc: New.
926 * testsuite/experimental/any/cons/3.cc: New.
927 * testsuite/experimental/any/misc/any_cast.cc: New.
928 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
929 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
930 * testsuite/experimental/any/misc/swap.cc: New.
931 * testsuite/experimental/any/modifiers/1.cc: New.
932 * testsuite/experimental/any/observers/type.cc: New.
934 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
935 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
937 * include/bits/shared_ptr.h (shared_ptr): Likewise.
938 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
940 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
942 * include/parallel/list_partition.h (__parallel::list_partition):
944 * include/std/iomanip (quoted): Likewise.
945 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
947 * doc/xml/api.xml: Link to more recent API docs.
948 * include/bits/allocator.h: Fix link in doxygen comment.
949 * include/bits/char_traits.h: Likewise.
950 * include/bits/ios_base.h: Likewise.
951 * include/bits/stl_map.h: Likewise.
952 * include/bits/stl_multimap.h: Likewise.
953 * include/bits/stl_multiset.h: Likewise.
954 * include/bits/stl_set.h: Likewise.
955 * include/bits/unordered_map.h: Likewise.
956 * include/bits/unordered_set.h: Likewise.
957 * include/ext/mt_allocator.h: Likewise.
958 * include/std/fstream: Likewise.
959 * include/std/iosfwd: Likewise.
960 * include/std/ostream: Likewise.
961 * include/std/sstream: Likewise.
962 * include/std/streambuf: Likewise.
963 * doc/html/*: Regenerate.
965 * include/experimental/any (any_cast): Combine duplicate doxygen
967 * include/experimental/string_view (basic_string_view): Update
969 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
970 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
971 (dynamic_bitset): Improve Doxygen comments.
972 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
975 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
977 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
978 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
980 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
983 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
984 (bin_search_tree_traits): Do not redeclare template-parameters.
985 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
987 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
989 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
990 parameter for DocBook HTML generation.
991 * doc/Makefile.in: Regenerate.
992 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
993 * doc/xml/faq.xml: Update content and improve formatting.
994 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
995 * doc/xml/manual/allocator.xml: Add stable ID attribute.
996 * doc/xml/manual/bitmap_allocator.xml: Likewise.
997 * doc/xml/manual/build_hacking.xml: Likewise.
998 * doc/xml/manual/codecvt.xml: Change URL.
999 * doc/xml/manual/ctype.xml: Add stable ID attribute.
1000 * doc/xml/manual/debug_mode.xml: Likewise.
1001 * doc/xml/manual/documentation_hacking.xml: Likewise.
1002 * doc/xml/manual/evolution.xml: Likewise.
1003 * doc/xml/manual/extensions.xml: Likewise.
1004 * doc/xml/manual/locale.xml: Likewise.
1005 * doc/xml/manual/messages.xml: Make section id consistent, improve
1007 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
1008 * doc/xml/manual/profile_mode.xml: Likewise.
1009 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
1010 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
1011 * doc/xml/manual/status_cxx2011.xml: Likewise.
1012 * doc/xml/manual/status_cxx2014.xml: Likewise.
1013 * doc/xml/manual/status_cxxtr1.xml: Likewise.
1014 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
1015 * doc/xml/manual/using.xml: Likewise.
1016 * doc/html/*: Regenerate.
1018 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
1020 * include/tr1/beta_function.tcc: Fix spelling of include guard in
1023 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
1025 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
1027 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
1029 DR 2344 - std::quoted doesn't respect padding
1030 * include/std/iomanip: Allow for padding in quoted inserters.
1031 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
1032 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
1034 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
1036 * testsuite/23_containers/map/operators/1.cc: Simplify test.
1038 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
1040 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
1042 * doc/xml/manual/backwards_compatibility.xml
1043 (backwards.second.stringstreams): Likewise.
1044 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
1046 * doc/xml/manual/containers.xml (associative.bitset.type_string):
1047 Replace <quote> in code example.
1048 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
1049 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
1050 fix typos, improve markup.
1051 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
1052 <emphasis> with <replaceable>.
1053 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
1054 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
1055 and remove newlines in string literal.
1057 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
1061 * testsuite/20_util/is_assignable/value.cc: Update.
1063 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
1065 * include/std/condition_variable (condition_variable_any::_Unlock): Do
1066 not swallow __forced_unwind.
1067 * include/std/future (__future_base::_Task_setter): Likewise.
1068 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
1069 promise and rethrow.
1070 * include/std/mutex (try_lock): Likewise.
1071 * testsuite/30_threads/async/forced_unwind.cc: New.
1072 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
1074 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
1075 members to avoid wasted space when not using a cache.
1076 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
1077 * include/bits/regex_compiler.tcc
1078 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
1080 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
1081 New enumeration type to indicate match mode.
1082 (__detail::_Executor::_State_info): New type holding members only
1083 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
1085 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
1086 Replace template parameter with run-time function parameter.
1087 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
1088 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
1089 implement DFS and BFS mode.
1090 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
1091 Split implementation into ...
1092 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
1093 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
1094 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
1095 argument instead of template argument.
1096 (__detail::_Executor::_M_dfs): Likewise.
1097 * include/bits/regex_scanner.tcc: Fix typos in comments.
1098 * testsuite/performance/28_regex/range.cc: New.
1100 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
1101 Jonathan Wakely <jwakely@redhat.com>
1103 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
1105 (aligned_union): New struct (C++11).
1106 (aligned_union_t): New type alias (C++14).
1107 * doc/xml/manual/status_cxx2011.xml: Update.
1108 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
1109 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1112 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
1115 * include/experimental/string_view (operator basic_string): Correct
1117 (to_string): Replace with member function.
1118 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
1119 allow _M_str to be null.
1120 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
1121 default constructor semantics.
1122 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
1123 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
1124 copyright dates. Remove unused header.
1125 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
1127 * testsuite/experimental/string_view/operations/data/char/1.cc:
1128 Fix copyright dates. Adjust to new default constructor semantics.
1129 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
1131 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
1133 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
1134 (__uses_allocator_arg): Remove unused type.
1135 (__uses_alloc0): Turn into a trivial type.
1136 (__uses_alloc): Add missing template parameter in primary template.
1137 (__uses_alloc_impl): Rename to __uses_alloc_t.
1139 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
1141 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
1142 work with previous versions of Tcl.
1144 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
1145 Benjamin's old email address.
1147 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
1148 Paolo's address too.
1150 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
1152 * include/tr2/bool_set: Use UTF-8 for accented characters.
1153 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
1154 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
1155 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
1157 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
1160 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
1162 (_State_base::_M_dot): Likewise.
1164 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
1166 * include/profile/map.h: Fix typo in comment; minor formatting fix.
1167 * include/profile/multimap.h: Likewise.
1168 * include/profile/set.h: Likewise.
1169 * include/profile/multiset.h: Likewise.
1171 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
1173 * include/profile/array: Clean useless white chars.
1174 * include/profile/base.h: Likewise.
1175 * include/profile/iterator_tracker.h: Likewise.
1176 * include/profile/bitset: Code cleanup and remove not instrumented code.
1177 * include/profile/deque: Likewise.
1178 * include/profile/forward_list: Likewise.
1179 * include/profile/list (std::__profile::_List_profile<>): New.
1180 (std::__profile::list<>): Inherit from latter and adapt.
1181 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
1182 advise to match any ordered to unordered container conversion.
1183 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
1185 * include/Makefile.am: Add latter.
1186 * include/Makefile.in: Regenerate.
1187 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
1188 remove not instrumented code.
1189 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
1190 * include/profile/set.h (std::__profile::set<>): Likewise.
1191 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
1192 * include/profile/unordered_base.h: Add some line feed.
1193 * include/profile/unordered_map: Clean useless white chars and replace
1195 * include/profile/unordered_set: Likewise.
1196 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
1197 (std::__profile::_Vector_profile_post<>): New.
1198 (std::__profile::vector<>): Inherit from latter and adapt.
1200 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
1203 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
1204 dragonfly target selector to all tests that run on freebsd.
1206 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
1208 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
1209 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
1211 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
1213 * testsuite/30_threads/call_once/60497.cc: Likewise.
1214 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
1215 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
1216 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
1217 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
1218 * testsuite/30_threads/promise/60966.cc: Likewise.
1219 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
1220 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
1221 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
1222 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
1223 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
1224 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
1225 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
1226 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
1227 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
1228 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
1229 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
1230 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
1231 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
1232 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
1233 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
1234 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
1235 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
1237 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
1240 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
1242 * testsuite/23_containers/unordered_set/61143.cc: New.
1243 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
1245 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
1248 * include/std/type_traits: Move include outside namespace std.
1249 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
1250 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1251 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1254 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
1257 2014-05-21 John Marino <gnugcc@marino.st>
1259 * acinclude.m4 (*-*-dragonfly*): New target.
1260 * configure: Regenerate.
1261 * configure.host (*-*-dragonfly*): New target.
1262 * config/locale/dragonfly/c_locale.cc: New.
1263 * config/locale/dragonfly/ctype_members.cc: New.
1264 * config/os/bsd/dragonfly/ctype_base.h: New.
1265 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
1266 * config/os/bsd/dragonfly/ctype_inline.h: New.
1267 * config/os/bsd/dragonfly/os_defines.h: New.
1269 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
1271 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
1272 libstdc++.exp imports those flags via getenv.
1273 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
1274 CXXFLAGS contains a '-O' flag.
1276 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1280 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1283 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1284 and add unwind directives.
1286 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
1288 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
1290 2014-05-20 Tim Shen <timshen91@gmail.com>
1293 * include/bits/regex_compiler.h
1294 (_BracketMatcher<>::_M_add_character_class): Add negative character
1296 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
1298 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
1301 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
1303 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
1305 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
1307 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
1308 * libsupc++/new_opnt.cc: Likewise.
1310 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
1313 * include/std/future (__future_base::_State_baseV2::_M_set_result):
1314 Pass lock into _M_do_set and hold it until the function returns.
1315 Signal condition variable after call_once completes.
1316 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
1318 * testsuite/30_threads/promise/60966.cc: New.
1320 2014-05-16 Iain Sandoe <iain@codesourcery.com>
1321 Sandra Loosemore <sandra@codesourcery.com>
1323 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
1324 until after checking that the test is eligible to be run.
1326 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1328 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
1329 test for 32-bit target.
1330 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1332 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
1335 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1338 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1339 and add unwind directives.
1341 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1343 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
1345 * include/std/chrono (chrono_literals::__select_type::_Select_type):
1347 (chrono_literals::_Checked_integral_constant): Define.
1348 Simplify UDL operator templates and check for overflow.
1349 * testsuite/20_util/duration/literals/range.cc: New.
1351 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
1352 Jonathan Wakely <jwakely@redhat.com>
1355 * include/bits/parse_numbers.h: Use integral_constant to remove
1356 duplication and simplify.
1357 * testsuite/20_util/duration/literals/61166.cc: New.
1359 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1362 * include/std/type_traits (__make_unsigned, __make_signed): Define
1363 specializations for wchar_t, char16_t and char32_t.
1364 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
1365 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
1366 test for make_unsigned<volatile wchar_t>.
1367 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1369 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1371 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1373 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1376 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1378 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
1379 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
1380 * include/std/utility (tuple_size, tuple_element): Likewise.
1381 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1382 Adjust dg-error line number.
1384 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
1386 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
1387 (__tuple_element_t): Define.
1388 (tuple_element): Use __tuple_element_t.
1389 (__cv_tuple_size): Define.
1390 (tuple_size<cv _Tp>): Use __cv_tuple_size.
1391 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
1392 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
1393 (__tuple_compare): Remove size check, re-order parameters.
1394 (operator==, operator<): Use static_assert to check requirements.
1395 * include/std/functional (__volget): use __tuple_element_t.
1396 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
1397 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
1399 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
1402 * include/std/tuple (get, __tuple_compare): Qualify more calls to
1403 prevent ADL. Cast comparison results to bool.
1404 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
1405 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
1408 * include/debug/array (get): Qualify call to other get overload.
1409 * include/profile/array (get): Likewise.
1410 * include/std/array (get): Likewise.
1411 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
1412 * include/std/mutex (unique_lock, call_once): Use __addressof.
1413 (__unlock_impl): Remove unused template.
1414 (__try_to_lock): Declare inline.
1415 (__try_lock_impl::__do_try_lock): Qualify function calls.
1416 (lock): Avoid narrowing conversion.
1417 * testsuite/20_util/bind/60497.cc: New.
1418 * testsuite/23_containers/array/element_access/60497.cc: New.
1419 * testsuite/30_threads/call_once/60497.cc: New.
1420 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
1422 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
1424 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
1425 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
1426 * acinclude.m4 (libtool_VERSION): Bump.
1427 * configure: Regenerate.
1428 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
1429 * testsuite/28_regex/regex_error/base.cc: New.
1431 2014-05-08 Joshua Gay <jgay@gnu.org>
1434 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
1435 source" with "free software".
1436 * doc/html/faq.html: Likewise.
1438 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
1441 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
1443 (operator=(const ios_base&)): Likewise.
1444 * include/std/streambuf: Remove trailing whitespace.
1445 (basic_streambuf(const basic_streambuf&)): Fix initializer for
1446 _M_out_end. Define as defaulted for C++11.
1447 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
1448 (swap(basic_streambuf&)): Define for C++11.
1449 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
1452 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
1454 * include/std/iostream: Fix URL in comment.
1455 * src/c++98/ios_init.cc: Fix path in comment.
1457 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
1459 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
1460 * configure: Regenerate.
1462 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
1465 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
1466 comparison function.
1467 * testsuite/23_containers/set/cons/61023.cc: New.
1470 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
1472 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
1473 arithmetic to obtain a mutable iterator from const_iterator.
1474 * include/bits/vector.tcc (vector::insert): Likewise.
1475 * include/debug/vector (vector::erase): Likewise.
1476 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1477 Adjust dg-error line number.
1478 * testsuite/23_containers/vector/requirements/dr438/
1479 constructor_1_neg.cc: Likewise.
1480 * testsuite/23_containers/vector/requirements/dr438/
1481 constructor_2_neg.cc: Likewise.
1482 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1485 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
1487 * include/Makefile.in: Regenerate.
1489 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
1491 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1492 parameter to pass the 2 instances to check allocator equality.
1493 * include/debug/safe_container.h: New, define _Safe_container<>.
1494 * include/Makefile.am: Add previous.
1495 * include/debug/deque (std::__debug::deque<>): Inherit
1496 _Safe_container<>. Use default implementation for all special
1498 * include/debug/forward_list (std::__debug::forward_list<>):
1500 * include/debug/list (std::__debug::list<>): Likewise.
1501 * include/debug/map.h (std::__debug::map<>): Likewise.
1502 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1503 * include/debug/set.h (std::__debug::set<>): Likewise.
1504 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1505 * include/debug/string (std::__debug::basic_string<>): Likewise.
1506 * include/debug/unordered_map
1507 (std::__debug::unordered_map<>): Likewise.
1508 (std::__debug::unordered_multimap<>): Likewise.
1509 * include/debug/unordered_set
1510 (std::__debug::unordered_set<>): Likewise.
1511 (std::__debug::unordered_multiset<>): Likewise.
1512 * include/debug/vector (std::__debug::vector<>): Likewise.
1513 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1515 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1516 (~_Safe_sequence_base()): Add noexcept.
1517 * include/debug/safe_sequence.h
1518 (std::__debug::_Safe_node_sequence<>): New.
1519 * include/debug/safe_unordered_base.h
1520 (_Safe_unordered_container_base()): Add noexcept.
1521 (~_Safe_unordered_container_base()): Likewise.
1522 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1523 * include/debug/safe_unordered_container.h:
1524 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1525 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1526 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1528 * testsuite/util/debug/checks.h (check_construct1): Just implement
1529 an invalid constructor invocation and no other operations
1530 potentially not supported by some types of container.
1531 (check_construct2): Likewise.
1532 (check_construct3): Likewise.
1533 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1534 check on iterators to make sure they are correctly moved in debug
1536 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1538 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1539 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1540 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1541 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1543 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1544 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1546 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1547 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1548 * testsuite/23_containers/unordered_map/allocator/move.cc:
1550 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1552 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1554 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1556 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1558 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1560 * testsuite/23_containers/unordered_set/allocator/move.cc:
1562 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1564 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1566 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1568 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1570 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1572 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1574 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1575 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1576 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1577 * testsuite/23_containers/map/debug/move_neg.cc: New.
1578 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1579 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1580 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1581 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1582 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1583 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1584 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1585 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1586 * testsuite/23_containers/set/debug/move_neg.cc: New.
1587 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1589 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1591 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1592 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1594 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1596 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1598 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1600 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1602 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1604 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1606 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1608 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1609 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1611 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1613 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1614 (CXXABI_1.3.9): Remove __float128 symbols.
1616 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
1619 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1620 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1621 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1622 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1624 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1627 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1628 Check the correct type in the static assertion.
1629 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1631 2014-04-27 Tim Shen <timshen91@gmail.com>
1633 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1634 Add _S_opcode_repeat support to distingush a loop from
1635 _S_opcode_alternative.
1636 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1637 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1638 _StateSeq<>::_M_clone): Likewise.
1639 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1641 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1642 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1643 Uglify local variable __i.
1644 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1645 Use size_t instead of int to compare with vector::size().
1647 2014-04-27 Tim Shen <timshen91@gmail.com>
1649 * include/bits/regex_executor.h: Add _M_rep_count to track how
1650 many times this repeat node are visited.
1651 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1652 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1655 2014-04-27 Tim Shen <timshen91@gmail.com>
1657 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1658 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1659 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1660 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1661 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1662 Adjust debug NFA dump.
1664 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1667 * include/experimental/optional (operator!=): Implement in terms of
1669 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1670 * testsuite/experimental/optional/relops/2.cc: Likewise.
1671 * testsuite/experimental/optional/relops/3.cc: Likewise.
1672 * testsuite/experimental/optional/relops/4.cc: Likewise.
1673 * testsuite/experimental/optional/relops/5.cc: Likewise.
1674 * testsuite/experimental/optional/relops/6.cc: Likewise.
1676 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
1679 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1680 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1683 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
1685 * testsuite/util/testsuite_abi.cc (check_version): Update for
1688 2014-04-24 Tim Shen <timshen91@gmail.com>
1690 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1691 Do _M_alt before _M_next.
1692 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1694 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
1697 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1698 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1699 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1701 2014-04-24 Andreas Schwab <schwab@suse.de>
1703 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1704 new CXXABI_1.3.9 symbols.
1706 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1708 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1709 (CXXABI_1.3.9): New version.
1711 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
1714 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1715 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1716 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1718 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1720 * configure.host: Remove solaris2.9 handling.
1721 Change os_include_dir to os/solaris/solaris2.10.
1722 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1723 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1724 * configure: Regenerate.
1725 * config/abi/post/solaris2.9: Remove.
1726 * config/os/solaris/solaris2.9: Rename to ...
1727 * config/os/solaris/solaris2.10: ... this.
1728 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1731 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1732 Remove Solaris 9 reference.
1733 * doc/html/manual/configure.html: Regenerate.
1735 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1736 Remove *-*-solaris2.9 xfail.
1737 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1740 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1743 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
1745 * include/std/functional (__is_location_invariant): Use __or_ helper.
1747 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
1750 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1753 * include/std/atomic (atomic<_Tp>): Add static assertion.
1754 * testsuite/29_atomics/atomic/60695.cc: New.
1757 * include/std/functional (function::_Callable): Exclude own type
1758 from the callable checks.
1759 * testsuite/20_util/function/60594.cc: New.
1761 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1762 const to constexpr member functions.
1764 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1765 delegating constructor.
1766 * include/bits/shared_ptr_base.h
1767 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1769 * include/std/atomic: Uglify parameter names.
1772 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1773 1.cc: Fix invalid explicit instantiations with unqualified names.
1774 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1776 * testsuite/20_util/tuple/53648.cc: Likweise.
1777 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1779 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1781 * testsuite/23_containers/unordered_map/requirements/
1782 debug_container.cc: Likewise.
1783 * testsuite/23_containers/unordered_map/requirements/
1784 explicit_instantiation/3.cc: Likewise.
1785 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1787 * testsuite/23_containers/unordered_multimap/requirements/
1788 explicit_instantiation/3.cc: Likewise.
1789 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1791 * testsuite/23_containers/unordered_multiset/requirements/
1792 explicit_instantiation/3.cc: Likewise.
1793 * testsuite/23_containers/unordered_set/requirements/
1794 debug_container.cc: Likewise.
1795 * testsuite/23_containers/unordered_set/requirements/
1796 explicit_instantiation/3.cc: Likewise.
1798 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1799 not use uninitialized members in mem-initializers.
1800 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1801 * testsuite/util/testsuite_common_types.h: Update comment.
1803 * include/experimental/string_view: Fix inconsistent exception specs.
1805 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1806 Remove name of unused parameter.
1808 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
1810 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1811 _Vector_base::_M_allocate): NullablePointer requirements do not
1812 include initialization from literal zero, use value-initialization.
1813 * include/bits/vector.tcc (vector::_M_insert_aux,
1814 vector::_M_explace_back_aux): Likewise for assignment.
1816 * include/bits/allocator.h (operator==, operator!=): Add exception
1820 * include/std/tuple (get): Qualify calls to prevent ADL.
1821 * testsuite/20_util/tuple/60497.cc: New.
1823 * include/std/tuple (tuple_element_t): Define.
1824 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1826 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1828 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1831 * include/bits/stl_iterator.h (move_iterator::reference,
1832 move_iterator::operator*): Implement LWG 2106.
1833 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1835 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1837 * include/std/complex (__complex_exp, pow): Specify the template
1838 parameter in calls to std::polar, for expression templates.
1840 2014-04-10 Andreas Schwab <schwab@suse.de>
1842 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1844 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1845 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1847 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1849 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1851 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1852 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1853 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1856 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1857 Jack Howarth <howarth@bromo.med.uc.edu>
1860 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1863 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1865 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1867 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1869 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1870 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1871 * doc/xml/manual/concurrency_extensions.xml
1872 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1873 * doc/html/*: Regenerate.
1875 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1876 Jonathan Wakely <jwakely@redhat.com>
1879 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1880 string if input is not quoted.
1881 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1883 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1885 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1887 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1889 * testsuite/18_support/exception_ptr/60612-terminate.cc
1890 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1891 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1893 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1895 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1897 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1898 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1900 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1902 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1904 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1905 Fix bad s/part/chapter/ substitutions.
1906 * doc/xml/manual/io.xml (std.io): Likewise.
1907 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1908 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1910 * doc/html/*: Regenerate.
1912 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1915 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1916 compatible with __cxa_exception.
1917 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1918 Fix typos in comments.
1919 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1920 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1922 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1925 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1926 Use sizeof pointer type not the element type.
1927 * testsuite/29_atomics/atomic/60658.cc: New.
1929 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1931 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1932 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1933 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1934 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1935 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1936 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1937 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1938 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1939 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1940 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1943 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1945 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1947 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1949 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1950 to delegated constructor.
1951 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1952 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1955 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1957 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1960 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1962 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1965 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1966 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1968 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1969 from different types of debug container. Use _Is_contiguous_sequence
1970 instead of is_lvalue_reference.
1971 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1972 dereferencing past-the-end iterator.
1973 (__foreign_iterator_aux4): Use const value_type* instead of
1974 potentially user-defined const_pointer type.
1975 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1976 and pass end iterator to __gnu_debug::__foreign_iterator.
1977 (__glibcxx_check_insert_range_after): Likewise.
1978 (__glibcxx_check_max_load_factor): Fix comment.
1979 * include/debug/vector (_Is_contiguous_sequence): Define partial
1981 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1982 -std=gnu++11 option and unused header.
1983 * testsuite/23_containers/vector/debug/60587.cc: New.
1984 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1986 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1988 * crossconfig.m4: Support spu-*-elf* targets.
1989 * configure: Regenerate.
1991 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1994 * include/std/future (__future_base::_Task_state<>): Change
1995 constructors to template functions using perfect forwarding.
1996 (__create_task_state): Use decayed type as stored task.
1997 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1998 * testsuite/30_threads/packaged_task/60564.cc: New.
2000 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
2002 * scripts/create_testsuite_files: Add testsuite/experimental in
2003 the list of folders to search for tests.
2005 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
2007 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
2009 2014-03-15 Tim Shen <timshen91@gmail.com>
2011 * include/bits/regex.h: Add/modify comments.
2012 * include/bits/regex_compiler.h: Likewise.
2013 * include/bits/regex_executor.h: Likewise.
2014 * include/bits/regex_executor.tcc: Likewise.
2015 * include/bits/regex_scanner.h: Likewise.
2017 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
2020 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
2021 _ZNSt12system_errorC* symbols which are not exported on any target.
2023 2014-03-12 Roland McGrath <mcgrathr@google.com>
2024 Mark Seaborn <mseaborn@google.com>
2027 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
2028 the address of a null pointer, not with a null pointer to pointer.
2029 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
2030 * testsuite/18_support/bad_exception/59392.cc: New file.
2032 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
2035 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
2037 * include/debug/map (map::operator=(map&&)): Likewise.
2038 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
2039 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
2040 * include/debug/set (set::operator=(set&&)): Likewise.
2041 * include/debug/unordered_map
2042 (unordered_map::operator=(unordered_map&&)): Likewise.
2043 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
2044 * include/debug/unordered_set
2045 (unordered_set::operator=(unordered_set&&)): Likewise.
2046 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
2047 * include/debug/vector (vector::operator=(vector&&)): Likewise.
2048 * testsuite/23_containers/forward_list/debug/60499.cc: New
2049 * testsuite/23_containers/map/debug/60499.cc: New
2050 * testsuite/23_containers/multimap/debug/60499.cc: New
2051 * testsuite/23_containers/multiset/debug/60499.cc: New
2052 * testsuite/23_containers/set/debug/60499.cc: New
2053 * testsuite/23_containers/unordered_map/debug/60499.cc: New
2054 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
2055 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
2056 * testsuite/23_containers/unordered_set/debug/60499.cc: New
2057 * testsuite/23_containers/vector/debug/60499.cc: New
2059 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
2061 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
2062 for filesystem and fundamentals TS work items.
2064 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
2067 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
2068 Adjust dg-error directives.
2070 2014-02-26 Tim Shen <timshen91@gmail.com>
2072 * include/bits/regex.tcc (match_results<>::format,
2073 regex_replace<>): Update __out after calling std::copy.
2074 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
2076 * testsuite/28_regex/match_results/format.cc: Likewise.
2078 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
2081 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
2082 allocator_type&)): Remove redundant call to _M_initialize_map.
2083 (deque::deque(const allocator_type&)): Initialize _Base with a
2084 constructor that calls _M_initialize_map.
2088 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
2090 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
2093 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
2095 Rename testsuite directory shared_mutex to shared_timed_mutex
2097 * testsuite/30_threads/shared_mutex: Moved to...
2098 * testsuite/30_threads/shared_timed_mutex: ...here
2100 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
2102 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
2103 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
2104 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
2105 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
2106 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
2107 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
2108 * testsuite/30_threads/shared_lock/requirements/
2109 explicit_instantiation.cc: Ditto.
2110 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
2111 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
2112 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
2113 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
2114 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
2115 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
2116 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
2117 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
2118 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
2119 * testsuite/30_threads/shared_mutex/requirements/
2120 standard_layout.cc: Ditto.
2121 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
2122 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
2123 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
2124 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
2125 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
2127 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2129 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
2130 execution on i?86-*-solaris2.9, remove comment.
2131 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2133 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
2135 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
2136 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
2137 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
2139 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
2141 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
2142 not use varargs when argument could be non-POD.
2143 (__alloctr_rebind_helper): Eliminate static const bool member by
2144 using true_type and false_type.
2145 (allocator_traits::__allocate_helper): Likewise.
2146 (allocator_traits::__construct_helper): Likewise.
2147 (allocator_traits::__destroy_helper): Likewise.
2148 (allocator_traits::__maxsize_helper): Likewise.
2149 (allocator_traits::__select_helper): Likewise.
2150 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
2151 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
2152 Remove redundant condition.
2153 * include/bits/stl_vector.h (vector::operator=(const vector&)):
2155 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
2156 indirection through __alloc_traits.
2157 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
2158 Eliminate static const bool members by using true_type and false_type.
2159 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
2160 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
2161 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
2163 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
2166 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
2167 (vector::_M_data_ptr): New overloaded functions to ensure empty
2168 vectors do not dereference the pointer.
2169 * testsuite/23_containers/vector/59829.cc: New.
2170 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2171 Adjust dg-error line number.
2172 * testsuite/23_containers/vector/requirements/dr438/
2173 constructor_1_neg.cc: Likewise.
2174 * testsuite/23_containers/vector/requirements/dr438/
2175 constructor_2_neg.cc: Likewise.
2176 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2180 * include/ext/array_allocator.h: Add deprecated attribute.
2183 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
2184 installation and use of python printers.
2185 * doc/xml/manual/status_cxx2011.xml: Update.
2186 * doc/html/*: Regenerate.
2188 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
2189 Kyle Lippincott <spectral@google.com>
2192 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
2193 constructor and grant friendship to weak_ptr.
2194 (weak_ptr::lock()): Use new constructor.
2195 * include/bits/shared_ptr_base.h
2196 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
2197 and define specializations.
2198 (__shared_count): Add new non-throwing constructor.
2199 (__shared_ptr): Add new non-throwing constructor and grant friendship
2201 (__weak_ptr::lock()): Use new constructor.
2202 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
2203 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
2205 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
2208 * include/bits/shared_ptr_base.h
2209 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
2212 2014-01-27 Jason Merrill <jason@redhat.com>
2217 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
2218 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
2219 (__cxa_allocate_exception): Don't set it here.
2221 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
2223 * include/bits/stl_map.h: Remove anachronistic comment.
2224 * include/bits/stl_multimap.h: Add whitespace.
2225 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
2226 -std=gnu++11 instead of -std=c++11.
2227 * testsuite/23_containers/map/operators/2.cc: Likewise.
2228 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
2229 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
2230 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
2232 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
2233 * configure: Regenerate.
2235 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2238 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
2239 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
2241 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2242 Peter A. Bigot <pab@pabigot.com>
2245 * include/experimental/string_view
2246 (copy(_CharT*, size_type, size_type) const): Correct throw string.
2247 Correct copy start location.
2249 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2250 Peter A. Bigot <pab@pabigot.com>
2253 * include/experimental/string_view (operator[](size_type) const):
2254 Fix one-off index error in debug check.
2255 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
2256 test basic_string_view at size().
2257 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
2259 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2260 Peter A. Bigot <pab@pabigot.com>
2263 * include/experimental/string_view
2264 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
2265 * testsuite/experimental/string_view/operations/substr/char/1.cc:
2266 Comment out catch of out_of_range; No terminating null
2267 in basic_string_view. Check begin == end.
2268 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
2271 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
2274 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
2275 constructor to prevent it being implicitly defined as deleted, but
2276 do not copy anything.
2277 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
2278 Define copy and move constructors similar to _Safe_sequence_base's.
2279 * testsuite/23_containers/unordered_map/59548.cc: New.
2281 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2282 Steve Ellcey <sellcey@mips.com>
2284 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
2286 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
2287 * (configure, config.h.in): Regenerate.
2288 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
2290 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
2292 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
2293 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
2296 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
2297 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
2299 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
2301 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
2302 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
2303 functions to perform moving or copying of elements from rvalue tree.
2304 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
2305 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
2306 * testsuite/23_containers/map/59872.cc: New.
2307 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
2309 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
2311 * include/bits/stl_deque.h (_Deque_impl): Move comment.
2314 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
2315 Split into separate default constructor and constructor taking
2317 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
2318 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
2320 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
2321 * include/debug/list (list::list(const _Allocator&)): Likewise.
2322 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
2324 * include/debug/multimap.h
2325 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2326 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
2328 * include/debug/multiset.h
2329 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2330 * include/debug/vector (vector::vector(const allocator_type&)):
2332 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
2333 * include/profile/list (list::list(const _Allocator&)): Likewise.
2334 * include/profile/map.h
2335 (map::map(const _Compare&, const _Allocator&)): Likewise.
2336 * include/profile/multimap.h
2337 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2338 * include/profile/set.h
2339 (set::set(const _Compare&, const _Allocator&)): Likewise.
2340 * include/profile/multiset.h
2341 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2342 * include/profile/vector (vector::vector(const _Allocator&)):
2344 * testsuite/23_containers/deque/58764.cc: New.
2345 * testsuite/23_containers/list/58764.cc: New.
2346 * testsuite/23_containers/map/58764.cc: New.
2347 * testsuite/23_containers/multimap/58764.cc: New.
2348 * testsuite/23_containers/set/58764.cc: New.
2349 * testsuite/23_containers/multiset/58764.cc: New.
2350 * testsuite/23_containers/vector/58764.cc: New.
2351 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2352 Adjust dg-error line number.
2353 * testsuite/23_containers/deque/requirements/dr438/
2354 constructor_1_neg.cc: Likewise.
2355 * testsuite/23_containers/deque/requirements/dr438/
2356 constructor_2_neg.cc: Likewise.
2357 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2359 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2361 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2363 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2365 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2367 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2369 * testsuite/23_containers/vector/requirements/dr438/
2370 constructor_1_neg.cc: Likewise.
2371 * testsuite/23_containers/vector/requirements/dr438/
2372 constructor_2_neg.cc: Likewise.
2373 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2376 PR libstdc++/58764 (again)
2377 * include/bits/stl_list.h (list): Make default constructor's exception
2378 specification conditional.
2379 * include/bits/stl_vector.h (vector): Likewise.
2380 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
2381 to default constructor.
2382 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2383 Adjust dg-error line number.
2384 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2386 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2388 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2390 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2392 * testsuite/23_containers/vector/requirements/dr438/
2393 constructor_1_neg.cc: Likewise.
2394 * testsuite/23_containers/vector/requirements/dr438/
2395 constructor_2_neg.cc: Likewise.
2396 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2399 2014-01-21 Tim Shen <timshen91@gmail.com>
2401 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
2402 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
2403 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
2405 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
2408 * include/bits/hashtable.h (__cache_default): Do not depend on
2409 whether the hash function is DefaultConstructible or CopyAssignable.
2410 (_Hashtable): Adjust static assertions.
2411 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
2412 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2413 dg-error line number.
2414 * testsuite/23_containers/unordered_set/
2415 not_default_constructible_hash_neg.cc: Remove.
2417 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
2419 * scripts/create_testsuite_files: Add testsuite/experimental in
2420 the list of folders to search for tests.
2421 * include/experimental/string_view
2422 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
2423 incompatible with constexpr qualifier.
2424 (basic_string_view<>::front()): Likewise.
2425 (basic_string_view<>::back()): Likewise.
2426 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
2427 Merge dg-options directives into one.
2428 * testsuite/experimental/string_view/element_access/char/2.cc:
2429 Likewise. Remove invalid experimental namespace scope on
2432 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
2435 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
2436 friendship to _Local_iterator_base<..., false>.
2437 (_Local_iterator_base): Give protected access to all existing members.
2438 (_Local_iterator_base::_M_curr()): New public accessor.
2439 (_Local_iterator_base::_M_get_bucket()): New public accessor.
2440 (_Local_iterator_base<..., false>::_M_init()): New function to manage
2441 the lifetime of the _Hash_code_base explicitly.
2442 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
2443 (_Local_iterator_base<..., false>): Define copy constructor and copy
2444 assignment operator that use new functions to manage _Hash_code_base.
2445 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
2446 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
2447 Use public API for _Local_iterator_base.
2448 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
2449 * include/debug/unordered_map (__debug::unordered_map::erase(),
2450 __debug::unordered_multimap::erase()): Likewise.
2451 * include/debug/unordered_set (__debug::unordered_set::erase(),
2452 __debug::unordered_multiset::erase()): Likewise.
2453 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
2455 2014-01-19 Tim Shen <timshen91@gmail.com>
2457 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
2458 Fix parse error of multiple consecutive quantifiers like "a**".
2459 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
2461 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
2463 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
2465 * include/profile/set.h (set): Implement C++11 allocator-aware
2466 container requirements.
2467 * include/profile/map.h (map): Likewise.
2468 * include/profile/multiset.h (multiset): Likewise.
2469 * include/profile/multimap.h (multimap): Likewise.
2470 * include/profile/set.h
2471 (set::operator=(const set&)): Define as default in C++11 mode.
2472 (set::operator=(set&&)): Likewise.
2473 * include/profile/map.h
2474 (map::operator=(const map&)): Likewise.
2475 (map::operator=(map&&)): Likewise.
2476 * include/profile/multiset.h
2477 (multiset::operator=(const multiset&)): Likewise.
2478 (multiset::operator=(multiset&&)): Likewise.
2479 * include/profile/multimap.h
2480 (multimap::operator=(const multimap&)): Likewise.
2481 (multimap::operator=(multimap&&)): Likewise.
2482 * include/profile/set.h (set::operator=(std::initializer_list<>)):
2483 Rely on the same operator from normal mode.
2484 * include/profile/map.h (map::operator=(std::initializer_list<>)):
2486 * include/profile/multiset.h
2487 (multiset::operator=(std::initializer_list<>)): Likewise.
2488 * include/profile/multimap.h
2489 (multimap::operator=(std::initializer_list<>)): Likewise.
2490 * include/profile/set.h (set::swap(set&)): Add noexcept
2492 * include/profile/map.h (map::swap(map&)): Likewise.
2493 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2494 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2496 2014-01-17 Tim Shen <timshen91@gmail.com>
2498 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2500 * include/bits/regex_automaton.h: Do not use std::set.
2501 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2502 _BracketMatcher<>::_M_add_collating_element(),
2503 _BracketMatcher<>::_M_add_equivalence_class(),
2504 _BracketMatcher<>::_M_make_range()): Likewise.
2505 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2507 * include/bits/regex_executor.h: Do not use std::queue.
2508 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2509 _Executor<>::_M_dfs()): Likewise.
2510 * include/std/regex: Remove <map>, <set> and <queue>.
2512 2014-01-17 Tim Shen <timshen91@gmail.com>
2514 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2515 basic_regex<>::assign()): Change __compile_nfa to accept
2517 * include/bits/regex_compiler.h: Change _Compiler's template
2518 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2519 * include/bits/regex_compiler.tcc: Likewise.
2521 2014-01-17 Tim Shen <timshen91@gmail.com>
2523 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2525 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2526 _ScannerBase from _Scanner; Change _Scanner's template argument from
2527 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2529 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2530 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2531 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2533 * include/std/regex: Add <cstring> for using strchr.
2535 2014-01-17 Tim Shen <timshen91@gmail.com>
2537 * bits/regex_automaton.tcc: Indentation fix.
2538 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2539 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2540 _BracketMatcher<>): Add bool option template parameters and
2541 specializations to make matching more efficient and space saving.
2542 * bits/regex_compiler.tcc: Likewise.
2544 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
2547 * include/bits/hashtable_policy.h: Fix some long lines.
2548 * include/bits/hashtable.h (__hash_code_base_access): Define and
2549 use it to check its _M_bucket_index noexcept qualification. Use
2551 (__access_protected_ctor): ...this.
2552 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2554 * testsuite/23_containers/unordered_set/
2555 not_default_constructible_hash_neg.cc: Likewise.
2557 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
2559 * include/debug/set.h (set): Implement C++11 allocator-aware
2560 container requirements.
2561 * include/debug/map.h (map): Likewise.
2562 * include/debug/multiset.h (multiset): Likewise.
2563 * include/debug/multimap.h (multimap): Likewise.
2564 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2565 fix implementation regarding management of safe iterators.
2566 * include/debug/map.h (map::operator=(map&&)): Likewise.
2567 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2568 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2570 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2571 Rely on the same operator from normal mode.
2572 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2574 * include/debug/multiset.h
2575 (multiset::operator=(std::initializer_list<>)): Likewise.
2576 * include/debug/multimap.h
2577 (multimap::operator=(std::initializer_list<>)): Likewise.
2578 * include/debug/set.h (set::swap(set&)): Add noexcept
2579 specification, add allocator equality check.
2580 * include/debug/map.h (map::swap(map&)): Likewise.
2581 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2582 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2584 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
2587 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2588 and stylistic improvements.
2589 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2590 and update for C++11.
2591 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2594 * doc/xml/manual/backwards_compatibility.xml
2595 (backwards.third.nocreate_noreplace): Correct and expand.
2598 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2600 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
2603 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2604 support for non-Movable types.
2607 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2609 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
2611 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2612 *this allocator instance when building temporary vector instance
2613 so that *this allocator does not get moved.
2614 * include/debug/safe_base.h
2615 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2616 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2617 move constructor from _Safe_sequence_base.
2618 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2619 safe iterators if the instance is moved.
2620 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2621 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2622 check on a vector iterator.
2623 * testsuite/23_containers/vector/allocator/move_assign.cc
2625 (test03): New, test with a non-propagating allocator.
2626 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2628 2014-01-07 Tim Shen <timshen91@gmail.com>
2630 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2631 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2632 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2633 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2634 _BracketMatcher<>::_M_add_char(),
2635 _BracketMatcher<>::_M_add_collating_element(),
2636 _BracketMatcher<>::_M_add_equivalence_class(),
2637 _BracketMatcher<>::_M_add_character_class(),
2638 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2639 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2640 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2641 to template parameter; Add cache for _BracketMatcher. Adjust
2642 declarations from here...
2643 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2644 imbuing a regex will trigger a recompilation to rebuild the cache.
2645 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2646 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2647 different template bool parameters.
2648 * include/bits/regex_executor.h: Remove unnecessary declarations.
2649 * include/std/regex: Adjust including orders.
2650 * testsuite/28_regex/traits/char/user_defined.cc: New.
2651 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2653 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2655 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2656 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2657 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2658 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2659 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2661 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2663 Update copyright years
2665 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2667 * testsuite/18_support/new_handler.cc,
2668 testsuite/18_support/terminate_handler.cc,
2669 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2670 the copyright notice.
2672 Copyright (C) 2014 Free Software Foundation, Inc.
2674 Copying and distribution of this file, with or without modification,
2675 are permitted in any medium without royalty provided the copyright
2676 notice and this notice are preserved.