1 2014-10-02 Edward Smith-Rowland <3dw4rd@verizon.net>
3 * include/bits/stl_function.h: Generic associative lookup feature
5 * testsuite/experimental/feat-lib-fund.cc: <experimental/any> is
7 * testsuite/experimental/feat-cxx14.cc: Add test for __cpp_lib_is_final.
8 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
9 * testsuite/20_util/duration/literals/range.cc: Adjust.
10 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
11 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
12 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
13 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
14 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
15 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
16 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
19 2014-10-01 François Dumont <fdumont@gcc.gnu.org>
21 * python/libstdcxx/v6/printers.py (StdDebugIteratorPrinter.to_string):
22 Adapt to latest modifications on debug iterators.
24 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
26 * include/std/type_traits: Add is_final<> type trait for C++14.
27 * testsuite/util/testsuite_tr1.h: Add
28 * testsuite/20_util/is_final/requirements/
29 explicit_instantiation.cc: New.
30 * testsuite/20_util/is_final/requirements/typedefs.cc: New.
31 * testsuite/20_util/is_final/value.cc: New.
32 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
33 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
34 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
36 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
38 Implement SD-6: SG10 Feature Test Recommendations
39 * include/bits/basic_string.h: Add __cpp_lib feature test macro.
40 * include/bits/stl_algobase.h: Ditto.
41 * include/bits/stl_function.h: Ditto.
42 * include/bits/unique_ptr.h: Ditto.
43 * include/std/chrono: Ditto.
44 * include/std/complex: Ditto.
45 * include/std/iomanip: Ditto.
46 * include/std/shared_mutex: Ditto.
47 * include/std/tuple: Ditto.
48 * include/std/type_traits: Ditto.
49 * include/std/utility: Ditto.
50 * testsuite/experimental/feat-cxx14.cc: New.
51 * testsuite/experimental/feat-lib-fund.cc: New.
52 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
53 * testsuite/20_util/duration/literals/range.cc: Adjust.
54 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
55 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
56 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
57 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
58 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
59 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
60 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
63 2014-09-30 Siva Chandra Reddy <sivachandra@google.com>
65 * python/hook.in: Only import libstdcxx.v6.
66 * python/libstdcxx/v6/__init__.py: Load printers and xmethods.
68 2014-09-30 Jonathan Wakely <jwakely@redhat.com>
70 * doc/xml/manual/status_cxx2011.xml: Update.
71 * doc/html/manual/status.html: Regenerate.
73 2014-09-30 Andreas Schwab <schwab@linux-m68k.org>
75 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: New
78 * configure.host (abi_baseline_pair): If try_cpu is generic use
79 host_cpu for the default.
81 2014-09-29 François Dumont <fdumont@gcc.gnu.org>
84 * include/debug/safe_base.h
85 (_Safe_iterator_base(const _Safe_iterator_base&)): Delete declaration.
86 (_Safe_iterator_base& operator=(const _Safe_iterator_base&)): Likewise.
87 * include/debug/safe_iterator.h (_Safe_iterator<>): Move normal iterator
88 before _Safe_iterator_base in memory. Lock before modifying the iterator
90 * include/debug/safe_local_iterator.h
91 (_Safe_local_iterator_base(const _Safe_local_iterator_base&)): Delete
93 (_Safe_local_iterator_base& operator=(const _Safe_local_iterator_base&)):
95 * include/debug/safe_unordered_base.h (_Safe_local_iterator<>): Move
96 normal iterator before _Safe_iterator_base in memory. Lock before
97 modifying the iterator in numerous places.
98 * include/debug/forward_list (_Safe_forward_list<>::_M_swap_aux): Adapt.
99 * include/debug/safe_sequence.tcc
100 (_Safe_sequence<>::_M_transfer_from_if): Adapt.
102 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
105 * doc/xml/manual/status_cxx2011.xml: Update.
106 * include/bits/stl_uninitialized.h (uninitialized_fill_n): Return
108 (__uninitialized_fill_n_a, __uninitialized_default_n_a): Likewise.
109 * include/bits/stl_vector.h (vector::_M_fill_initialize,
110 vector::_M_default_initialize): Use returned iterator.
111 * include/bits/vector.tcc (vector::_M_fill_assign,
112 vector::_M_fill_insert, vector::_M_default_append): Likewise.
113 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
114 16505.cc: Adjust return type.
115 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
118 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
120 * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.
122 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
124 * testsuite/27_io/basic_ios/conv/bool_neg.cc: New.
125 * testsuite/27_io/basic_ios/conv/bool.cc: New.
126 * testsuite/27_io/basic_ios/conv/voidptr.cc: New.
128 * testsuite/27_io/basic_ios/conv/bool_neg.cc: Add dg-do compile.
130 2014-09-25 Tim Shen <timshen@google.com>
133 * include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign,
134 basic_regex::imbue, basic_regex::getloc, basic_regex::swap): Add
135 _M_loc for basic_regex.
136 * include/bits/regex_automaton.h: Add _M_traits for _NFA.
137 * include/bits/regex_compiler.h (_Compiler::_M_get_nfa, __compile_nfa):
138 Make _Compiler::_M_nfa heap allocated.
139 * include/bits/regex_compiler.tcc (_Compiler::_Compiler): Make
140 _Compiler::_M_nfa heap allocated.
141 * include/bits/regex_executor.h (_Executor::_M_is_word):
142 Fix accessing _M_traits.
143 * include/bits/regex_executor.tcc (_Executor::_M_dfs):
144 Fix accessing _M_traits.
145 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
148 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
150 * config/abi/pre/gnu.ver: Make GLIBCXX_3.4 patterns stricter so the
151 new GLIBCXX_3.4.21 symbols don't match them.
154 * config/abi/pre/gnu.ver: Add new exports.
155 * include/bits/basic_ios.h (basic_ios::operator bool): Define.
156 * src/c++98/ios_locale.cc (basic_ios::operator void*): Instantiate.
158 2014-09-24 François Dumont <fdumont@gcc.gnu.org>
161 * include/bits/stl_tree.h (_Rb_tree_reuse_or_alloc_node<>): New.
162 (_Rb_tree_alloc_node<>): New.
163 (_Rb_tree<>::operator=(_Rb_tree<>&&)): New.
164 (_Rb_tree<>::_M_assign_unique): New.
165 (_Rb_tree<>::_M_assign_equal): New.
166 (_Rb_tree<>): Adapt to reuse allocated nodes as much as possible.
167 * include/bits/stl_map.h
168 (std::map<>::operator=(std::map<>&&)): Default implementation.
169 (std::map<>::operator=(initializer_list<>)): Adapt to use
170 _Rb_tree::_M_assign_unique.
171 * include/bits/stl_multimap.h
172 (std::multimap<>::operator=(std::multimap<>&&)): Default implementation.
173 (std::multimap<>::operator=(initializer_list<>)): Adapt to use
174 _Rb_tree::_M_assign_equal.
175 * include/bits/stl_set.h
176 (std::set<>::operator=(std::set<>&&)): Default implementation.
177 (std::set<>::operator=(initializer_list<>)): Adapt to use
178 _Rb_tree::_M_assign_unique.
179 * include/bits/stl_multiset.h
180 (std::multiset<>::operator=(std::multiset<>&&)): Default implementation.
181 (std::multiset<>::operator=(initializer_list<>)): Adapt to use
182 _Rb_tree::_M_assign_equal.
183 * testsuite/23_containers/map/allocator/copy_assign.cc (test03): New.
184 * testsuite/23_containers/map/allocator/init-list.cc: New.
185 * testsuite/23_containers/map/allocator/move_assign.cc (test03): New.
186 * testsuite/23_containers/multimap/allocator/copy_assign.cc
188 * testsuite/23_containers/multimap/allocator/init-list.cc: New.
189 * testsuite/23_containers/multimap/allocator/move_assign.cc
191 * testsuite/23_containers/multiset/allocator/copy_assign.cc
193 * testsuite/23_containers/multiset/allocator/init-list.cc: New.
194 * testsuite/23_containers/multiset/allocator/move_assign.cc
196 * testsuite/23_containers/set/allocator/copy_assign.cc (test03): New.
197 * testsuite/23_containers/set/allocator/init-list.cc: New.
198 * testsuite/23_containers/set/allocator/move_assign.cc (test03): New.
200 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
203 * src/c++11/ios.cc (ios_base::_M_swap): Fix typo.
205 2014-09-23 Jonathan Wakely <jwakely@redhat.com>
207 * config/abi/pre/gnu.ver: Adjust basic_ostream exports.
208 * include/std/istream (basic_iostream(basic_iostream&&)): Pass *this
209 to ostream constructor.
210 * include/std/ostream (basic_ostream(basic_iostream*)): Change to take
211 parameter by reference, to avoid ambiguity.
212 * testsuite/27_io/basic_ostream/cons/char/null.cc: New.
214 2014-09-22 Jason Merrill <jason@redhat.com>
216 * testsuite/Makefile.am (%/site.exp): Add @.
217 (check-DEJAGNU): Likewise.
218 * testsuite/Makefile.in: Regenerate.
220 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
222 * include/bits/stl_queue.h: Include missing header.
223 * include/bits/stl_stack.h: Likewise.
224 * testsuite/23_containers/priority_queue/requirements/
225 uses_allocator.cc: New.
226 * testsuite/23_containers/queue/requirements/uses_allocator.cc: New.
227 * testsuite/23_containers/stack/requirements/uses_allocator.cc: New.
229 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
231 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
232 * doc/xml/manual/status_cxx2014.xml: Update TS status.
233 * doc/html/manual/status.html: Regenerate.
235 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
237 * include/std/mutex (try_lock): Do not swallow exceptions.
238 * testsuite/30_threads/try_lock/4.cc: Fix test.
240 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
244 * config/abi/pre/gnu.ver: Add new exports.
245 * config/io/basic_file_stdio.h (__basic_file): Support moving and
247 * include/bits/basic_ios.h (basic_ios::move, basic_ios::swap):
249 * include/bits/ios_base.h (ios_base::_M_move, ios_base::_M_swap):
251 * include/bits/fstream.tcc (basic_filebuf): Likewise.
252 * include/bits/move.h (__exchange): Define for C++11 mode.
253 * include/ext/stdio_filebuf.h (stdio_filebuf): Support moving and
255 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf): Likewise.
256 * include/std/fstream (basic_filebuf, basic_ifstream, basic_ofstream,
257 basic_fstream): Likewise.
258 * include/std/ios: Remove whitespace.
259 * include/std/istream (basic_istream, basic_iostream): Support moving
261 * include/std/ostream (basic_ostream): Likewise.
262 * include/std/sstream (basic_stringbuf, basic_istringstream,
263 basic_ostringstream, basic_stringstream): Likewise.
264 * include/std/streambuf (basic_streambuf): Do not default copy
265 constructor and assignment on first declaration.
266 * include/std/utility (exchange): Forward to __exchange.
267 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
268 * src/c++11/Makefile.am: Add stream-related files.
269 * src/c++11/Makefile.in: Regenerate.
270 * src/c++11/ext11-inst.cc (stdio_filebuf, stdio_sync_filebuf):
271 New file for explicit instantiation definitions.
272 * src/c++11/ios.cc: Move from src/c++98 to here.
273 (ios_base::_M_move, ios_base::_M_swap): Define.
274 * src/c++11/ios-inst.cc: Move from src/c++98 to here.
275 * src/c++11/iostream-inst.cc: Likewise.
276 * src/c++11/istream-inst.cc: Likewise.
277 * src/c++11/ostream-inst.cc: Likewise.
278 * src/c++11/sstream-inst.cc: Likewise.
279 * src/c++11/streambuf-inst.cc: Likewise.
280 * src/c++98/Makefile.am: Remove stream-related files.
281 * src/c++98/Makefile.in: Regenerate.
282 * src/c++98/ext-inst.cc (stdio_filebuf): Remove explicit
284 * src/c++98/misc-inst.cc (stdio_sync_filebuf): Likewise.
285 * src/c++98/ios-inst.cc: Move to src/c++11/.
286 * src/c++98/ios.cc: Move to src/c++11/.
287 * src/c++98/iostream-inst.cc: Likewise.
288 * src/c++98/istream-inst.cc: Likewise.
289 * src/c++98/ostream-inst.cc: Likewise.
290 * src/c++98/sstream-inst.cc: Likewise.
291 * src/c++98/streambuf-inst.cc: Likewise.
292 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
293 * testsuite/27_io/basic_fstream/cons/move.cc: New.
294 * testsuite/27_io/basic_fstream/assign/1.cc: New.
295 * testsuite/27_io/basic_ifstream/cons/move.cc: New.
296 * testsuite/27_io/basic_ifstream/assign/1.cc: New.
297 * testsuite/27_io/basic_istringstream/assign/1.cc: New.
298 * testsuite/27_io/basic_istringstream/cons/move.cc: New.
299 * testsuite/27_io/basic_ofstream/cons/move.cc: New.
300 * testsuite/27_io/basic_ofstream/assign/1.cc: New.
301 * testsuite/27_io/basic_ostringstream/assign/1.cc: New.
302 * testsuite/27_io/basic_ostringstream/cons/move.cc: New.
303 * testsuite/27_io/basic_stringstream/assign/1.cc: New.
304 * testsuite/27_io/basic_stringstream/cons/move.cc: New.
306 2014-09-17 Jason Merrill <jason@redhat.com>
308 * libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
309 dynamic_cast more gracefully.
311 2014-09-15 Jakub Jelinek <jakub@redhat.com>
313 * testsuite/Makefile.am (check_p_numbers0, check_p_numbers1,
314 check_p_numbers2, check_p_numbers3, check_p_numbers4,
315 check_p_numbers5, check_p_numbers6, check_p_numbers,
316 check_p_subdirs): New variables.
317 (check_DEJAGNU_normal_targets): Use check_p_subdirs.
318 (check-DEJAGNU): Rewritten so that for parallelized
319 testing each job runs all the *.exp files, with
320 GCC_RUNTEST_PARALLELIZE_DIR set in environment.
321 * testsuite/Makefile.in: Regenerated.
322 * testsuite/lib/libstdc++.exp (gcc_parallel_test_run_p,
323 gcc_parallel_test_enable): New procedures. If
324 GCC_RUNTEST_PARALLELIZE_DIR is set in environment, override
325 runtest_file_p to invoke also gcc_parallel_test_run_p.
326 * testsuite/libstdc++-abi/abi.exp: Run all the tests serially
327 by the first parallel runtest encountering it. Fix up path
328 of the extract_symvers script.
329 * testsuite/libstdc++-xmethods/xmethods.exp: Run all the tests
330 serially by the first parallel runtest encountering it. Run
331 dg-finish even in case of error.
333 2014-09-15 Jonathan Wakely <jwakely@redhat.com>
335 * include/bits/regex.h (basic_regex): Rename _Ch_typeraits template
336 parameters to _Ch_traits.
338 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
340 * include/debug/deque (__gnu_debug::deque): Make base class C++11
343 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
346 * include/bits/stl_algo.h (random_shuffle): Prevent self-swapping.
347 * testsuite/25_algorithms/random_shuffle/59603.cc: New.
349 2014-09-11 Jonathan Wakely <jwakely@redhat.com>
352 * include/bits/regex.h (match_results::format): Remove stray template
354 * include/bits/regex_compiler.h (_RegexTranslator::_RegexTranslator):
355 Remove parameter name to avoid -Wunused-parameter warning.
356 * include/bits/regex_executor.h (_State_info::_State_info): Reorder
357 mem-initializers to avoid -Wreorder warning.
358 * include/bits/regex_executor.tcc (_Executor::_M_word_boundary):
359 Remove parameter name to avoid -Wunused-parameter warning.
360 * include/bits/regex_scanner.tcc (_Scanner::_M_advance): Add braces
361 to avoid -Wempty-body warning when not in debug mode.
363 2014-09-10 Siva Chandra Reddy <sivachandra@google.com>
365 * python/hook.in: Load the xmethods.
366 * python/Makefile.am (nobase_python_DATA): Add xmethods.py.
367 * python/Makefile.in: Regenerated.
368 * python/libstdcxx/v6/xmethods.py: New file.
369 * testsuite/lib/gdb-test.exp (gdb_version_check_xmethods): New
371 (gdb-test): New optional argument LOAD_XMETHODS. Load xmethods
372 python script if LOAD_XMETHODS is true.
373 * testsuite/libstdc++-xmethods/unique_ptr.cc: New file.
374 * testsuite/libstdc++-xmethods/vector.cc: New file.
375 * testsuite/libstdc++-xmethods/xmethods.exp: New file.
377 2014-09-10 Tony Wang <tony.wang@arm.com>
380 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
381 Return with CONTINUE_UNWINDING when the state pattern
382 contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND
384 2014-09-09 Jonathan Wakely <jwakely@redhat.com>
386 * include/bits/deque.tcc (deque::operator=(const deque&)): Handle
387 allocator propagation.
388 (deque::emplace_front, deque::emplace_back): Use allocator traits.
389 (deque::_M_push_back_aux, deque::_M_push_front_aux): Likewise.
390 (deque::_M_pop_back_aux, deque::_M_pop_front_aux): Likewise.
391 * include/bits/stl_deque.h (__deque_buf_size): Add constexpr.
392 (_Deque_iterator): Handle allocators with custom pointers.
393 (_Deque_base): Likewise. Use allocator traits.
394 (deque): Likewise. Add allocator-extended constructors.
395 (deque::_M_move_assign1, deque::_M_move_assign2): Implement move
396 assignment via tag dispatching.
397 (deque::_M_replace_map): Replace existing data.
398 * include/debug/deque (deque): Add allocator-extended constructors.
399 * include/profile/deque (deque): Likewise.
400 * testsuite/23_containers/deque/allocator/copy.cc: New.
401 * testsuite/23_containers/deque/allocator/copy_assign.cc: New.
402 * testsuite/23_containers/deque/allocator/ext_ptr.cc: New.
403 * testsuite/23_containers/deque/allocator/minimal.cc: New.
404 * testsuite/23_containers/deque/allocator/move.cc: New.
405 * testsuite/23_containers/deque/allocator/move_assign-2.cc: New.
406 * testsuite/23_containers/deque/allocator/move_assign.cc: New.
407 * testsuite/23_containers/deque/allocator/noexcept.cc: New.
408 * testsuite/23_containers/deque/allocator/swap.cc: New.
409 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
410 Adjust dg-error line number.
411 * testsuite/23_containers/deque/requirements/dr438/
412 constructor_1_neg.cc: Likewise.
413 * testsuite/23_containers/deque/requirements/dr438/
414 constructor_2_neg.cc: Likewise.
415 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
417 * testsuite/23_containers/vector/52591.cc: Test both the propagating
418 and always-equal cases.
420 2014-09-06 François Dumont <fdumont@gcc.gnu.org>
422 * include/bits/hashtable_policy.h (_Prime_rehash_policy): Constructor
424 (_Hash_code_base<>): All specialization default constructible if
426 (_Hashtable_base<>): Likewise.
427 * include/bits/hashtable.h (_Hashtable<>()): Implementation defaulted.
428 * include/bits/unordered_map.h (unordered_map<>::unordered_map()): New,
429 implementation defaulted.
430 (unordered_multimap<>::unordered_multimap()): Likewise.
431 * include/bits/unordered_set.h
432 (unordered_set<>::unordered_set()): Likewise.
433 (unordered_multiset<>::unordered_multiset()): Likewise.
434 * include/debug/unordered_map: Likewise.
435 * include/debug/unordered_set: Likewise.
436 * testsuite/23_containers/unordered_map/allocator/noexcept.cc
438 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc
440 * testsuite/23_containers/unordered_set/allocator/noexcept.cc
442 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc
445 2014-08-30 John David Anglin <danglin@gcc.gnu.org>
447 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
449 2014-08-29 Jonathan Wakely <jwakely@redhat.com>
451 * include/std/complex (complex): Define copy constructor and
452 assignment operator as defaulted. Improve Doxygen comments.
454 2014-08-28 Jonathan Wakely <jwakely@redhat.com>
456 * testsuite/ext/random/*: Fix incorrect standard references in
459 2014-08-27 Jonathan Wakely <jwakely@redhat.com>
462 * include/Makefile.am (install-freestanding-headers): Add missing
464 * include/Makefile.in: Regenerate.
466 2014-08-21 Tony Wang <tony.wang@arm.com>
468 * testsuite/18_support/nested_exception/62154.cc: Disable when the
469 target doesn't provide atomic builtins.
471 2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
472 Kai Tietz <ktietz@redhat.com>
474 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
476 * config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
478 * libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
479 #include <windows.h>.
480 (struct elt): Add dll member.
481 (run): Decrement dll refcount.
482 (__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.
484 2014-08-15 Jonathan Wakely <jwakely@redhat.com>
487 * libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
488 Rewrite to conform to C++11 requirements.
489 * testsuite/18_support/nested_exception/62154.cc: New.
491 2014-08-14 Matthias Klose <doko@ubuntu.com>
493 * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
494 Remove empty directory.
496 2014-08-14 Paolo Carlini <paolo.carlini@oracle.com>
498 * testsuite/26_numerics/random/linear_congruential_engine/
499 requirements/non_uint_neg.cc: Adjust for parser change.
500 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
501 requirements/non_uint_neg.cc: Likewise.
503 2014-08-13 Jonathan Wakely <jwakely@redhat.com>
506 * include/std/thread (thread::_M_start_thread): Declare new overload.
507 (thread::thread<_Callable, _Args...>): Call new overload with an
508 explicit reference to pthread_create.
509 * src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
510 * config/abi/pre/gnu.ver: Export new function.
512 2014-08-13 Sylvestre Ledru <sylvestre@debian.org>
514 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
516 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
518 * Fix thinko in the last commit.
520 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
523 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
524 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
526 2014-08-12 Jonathan Wakely <jwakely@redhat.com>
528 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
529 and add overloads for rvalue streams.
530 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
532 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
535 * include/bits/basic_string.h (getline): Declare inline.
537 2014-08-09 Ulrich Drepper <drepper@gmail.com>
539 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
540 (uniform_on_sphere_distribution::operator()): Use the new helper
541 class for the implementation.
543 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
544 equal.cc: Remove bogus part of comment.
545 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
546 inequal.cc: Likewise.
547 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
548 serialize.cc: Add check to verify result of serialzation and
550 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
551 generate.cc: New file.
553 2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
555 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
556 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
558 2014-08-09 François Dumont <fdumont@gcc.gnu.org>
561 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
562 _M_need_rehash to initialize the rehash policy and check if a rehash is
564 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
566 2014-08-07 Jonathan Wakely <jwakely@redhat.com>
568 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
570 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
571 Adjust dg-error line number.
572 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
574 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
576 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
579 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
581 (_State_baseV2::_M_do_set): Change parameters to pointers.
582 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
583 (_State_baseV2::__setter): Initialize _Setter with pointers.
584 (_State_baseV2::__setter(promise<void>*)): Remove overload.
585 (promise::set_value, promise::set_exception): Pass setter directly
587 (_State_baseV2::_Task_setter): Add template parameter for callable
588 type and replace std::function member with pointer to that type.
589 Change _M_result member from reference to pointer.
590 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
591 and initialize _Task_setter with pointers.
592 (__location_invariant): Specialize for _Setter and _Task_setter.
594 * include/std/future (__location_invariant): Move specializations
595 after preprocessor condition.
597 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
600 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
602 2014-08-01 Zifei Tong <zifeitong@gmail.com>
604 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
605 _GLIBCXX_ prefix to macro.
607 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
609 * python/libstdcxx/v6/printers.py
610 (SingleObjContainerPrinter._contained): Use compatibility mixin.
612 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
614 * testsuite/util/testsuite_allocator.h
615 (tracker_allocator_counter::allocate): Remove new invocation, only
617 (tracker_allocator_counter::deallocate): Remove delete invocation, only
619 (check_inconsistent_alloc_value_type): New.
620 (tracker_allocator): Transform as a facade for any allocator type.
621 (uneq_allocator): Likewise.
622 (propagating_allocator): Likewise.
623 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
624 explicitly non propagating allocator.
625 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
626 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
627 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
628 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
629 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
631 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
633 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
635 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
637 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
639 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
642 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
643 const allocator_type&)): Pass non-const allocator to
645 * testsuite/ext/rope/61946.cc: New.
648 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
649 disambiguate unary constructors.
650 (_Tuple_impl): Pass allocator_arg_t arguments.
651 * testsuite/20_util/tuple/61947.cc: New.
652 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
654 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
656 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
657 * include/bits/random.h (_Adaptor): static_assert for non floating-point
659 * include/bits/random.tcc (generate_canonical): Ditto.
660 * include/ext/random.tcc (hypergeometric_distribution::operator()):
661 Use double as a rng result type.
662 * testsuite/26_numerics/random/pr60037-neg.cc: New.
663 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
665 2014-07-25 Uros Bizjak <ubizjak@gmail.com>
667 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
669 2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
671 * include/experimental/string_view: Make the literal operators
672 constexpr like the ctors they call.
674 2014-07-23 H.J. Lu <hongjiu.lu@intel.com>
676 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
678 2014-07-23 Jonathan Wakely <jwakely@redhat.com>
680 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
681 to string instead of using gdb.Type.name attribute.
683 2014-07-19 Jonathan Wakely <jwakely@redhat.com>
685 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
688 2014-07-18 Jonathan Wakely <jwakely@redhat.com>
691 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
693 (SingleObjContainerPrinter): Check if type printers are in use.
695 2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
697 * include/ext/random: Minor formatting and cosmetic tweaks.
698 (uniform_on_sphere_distribution<>::operator==
699 (const uniform_on_sphere_distribution&,
700 const uniform_on_sphere_distribution&)): Compare the _M_nds.
701 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
702 (operator!=(const uniform_on_sphere_distribution&,
703 const uniform_on_sphere_distribution&)): Adjust.
704 * include/ext/random.tcc: Minor cosmetc tweaks.
706 2014-07-15 Jonathan Wakely <jwakely@redhat.com>
708 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
709 printer for class templates.
710 (register_type_printers): Use TemplateTypePrinter for containers
711 and other class templates with default template arguments.
712 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
714 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
715 base class for experimental::any and experimental::optional printers.
716 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
717 New printers for Fundamentals TS types.
718 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
720 2014-07-15 Tim Shen <timshen@google.com>
723 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
724 Clear match queue for next use.
725 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
727 2014-07-14 Ulrich Drepper <drepper@gmail.com>
729 * include/ext/random.tcc: Unfortunately more fixes for
730 operator>> and operator<< for uniform_on_sphere_distribution.
732 2014-07-13 Ulrich Drepper <drepper@gmail.com>
734 * include/ext/random.tcc: Fix operator>> and operator<< for
735 uniform_on_sphere_distribution.
737 2014-07-12 Ulrich Drepper <drepper@gmail.com>
739 * include/ext/random: Add uniform_on_sphere_distribution definition.
740 * include/ext/random.tcc: Add out-of-band member function definitions
741 for uniform_on_sphere_distribution.
742 * testsuite/ext/random/uniform_on_sphere_distribution/
743 cons/default.cc: New file.
744 * testsuite/ext/random/uniform_on_sphere_distribution/
745 operators/equal.cc: New file.
746 * testsuite/ext/random/uniform_on_sphere_distribution/
747 operators/inequal.cc: New file.
748 * testsuite/ext/random/uniform_on_sphere_distribution/
749 operators/serialize.cc: New file.
751 2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
753 Add the logistic_distribution as an extension.
754 * include/ext/random: Add the logistic_distribution.
755 * include/ext/random.tcc: Add the logistic_distribution.
756 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
757 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
758 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
760 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
761 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
762 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
765 2014-07-11 Samuel Bronson <naesten@gmail.com>
767 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
768 instead of insisting that GCC understand -fdiagnostics-color=never
770 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
773 2014-07-11 Samuel Bronson <naesten@gmail.com>
774 Matthias Klose <doko@ubuntu.com>
777 * python/libstdcxx/v6/printers.py: Port to Python 2+3
778 (imap): New compat function.
780 (Iterator): New mixin to allow writing iterators in Python 3 style
781 regardless of which version we're running on.
782 [Python3] (long) New compat alias for "int".
783 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
785 2014-07-10 Jonathan Wakely <jwakely@redhat.com>
787 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
788 tuple members to simplify pretty printing.
789 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
791 * testsuite/experimental/any/cons/4.cc: New.
793 2014-07-09 Jason Merrill <jason@redhat.com>
796 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
797 * libsupc++/tinfo.h: Not here.
799 2014-07-08 Jonathan Wakely <jwakely@redhat.com>
801 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
803 * include/experimental/any: Remove unused header.
804 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
805 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
806 * testsuite/util/testsuite_regex.h: Move include guard.
808 2014-07-01 Tim Shen <timshen@google.com>
812 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
813 a NFA state limit. If it's exceeded, regex_constants::error_space
815 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
816 map (which is sparse) instead of vector. This reduce n times clones'
817 cost from O(n^2) to O(n).
818 * include/std/regex: Add map dependency.
819 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
822 2014-07-01 Tim Shen <timshen@google.com>
825 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
826 not just regex containing back-references.
827 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
828 exchange _M_next and _M_alt for alternative operator,
829 making matching from left to right.
830 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
831 Add position tracking fom DFS.
832 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
833 _Executor<>::_M_dfs): Likewise.
834 * include/bits/regex_scanner.h: Remove unused enum entry.
835 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
838 2014-06-30 Jason Merrill <jason@redhat.com>
840 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
843 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
846 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
847 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
850 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
852 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
854 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
856 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
858 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
861 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
863 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
864 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
865 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
867 * include/ext/alloc_traits.h: Fix comment.
869 * include/Makefile.am: Add new header.
870 * include/Makefile.in: Regenerate.
871 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
872 New RAII utilities for working with allocators.
873 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
874 __allocator_type typedef and use new __allocated_ptr type.
875 (_Sp_counted_ptr_inplace): Likewise.
876 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
877 __allocate_guarded to to simplify exception handling.
878 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
879 * include/std/future (_Result_alloc::_M_destroy): Likewise.
880 (_Result_alloc::_S_allocate_result): Likewise.
881 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
882 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
883 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
884 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
886 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
888 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
890 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
891 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
893 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
895 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
896 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
897 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
898 Remove unused typedef.
899 (time_get::do_get_monthname): Likewise.
900 * include/bits/stl_tree.h: Add system_header pragma.
901 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
902 redundant const-qualifier.
903 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
904 instead of _GLIBCXX_USE_CONSTEXPR.
906 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
908 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
909 * include/std/chrono (_Checked_integral_constant): Allow zero.
910 * testsuite/20_util/duration/literals/values.cc: Test non-positive
911 values and digit separators.
912 * include/experimental/any
915 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
916 apply the signed specifier to wchar_t.
917 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
918 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
919 cv-qualifier and size.
920 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
923 * include/experimental/any (any_v1): Rename namespace to
924 fundamentals_v1. Change string returned by bad_any_cast::what().
925 * include/experimental/optional (fundamentals_v1): Add namespace.
926 * include/experimental/string_view (fundamentals_v1): Likewise.
927 * testsuite/experimental/any/typedefs.cc: New.
928 * testsuite/experimental/optional/typedefs.cc: New.
929 * testsuite/experimental/string_view/typedefs.cc: New.
931 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
932 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
935 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
937 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
939 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
940 * include/Makefile.am: Add new header.
941 * include/Makefile.in: Regenerate.
942 * include/experimental/any: New.
943 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
945 * testsuite/experimental/any/assign/1.cc: New.
946 * testsuite/experimental/any/assign/2.cc: New.
947 * testsuite/experimental/any/cons/1.cc: New.
948 * testsuite/experimental/any/cons/2.cc: New.
949 * testsuite/experimental/any/cons/3.cc: New.
950 * testsuite/experimental/any/misc/any_cast.cc: New.
951 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
952 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
953 * testsuite/experimental/any/misc/swap.cc: New.
954 * testsuite/experimental/any/modifiers/1.cc: New.
955 * testsuite/experimental/any/observers/type.cc: New.
957 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
958 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
960 * include/bits/shared_ptr.h (shared_ptr): Likewise.
961 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
963 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
965 * include/parallel/list_partition.h (__parallel::list_partition):
967 * include/std/iomanip (quoted): Likewise.
968 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
970 * doc/xml/api.xml: Link to more recent API docs.
971 * include/bits/allocator.h: Fix link in doxygen comment.
972 * include/bits/char_traits.h: Likewise.
973 * include/bits/ios_base.h: Likewise.
974 * include/bits/stl_map.h: Likewise.
975 * include/bits/stl_multimap.h: Likewise.
976 * include/bits/stl_multiset.h: Likewise.
977 * include/bits/stl_set.h: Likewise.
978 * include/bits/unordered_map.h: Likewise.
979 * include/bits/unordered_set.h: Likewise.
980 * include/ext/mt_allocator.h: Likewise.
981 * include/std/fstream: Likewise.
982 * include/std/iosfwd: Likewise.
983 * include/std/ostream: Likewise.
984 * include/std/sstream: Likewise.
985 * include/std/streambuf: Likewise.
986 * doc/html/*: Regenerate.
988 * include/experimental/any (any_cast): Combine duplicate doxygen
990 * include/experimental/string_view (basic_string_view): Update
992 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
993 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
994 (dynamic_bitset): Improve Doxygen comments.
995 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
998 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
1000 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
1001 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
1003 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
1006 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
1007 (bin_search_tree_traits): Do not redeclare template-parameters.
1008 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
1010 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
1012 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
1013 parameter for DocBook HTML generation.
1014 * doc/Makefile.in: Regenerate.
1015 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
1016 * doc/xml/faq.xml: Update content and improve formatting.
1017 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
1018 * doc/xml/manual/allocator.xml: Add stable ID attribute.
1019 * doc/xml/manual/bitmap_allocator.xml: Likewise.
1020 * doc/xml/manual/build_hacking.xml: Likewise.
1021 * doc/xml/manual/codecvt.xml: Change URL.
1022 * doc/xml/manual/ctype.xml: Add stable ID attribute.
1023 * doc/xml/manual/debug_mode.xml: Likewise.
1024 * doc/xml/manual/documentation_hacking.xml: Likewise.
1025 * doc/xml/manual/evolution.xml: Likewise.
1026 * doc/xml/manual/extensions.xml: Likewise.
1027 * doc/xml/manual/locale.xml: Likewise.
1028 * doc/xml/manual/messages.xml: Make section id consistent, improve
1030 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
1031 * doc/xml/manual/profile_mode.xml: Likewise.
1032 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
1033 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
1034 * doc/xml/manual/status_cxx2011.xml: Likewise.
1035 * doc/xml/manual/status_cxx2014.xml: Likewise.
1036 * doc/xml/manual/status_cxxtr1.xml: Likewise.
1037 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
1038 * doc/xml/manual/using.xml: Likewise.
1039 * doc/html/*: Regenerate.
1041 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
1043 * include/tr1/beta_function.tcc: Fix spelling of include guard in
1046 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
1048 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
1050 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
1052 DR 2344 - std::quoted doesn't respect padding
1053 * include/std/iomanip: Allow for padding in quoted inserters.
1054 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
1055 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
1057 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
1059 * testsuite/23_containers/map/operators/1.cc: Simplify test.
1061 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
1063 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
1065 * doc/xml/manual/backwards_compatibility.xml
1066 (backwards.second.stringstreams): Likewise.
1067 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
1069 * doc/xml/manual/containers.xml (associative.bitset.type_string):
1070 Replace <quote> in code example.
1071 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
1072 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
1073 fix typos, improve markup.
1074 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
1075 <emphasis> with <replaceable>.
1076 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
1077 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
1078 and remove newlines in string literal.
1080 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
1084 * testsuite/20_util/is_assignable/value.cc: Update.
1086 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
1088 * include/std/condition_variable (condition_variable_any::_Unlock): Do
1089 not swallow __forced_unwind.
1090 * include/std/future (__future_base::_Task_setter): Likewise.
1091 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
1092 promise and rethrow.
1093 * include/std/mutex (try_lock): Likewise.
1094 * testsuite/30_threads/async/forced_unwind.cc: New.
1095 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
1097 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
1098 members to avoid wasted space when not using a cache.
1099 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
1100 * include/bits/regex_compiler.tcc
1101 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
1103 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
1104 New enumeration type to indicate match mode.
1105 (__detail::_Executor::_State_info): New type holding members only
1106 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
1108 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
1109 Replace template parameter with run-time function parameter.
1110 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
1111 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
1112 implement DFS and BFS mode.
1113 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
1114 Split implementation into ...
1115 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
1116 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
1117 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
1118 argument instead of template argument.
1119 (__detail::_Executor::_M_dfs): Likewise.
1120 * include/bits/regex_scanner.tcc: Fix typos in comments.
1121 * testsuite/performance/28_regex/range.cc: New.
1123 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
1124 Jonathan Wakely <jwakely@redhat.com>
1126 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
1128 (aligned_union): New struct (C++11).
1129 (aligned_union_t): New type alias (C++14).
1130 * doc/xml/manual/status_cxx2011.xml: Update.
1131 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
1132 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1135 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
1138 * include/experimental/string_view (operator basic_string): Correct
1140 (to_string): Replace with member function.
1141 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
1142 allow _M_str to be null.
1143 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
1144 default constructor semantics.
1145 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
1146 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
1147 copyright dates. Remove unused header.
1148 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
1150 * testsuite/experimental/string_view/operations/data/char/1.cc:
1151 Fix copyright dates. Adjust to new default constructor semantics.
1152 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
1154 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
1156 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
1157 (__uses_allocator_arg): Remove unused type.
1158 (__uses_alloc0): Turn into a trivial type.
1159 (__uses_alloc): Add missing template parameter in primary template.
1160 (__uses_alloc_impl): Rename to __uses_alloc_t.
1162 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
1164 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
1165 work with previous versions of Tcl.
1167 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
1168 Benjamin's old email address.
1170 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
1171 Paolo's address too.
1173 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
1175 * include/tr2/bool_set: Use UTF-8 for accented characters.
1176 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
1177 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
1178 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
1180 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
1183 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
1185 (_State_base::_M_dot): Likewise.
1187 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
1189 * include/profile/map.h: Fix typo in comment; minor formatting fix.
1190 * include/profile/multimap.h: Likewise.
1191 * include/profile/set.h: Likewise.
1192 * include/profile/multiset.h: Likewise.
1194 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
1196 * include/profile/array: Clean useless white chars.
1197 * include/profile/base.h: Likewise.
1198 * include/profile/iterator_tracker.h: Likewise.
1199 * include/profile/bitset: Code cleanup and remove not instrumented code.
1200 * include/profile/deque: Likewise.
1201 * include/profile/forward_list: Likewise.
1202 * include/profile/list (std::__profile::_List_profile<>): New.
1203 (std::__profile::list<>): Inherit from latter and adapt.
1204 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
1205 advise to match any ordered to unordered container conversion.
1206 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
1208 * include/Makefile.am: Add latter.
1209 * include/Makefile.in: Regenerate.
1210 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
1211 remove not instrumented code.
1212 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
1213 * include/profile/set.h (std::__profile::set<>): Likewise.
1214 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
1215 * include/profile/unordered_base.h: Add some line feed.
1216 * include/profile/unordered_map: Clean useless white chars and replace
1218 * include/profile/unordered_set: Likewise.
1219 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
1220 (std::__profile::_Vector_profile_post<>): New.
1221 (std::__profile::vector<>): Inherit from latter and adapt.
1223 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
1226 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
1227 dragonfly target selector to all tests that run on freebsd.
1229 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
1231 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
1232 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
1234 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
1236 * testsuite/30_threads/call_once/60497.cc: Likewise.
1237 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
1238 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
1239 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
1240 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
1241 * testsuite/30_threads/promise/60966.cc: Likewise.
1242 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
1243 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
1244 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
1245 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
1246 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
1247 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
1248 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
1249 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
1250 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
1251 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
1252 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
1253 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
1254 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
1255 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
1256 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
1257 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
1258 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
1260 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
1263 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
1265 * testsuite/23_containers/unordered_set/61143.cc: New.
1266 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
1268 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
1271 * include/std/type_traits: Move include outside namespace std.
1272 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
1273 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1274 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1277 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
1280 2014-05-21 John Marino <gnugcc@marino.st>
1282 * acinclude.m4 (*-*-dragonfly*): New target.
1283 * configure: Regenerate.
1284 * configure.host (*-*-dragonfly*): New target.
1285 * config/locale/dragonfly/c_locale.cc: New.
1286 * config/locale/dragonfly/ctype_members.cc: New.
1287 * config/os/bsd/dragonfly/ctype_base.h: New.
1288 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
1289 * config/os/bsd/dragonfly/ctype_inline.h: New.
1290 * config/os/bsd/dragonfly/os_defines.h: New.
1292 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
1294 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
1295 libstdc++.exp imports those flags via getenv.
1296 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
1297 CXXFLAGS contains a '-O' flag.
1299 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1303 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1306 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1307 and add unwind directives.
1309 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
1311 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
1313 2014-05-20 Tim Shen <timshen91@gmail.com>
1316 * include/bits/regex_compiler.h
1317 (_BracketMatcher<>::_M_add_character_class): Add negative character
1319 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
1321 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
1324 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
1326 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
1328 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
1330 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
1331 * libsupc++/new_opnt.cc: Likewise.
1333 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
1336 * include/std/future (__future_base::_State_baseV2::_M_set_result):
1337 Pass lock into _M_do_set and hold it until the function returns.
1338 Signal condition variable after call_once completes.
1339 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
1341 * testsuite/30_threads/promise/60966.cc: New.
1343 2014-05-16 Iain Sandoe <iain@codesourcery.com>
1344 Sandra Loosemore <sandra@codesourcery.com>
1346 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
1347 until after checking that the test is eligible to be run.
1349 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1351 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
1352 test for 32-bit target.
1353 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1355 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
1358 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1361 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1362 and add unwind directives.
1364 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1366 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
1368 * include/std/chrono (chrono_literals::__select_type::_Select_type):
1370 (chrono_literals::_Checked_integral_constant): Define.
1371 Simplify UDL operator templates and check for overflow.
1372 * testsuite/20_util/duration/literals/range.cc: New.
1374 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
1375 Jonathan Wakely <jwakely@redhat.com>
1378 * include/bits/parse_numbers.h: Use integral_constant to remove
1379 duplication and simplify.
1380 * testsuite/20_util/duration/literals/61166.cc: New.
1382 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1385 * include/std/type_traits (__make_unsigned, __make_signed): Define
1386 specializations for wchar_t, char16_t and char32_t.
1387 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
1388 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
1389 test for make_unsigned<volatile wchar_t>.
1390 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1392 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1394 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1396 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1399 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1401 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
1402 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
1403 * include/std/utility (tuple_size, tuple_element): Likewise.
1404 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1405 Adjust dg-error line number.
1407 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
1409 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
1410 (__tuple_element_t): Define.
1411 (tuple_element): Use __tuple_element_t.
1412 (__cv_tuple_size): Define.
1413 (tuple_size<cv _Tp>): Use __cv_tuple_size.
1414 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
1415 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
1416 (__tuple_compare): Remove size check, re-order parameters.
1417 (operator==, operator<): Use static_assert to check requirements.
1418 * include/std/functional (__volget): use __tuple_element_t.
1419 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
1420 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
1422 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
1425 * include/std/tuple (get, __tuple_compare): Qualify more calls to
1426 prevent ADL. Cast comparison results to bool.
1427 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
1428 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
1431 * include/debug/array (get): Qualify call to other get overload.
1432 * include/profile/array (get): Likewise.
1433 * include/std/array (get): Likewise.
1434 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
1435 * include/std/mutex (unique_lock, call_once): Use __addressof.
1436 (__unlock_impl): Remove unused template.
1437 (__try_to_lock): Declare inline.
1438 (__try_lock_impl::__do_try_lock): Qualify function calls.
1439 (lock): Avoid narrowing conversion.
1440 * testsuite/20_util/bind/60497.cc: New.
1441 * testsuite/23_containers/array/element_access/60497.cc: New.
1442 * testsuite/30_threads/call_once/60497.cc: New.
1443 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
1445 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
1447 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
1448 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
1449 * acinclude.m4 (libtool_VERSION): Bump.
1450 * configure: Regenerate.
1451 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
1452 * testsuite/28_regex/regex_error/base.cc: New.
1454 2014-05-08 Joshua Gay <jgay@gnu.org>
1457 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
1458 source" with "free software".
1459 * doc/html/faq.html: Likewise.
1461 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
1464 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
1466 (operator=(const ios_base&)): Likewise.
1467 * include/std/streambuf: Remove trailing whitespace.
1468 (basic_streambuf(const basic_streambuf&)): Fix initializer for
1469 _M_out_end. Define as defaulted for C++11.
1470 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
1471 (swap(basic_streambuf&)): Define for C++11.
1472 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
1475 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
1477 * include/std/iostream: Fix URL in comment.
1478 * src/c++98/ios_init.cc: Fix path in comment.
1480 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
1482 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
1483 * configure: Regenerate.
1485 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
1488 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
1489 comparison function.
1490 * testsuite/23_containers/set/cons/61023.cc: New.
1493 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
1495 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
1496 arithmetic to obtain a mutable iterator from const_iterator.
1497 * include/bits/vector.tcc (vector::insert): Likewise.
1498 * include/debug/vector (vector::erase): Likewise.
1499 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1500 Adjust dg-error line number.
1501 * testsuite/23_containers/vector/requirements/dr438/
1502 constructor_1_neg.cc: Likewise.
1503 * testsuite/23_containers/vector/requirements/dr438/
1504 constructor_2_neg.cc: Likewise.
1505 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1508 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
1510 * include/Makefile.in: Regenerate.
1512 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
1514 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1515 parameter to pass the 2 instances to check allocator equality.
1516 * include/debug/safe_container.h: New, define _Safe_container<>.
1517 * include/Makefile.am: Add previous.
1518 * include/debug/deque (std::__debug::deque<>): Inherit
1519 _Safe_container<>. Use default implementation for all special
1521 * include/debug/forward_list (std::__debug::forward_list<>):
1523 * include/debug/list (std::__debug::list<>): Likewise.
1524 * include/debug/map.h (std::__debug::map<>): Likewise.
1525 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1526 * include/debug/set.h (std::__debug::set<>): Likewise.
1527 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1528 * include/debug/string (std::__debug::basic_string<>): Likewise.
1529 * include/debug/unordered_map
1530 (std::__debug::unordered_map<>): Likewise.
1531 (std::__debug::unordered_multimap<>): Likewise.
1532 * include/debug/unordered_set
1533 (std::__debug::unordered_set<>): Likewise.
1534 (std::__debug::unordered_multiset<>): Likewise.
1535 * include/debug/vector (std::__debug::vector<>): Likewise.
1536 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1538 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1539 (~_Safe_sequence_base()): Add noexcept.
1540 * include/debug/safe_sequence.h
1541 (std::__debug::_Safe_node_sequence<>): New.
1542 * include/debug/safe_unordered_base.h
1543 (_Safe_unordered_container_base()): Add noexcept.
1544 (~_Safe_unordered_container_base()): Likewise.
1545 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1546 * include/debug/safe_unordered_container.h:
1547 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1548 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1549 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1551 * testsuite/util/debug/checks.h (check_construct1): Just implement
1552 an invalid constructor invocation and no other operations
1553 potentially not supported by some types of container.
1554 (check_construct2): Likewise.
1555 (check_construct3): Likewise.
1556 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1557 check on iterators to make sure they are correctly moved in debug
1559 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1561 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1562 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1563 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1564 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1566 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1567 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1569 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1570 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1571 * testsuite/23_containers/unordered_map/allocator/move.cc:
1573 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1575 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1577 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1579 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1581 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1583 * testsuite/23_containers/unordered_set/allocator/move.cc:
1585 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1587 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1589 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1591 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1593 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1595 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1597 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1598 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1599 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1600 * testsuite/23_containers/map/debug/move_neg.cc: New.
1601 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1602 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1603 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1604 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1605 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1606 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1607 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1608 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1609 * testsuite/23_containers/set/debug/move_neg.cc: New.
1610 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1612 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1614 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1615 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1617 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1619 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1621 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1623 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1625 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1627 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1629 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1631 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1632 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1634 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1636 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1637 (CXXABI_1.3.9): Remove __float128 symbols.
1639 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
1642 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1643 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1644 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1645 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1647 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1650 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1651 Check the correct type in the static assertion.
1652 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1654 2014-04-27 Tim Shen <timshen91@gmail.com>
1656 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1657 Add _S_opcode_repeat support to distingush a loop from
1658 _S_opcode_alternative.
1659 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1660 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1661 _StateSeq<>::_M_clone): Likewise.
1662 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1664 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1665 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1666 Uglify local variable __i.
1667 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1668 Use size_t instead of int to compare with vector::size().
1670 2014-04-27 Tim Shen <timshen91@gmail.com>
1672 * include/bits/regex_executor.h: Add _M_rep_count to track how
1673 many times this repeat node are visited.
1674 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1675 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1678 2014-04-27 Tim Shen <timshen91@gmail.com>
1680 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1681 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1682 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1683 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1684 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1685 Adjust debug NFA dump.
1687 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1690 * include/experimental/optional (operator!=): Implement in terms of
1692 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1693 * testsuite/experimental/optional/relops/2.cc: Likewise.
1694 * testsuite/experimental/optional/relops/3.cc: Likewise.
1695 * testsuite/experimental/optional/relops/4.cc: Likewise.
1696 * testsuite/experimental/optional/relops/5.cc: Likewise.
1697 * testsuite/experimental/optional/relops/6.cc: Likewise.
1699 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
1702 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1703 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1706 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
1708 * testsuite/util/testsuite_abi.cc (check_version): Update for
1711 2014-04-24 Tim Shen <timshen91@gmail.com>
1713 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1714 Do _M_alt before _M_next.
1715 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1717 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
1720 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1721 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1722 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1724 2014-04-24 Andreas Schwab <schwab@suse.de>
1726 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1727 new CXXABI_1.3.9 symbols.
1729 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1731 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1732 (CXXABI_1.3.9): New version.
1734 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
1737 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1738 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1739 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1741 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1743 * configure.host: Remove solaris2.9 handling.
1744 Change os_include_dir to os/solaris/solaris2.10.
1745 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1746 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1747 * configure: Regenerate.
1748 * config/abi/post/solaris2.9: Remove.
1749 * config/os/solaris/solaris2.9: Rename to ...
1750 * config/os/solaris/solaris2.10: ... this.
1751 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1754 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1755 Remove Solaris 9 reference.
1756 * doc/html/manual/configure.html: Regenerate.
1758 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1759 Remove *-*-solaris2.9 xfail.
1760 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1763 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1766 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
1768 * include/std/functional (__is_location_invariant): Use __or_ helper.
1770 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
1773 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1776 * include/std/atomic (atomic<_Tp>): Add static assertion.
1777 * testsuite/29_atomics/atomic/60695.cc: New.
1780 * include/std/functional (function::_Callable): Exclude own type
1781 from the callable checks.
1782 * testsuite/20_util/function/60594.cc: New.
1784 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1785 const to constexpr member functions.
1787 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1788 delegating constructor.
1789 * include/bits/shared_ptr_base.h
1790 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1792 * include/std/atomic: Uglify parameter names.
1795 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1796 1.cc: Fix invalid explicit instantiations with unqualified names.
1797 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1799 * testsuite/20_util/tuple/53648.cc: Likweise.
1800 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1802 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1804 * testsuite/23_containers/unordered_map/requirements/
1805 debug_container.cc: Likewise.
1806 * testsuite/23_containers/unordered_map/requirements/
1807 explicit_instantiation/3.cc: Likewise.
1808 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1810 * testsuite/23_containers/unordered_multimap/requirements/
1811 explicit_instantiation/3.cc: Likewise.
1812 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1814 * testsuite/23_containers/unordered_multiset/requirements/
1815 explicit_instantiation/3.cc: Likewise.
1816 * testsuite/23_containers/unordered_set/requirements/
1817 debug_container.cc: Likewise.
1818 * testsuite/23_containers/unordered_set/requirements/
1819 explicit_instantiation/3.cc: Likewise.
1821 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1822 not use uninitialized members in mem-initializers.
1823 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1824 * testsuite/util/testsuite_common_types.h: Update comment.
1826 * include/experimental/string_view: Fix inconsistent exception specs.
1828 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1829 Remove name of unused parameter.
1831 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
1833 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1834 _Vector_base::_M_allocate): NullablePointer requirements do not
1835 include initialization from literal zero, use value-initialization.
1836 * include/bits/vector.tcc (vector::_M_insert_aux,
1837 vector::_M_explace_back_aux): Likewise for assignment.
1839 * include/bits/allocator.h (operator==, operator!=): Add exception
1843 * include/std/tuple (get): Qualify calls to prevent ADL.
1844 * testsuite/20_util/tuple/60497.cc: New.
1846 * include/std/tuple (tuple_element_t): Define.
1847 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1849 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1851 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1854 * include/bits/stl_iterator.h (move_iterator::reference,
1855 move_iterator::operator*): Implement LWG 2106.
1856 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1858 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1860 * include/std/complex (__complex_exp, pow): Specify the template
1861 parameter in calls to std::polar, for expression templates.
1863 2014-04-10 Andreas Schwab <schwab@suse.de>
1865 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1867 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1868 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1870 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1872 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1874 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1875 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1876 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1879 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1880 Jack Howarth <howarth@bromo.med.uc.edu>
1883 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1886 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1888 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1890 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1892 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1893 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1894 * doc/xml/manual/concurrency_extensions.xml
1895 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1896 * doc/html/*: Regenerate.
1898 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1899 Jonathan Wakely <jwakely@redhat.com>
1902 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1903 string if input is not quoted.
1904 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1906 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1908 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1910 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1912 * testsuite/18_support/exception_ptr/60612-terminate.cc
1913 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1914 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1916 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1918 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1920 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1921 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1923 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1925 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1927 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1928 Fix bad s/part/chapter/ substitutions.
1929 * doc/xml/manual/io.xml (std.io): Likewise.
1930 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1931 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1933 * doc/html/*: Regenerate.
1935 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1938 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1939 compatible with __cxa_exception.
1940 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1941 Fix typos in comments.
1942 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1943 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1945 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1948 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1949 Use sizeof pointer type not the element type.
1950 * testsuite/29_atomics/atomic/60658.cc: New.
1952 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1954 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1955 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1956 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1957 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1958 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1959 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1960 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1961 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1962 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1963 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1966 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1968 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1970 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1972 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1973 to delegated constructor.
1974 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1975 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1978 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1980 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1983 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1985 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1988 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1989 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1991 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1992 from different types of debug container. Use _Is_contiguous_sequence
1993 instead of is_lvalue_reference.
1994 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1995 dereferencing past-the-end iterator.
1996 (__foreign_iterator_aux4): Use const value_type* instead of
1997 potentially user-defined const_pointer type.
1998 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1999 and pass end iterator to __gnu_debug::__foreign_iterator.
2000 (__glibcxx_check_insert_range_after): Likewise.
2001 (__glibcxx_check_max_load_factor): Fix comment.
2002 * include/debug/vector (_Is_contiguous_sequence): Define partial
2004 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
2005 -std=gnu++11 option and unused header.
2006 * testsuite/23_containers/vector/debug/60587.cc: New.
2007 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
2009 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2011 * crossconfig.m4: Support spu-*-elf* targets.
2012 * configure: Regenerate.
2014 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
2017 * include/std/future (__future_base::_Task_state<>): Change
2018 constructors to template functions using perfect forwarding.
2019 (__create_task_state): Use decayed type as stored task.
2020 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
2021 * testsuite/30_threads/packaged_task/60564.cc: New.
2023 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
2025 * scripts/create_testsuite_files: Add testsuite/experimental in
2026 the list of folders to search for tests.
2028 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
2030 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
2032 2014-03-15 Tim Shen <timshen91@gmail.com>
2034 * include/bits/regex.h: Add/modify comments.
2035 * include/bits/regex_compiler.h: Likewise.
2036 * include/bits/regex_executor.h: Likewise.
2037 * include/bits/regex_executor.tcc: Likewise.
2038 * include/bits/regex_scanner.h: Likewise.
2040 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
2043 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
2044 _ZNSt12system_errorC* symbols which are not exported on any target.
2046 2014-03-12 Roland McGrath <mcgrathr@google.com>
2047 Mark Seaborn <mseaborn@google.com>
2050 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
2051 the address of a null pointer, not with a null pointer to pointer.
2052 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
2053 * testsuite/18_support/bad_exception/59392.cc: New file.
2055 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
2058 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
2060 * include/debug/map (map::operator=(map&&)): Likewise.
2061 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
2062 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
2063 * include/debug/set (set::operator=(set&&)): Likewise.
2064 * include/debug/unordered_map
2065 (unordered_map::operator=(unordered_map&&)): Likewise.
2066 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
2067 * include/debug/unordered_set
2068 (unordered_set::operator=(unordered_set&&)): Likewise.
2069 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
2070 * include/debug/vector (vector::operator=(vector&&)): Likewise.
2071 * testsuite/23_containers/forward_list/debug/60499.cc: New
2072 * testsuite/23_containers/map/debug/60499.cc: New
2073 * testsuite/23_containers/multimap/debug/60499.cc: New
2074 * testsuite/23_containers/multiset/debug/60499.cc: New
2075 * testsuite/23_containers/set/debug/60499.cc: New
2076 * testsuite/23_containers/unordered_map/debug/60499.cc: New
2077 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
2078 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
2079 * testsuite/23_containers/unordered_set/debug/60499.cc: New
2080 * testsuite/23_containers/vector/debug/60499.cc: New
2082 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
2084 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
2085 for filesystem and fundamentals TS work items.
2087 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
2090 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
2091 Adjust dg-error directives.
2093 2014-02-26 Tim Shen <timshen91@gmail.com>
2095 * include/bits/regex.tcc (match_results<>::format,
2096 regex_replace<>): Update __out after calling std::copy.
2097 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
2099 * testsuite/28_regex/match_results/format.cc: Likewise.
2101 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
2104 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
2105 allocator_type&)): Remove redundant call to _M_initialize_map.
2106 (deque::deque(const allocator_type&)): Initialize _Base with a
2107 constructor that calls _M_initialize_map.
2111 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
2113 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
2116 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
2118 Rename testsuite directory shared_mutex to shared_timed_mutex
2120 * testsuite/30_threads/shared_mutex: Moved to...
2121 * testsuite/30_threads/shared_timed_mutex: ...here
2123 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
2125 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
2126 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
2127 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
2128 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
2129 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
2130 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
2131 * testsuite/30_threads/shared_lock/requirements/
2132 explicit_instantiation.cc: Ditto.
2133 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
2134 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
2135 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
2136 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
2137 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
2138 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
2139 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
2140 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
2141 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
2142 * testsuite/30_threads/shared_mutex/requirements/
2143 standard_layout.cc: Ditto.
2144 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
2145 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
2146 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
2147 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
2148 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
2150 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2152 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
2153 execution on i?86-*-solaris2.9, remove comment.
2154 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2156 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
2158 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
2159 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
2160 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
2162 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
2164 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
2165 not use varargs when argument could be non-POD.
2166 (__alloctr_rebind_helper): Eliminate static const bool member by
2167 using true_type and false_type.
2168 (allocator_traits::__allocate_helper): Likewise.
2169 (allocator_traits::__construct_helper): Likewise.
2170 (allocator_traits::__destroy_helper): Likewise.
2171 (allocator_traits::__maxsize_helper): Likewise.
2172 (allocator_traits::__select_helper): Likewise.
2173 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
2174 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
2175 Remove redundant condition.
2176 * include/bits/stl_vector.h (vector::operator=(const vector&)):
2178 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
2179 indirection through __alloc_traits.
2180 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
2181 Eliminate static const bool members by using true_type and false_type.
2182 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
2183 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
2184 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
2186 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
2189 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
2190 (vector::_M_data_ptr): New overloaded functions to ensure empty
2191 vectors do not dereference the pointer.
2192 * testsuite/23_containers/vector/59829.cc: New.
2193 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2194 Adjust dg-error line number.
2195 * testsuite/23_containers/vector/requirements/dr438/
2196 constructor_1_neg.cc: Likewise.
2197 * testsuite/23_containers/vector/requirements/dr438/
2198 constructor_2_neg.cc: Likewise.
2199 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2203 * include/ext/array_allocator.h: Add deprecated attribute.
2206 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
2207 installation and use of python printers.
2208 * doc/xml/manual/status_cxx2011.xml: Update.
2209 * doc/html/*: Regenerate.
2211 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
2212 Kyle Lippincott <spectral@google.com>
2215 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
2216 constructor and grant friendship to weak_ptr.
2217 (weak_ptr::lock()): Use new constructor.
2218 * include/bits/shared_ptr_base.h
2219 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
2220 and define specializations.
2221 (__shared_count): Add new non-throwing constructor.
2222 (__shared_ptr): Add new non-throwing constructor and grant friendship
2224 (__weak_ptr::lock()): Use new constructor.
2225 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
2226 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
2228 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
2231 * include/bits/shared_ptr_base.h
2232 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
2235 2014-01-27 Jason Merrill <jason@redhat.com>
2240 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
2241 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
2242 (__cxa_allocate_exception): Don't set it here.
2244 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
2246 * include/bits/stl_map.h: Remove anachronistic comment.
2247 * include/bits/stl_multimap.h: Add whitespace.
2248 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
2249 -std=gnu++11 instead of -std=c++11.
2250 * testsuite/23_containers/map/operators/2.cc: Likewise.
2251 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
2252 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
2253 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
2255 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
2256 * configure: Regenerate.
2258 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2261 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
2262 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
2264 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2265 Peter A. Bigot <pab@pabigot.com>
2268 * include/experimental/string_view
2269 (copy(_CharT*, size_type, size_type) const): Correct throw string.
2270 Correct copy start location.
2272 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2273 Peter A. Bigot <pab@pabigot.com>
2276 * include/experimental/string_view (operator[](size_type) const):
2277 Fix one-off index error in debug check.
2278 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
2279 test basic_string_view at size().
2280 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
2282 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2283 Peter A. Bigot <pab@pabigot.com>
2286 * include/experimental/string_view
2287 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
2288 * testsuite/experimental/string_view/operations/substr/char/1.cc:
2289 Comment out catch of out_of_range; No terminating null
2290 in basic_string_view. Check begin == end.
2291 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
2294 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
2297 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
2298 constructor to prevent it being implicitly defined as deleted, but
2299 do not copy anything.
2300 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
2301 Define copy and move constructors similar to _Safe_sequence_base's.
2302 * testsuite/23_containers/unordered_map/59548.cc: New.
2304 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2305 Steve Ellcey <sellcey@mips.com>
2307 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
2309 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
2310 * (configure, config.h.in): Regenerate.
2311 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
2313 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
2315 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
2316 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
2319 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
2320 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
2322 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
2324 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
2325 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
2326 functions to perform moving or copying of elements from rvalue tree.
2327 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
2328 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
2329 * testsuite/23_containers/map/59872.cc: New.
2330 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
2332 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
2334 * include/bits/stl_deque.h (_Deque_impl): Move comment.
2337 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
2338 Split into separate default constructor and constructor taking
2340 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
2341 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
2343 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
2344 * include/debug/list (list::list(const _Allocator&)): Likewise.
2345 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
2347 * include/debug/multimap.h
2348 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2349 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
2351 * include/debug/multiset.h
2352 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2353 * include/debug/vector (vector::vector(const allocator_type&)):
2355 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
2356 * include/profile/list (list::list(const _Allocator&)): Likewise.
2357 * include/profile/map.h
2358 (map::map(const _Compare&, const _Allocator&)): Likewise.
2359 * include/profile/multimap.h
2360 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2361 * include/profile/set.h
2362 (set::set(const _Compare&, const _Allocator&)): Likewise.
2363 * include/profile/multiset.h
2364 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2365 * include/profile/vector (vector::vector(const _Allocator&)):
2367 * testsuite/23_containers/deque/58764.cc: New.
2368 * testsuite/23_containers/list/58764.cc: New.
2369 * testsuite/23_containers/map/58764.cc: New.
2370 * testsuite/23_containers/multimap/58764.cc: New.
2371 * testsuite/23_containers/set/58764.cc: New.
2372 * testsuite/23_containers/multiset/58764.cc: New.
2373 * testsuite/23_containers/vector/58764.cc: New.
2374 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2375 Adjust dg-error line number.
2376 * testsuite/23_containers/deque/requirements/dr438/
2377 constructor_1_neg.cc: Likewise.
2378 * testsuite/23_containers/deque/requirements/dr438/
2379 constructor_2_neg.cc: Likewise.
2380 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2382 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2384 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2386 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2388 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2390 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2392 * testsuite/23_containers/vector/requirements/dr438/
2393 constructor_1_neg.cc: Likewise.
2394 * testsuite/23_containers/vector/requirements/dr438/
2395 constructor_2_neg.cc: Likewise.
2396 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2399 PR libstdc++/58764 (again)
2400 * include/bits/stl_list.h (list): Make default constructor's exception
2401 specification conditional.
2402 * include/bits/stl_vector.h (vector): Likewise.
2403 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
2404 to default constructor.
2405 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2406 Adjust dg-error line number.
2407 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2409 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2411 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2413 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2415 * testsuite/23_containers/vector/requirements/dr438/
2416 constructor_1_neg.cc: Likewise.
2417 * testsuite/23_containers/vector/requirements/dr438/
2418 constructor_2_neg.cc: Likewise.
2419 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2422 2014-01-21 Tim Shen <timshen91@gmail.com>
2424 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
2425 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
2426 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
2428 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
2431 * include/bits/hashtable.h (__cache_default): Do not depend on
2432 whether the hash function is DefaultConstructible or CopyAssignable.
2433 (_Hashtable): Adjust static assertions.
2434 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
2435 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2436 dg-error line number.
2437 * testsuite/23_containers/unordered_set/
2438 not_default_constructible_hash_neg.cc: Remove.
2440 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
2442 * scripts/create_testsuite_files: Add testsuite/experimental in
2443 the list of folders to search for tests.
2444 * include/experimental/string_view
2445 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
2446 incompatible with constexpr qualifier.
2447 (basic_string_view<>::front()): Likewise.
2448 (basic_string_view<>::back()): Likewise.
2449 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
2450 Merge dg-options directives into one.
2451 * testsuite/experimental/string_view/element_access/char/2.cc:
2452 Likewise. Remove invalid experimental namespace scope on
2455 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
2458 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
2459 friendship to _Local_iterator_base<..., false>.
2460 (_Local_iterator_base): Give protected access to all existing members.
2461 (_Local_iterator_base::_M_curr()): New public accessor.
2462 (_Local_iterator_base::_M_get_bucket()): New public accessor.
2463 (_Local_iterator_base<..., false>::_M_init()): New function to manage
2464 the lifetime of the _Hash_code_base explicitly.
2465 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
2466 (_Local_iterator_base<..., false>): Define copy constructor and copy
2467 assignment operator that use new functions to manage _Hash_code_base.
2468 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
2469 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
2470 Use public API for _Local_iterator_base.
2471 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
2472 * include/debug/unordered_map (__debug::unordered_map::erase(),
2473 __debug::unordered_multimap::erase()): Likewise.
2474 * include/debug/unordered_set (__debug::unordered_set::erase(),
2475 __debug::unordered_multiset::erase()): Likewise.
2476 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
2478 2014-01-19 Tim Shen <timshen91@gmail.com>
2480 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
2481 Fix parse error of multiple consecutive quantifiers like "a**".
2482 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
2484 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
2486 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
2488 * include/profile/set.h (set): Implement C++11 allocator-aware
2489 container requirements.
2490 * include/profile/map.h (map): Likewise.
2491 * include/profile/multiset.h (multiset): Likewise.
2492 * include/profile/multimap.h (multimap): Likewise.
2493 * include/profile/set.h
2494 (set::operator=(const set&)): Define as default in C++11 mode.
2495 (set::operator=(set&&)): Likewise.
2496 * include/profile/map.h
2497 (map::operator=(const map&)): Likewise.
2498 (map::operator=(map&&)): Likewise.
2499 * include/profile/multiset.h
2500 (multiset::operator=(const multiset&)): Likewise.
2501 (multiset::operator=(multiset&&)): Likewise.
2502 * include/profile/multimap.h
2503 (multimap::operator=(const multimap&)): Likewise.
2504 (multimap::operator=(multimap&&)): Likewise.
2505 * include/profile/set.h (set::operator=(std::initializer_list<>)):
2506 Rely on the same operator from normal mode.
2507 * include/profile/map.h (map::operator=(std::initializer_list<>)):
2509 * include/profile/multiset.h
2510 (multiset::operator=(std::initializer_list<>)): Likewise.
2511 * include/profile/multimap.h
2512 (multimap::operator=(std::initializer_list<>)): Likewise.
2513 * include/profile/set.h (set::swap(set&)): Add noexcept
2515 * include/profile/map.h (map::swap(map&)): Likewise.
2516 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2517 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2519 2014-01-17 Tim Shen <timshen91@gmail.com>
2521 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2523 * include/bits/regex_automaton.h: Do not use std::set.
2524 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2525 _BracketMatcher<>::_M_add_collating_element(),
2526 _BracketMatcher<>::_M_add_equivalence_class(),
2527 _BracketMatcher<>::_M_make_range()): Likewise.
2528 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2530 * include/bits/regex_executor.h: Do not use std::queue.
2531 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2532 _Executor<>::_M_dfs()): Likewise.
2533 * include/std/regex: Remove <map>, <set> and <queue>.
2535 2014-01-17 Tim Shen <timshen91@gmail.com>
2537 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2538 basic_regex<>::assign()): Change __compile_nfa to accept
2540 * include/bits/regex_compiler.h: Change _Compiler's template
2541 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2542 * include/bits/regex_compiler.tcc: Likewise.
2544 2014-01-17 Tim Shen <timshen91@gmail.com>
2546 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2548 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2549 _ScannerBase from _Scanner; Change _Scanner's template argument from
2550 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2552 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2553 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2554 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2556 * include/std/regex: Add <cstring> for using strchr.
2558 2014-01-17 Tim Shen <timshen91@gmail.com>
2560 * bits/regex_automaton.tcc: Indentation fix.
2561 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2562 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2563 _BracketMatcher<>): Add bool option template parameters and
2564 specializations to make matching more efficient and space saving.
2565 * bits/regex_compiler.tcc: Likewise.
2567 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
2570 * include/bits/hashtable_policy.h: Fix some long lines.
2571 * include/bits/hashtable.h (__hash_code_base_access): Define and
2572 use it to check its _M_bucket_index noexcept qualification. Use
2574 (__access_protected_ctor): ...this.
2575 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2577 * testsuite/23_containers/unordered_set/
2578 not_default_constructible_hash_neg.cc: Likewise.
2580 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
2582 * include/debug/set.h (set): Implement C++11 allocator-aware
2583 container requirements.
2584 * include/debug/map.h (map): Likewise.
2585 * include/debug/multiset.h (multiset): Likewise.
2586 * include/debug/multimap.h (multimap): Likewise.
2587 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2588 fix implementation regarding management of safe iterators.
2589 * include/debug/map.h (map::operator=(map&&)): Likewise.
2590 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2591 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2593 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2594 Rely on the same operator from normal mode.
2595 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2597 * include/debug/multiset.h
2598 (multiset::operator=(std::initializer_list<>)): Likewise.
2599 * include/debug/multimap.h
2600 (multimap::operator=(std::initializer_list<>)): Likewise.
2601 * include/debug/set.h (set::swap(set&)): Add noexcept
2602 specification, add allocator equality check.
2603 * include/debug/map.h (map::swap(map&)): Likewise.
2604 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2605 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2607 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
2610 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2611 and stylistic improvements.
2612 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2613 and update for C++11.
2614 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2617 * doc/xml/manual/backwards_compatibility.xml
2618 (backwards.third.nocreate_noreplace): Correct and expand.
2621 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2623 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
2626 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2627 support for non-Movable types.
2630 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2632 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
2634 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2635 *this allocator instance when building temporary vector instance
2636 so that *this allocator does not get moved.
2637 * include/debug/safe_base.h
2638 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2639 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2640 move constructor from _Safe_sequence_base.
2641 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2642 safe iterators if the instance is moved.
2643 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2644 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2645 check on a vector iterator.
2646 * testsuite/23_containers/vector/allocator/move_assign.cc
2648 (test03): New, test with a non-propagating allocator.
2649 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2651 2014-01-07 Tim Shen <timshen91@gmail.com>
2653 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2654 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2655 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2656 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2657 _BracketMatcher<>::_M_add_char(),
2658 _BracketMatcher<>::_M_add_collating_element(),
2659 _BracketMatcher<>::_M_add_equivalence_class(),
2660 _BracketMatcher<>::_M_add_character_class(),
2661 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2662 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2663 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2664 to template parameter; Add cache for _BracketMatcher. Adjust
2665 declarations from here...
2666 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2667 imbuing a regex will trigger a recompilation to rebuild the cache.
2668 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2669 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2670 different template bool parameters.
2671 * include/bits/regex_executor.h: Remove unnecessary declarations.
2672 * include/std/regex: Adjust including orders.
2673 * testsuite/28_regex/traits/char/user_defined.cc: New.
2674 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2676 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2678 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2679 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2680 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2681 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2682 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2684 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2686 Update copyright years
2688 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2690 * testsuite/18_support/new_handler.cc,
2691 testsuite/18_support/terminate_handler.cc,
2692 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2693 the copyright notice.
2695 Copyright (C) 2014 Free Software Foundation, Inc.
2697 Copying and distribution of this file, with or without modification,
2698 are permitted in any medium without royalty provided the copyright
2699 notice and this notice are preserved.