1 2014-10-08 Jonathan Wakely <jwakely@redhat.com>
3 * include/bits/locale_facets.tcc (num_put::_M_insert_float): Do not
4 pass precision when using hexfloat format.
5 * src/c++98/locale_facets.cc (__num_base::_S_format_float): Always
6 output precision if C99 hexfloat conversion specifiers not available.
8 2014-10-08 Jonathan Wakely <jwakely@redhat.com>
10 * include/bits/regex.h (regex_token_iterator::_M_end_of_seq): Add
13 2014-10-07 François Dumont <fdumont@gcc.gnu.org>
15 * testsuite/util/testsuite_counter_type.h
16 (counter_type::operator<(const counter_type&)): Update
18 * testsuite/25_algorithms/make_heap/complexity.cc: New.
19 * testsuite/25_algorithms/pop_heap/complexity.cc: New.
20 * testsuite/25_algorithms/push_heap/complexity.cc: New.
21 * testsuite/25_algorithms/sort_heap/complexity.cc: New.
23 2014-10-06 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
24 Jonathan Wakely <jwakely@redhat.com>
27 * doc/xml/manual/status_cxx2011.xml: Remove hexfloat from notes.
28 * doc/html/manual/status.html: Regenerate.
29 * include/bits/ios_base.h (hexfloat): New function.
30 (defaultfloat): New function.
31 * src/c++98/locale_facets.cc (__num_base::_S_format_float): Support
32 hexadecimal floating point format.
33 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
36 2014-10-06 Jonathan Wakely <jwakely@redhat.com>
38 * include/Makefile.am: Add new header.
39 * include/Makefile.in: Regenerate.
40 * include/experimental/tuple: New
41 * doc/xml/manual/status_cxx2014.xml: Update.
42 * doc/html/manual/status.html: Regenerate.
43 * testsuite/experimental/feat-lib-fund.cc: Test for new header.
44 * testsuite/experimental/tuple/apply.cc: New.
46 2014-10-05 François Dumont <fdumont@gcc.gnu.org>
49 * include/bits/hashtable.h (_M_uses_single_bucket(__bucket_type*)): Test
51 * testsuite/23_containers/unordered_set/63456.cc: New.
53 2014-10-03 Jonathan Wakely <jwakely@redhat.com>
56 * doc/xml/manual/containers.xml: Remove outdated section.
57 * doc/html/*: Regenerate.
59 2014-10-02 Jonathan Wakely <jwakely@redhat.com>
61 * include/c_global/ctgmath: Include <complex>.
62 * testsuite/26_numerics/headers/ctgmath/complex.cc: New.
63 * doc/xml/manual/status_cxx2011.xml: Update.
64 * doc/html/manual/status.html: Regenerate.
66 2014-10-02 Edward Smith-Rowland <3dw4rd@verizon.net>
68 * include/bits/stl_function.h: Generic associative lookup feature
70 * testsuite/experimental/feat-lib-fund.cc: <experimental/any> is
72 * testsuite/experimental/feat-cxx14.cc: Add test for __cpp_lib_is_final.
73 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
74 * testsuite/20_util/duration/literals/range.cc: Adjust.
75 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
76 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
77 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
78 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
79 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
80 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
81 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
84 2014-10-01 François Dumont <fdumont@gcc.gnu.org>
86 * python/libstdcxx/v6/printers.py (StdDebugIteratorPrinter.to_string):
87 Adapt to latest modifications on debug iterators.
89 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
91 * include/std/type_traits: Add is_final<> type trait for C++14.
92 * testsuite/util/testsuite_tr1.h: Add
93 * testsuite/20_util/is_final/requirements/
94 explicit_instantiation.cc: New.
95 * testsuite/20_util/is_final/requirements/typedefs.cc: New.
96 * testsuite/20_util/is_final/value.cc: New.
97 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
98 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
99 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
101 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
103 Implement SD-6: SG10 Feature Test Recommendations
104 * include/bits/basic_string.h: Add __cpp_lib feature test macro.
105 * include/bits/stl_algobase.h: Ditto.
106 * include/bits/stl_function.h: Ditto.
107 * include/bits/unique_ptr.h: Ditto.
108 * include/std/chrono: Ditto.
109 * include/std/complex: Ditto.
110 * include/std/iomanip: Ditto.
111 * include/std/shared_mutex: Ditto.
112 * include/std/tuple: Ditto.
113 * include/std/type_traits: Ditto.
114 * include/std/utility: Ditto.
115 * testsuite/experimental/feat-cxx14.cc: New.
116 * testsuite/experimental/feat-lib-fund.cc: New.
117 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
118 * testsuite/20_util/duration/literals/range.cc: Adjust.
119 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
120 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
121 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
122 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
123 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
124 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
125 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
128 2014-09-30 Siva Chandra Reddy <sivachandra@google.com>
130 * python/hook.in: Only import libstdcxx.v6.
131 * python/libstdcxx/v6/__init__.py: Load printers and xmethods.
133 2014-09-30 Jonathan Wakely <jwakely@redhat.com>
135 * doc/xml/manual/status_cxx2011.xml: Update.
136 * doc/html/manual/status.html: Regenerate.
138 2014-09-30 Andreas Schwab <schwab@linux-m68k.org>
140 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: New
143 * configure.host (abi_baseline_pair): If try_cpu is generic use
144 host_cpu for the default.
146 2014-09-29 François Dumont <fdumont@gcc.gnu.org>
149 * include/debug/safe_base.h
150 (_Safe_iterator_base(const _Safe_iterator_base&)): Delete declaration.
151 (_Safe_iterator_base& operator=(const _Safe_iterator_base&)): Likewise.
152 * include/debug/safe_iterator.h (_Safe_iterator<>): Move normal iterator
153 before _Safe_iterator_base in memory. Lock before modifying the iterator
155 * include/debug/safe_local_iterator.h
156 (_Safe_local_iterator_base(const _Safe_local_iterator_base&)): Delete
158 (_Safe_local_iterator_base& operator=(const _Safe_local_iterator_base&)):
160 * include/debug/safe_unordered_base.h (_Safe_local_iterator<>): Move
161 normal iterator before _Safe_iterator_base in memory. Lock before
162 modifying the iterator in numerous places.
163 * include/debug/forward_list (_Safe_forward_list<>::_M_swap_aux): Adapt.
164 * include/debug/safe_sequence.tcc
165 (_Safe_sequence<>::_M_transfer_from_if): Adapt.
167 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
170 * doc/xml/manual/status_cxx2011.xml: Update.
171 * include/bits/stl_uninitialized.h (uninitialized_fill_n): Return
173 (__uninitialized_fill_n_a, __uninitialized_default_n_a): Likewise.
174 * include/bits/stl_vector.h (vector::_M_fill_initialize,
175 vector::_M_default_initialize): Use returned iterator.
176 * include/bits/vector.tcc (vector::_M_fill_assign,
177 vector::_M_fill_insert, vector::_M_default_append): Likewise.
178 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
179 16505.cc: Adjust return type.
180 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
183 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
185 * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.
187 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
189 * testsuite/27_io/basic_ios/conv/bool_neg.cc: New.
190 * testsuite/27_io/basic_ios/conv/bool.cc: New.
191 * testsuite/27_io/basic_ios/conv/voidptr.cc: New.
193 * testsuite/27_io/basic_ios/conv/bool_neg.cc: Add dg-do compile.
195 2014-09-25 Tim Shen <timshen@google.com>
198 * include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign,
199 basic_regex::imbue, basic_regex::getloc, basic_regex::swap): Add
200 _M_loc for basic_regex.
201 * include/bits/regex_automaton.h: Add _M_traits for _NFA.
202 * include/bits/regex_compiler.h (_Compiler::_M_get_nfa, __compile_nfa):
203 Make _Compiler::_M_nfa heap allocated.
204 * include/bits/regex_compiler.tcc (_Compiler::_Compiler): Make
205 _Compiler::_M_nfa heap allocated.
206 * include/bits/regex_executor.h (_Executor::_M_is_word):
207 Fix accessing _M_traits.
208 * include/bits/regex_executor.tcc (_Executor::_M_dfs):
209 Fix accessing _M_traits.
210 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
213 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
215 * config/abi/pre/gnu.ver: Make GLIBCXX_3.4 patterns stricter so the
216 new GLIBCXX_3.4.21 symbols don't match them.
219 * config/abi/pre/gnu.ver: Add new exports.
220 * include/bits/basic_ios.h (basic_ios::operator bool): Define.
221 * src/c++98/ios_locale.cc (basic_ios::operator void*): Instantiate.
223 2014-09-24 François Dumont <fdumont@gcc.gnu.org>
226 * include/bits/stl_tree.h (_Rb_tree_reuse_or_alloc_node<>): New.
227 (_Rb_tree_alloc_node<>): New.
228 (_Rb_tree<>::operator=(_Rb_tree<>&&)): New.
229 (_Rb_tree<>::_M_assign_unique): New.
230 (_Rb_tree<>::_M_assign_equal): New.
231 (_Rb_tree<>): Adapt to reuse allocated nodes as much as possible.
232 * include/bits/stl_map.h
233 (std::map<>::operator=(std::map<>&&)): Default implementation.
234 (std::map<>::operator=(initializer_list<>)): Adapt to use
235 _Rb_tree::_M_assign_unique.
236 * include/bits/stl_multimap.h
237 (std::multimap<>::operator=(std::multimap<>&&)): Default implementation.
238 (std::multimap<>::operator=(initializer_list<>)): Adapt to use
239 _Rb_tree::_M_assign_equal.
240 * include/bits/stl_set.h
241 (std::set<>::operator=(std::set<>&&)): Default implementation.
242 (std::set<>::operator=(initializer_list<>)): Adapt to use
243 _Rb_tree::_M_assign_unique.
244 * include/bits/stl_multiset.h
245 (std::multiset<>::operator=(std::multiset<>&&)): Default implementation.
246 (std::multiset<>::operator=(initializer_list<>)): Adapt to use
247 _Rb_tree::_M_assign_equal.
248 * testsuite/23_containers/map/allocator/copy_assign.cc (test03): New.
249 * testsuite/23_containers/map/allocator/init-list.cc: New.
250 * testsuite/23_containers/map/allocator/move_assign.cc (test03): New.
251 * testsuite/23_containers/multimap/allocator/copy_assign.cc
253 * testsuite/23_containers/multimap/allocator/init-list.cc: New.
254 * testsuite/23_containers/multimap/allocator/move_assign.cc
256 * testsuite/23_containers/multiset/allocator/copy_assign.cc
258 * testsuite/23_containers/multiset/allocator/init-list.cc: New.
259 * testsuite/23_containers/multiset/allocator/move_assign.cc
261 * testsuite/23_containers/set/allocator/copy_assign.cc (test03): New.
262 * testsuite/23_containers/set/allocator/init-list.cc: New.
263 * testsuite/23_containers/set/allocator/move_assign.cc (test03): New.
265 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
268 * src/c++11/ios.cc (ios_base::_M_swap): Fix typo.
270 2014-09-23 Jonathan Wakely <jwakely@redhat.com>
272 * config/abi/pre/gnu.ver: Adjust basic_ostream exports.
273 * include/std/istream (basic_iostream(basic_iostream&&)): Pass *this
274 to ostream constructor.
275 * include/std/ostream (basic_ostream(basic_iostream*)): Change to take
276 parameter by reference, to avoid ambiguity.
277 * testsuite/27_io/basic_ostream/cons/char/null.cc: New.
279 2014-09-22 Jason Merrill <jason@redhat.com>
281 * testsuite/Makefile.am (%/site.exp): Add @.
282 (check-DEJAGNU): Likewise.
283 * testsuite/Makefile.in: Regenerate.
285 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
287 * include/bits/stl_queue.h: Include missing header.
288 * include/bits/stl_stack.h: Likewise.
289 * testsuite/23_containers/priority_queue/requirements/
290 uses_allocator.cc: New.
291 * testsuite/23_containers/queue/requirements/uses_allocator.cc: New.
292 * testsuite/23_containers/stack/requirements/uses_allocator.cc: New.
294 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
296 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
297 * doc/xml/manual/status_cxx2014.xml: Update TS status.
298 * doc/html/manual/status.html: Regenerate.
300 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
302 * include/std/mutex (try_lock): Do not swallow exceptions.
303 * testsuite/30_threads/try_lock/4.cc: Fix test.
305 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
309 * config/abi/pre/gnu.ver: Add new exports.
310 * config/io/basic_file_stdio.h (__basic_file): Support moving and
312 * include/bits/basic_ios.h (basic_ios::move, basic_ios::swap):
314 * include/bits/ios_base.h (ios_base::_M_move, ios_base::_M_swap):
316 * include/bits/fstream.tcc (basic_filebuf): Likewise.
317 * include/bits/move.h (__exchange): Define for C++11 mode.
318 * include/ext/stdio_filebuf.h (stdio_filebuf): Support moving and
320 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf): Likewise.
321 * include/std/fstream (basic_filebuf, basic_ifstream, basic_ofstream,
322 basic_fstream): Likewise.
323 * include/std/ios: Remove whitespace.
324 * include/std/istream (basic_istream, basic_iostream): Support moving
326 * include/std/ostream (basic_ostream): Likewise.
327 * include/std/sstream (basic_stringbuf, basic_istringstream,
328 basic_ostringstream, basic_stringstream): Likewise.
329 * include/std/streambuf (basic_streambuf): Do not default copy
330 constructor and assignment on first declaration.
331 * include/std/utility (exchange): Forward to __exchange.
332 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
333 * src/c++11/Makefile.am: Add stream-related files.
334 * src/c++11/Makefile.in: Regenerate.
335 * src/c++11/ext11-inst.cc (stdio_filebuf, stdio_sync_filebuf):
336 New file for explicit instantiation definitions.
337 * src/c++11/ios.cc: Move from src/c++98 to here.
338 (ios_base::_M_move, ios_base::_M_swap): Define.
339 * src/c++11/ios-inst.cc: Move from src/c++98 to here.
340 * src/c++11/iostream-inst.cc: Likewise.
341 * src/c++11/istream-inst.cc: Likewise.
342 * src/c++11/ostream-inst.cc: Likewise.
343 * src/c++11/sstream-inst.cc: Likewise.
344 * src/c++11/streambuf-inst.cc: Likewise.
345 * src/c++98/Makefile.am: Remove stream-related files.
346 * src/c++98/Makefile.in: Regenerate.
347 * src/c++98/ext-inst.cc (stdio_filebuf): Remove explicit
349 * src/c++98/misc-inst.cc (stdio_sync_filebuf): Likewise.
350 * src/c++98/ios-inst.cc: Move to src/c++11/.
351 * src/c++98/ios.cc: Move to src/c++11/.
352 * src/c++98/iostream-inst.cc: Likewise.
353 * src/c++98/istream-inst.cc: Likewise.
354 * src/c++98/ostream-inst.cc: Likewise.
355 * src/c++98/sstream-inst.cc: Likewise.
356 * src/c++98/streambuf-inst.cc: Likewise.
357 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
358 * testsuite/27_io/basic_fstream/cons/move.cc: New.
359 * testsuite/27_io/basic_fstream/assign/1.cc: New.
360 * testsuite/27_io/basic_ifstream/cons/move.cc: New.
361 * testsuite/27_io/basic_ifstream/assign/1.cc: New.
362 * testsuite/27_io/basic_istringstream/assign/1.cc: New.
363 * testsuite/27_io/basic_istringstream/cons/move.cc: New.
364 * testsuite/27_io/basic_ofstream/cons/move.cc: New.
365 * testsuite/27_io/basic_ofstream/assign/1.cc: New.
366 * testsuite/27_io/basic_ostringstream/assign/1.cc: New.
367 * testsuite/27_io/basic_ostringstream/cons/move.cc: New.
368 * testsuite/27_io/basic_stringstream/assign/1.cc: New.
369 * testsuite/27_io/basic_stringstream/cons/move.cc: New.
371 2014-09-17 Jason Merrill <jason@redhat.com>
373 * libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
374 dynamic_cast more gracefully.
376 2014-09-15 Jakub Jelinek <jakub@redhat.com>
378 * testsuite/Makefile.am (check_p_numbers0, check_p_numbers1,
379 check_p_numbers2, check_p_numbers3, check_p_numbers4,
380 check_p_numbers5, check_p_numbers6, check_p_numbers,
381 check_p_subdirs): New variables.
382 (check_DEJAGNU_normal_targets): Use check_p_subdirs.
383 (check-DEJAGNU): Rewritten so that for parallelized
384 testing each job runs all the *.exp files, with
385 GCC_RUNTEST_PARALLELIZE_DIR set in environment.
386 * testsuite/Makefile.in: Regenerated.
387 * testsuite/lib/libstdc++.exp (gcc_parallel_test_run_p,
388 gcc_parallel_test_enable): New procedures. If
389 GCC_RUNTEST_PARALLELIZE_DIR is set in environment, override
390 runtest_file_p to invoke also gcc_parallel_test_run_p.
391 * testsuite/libstdc++-abi/abi.exp: Run all the tests serially
392 by the first parallel runtest encountering it. Fix up path
393 of the extract_symvers script.
394 * testsuite/libstdc++-xmethods/xmethods.exp: Run all the tests
395 serially by the first parallel runtest encountering it. Run
396 dg-finish even in case of error.
398 2014-09-15 Jonathan Wakely <jwakely@redhat.com>
400 * include/bits/regex.h (basic_regex): Rename _Ch_typeraits template
401 parameters to _Ch_traits.
403 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
405 * include/debug/deque (__gnu_debug::deque): Make base class C++11
408 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
411 * include/bits/stl_algo.h (random_shuffle): Prevent self-swapping.
412 * testsuite/25_algorithms/random_shuffle/59603.cc: New.
414 2014-09-11 Jonathan Wakely <jwakely@redhat.com>
417 * include/bits/regex.h (match_results::format): Remove stray template
419 * include/bits/regex_compiler.h (_RegexTranslator::_RegexTranslator):
420 Remove parameter name to avoid -Wunused-parameter warning.
421 * include/bits/regex_executor.h (_State_info::_State_info): Reorder
422 mem-initializers to avoid -Wreorder warning.
423 * include/bits/regex_executor.tcc (_Executor::_M_word_boundary):
424 Remove parameter name to avoid -Wunused-parameter warning.
425 * include/bits/regex_scanner.tcc (_Scanner::_M_advance): Add braces
426 to avoid -Wempty-body warning when not in debug mode.
428 2014-09-10 Siva Chandra Reddy <sivachandra@google.com>
430 * python/hook.in: Load the xmethods.
431 * python/Makefile.am (nobase_python_DATA): Add xmethods.py.
432 * python/Makefile.in: Regenerated.
433 * python/libstdcxx/v6/xmethods.py: New file.
434 * testsuite/lib/gdb-test.exp (gdb_version_check_xmethods): New
436 (gdb-test): New optional argument LOAD_XMETHODS. Load xmethods
437 python script if LOAD_XMETHODS is true.
438 * testsuite/libstdc++-xmethods/unique_ptr.cc: New file.
439 * testsuite/libstdc++-xmethods/vector.cc: New file.
440 * testsuite/libstdc++-xmethods/xmethods.exp: New file.
442 2014-09-10 Tony Wang <tony.wang@arm.com>
445 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
446 Return with CONTINUE_UNWINDING when the state pattern
447 contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND
449 2014-09-09 Jonathan Wakely <jwakely@redhat.com>
451 * include/bits/deque.tcc (deque::operator=(const deque&)): Handle
452 allocator propagation.
453 (deque::emplace_front, deque::emplace_back): Use allocator traits.
454 (deque::_M_push_back_aux, deque::_M_push_front_aux): Likewise.
455 (deque::_M_pop_back_aux, deque::_M_pop_front_aux): Likewise.
456 * include/bits/stl_deque.h (__deque_buf_size): Add constexpr.
457 (_Deque_iterator): Handle allocators with custom pointers.
458 (_Deque_base): Likewise. Use allocator traits.
459 (deque): Likewise. Add allocator-extended constructors.
460 (deque::_M_move_assign1, deque::_M_move_assign2): Implement move
461 assignment via tag dispatching.
462 (deque::_M_replace_map): Replace existing data.
463 * include/debug/deque (deque): Add allocator-extended constructors.
464 * include/profile/deque (deque): Likewise.
465 * testsuite/23_containers/deque/allocator/copy.cc: New.
466 * testsuite/23_containers/deque/allocator/copy_assign.cc: New.
467 * testsuite/23_containers/deque/allocator/ext_ptr.cc: New.
468 * testsuite/23_containers/deque/allocator/minimal.cc: New.
469 * testsuite/23_containers/deque/allocator/move.cc: New.
470 * testsuite/23_containers/deque/allocator/move_assign-2.cc: New.
471 * testsuite/23_containers/deque/allocator/move_assign.cc: New.
472 * testsuite/23_containers/deque/allocator/noexcept.cc: New.
473 * testsuite/23_containers/deque/allocator/swap.cc: New.
474 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
475 Adjust dg-error line number.
476 * testsuite/23_containers/deque/requirements/dr438/
477 constructor_1_neg.cc: Likewise.
478 * testsuite/23_containers/deque/requirements/dr438/
479 constructor_2_neg.cc: Likewise.
480 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
482 * testsuite/23_containers/vector/52591.cc: Test both the propagating
483 and always-equal cases.
485 2014-09-06 François Dumont <fdumont@gcc.gnu.org>
487 * include/bits/hashtable_policy.h (_Prime_rehash_policy): Constructor
489 (_Hash_code_base<>): All specialization default constructible if
491 (_Hashtable_base<>): Likewise.
492 * include/bits/hashtable.h (_Hashtable<>()): Implementation defaulted.
493 * include/bits/unordered_map.h (unordered_map<>::unordered_map()): New,
494 implementation defaulted.
495 (unordered_multimap<>::unordered_multimap()): Likewise.
496 * include/bits/unordered_set.h
497 (unordered_set<>::unordered_set()): Likewise.
498 (unordered_multiset<>::unordered_multiset()): Likewise.
499 * include/debug/unordered_map: Likewise.
500 * include/debug/unordered_set: Likewise.
501 * testsuite/23_containers/unordered_map/allocator/noexcept.cc
503 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc
505 * testsuite/23_containers/unordered_set/allocator/noexcept.cc
507 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc
510 2014-08-30 John David Anglin <danglin@gcc.gnu.org>
512 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
514 2014-08-29 Jonathan Wakely <jwakely@redhat.com>
516 * include/std/complex (complex): Define copy constructor and
517 assignment operator as defaulted. Improve Doxygen comments.
519 2014-08-28 Jonathan Wakely <jwakely@redhat.com>
521 * testsuite/ext/random/*: Fix incorrect standard references in
524 2014-08-27 Jonathan Wakely <jwakely@redhat.com>
527 * include/Makefile.am (install-freestanding-headers): Add missing
529 * include/Makefile.in: Regenerate.
531 2014-08-21 Tony Wang <tony.wang@arm.com>
533 * testsuite/18_support/nested_exception/62154.cc: Disable when the
534 target doesn't provide atomic builtins.
536 2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
537 Kai Tietz <ktietz@redhat.com>
539 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
541 * config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
543 * libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
544 #include <windows.h>.
545 (struct elt): Add dll member.
546 (run): Decrement dll refcount.
547 (__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.
549 2014-08-15 Jonathan Wakely <jwakely@redhat.com>
552 * libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
553 Rewrite to conform to C++11 requirements.
554 * testsuite/18_support/nested_exception/62154.cc: New.
556 2014-08-14 Matthias Klose <doko@ubuntu.com>
558 * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
559 Remove empty directory.
561 2014-08-14 Paolo Carlini <paolo.carlini@oracle.com>
563 * testsuite/26_numerics/random/linear_congruential_engine/
564 requirements/non_uint_neg.cc: Adjust for parser change.
565 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
566 requirements/non_uint_neg.cc: Likewise.
568 2014-08-13 Jonathan Wakely <jwakely@redhat.com>
571 * include/std/thread (thread::_M_start_thread): Declare new overload.
572 (thread::thread<_Callable, _Args...>): Call new overload with an
573 explicit reference to pthread_create.
574 * src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
575 * config/abi/pre/gnu.ver: Export new function.
577 2014-08-13 Sylvestre Ledru <sylvestre@debian.org>
579 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
581 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
583 * Fix thinko in the last commit.
585 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
588 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
589 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
591 2014-08-12 Jonathan Wakely <jwakely@redhat.com>
593 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
594 and add overloads for rvalue streams.
595 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
597 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
600 * include/bits/basic_string.h (getline): Declare inline.
602 2014-08-09 Ulrich Drepper <drepper@gmail.com>
604 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
605 (uniform_on_sphere_distribution::operator()): Use the new helper
606 class for the implementation.
608 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
609 equal.cc: Remove bogus part of comment.
610 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
611 inequal.cc: Likewise.
612 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
613 serialize.cc: Add check to verify result of serialzation and
615 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
616 generate.cc: New file.
618 2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
620 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
621 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
623 2014-08-09 François Dumont <fdumont@gcc.gnu.org>
626 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
627 _M_need_rehash to initialize the rehash policy and check if a rehash is
629 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
631 2014-08-07 Jonathan Wakely <jwakely@redhat.com>
633 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
635 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
636 Adjust dg-error line number.
637 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
639 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
641 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
644 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
646 (_State_baseV2::_M_do_set): Change parameters to pointers.
647 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
648 (_State_baseV2::__setter): Initialize _Setter with pointers.
649 (_State_baseV2::__setter(promise<void>*)): Remove overload.
650 (promise::set_value, promise::set_exception): Pass setter directly
652 (_State_baseV2::_Task_setter): Add template parameter for callable
653 type and replace std::function member with pointer to that type.
654 Change _M_result member from reference to pointer.
655 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
656 and initialize _Task_setter with pointers.
657 (__location_invariant): Specialize for _Setter and _Task_setter.
659 * include/std/future (__location_invariant): Move specializations
660 after preprocessor condition.
662 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
665 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
667 2014-08-01 Zifei Tong <zifeitong@gmail.com>
669 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
670 _GLIBCXX_ prefix to macro.
672 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
674 * python/libstdcxx/v6/printers.py
675 (SingleObjContainerPrinter._contained): Use compatibility mixin.
677 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
679 * testsuite/util/testsuite_allocator.h
680 (tracker_allocator_counter::allocate): Remove new invocation, only
682 (tracker_allocator_counter::deallocate): Remove delete invocation, only
684 (check_inconsistent_alloc_value_type): New.
685 (tracker_allocator): Transform as a facade for any allocator type.
686 (uneq_allocator): Likewise.
687 (propagating_allocator): Likewise.
688 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
689 explicitly non propagating allocator.
690 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
691 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
692 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
693 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
694 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
696 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
698 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
700 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
702 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
704 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
707 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
708 const allocator_type&)): Pass non-const allocator to
710 * testsuite/ext/rope/61946.cc: New.
713 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
714 disambiguate unary constructors.
715 (_Tuple_impl): Pass allocator_arg_t arguments.
716 * testsuite/20_util/tuple/61947.cc: New.
717 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
719 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
721 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
722 * include/bits/random.h (_Adaptor): static_assert for non floating-point
724 * include/bits/random.tcc (generate_canonical): Ditto.
725 * include/ext/random.tcc (hypergeometric_distribution::operator()):
726 Use double as a rng result type.
727 * testsuite/26_numerics/random/pr60037-neg.cc: New.
728 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
730 2014-07-25 Uros Bizjak <ubizjak@gmail.com>
732 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
734 2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
736 * include/experimental/string_view: Make the literal operators
737 constexpr like the ctors they call.
739 2014-07-23 H.J. Lu <hongjiu.lu@intel.com>
741 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
743 2014-07-23 Jonathan Wakely <jwakely@redhat.com>
745 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
746 to string instead of using gdb.Type.name attribute.
748 2014-07-19 Jonathan Wakely <jwakely@redhat.com>
750 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
753 2014-07-18 Jonathan Wakely <jwakely@redhat.com>
756 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
758 (SingleObjContainerPrinter): Check if type printers are in use.
760 2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
762 * include/ext/random: Minor formatting and cosmetic tweaks.
763 (uniform_on_sphere_distribution<>::operator==
764 (const uniform_on_sphere_distribution&,
765 const uniform_on_sphere_distribution&)): Compare the _M_nds.
766 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
767 (operator!=(const uniform_on_sphere_distribution&,
768 const uniform_on_sphere_distribution&)): Adjust.
769 * include/ext/random.tcc: Minor cosmetc tweaks.
771 2014-07-15 Jonathan Wakely <jwakely@redhat.com>
773 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
774 printer for class templates.
775 (register_type_printers): Use TemplateTypePrinter for containers
776 and other class templates with default template arguments.
777 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
779 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
780 base class for experimental::any and experimental::optional printers.
781 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
782 New printers for Fundamentals TS types.
783 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
785 2014-07-15 Tim Shen <timshen@google.com>
788 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
789 Clear match queue for next use.
790 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
792 2014-07-14 Ulrich Drepper <drepper@gmail.com>
794 * include/ext/random.tcc: Unfortunately more fixes for
795 operator>> and operator<< for uniform_on_sphere_distribution.
797 2014-07-13 Ulrich Drepper <drepper@gmail.com>
799 * include/ext/random.tcc: Fix operator>> and operator<< for
800 uniform_on_sphere_distribution.
802 2014-07-12 Ulrich Drepper <drepper@gmail.com>
804 * include/ext/random: Add uniform_on_sphere_distribution definition.
805 * include/ext/random.tcc: Add out-of-band member function definitions
806 for uniform_on_sphere_distribution.
807 * testsuite/ext/random/uniform_on_sphere_distribution/
808 cons/default.cc: New file.
809 * testsuite/ext/random/uniform_on_sphere_distribution/
810 operators/equal.cc: New file.
811 * testsuite/ext/random/uniform_on_sphere_distribution/
812 operators/inequal.cc: New file.
813 * testsuite/ext/random/uniform_on_sphere_distribution/
814 operators/serialize.cc: New file.
816 2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
818 Add the logistic_distribution as an extension.
819 * include/ext/random: Add the logistic_distribution.
820 * include/ext/random.tcc: Add the logistic_distribution.
821 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
822 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
823 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
825 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
826 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
827 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
830 2014-07-11 Samuel Bronson <naesten@gmail.com>
832 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
833 instead of insisting that GCC understand -fdiagnostics-color=never
835 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
838 2014-07-11 Samuel Bronson <naesten@gmail.com>
839 Matthias Klose <doko@ubuntu.com>
842 * python/libstdcxx/v6/printers.py: Port to Python 2+3
843 (imap): New compat function.
845 (Iterator): New mixin to allow writing iterators in Python 3 style
846 regardless of which version we're running on.
847 [Python3] (long) New compat alias for "int".
848 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
850 2014-07-10 Jonathan Wakely <jwakely@redhat.com>
852 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
853 tuple members to simplify pretty printing.
854 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
856 * testsuite/experimental/any/cons/4.cc: New.
858 2014-07-09 Jason Merrill <jason@redhat.com>
861 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
862 * libsupc++/tinfo.h: Not here.
864 2014-07-08 Jonathan Wakely <jwakely@redhat.com>
866 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
868 * include/experimental/any: Remove unused header.
869 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
870 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
871 * testsuite/util/testsuite_regex.h: Move include guard.
873 2014-07-01 Tim Shen <timshen@google.com>
877 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
878 a NFA state limit. If it's exceeded, regex_constants::error_space
880 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
881 map (which is sparse) instead of vector. This reduce n times clones'
882 cost from O(n^2) to O(n).
883 * include/std/regex: Add map dependency.
884 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
887 2014-07-01 Tim Shen <timshen@google.com>
890 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
891 not just regex containing back-references.
892 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
893 exchange _M_next and _M_alt for alternative operator,
894 making matching from left to right.
895 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
896 Add position tracking fom DFS.
897 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
898 _Executor<>::_M_dfs): Likewise.
899 * include/bits/regex_scanner.h: Remove unused enum entry.
900 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
903 2014-06-30 Jason Merrill <jason@redhat.com>
905 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
908 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
911 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
912 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
915 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
917 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
919 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
921 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
923 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
926 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
928 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
929 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
930 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
932 * include/ext/alloc_traits.h: Fix comment.
934 * include/Makefile.am: Add new header.
935 * include/Makefile.in: Regenerate.
936 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
937 New RAII utilities for working with allocators.
938 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
939 __allocator_type typedef and use new __allocated_ptr type.
940 (_Sp_counted_ptr_inplace): Likewise.
941 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
942 __allocate_guarded to to simplify exception handling.
943 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
944 * include/std/future (_Result_alloc::_M_destroy): Likewise.
945 (_Result_alloc::_S_allocate_result): Likewise.
946 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
947 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
948 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
949 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
951 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
953 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
955 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
956 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
958 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
960 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
961 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
962 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
963 Remove unused typedef.
964 (time_get::do_get_monthname): Likewise.
965 * include/bits/stl_tree.h: Add system_header pragma.
966 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
967 redundant const-qualifier.
968 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
969 instead of _GLIBCXX_USE_CONSTEXPR.
971 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
973 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
974 * include/std/chrono (_Checked_integral_constant): Allow zero.
975 * testsuite/20_util/duration/literals/values.cc: Test non-positive
976 values and digit separators.
977 * include/experimental/any
980 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
981 apply the signed specifier to wchar_t.
982 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
983 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
984 cv-qualifier and size.
985 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
988 * include/experimental/any (any_v1): Rename namespace to
989 fundamentals_v1. Change string returned by bad_any_cast::what().
990 * include/experimental/optional (fundamentals_v1): Add namespace.
991 * include/experimental/string_view (fundamentals_v1): Likewise.
992 * testsuite/experimental/any/typedefs.cc: New.
993 * testsuite/experimental/optional/typedefs.cc: New.
994 * testsuite/experimental/string_view/typedefs.cc: New.
996 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
997 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
1000 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
1002 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
1004 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
1005 * include/Makefile.am: Add new header.
1006 * include/Makefile.in: Regenerate.
1007 * include/experimental/any: New.
1008 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
1010 * testsuite/experimental/any/assign/1.cc: New.
1011 * testsuite/experimental/any/assign/2.cc: New.
1012 * testsuite/experimental/any/cons/1.cc: New.
1013 * testsuite/experimental/any/cons/2.cc: New.
1014 * testsuite/experimental/any/cons/3.cc: New.
1015 * testsuite/experimental/any/misc/any_cast.cc: New.
1016 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
1017 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
1018 * testsuite/experimental/any/misc/swap.cc: New.
1019 * testsuite/experimental/any/modifiers/1.cc: New.
1020 * testsuite/experimental/any/observers/type.cc: New.
1022 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
1023 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
1025 * include/bits/shared_ptr.h (shared_ptr): Likewise.
1026 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
1028 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
1030 * include/parallel/list_partition.h (__parallel::list_partition):
1032 * include/std/iomanip (quoted): Likewise.
1033 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
1035 * doc/xml/api.xml: Link to more recent API docs.
1036 * include/bits/allocator.h: Fix link in doxygen comment.
1037 * include/bits/char_traits.h: Likewise.
1038 * include/bits/ios_base.h: Likewise.
1039 * include/bits/stl_map.h: Likewise.
1040 * include/bits/stl_multimap.h: Likewise.
1041 * include/bits/stl_multiset.h: Likewise.
1042 * include/bits/stl_set.h: Likewise.
1043 * include/bits/unordered_map.h: Likewise.
1044 * include/bits/unordered_set.h: Likewise.
1045 * include/ext/mt_allocator.h: Likewise.
1046 * include/std/fstream: Likewise.
1047 * include/std/iosfwd: Likewise.
1048 * include/std/ostream: Likewise.
1049 * include/std/sstream: Likewise.
1050 * include/std/streambuf: Likewise.
1051 * doc/html/*: Regenerate.
1053 * include/experimental/any (any_cast): Combine duplicate doxygen
1055 * include/experimental/string_view (basic_string_view): Update
1057 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
1058 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
1059 (dynamic_bitset): Improve Doxygen comments.
1060 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
1063 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
1065 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
1066 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
1068 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
1071 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
1072 (bin_search_tree_traits): Do not redeclare template-parameters.
1073 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
1075 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
1077 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
1078 parameter for DocBook HTML generation.
1079 * doc/Makefile.in: Regenerate.
1080 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
1081 * doc/xml/faq.xml: Update content and improve formatting.
1082 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
1083 * doc/xml/manual/allocator.xml: Add stable ID attribute.
1084 * doc/xml/manual/bitmap_allocator.xml: Likewise.
1085 * doc/xml/manual/build_hacking.xml: Likewise.
1086 * doc/xml/manual/codecvt.xml: Change URL.
1087 * doc/xml/manual/ctype.xml: Add stable ID attribute.
1088 * doc/xml/manual/debug_mode.xml: Likewise.
1089 * doc/xml/manual/documentation_hacking.xml: Likewise.
1090 * doc/xml/manual/evolution.xml: Likewise.
1091 * doc/xml/manual/extensions.xml: Likewise.
1092 * doc/xml/manual/locale.xml: Likewise.
1093 * doc/xml/manual/messages.xml: Make section id consistent, improve
1095 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
1096 * doc/xml/manual/profile_mode.xml: Likewise.
1097 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
1098 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
1099 * doc/xml/manual/status_cxx2011.xml: Likewise.
1100 * doc/xml/manual/status_cxx2014.xml: Likewise.
1101 * doc/xml/manual/status_cxxtr1.xml: Likewise.
1102 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
1103 * doc/xml/manual/using.xml: Likewise.
1104 * doc/html/*: Regenerate.
1106 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
1108 * include/tr1/beta_function.tcc: Fix spelling of include guard in
1111 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
1113 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
1115 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
1117 DR 2344 - std::quoted doesn't respect padding
1118 * include/std/iomanip: Allow for padding in quoted inserters.
1119 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
1120 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
1122 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
1124 * testsuite/23_containers/map/operators/1.cc: Simplify test.
1126 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
1128 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
1130 * doc/xml/manual/backwards_compatibility.xml
1131 (backwards.second.stringstreams): Likewise.
1132 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
1134 * doc/xml/manual/containers.xml (associative.bitset.type_string):
1135 Replace <quote> in code example.
1136 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
1137 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
1138 fix typos, improve markup.
1139 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
1140 <emphasis> with <replaceable>.
1141 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
1142 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
1143 and remove newlines in string literal.
1145 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
1149 * testsuite/20_util/is_assignable/value.cc: Update.
1151 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
1153 * include/std/condition_variable (condition_variable_any::_Unlock): Do
1154 not swallow __forced_unwind.
1155 * include/std/future (__future_base::_Task_setter): Likewise.
1156 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
1157 promise and rethrow.
1158 * include/std/mutex (try_lock): Likewise.
1159 * testsuite/30_threads/async/forced_unwind.cc: New.
1160 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
1162 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
1163 members to avoid wasted space when not using a cache.
1164 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
1165 * include/bits/regex_compiler.tcc
1166 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
1168 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
1169 New enumeration type to indicate match mode.
1170 (__detail::_Executor::_State_info): New type holding members only
1171 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
1173 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
1174 Replace template parameter with run-time function parameter.
1175 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
1176 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
1177 implement DFS and BFS mode.
1178 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
1179 Split implementation into ...
1180 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
1181 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
1182 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
1183 argument instead of template argument.
1184 (__detail::_Executor::_M_dfs): Likewise.
1185 * include/bits/regex_scanner.tcc: Fix typos in comments.
1186 * testsuite/performance/28_regex/range.cc: New.
1188 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
1189 Jonathan Wakely <jwakely@redhat.com>
1191 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
1193 (aligned_union): New struct (C++11).
1194 (aligned_union_t): New type alias (C++14).
1195 * doc/xml/manual/status_cxx2011.xml: Update.
1196 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
1197 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1200 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
1203 * include/experimental/string_view (operator basic_string): Correct
1205 (to_string): Replace with member function.
1206 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
1207 allow _M_str to be null.
1208 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
1209 default constructor semantics.
1210 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
1211 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
1212 copyright dates. Remove unused header.
1213 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
1215 * testsuite/experimental/string_view/operations/data/char/1.cc:
1216 Fix copyright dates. Adjust to new default constructor semantics.
1217 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
1219 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
1221 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
1222 (__uses_allocator_arg): Remove unused type.
1223 (__uses_alloc0): Turn into a trivial type.
1224 (__uses_alloc): Add missing template parameter in primary template.
1225 (__uses_alloc_impl): Rename to __uses_alloc_t.
1227 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
1229 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
1230 work with previous versions of Tcl.
1232 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
1233 Benjamin's old email address.
1235 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
1236 Paolo's address too.
1238 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
1240 * include/tr2/bool_set: Use UTF-8 for accented characters.
1241 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
1242 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
1243 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
1245 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
1248 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
1250 (_State_base::_M_dot): Likewise.
1252 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
1254 * include/profile/map.h: Fix typo in comment; minor formatting fix.
1255 * include/profile/multimap.h: Likewise.
1256 * include/profile/set.h: Likewise.
1257 * include/profile/multiset.h: Likewise.
1259 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
1261 * include/profile/array: Clean useless white chars.
1262 * include/profile/base.h: Likewise.
1263 * include/profile/iterator_tracker.h: Likewise.
1264 * include/profile/bitset: Code cleanup and remove not instrumented code.
1265 * include/profile/deque: Likewise.
1266 * include/profile/forward_list: Likewise.
1267 * include/profile/list (std::__profile::_List_profile<>): New.
1268 (std::__profile::list<>): Inherit from latter and adapt.
1269 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
1270 advise to match any ordered to unordered container conversion.
1271 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
1273 * include/Makefile.am: Add latter.
1274 * include/Makefile.in: Regenerate.
1275 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
1276 remove not instrumented code.
1277 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
1278 * include/profile/set.h (std::__profile::set<>): Likewise.
1279 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
1280 * include/profile/unordered_base.h: Add some line feed.
1281 * include/profile/unordered_map: Clean useless white chars and replace
1283 * include/profile/unordered_set: Likewise.
1284 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
1285 (std::__profile::_Vector_profile_post<>): New.
1286 (std::__profile::vector<>): Inherit from latter and adapt.
1288 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
1291 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
1292 dragonfly target selector to all tests that run on freebsd.
1294 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
1296 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
1297 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
1299 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
1301 * testsuite/30_threads/call_once/60497.cc: Likewise.
1302 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
1303 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
1304 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
1305 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
1306 * testsuite/30_threads/promise/60966.cc: Likewise.
1307 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
1308 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
1309 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
1310 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
1311 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
1312 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
1313 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
1314 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
1315 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
1316 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
1317 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
1318 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
1319 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
1320 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
1321 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
1322 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
1323 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
1325 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
1328 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
1330 * testsuite/23_containers/unordered_set/61143.cc: New.
1331 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
1333 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
1336 * include/std/type_traits: Move include outside namespace std.
1337 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
1338 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1339 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1342 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
1345 2014-05-21 John Marino <gnugcc@marino.st>
1347 * acinclude.m4 (*-*-dragonfly*): New target.
1348 * configure: Regenerate.
1349 * configure.host (*-*-dragonfly*): New target.
1350 * config/locale/dragonfly/c_locale.cc: New.
1351 * config/locale/dragonfly/ctype_members.cc: New.
1352 * config/os/bsd/dragonfly/ctype_base.h: New.
1353 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
1354 * config/os/bsd/dragonfly/ctype_inline.h: New.
1355 * config/os/bsd/dragonfly/os_defines.h: New.
1357 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
1359 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
1360 libstdc++.exp imports those flags via getenv.
1361 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
1362 CXXFLAGS contains a '-O' flag.
1364 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1368 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1371 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1372 and add unwind directives.
1374 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
1376 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
1378 2014-05-20 Tim Shen <timshen91@gmail.com>
1381 * include/bits/regex_compiler.h
1382 (_BracketMatcher<>::_M_add_character_class): Add negative character
1384 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
1386 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
1389 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
1391 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
1393 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
1395 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
1396 * libsupc++/new_opnt.cc: Likewise.
1398 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
1401 * include/std/future (__future_base::_State_baseV2::_M_set_result):
1402 Pass lock into _M_do_set and hold it until the function returns.
1403 Signal condition variable after call_once completes.
1404 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
1406 * testsuite/30_threads/promise/60966.cc: New.
1408 2014-05-16 Iain Sandoe <iain@codesourcery.com>
1409 Sandra Loosemore <sandra@codesourcery.com>
1411 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
1412 until after checking that the test is eligible to be run.
1414 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1416 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
1417 test for 32-bit target.
1418 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1420 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
1423 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1426 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1427 and add unwind directives.
1429 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1431 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
1433 * include/std/chrono (chrono_literals::__select_type::_Select_type):
1435 (chrono_literals::_Checked_integral_constant): Define.
1436 Simplify UDL operator templates and check for overflow.
1437 * testsuite/20_util/duration/literals/range.cc: New.
1439 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
1440 Jonathan Wakely <jwakely@redhat.com>
1443 * include/bits/parse_numbers.h: Use integral_constant to remove
1444 duplication and simplify.
1445 * testsuite/20_util/duration/literals/61166.cc: New.
1447 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1450 * include/std/type_traits (__make_unsigned, __make_signed): Define
1451 specializations for wchar_t, char16_t and char32_t.
1452 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
1453 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
1454 test for make_unsigned<volatile wchar_t>.
1455 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1457 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1459 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1461 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1464 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1466 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
1467 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
1468 * include/std/utility (tuple_size, tuple_element): Likewise.
1469 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1470 Adjust dg-error line number.
1472 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
1474 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
1475 (__tuple_element_t): Define.
1476 (tuple_element): Use __tuple_element_t.
1477 (__cv_tuple_size): Define.
1478 (tuple_size<cv _Tp>): Use __cv_tuple_size.
1479 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
1480 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
1481 (__tuple_compare): Remove size check, re-order parameters.
1482 (operator==, operator<): Use static_assert to check requirements.
1483 * include/std/functional (__volget): use __tuple_element_t.
1484 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
1485 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
1487 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
1490 * include/std/tuple (get, __tuple_compare): Qualify more calls to
1491 prevent ADL. Cast comparison results to bool.
1492 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
1493 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
1496 * include/debug/array (get): Qualify call to other get overload.
1497 * include/profile/array (get): Likewise.
1498 * include/std/array (get): Likewise.
1499 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
1500 * include/std/mutex (unique_lock, call_once): Use __addressof.
1501 (__unlock_impl): Remove unused template.
1502 (__try_to_lock): Declare inline.
1503 (__try_lock_impl::__do_try_lock): Qualify function calls.
1504 (lock): Avoid narrowing conversion.
1505 * testsuite/20_util/bind/60497.cc: New.
1506 * testsuite/23_containers/array/element_access/60497.cc: New.
1507 * testsuite/30_threads/call_once/60497.cc: New.
1508 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
1510 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
1512 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
1513 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
1514 * acinclude.m4 (libtool_VERSION): Bump.
1515 * configure: Regenerate.
1516 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
1517 * testsuite/28_regex/regex_error/base.cc: New.
1519 2014-05-08 Joshua Gay <jgay@gnu.org>
1522 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
1523 source" with "free software".
1524 * doc/html/faq.html: Likewise.
1526 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
1529 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
1531 (operator=(const ios_base&)): Likewise.
1532 * include/std/streambuf: Remove trailing whitespace.
1533 (basic_streambuf(const basic_streambuf&)): Fix initializer for
1534 _M_out_end. Define as defaulted for C++11.
1535 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
1536 (swap(basic_streambuf&)): Define for C++11.
1537 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
1540 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
1542 * include/std/iostream: Fix URL in comment.
1543 * src/c++98/ios_init.cc: Fix path in comment.
1545 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
1547 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
1548 * configure: Regenerate.
1550 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
1553 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
1554 comparison function.
1555 * testsuite/23_containers/set/cons/61023.cc: New.
1558 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
1560 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
1561 arithmetic to obtain a mutable iterator from const_iterator.
1562 * include/bits/vector.tcc (vector::insert): Likewise.
1563 * include/debug/vector (vector::erase): Likewise.
1564 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1565 Adjust dg-error line number.
1566 * testsuite/23_containers/vector/requirements/dr438/
1567 constructor_1_neg.cc: Likewise.
1568 * testsuite/23_containers/vector/requirements/dr438/
1569 constructor_2_neg.cc: Likewise.
1570 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1573 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
1575 * include/Makefile.in: Regenerate.
1577 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
1579 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1580 parameter to pass the 2 instances to check allocator equality.
1581 * include/debug/safe_container.h: New, define _Safe_container<>.
1582 * include/Makefile.am: Add previous.
1583 * include/debug/deque (std::__debug::deque<>): Inherit
1584 _Safe_container<>. Use default implementation for all special
1586 * include/debug/forward_list (std::__debug::forward_list<>):
1588 * include/debug/list (std::__debug::list<>): Likewise.
1589 * include/debug/map.h (std::__debug::map<>): Likewise.
1590 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1591 * include/debug/set.h (std::__debug::set<>): Likewise.
1592 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1593 * include/debug/string (std::__debug::basic_string<>): Likewise.
1594 * include/debug/unordered_map
1595 (std::__debug::unordered_map<>): Likewise.
1596 (std::__debug::unordered_multimap<>): Likewise.
1597 * include/debug/unordered_set
1598 (std::__debug::unordered_set<>): Likewise.
1599 (std::__debug::unordered_multiset<>): Likewise.
1600 * include/debug/vector (std::__debug::vector<>): Likewise.
1601 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1603 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1604 (~_Safe_sequence_base()): Add noexcept.
1605 * include/debug/safe_sequence.h
1606 (std::__debug::_Safe_node_sequence<>): New.
1607 * include/debug/safe_unordered_base.h
1608 (_Safe_unordered_container_base()): Add noexcept.
1609 (~_Safe_unordered_container_base()): Likewise.
1610 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1611 * include/debug/safe_unordered_container.h:
1612 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1613 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1614 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1616 * testsuite/util/debug/checks.h (check_construct1): Just implement
1617 an invalid constructor invocation and no other operations
1618 potentially not supported by some types of container.
1619 (check_construct2): Likewise.
1620 (check_construct3): Likewise.
1621 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1622 check on iterators to make sure they are correctly moved in debug
1624 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1626 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1627 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1628 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1629 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1631 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1632 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1634 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1635 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1636 * testsuite/23_containers/unordered_map/allocator/move.cc:
1638 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1640 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1642 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1644 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1646 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1648 * testsuite/23_containers/unordered_set/allocator/move.cc:
1650 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1652 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1654 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1656 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1658 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1660 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1662 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1663 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1664 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1665 * testsuite/23_containers/map/debug/move_neg.cc: New.
1666 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1667 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1668 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1669 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1670 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1671 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1672 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1673 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1674 * testsuite/23_containers/set/debug/move_neg.cc: New.
1675 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1677 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1679 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1680 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1682 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1684 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1686 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1688 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1690 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1692 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1694 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1696 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1697 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1699 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1701 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1702 (CXXABI_1.3.9): Remove __float128 symbols.
1704 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
1707 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1708 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1709 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1710 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1712 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1715 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1716 Check the correct type in the static assertion.
1717 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1719 2014-04-27 Tim Shen <timshen91@gmail.com>
1721 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1722 Add _S_opcode_repeat support to distingush a loop from
1723 _S_opcode_alternative.
1724 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1725 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1726 _StateSeq<>::_M_clone): Likewise.
1727 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1729 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1730 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1731 Uglify local variable __i.
1732 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1733 Use size_t instead of int to compare with vector::size().
1735 2014-04-27 Tim Shen <timshen91@gmail.com>
1737 * include/bits/regex_executor.h: Add _M_rep_count to track how
1738 many times this repeat node are visited.
1739 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1740 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1743 2014-04-27 Tim Shen <timshen91@gmail.com>
1745 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1746 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1747 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1748 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1749 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1750 Adjust debug NFA dump.
1752 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1755 * include/experimental/optional (operator!=): Implement in terms of
1757 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1758 * testsuite/experimental/optional/relops/2.cc: Likewise.
1759 * testsuite/experimental/optional/relops/3.cc: Likewise.
1760 * testsuite/experimental/optional/relops/4.cc: Likewise.
1761 * testsuite/experimental/optional/relops/5.cc: Likewise.
1762 * testsuite/experimental/optional/relops/6.cc: Likewise.
1764 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
1767 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1768 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1771 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
1773 * testsuite/util/testsuite_abi.cc (check_version): Update for
1776 2014-04-24 Tim Shen <timshen91@gmail.com>
1778 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1779 Do _M_alt before _M_next.
1780 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1782 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
1785 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1786 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1787 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1789 2014-04-24 Andreas Schwab <schwab@suse.de>
1791 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1792 new CXXABI_1.3.9 symbols.
1794 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1796 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1797 (CXXABI_1.3.9): New version.
1799 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
1802 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1803 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1804 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1806 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1808 * configure.host: Remove solaris2.9 handling.
1809 Change os_include_dir to os/solaris/solaris2.10.
1810 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1811 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1812 * configure: Regenerate.
1813 * config/abi/post/solaris2.9: Remove.
1814 * config/os/solaris/solaris2.9: Rename to ...
1815 * config/os/solaris/solaris2.10: ... this.
1816 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1819 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1820 Remove Solaris 9 reference.
1821 * doc/html/manual/configure.html: Regenerate.
1823 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1824 Remove *-*-solaris2.9 xfail.
1825 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1828 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1831 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
1833 * include/std/functional (__is_location_invariant): Use __or_ helper.
1835 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
1838 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1841 * include/std/atomic (atomic<_Tp>): Add static assertion.
1842 * testsuite/29_atomics/atomic/60695.cc: New.
1845 * include/std/functional (function::_Callable): Exclude own type
1846 from the callable checks.
1847 * testsuite/20_util/function/60594.cc: New.
1849 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1850 const to constexpr member functions.
1852 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1853 delegating constructor.
1854 * include/bits/shared_ptr_base.h
1855 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1857 * include/std/atomic: Uglify parameter names.
1860 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1861 1.cc: Fix invalid explicit instantiations with unqualified names.
1862 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1864 * testsuite/20_util/tuple/53648.cc: Likweise.
1865 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1867 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1869 * testsuite/23_containers/unordered_map/requirements/
1870 debug_container.cc: Likewise.
1871 * testsuite/23_containers/unordered_map/requirements/
1872 explicit_instantiation/3.cc: Likewise.
1873 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1875 * testsuite/23_containers/unordered_multimap/requirements/
1876 explicit_instantiation/3.cc: Likewise.
1877 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1879 * testsuite/23_containers/unordered_multiset/requirements/
1880 explicit_instantiation/3.cc: Likewise.
1881 * testsuite/23_containers/unordered_set/requirements/
1882 debug_container.cc: Likewise.
1883 * testsuite/23_containers/unordered_set/requirements/
1884 explicit_instantiation/3.cc: Likewise.
1886 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1887 not use uninitialized members in mem-initializers.
1888 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1889 * testsuite/util/testsuite_common_types.h: Update comment.
1891 * include/experimental/string_view: Fix inconsistent exception specs.
1893 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1894 Remove name of unused parameter.
1896 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
1898 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1899 _Vector_base::_M_allocate): NullablePointer requirements do not
1900 include initialization from literal zero, use value-initialization.
1901 * include/bits/vector.tcc (vector::_M_insert_aux,
1902 vector::_M_explace_back_aux): Likewise for assignment.
1904 * include/bits/allocator.h (operator==, operator!=): Add exception
1908 * include/std/tuple (get): Qualify calls to prevent ADL.
1909 * testsuite/20_util/tuple/60497.cc: New.
1911 * include/std/tuple (tuple_element_t): Define.
1912 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1914 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1916 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1919 * include/bits/stl_iterator.h (move_iterator::reference,
1920 move_iterator::operator*): Implement LWG 2106.
1921 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1923 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1925 * include/std/complex (__complex_exp, pow): Specify the template
1926 parameter in calls to std::polar, for expression templates.
1928 2014-04-10 Andreas Schwab <schwab@suse.de>
1930 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1932 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1933 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1935 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1937 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1939 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1940 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1941 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1944 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1945 Jack Howarth <howarth@bromo.med.uc.edu>
1948 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1951 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1953 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1955 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1957 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1958 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1959 * doc/xml/manual/concurrency_extensions.xml
1960 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1961 * doc/html/*: Regenerate.
1963 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1964 Jonathan Wakely <jwakely@redhat.com>
1967 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1968 string if input is not quoted.
1969 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1971 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1973 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1975 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1977 * testsuite/18_support/exception_ptr/60612-terminate.cc
1978 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1979 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1981 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1983 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1985 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1986 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1988 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1990 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1992 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1993 Fix bad s/part/chapter/ substitutions.
1994 * doc/xml/manual/io.xml (std.io): Likewise.
1995 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1996 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1998 * doc/html/*: Regenerate.
2000 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
2003 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
2004 compatible with __cxa_exception.
2005 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
2006 Fix typos in comments.
2007 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
2008 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
2010 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
2013 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
2014 Use sizeof pointer type not the element type.
2015 * testsuite/29_atomics/atomic/60658.cc: New.
2017 2014-03-24 Jakub Jelinek <jakub@redhat.com>
2019 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
2020 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
2021 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
2022 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
2023 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
2024 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
2025 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
2026 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
2027 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
2028 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
2031 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
2033 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
2035 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
2037 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
2038 to delegated constructor.
2039 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
2040 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
2043 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
2045 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
2048 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
2050 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
2053 * include/debug/functions.h (_Is_contiguous_sequence): Define.
2054 (__foreign_iterator): Accept additional iterator. Do not dispatch on
2056 (__foreign_iterator_aux2): Likewise. Add overload for iterators
2057 from different types of debug container. Use _Is_contiguous_sequence
2058 instead of is_lvalue_reference.
2059 (__foreign_iterator_aux3): Accept additional iterator. Avoid
2060 dereferencing past-the-end iterator.
2061 (__foreign_iterator_aux4): Use const value_type* instead of
2062 potentially user-defined const_pointer type.
2063 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
2064 and pass end iterator to __gnu_debug::__foreign_iterator.
2065 (__glibcxx_check_insert_range_after): Likewise.
2066 (__glibcxx_check_max_load_factor): Fix comment.
2067 * include/debug/vector (_Is_contiguous_sequence): Define partial
2069 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
2070 -std=gnu++11 option and unused header.
2071 * testsuite/23_containers/vector/debug/60587.cc: New.
2072 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
2074 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2076 * crossconfig.m4: Support spu-*-elf* targets.
2077 * configure: Regenerate.
2079 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
2082 * include/std/future (__future_base::_Task_state<>): Change
2083 constructors to template functions using perfect forwarding.
2084 (__create_task_state): Use decayed type as stored task.
2085 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
2086 * testsuite/30_threads/packaged_task/60564.cc: New.
2088 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
2090 * scripts/create_testsuite_files: Add testsuite/experimental in
2091 the list of folders to search for tests.
2093 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
2095 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
2097 2014-03-15 Tim Shen <timshen91@gmail.com>
2099 * include/bits/regex.h: Add/modify comments.
2100 * include/bits/regex_compiler.h: Likewise.
2101 * include/bits/regex_executor.h: Likewise.
2102 * include/bits/regex_executor.tcc: Likewise.
2103 * include/bits/regex_scanner.h: Likewise.
2105 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
2108 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
2109 _ZNSt12system_errorC* symbols which are not exported on any target.
2111 2014-03-12 Roland McGrath <mcgrathr@google.com>
2112 Mark Seaborn <mseaborn@google.com>
2115 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
2116 the address of a null pointer, not with a null pointer to pointer.
2117 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
2118 * testsuite/18_support/bad_exception/59392.cc: New file.
2120 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
2123 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
2125 * include/debug/map (map::operator=(map&&)): Likewise.
2126 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
2127 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
2128 * include/debug/set (set::operator=(set&&)): Likewise.
2129 * include/debug/unordered_map
2130 (unordered_map::operator=(unordered_map&&)): Likewise.
2131 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
2132 * include/debug/unordered_set
2133 (unordered_set::operator=(unordered_set&&)): Likewise.
2134 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
2135 * include/debug/vector (vector::operator=(vector&&)): Likewise.
2136 * testsuite/23_containers/forward_list/debug/60499.cc: New
2137 * testsuite/23_containers/map/debug/60499.cc: New
2138 * testsuite/23_containers/multimap/debug/60499.cc: New
2139 * testsuite/23_containers/multiset/debug/60499.cc: New
2140 * testsuite/23_containers/set/debug/60499.cc: New
2141 * testsuite/23_containers/unordered_map/debug/60499.cc: New
2142 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
2143 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
2144 * testsuite/23_containers/unordered_set/debug/60499.cc: New
2145 * testsuite/23_containers/vector/debug/60499.cc: New
2147 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
2149 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
2150 for filesystem and fundamentals TS work items.
2152 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
2155 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
2156 Adjust dg-error directives.
2158 2014-02-26 Tim Shen <timshen91@gmail.com>
2160 * include/bits/regex.tcc (match_results<>::format,
2161 regex_replace<>): Update __out after calling std::copy.
2162 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
2164 * testsuite/28_regex/match_results/format.cc: Likewise.
2166 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
2169 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
2170 allocator_type&)): Remove redundant call to _M_initialize_map.
2171 (deque::deque(const allocator_type&)): Initialize _Base with a
2172 constructor that calls _M_initialize_map.
2176 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
2178 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
2181 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
2183 Rename testsuite directory shared_mutex to shared_timed_mutex
2185 * testsuite/30_threads/shared_mutex: Moved to...
2186 * testsuite/30_threads/shared_timed_mutex: ...here
2188 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
2190 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
2191 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
2192 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
2193 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
2194 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
2195 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
2196 * testsuite/30_threads/shared_lock/requirements/
2197 explicit_instantiation.cc: Ditto.
2198 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
2199 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
2200 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
2201 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
2202 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
2203 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
2204 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
2205 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
2206 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
2207 * testsuite/30_threads/shared_mutex/requirements/
2208 standard_layout.cc: Ditto.
2209 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
2210 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
2211 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
2212 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
2213 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
2215 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2217 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
2218 execution on i?86-*-solaris2.9, remove comment.
2219 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2221 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
2223 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
2224 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
2225 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
2227 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
2229 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
2230 not use varargs when argument could be non-POD.
2231 (__alloctr_rebind_helper): Eliminate static const bool member by
2232 using true_type and false_type.
2233 (allocator_traits::__allocate_helper): Likewise.
2234 (allocator_traits::__construct_helper): Likewise.
2235 (allocator_traits::__destroy_helper): Likewise.
2236 (allocator_traits::__maxsize_helper): Likewise.
2237 (allocator_traits::__select_helper): Likewise.
2238 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
2239 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
2240 Remove redundant condition.
2241 * include/bits/stl_vector.h (vector::operator=(const vector&)):
2243 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
2244 indirection through __alloc_traits.
2245 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
2246 Eliminate static const bool members by using true_type and false_type.
2247 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
2248 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
2249 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
2251 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
2254 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
2255 (vector::_M_data_ptr): New overloaded functions to ensure empty
2256 vectors do not dereference the pointer.
2257 * testsuite/23_containers/vector/59829.cc: New.
2258 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2259 Adjust dg-error line number.
2260 * testsuite/23_containers/vector/requirements/dr438/
2261 constructor_1_neg.cc: Likewise.
2262 * testsuite/23_containers/vector/requirements/dr438/
2263 constructor_2_neg.cc: Likewise.
2264 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2268 * include/ext/array_allocator.h: Add deprecated attribute.
2271 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
2272 installation and use of python printers.
2273 * doc/xml/manual/status_cxx2011.xml: Update.
2274 * doc/html/*: Regenerate.
2276 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
2277 Kyle Lippincott <spectral@google.com>
2280 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
2281 constructor and grant friendship to weak_ptr.
2282 (weak_ptr::lock()): Use new constructor.
2283 * include/bits/shared_ptr_base.h
2284 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
2285 and define specializations.
2286 (__shared_count): Add new non-throwing constructor.
2287 (__shared_ptr): Add new non-throwing constructor and grant friendship
2289 (__weak_ptr::lock()): Use new constructor.
2290 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
2291 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
2293 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
2296 * include/bits/shared_ptr_base.h
2297 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
2300 2014-01-27 Jason Merrill <jason@redhat.com>
2305 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
2306 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
2307 (__cxa_allocate_exception): Don't set it here.
2309 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
2311 * include/bits/stl_map.h: Remove anachronistic comment.
2312 * include/bits/stl_multimap.h: Add whitespace.
2313 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
2314 -std=gnu++11 instead of -std=c++11.
2315 * testsuite/23_containers/map/operators/2.cc: Likewise.
2316 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
2317 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
2318 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
2320 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
2321 * configure: Regenerate.
2323 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2326 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
2327 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
2329 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2330 Peter A. Bigot <pab@pabigot.com>
2333 * include/experimental/string_view
2334 (copy(_CharT*, size_type, size_type) const): Correct throw string.
2335 Correct copy start location.
2337 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2338 Peter A. Bigot <pab@pabigot.com>
2341 * include/experimental/string_view (operator[](size_type) const):
2342 Fix one-off index error in debug check.
2343 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
2344 test basic_string_view at size().
2345 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
2347 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2348 Peter A. Bigot <pab@pabigot.com>
2351 * include/experimental/string_view
2352 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
2353 * testsuite/experimental/string_view/operations/substr/char/1.cc:
2354 Comment out catch of out_of_range; No terminating null
2355 in basic_string_view. Check begin == end.
2356 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
2359 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
2362 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
2363 constructor to prevent it being implicitly defined as deleted, but
2364 do not copy anything.
2365 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
2366 Define copy and move constructors similar to _Safe_sequence_base's.
2367 * testsuite/23_containers/unordered_map/59548.cc: New.
2369 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2370 Steve Ellcey <sellcey@mips.com>
2372 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
2374 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
2375 * (configure, config.h.in): Regenerate.
2376 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
2378 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
2380 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
2381 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
2384 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
2385 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
2387 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
2389 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
2390 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
2391 functions to perform moving or copying of elements from rvalue tree.
2392 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
2393 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
2394 * testsuite/23_containers/map/59872.cc: New.
2395 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
2397 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
2399 * include/bits/stl_deque.h (_Deque_impl): Move comment.
2402 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
2403 Split into separate default constructor and constructor taking
2405 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
2406 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
2408 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
2409 * include/debug/list (list::list(const _Allocator&)): Likewise.
2410 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
2412 * include/debug/multimap.h
2413 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2414 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
2416 * include/debug/multiset.h
2417 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2418 * include/debug/vector (vector::vector(const allocator_type&)):
2420 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
2421 * include/profile/list (list::list(const _Allocator&)): Likewise.
2422 * include/profile/map.h
2423 (map::map(const _Compare&, const _Allocator&)): Likewise.
2424 * include/profile/multimap.h
2425 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2426 * include/profile/set.h
2427 (set::set(const _Compare&, const _Allocator&)): Likewise.
2428 * include/profile/multiset.h
2429 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2430 * include/profile/vector (vector::vector(const _Allocator&)):
2432 * testsuite/23_containers/deque/58764.cc: New.
2433 * testsuite/23_containers/list/58764.cc: New.
2434 * testsuite/23_containers/map/58764.cc: New.
2435 * testsuite/23_containers/multimap/58764.cc: New.
2436 * testsuite/23_containers/set/58764.cc: New.
2437 * testsuite/23_containers/multiset/58764.cc: New.
2438 * testsuite/23_containers/vector/58764.cc: New.
2439 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2440 Adjust dg-error line number.
2441 * testsuite/23_containers/deque/requirements/dr438/
2442 constructor_1_neg.cc: Likewise.
2443 * testsuite/23_containers/deque/requirements/dr438/
2444 constructor_2_neg.cc: Likewise.
2445 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2447 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2449 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2451 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2453 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2455 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2457 * testsuite/23_containers/vector/requirements/dr438/
2458 constructor_1_neg.cc: Likewise.
2459 * testsuite/23_containers/vector/requirements/dr438/
2460 constructor_2_neg.cc: Likewise.
2461 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2464 PR libstdc++/58764 (again)
2465 * include/bits/stl_list.h (list): Make default constructor's exception
2466 specification conditional.
2467 * include/bits/stl_vector.h (vector): Likewise.
2468 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
2469 to default constructor.
2470 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2471 Adjust dg-error line number.
2472 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2474 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2476 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2478 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2480 * testsuite/23_containers/vector/requirements/dr438/
2481 constructor_1_neg.cc: Likewise.
2482 * testsuite/23_containers/vector/requirements/dr438/
2483 constructor_2_neg.cc: Likewise.
2484 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2487 2014-01-21 Tim Shen <timshen91@gmail.com>
2489 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
2490 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
2491 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
2493 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
2496 * include/bits/hashtable.h (__cache_default): Do not depend on
2497 whether the hash function is DefaultConstructible or CopyAssignable.
2498 (_Hashtable): Adjust static assertions.
2499 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
2500 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2501 dg-error line number.
2502 * testsuite/23_containers/unordered_set/
2503 not_default_constructible_hash_neg.cc: Remove.
2505 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
2507 * scripts/create_testsuite_files: Add testsuite/experimental in
2508 the list of folders to search for tests.
2509 * include/experimental/string_view
2510 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
2511 incompatible with constexpr qualifier.
2512 (basic_string_view<>::front()): Likewise.
2513 (basic_string_view<>::back()): Likewise.
2514 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
2515 Merge dg-options directives into one.
2516 * testsuite/experimental/string_view/element_access/char/2.cc:
2517 Likewise. Remove invalid experimental namespace scope on
2520 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
2523 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
2524 friendship to _Local_iterator_base<..., false>.
2525 (_Local_iterator_base): Give protected access to all existing members.
2526 (_Local_iterator_base::_M_curr()): New public accessor.
2527 (_Local_iterator_base::_M_get_bucket()): New public accessor.
2528 (_Local_iterator_base<..., false>::_M_init()): New function to manage
2529 the lifetime of the _Hash_code_base explicitly.
2530 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
2531 (_Local_iterator_base<..., false>): Define copy constructor and copy
2532 assignment operator that use new functions to manage _Hash_code_base.
2533 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
2534 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
2535 Use public API for _Local_iterator_base.
2536 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
2537 * include/debug/unordered_map (__debug::unordered_map::erase(),
2538 __debug::unordered_multimap::erase()): Likewise.
2539 * include/debug/unordered_set (__debug::unordered_set::erase(),
2540 __debug::unordered_multiset::erase()): Likewise.
2541 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
2543 2014-01-19 Tim Shen <timshen91@gmail.com>
2545 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
2546 Fix parse error of multiple consecutive quantifiers like "a**".
2547 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
2549 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
2551 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
2553 * include/profile/set.h (set): Implement C++11 allocator-aware
2554 container requirements.
2555 * include/profile/map.h (map): Likewise.
2556 * include/profile/multiset.h (multiset): Likewise.
2557 * include/profile/multimap.h (multimap): Likewise.
2558 * include/profile/set.h
2559 (set::operator=(const set&)): Define as default in C++11 mode.
2560 (set::operator=(set&&)): Likewise.
2561 * include/profile/map.h
2562 (map::operator=(const map&)): Likewise.
2563 (map::operator=(map&&)): Likewise.
2564 * include/profile/multiset.h
2565 (multiset::operator=(const multiset&)): Likewise.
2566 (multiset::operator=(multiset&&)): Likewise.
2567 * include/profile/multimap.h
2568 (multimap::operator=(const multimap&)): Likewise.
2569 (multimap::operator=(multimap&&)): Likewise.
2570 * include/profile/set.h (set::operator=(std::initializer_list<>)):
2571 Rely on the same operator from normal mode.
2572 * include/profile/map.h (map::operator=(std::initializer_list<>)):
2574 * include/profile/multiset.h
2575 (multiset::operator=(std::initializer_list<>)): Likewise.
2576 * include/profile/multimap.h
2577 (multimap::operator=(std::initializer_list<>)): Likewise.
2578 * include/profile/set.h (set::swap(set&)): Add noexcept
2580 * include/profile/map.h (map::swap(map&)): Likewise.
2581 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2582 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2584 2014-01-17 Tim Shen <timshen91@gmail.com>
2586 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2588 * include/bits/regex_automaton.h: Do not use std::set.
2589 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2590 _BracketMatcher<>::_M_add_collating_element(),
2591 _BracketMatcher<>::_M_add_equivalence_class(),
2592 _BracketMatcher<>::_M_make_range()): Likewise.
2593 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2595 * include/bits/regex_executor.h: Do not use std::queue.
2596 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2597 _Executor<>::_M_dfs()): Likewise.
2598 * include/std/regex: Remove <map>, <set> and <queue>.
2600 2014-01-17 Tim Shen <timshen91@gmail.com>
2602 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2603 basic_regex<>::assign()): Change __compile_nfa to accept
2605 * include/bits/regex_compiler.h: Change _Compiler's template
2606 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2607 * include/bits/regex_compiler.tcc: Likewise.
2609 2014-01-17 Tim Shen <timshen91@gmail.com>
2611 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2613 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2614 _ScannerBase from _Scanner; Change _Scanner's template argument from
2615 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2617 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2618 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2619 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2621 * include/std/regex: Add <cstring> for using strchr.
2623 2014-01-17 Tim Shen <timshen91@gmail.com>
2625 * bits/regex_automaton.tcc: Indentation fix.
2626 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2627 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2628 _BracketMatcher<>): Add bool option template parameters and
2629 specializations to make matching more efficient and space saving.
2630 * bits/regex_compiler.tcc: Likewise.
2632 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
2635 * include/bits/hashtable_policy.h: Fix some long lines.
2636 * include/bits/hashtable.h (__hash_code_base_access): Define and
2637 use it to check its _M_bucket_index noexcept qualification. Use
2639 (__access_protected_ctor): ...this.
2640 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2642 * testsuite/23_containers/unordered_set/
2643 not_default_constructible_hash_neg.cc: Likewise.
2645 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
2647 * include/debug/set.h (set): Implement C++11 allocator-aware
2648 container requirements.
2649 * include/debug/map.h (map): Likewise.
2650 * include/debug/multiset.h (multiset): Likewise.
2651 * include/debug/multimap.h (multimap): Likewise.
2652 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2653 fix implementation regarding management of safe iterators.
2654 * include/debug/map.h (map::operator=(map&&)): Likewise.
2655 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2656 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2658 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2659 Rely on the same operator from normal mode.
2660 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2662 * include/debug/multiset.h
2663 (multiset::operator=(std::initializer_list<>)): Likewise.
2664 * include/debug/multimap.h
2665 (multimap::operator=(std::initializer_list<>)): Likewise.
2666 * include/debug/set.h (set::swap(set&)): Add noexcept
2667 specification, add allocator equality check.
2668 * include/debug/map.h (map::swap(map&)): Likewise.
2669 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2670 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2672 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
2675 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2676 and stylistic improvements.
2677 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2678 and update for C++11.
2679 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2682 * doc/xml/manual/backwards_compatibility.xml
2683 (backwards.third.nocreate_noreplace): Correct and expand.
2686 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2688 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
2691 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2692 support for non-Movable types.
2695 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2697 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
2699 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2700 *this allocator instance when building temporary vector instance
2701 so that *this allocator does not get moved.
2702 * include/debug/safe_base.h
2703 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2704 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2705 move constructor from _Safe_sequence_base.
2706 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2707 safe iterators if the instance is moved.
2708 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2709 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2710 check on a vector iterator.
2711 * testsuite/23_containers/vector/allocator/move_assign.cc
2713 (test03): New, test with a non-propagating allocator.
2714 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2716 2014-01-07 Tim Shen <timshen91@gmail.com>
2718 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2719 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2720 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2721 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2722 _BracketMatcher<>::_M_add_char(),
2723 _BracketMatcher<>::_M_add_collating_element(),
2724 _BracketMatcher<>::_M_add_equivalence_class(),
2725 _BracketMatcher<>::_M_add_character_class(),
2726 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2727 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2728 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2729 to template parameter; Add cache for _BracketMatcher. Adjust
2730 declarations from here...
2731 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2732 imbuing a regex will trigger a recompilation to rebuild the cache.
2733 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2734 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2735 different template bool parameters.
2736 * include/bits/regex_executor.h: Remove unnecessary declarations.
2737 * include/std/regex: Adjust including orders.
2738 * testsuite/28_regex/traits/char/user_defined.cc: New.
2739 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2741 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2743 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2744 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2745 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2746 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2747 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2749 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2751 Update copyright years
2753 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2755 * testsuite/18_support/new_handler.cc,
2756 testsuite/18_support/terminate_handler.cc,
2757 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2758 the copyright notice.
2760 Copyright (C) 2014 Free Software Foundation, Inc.
2762 Copying and distribution of this file, with or without modification,
2763 are permitted in any medium without royalty provided the copyright
2764 notice and this notice are preserved.