1 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
3 Implement SD-6: SG10 Feature Test Recommendations
4 * include/bits/basic_string.h: Add __cpp_lib feature test macro.
5 * include/bits/stl_algobase.h: Ditto.
6 * include/bits/stl_function.h: Ditto.
7 * include/bits/unique_ptr.h: Ditto.
8 * include/std/chrono: Ditto.
9 * include/std/complex: Ditto.
10 * include/std/iomanip: Ditto.
11 * include/std/shared_mutex: Ditto.
12 * include/std/tuple: Ditto.
13 * include/std/type_traits: Ditto.
14 * include/std/utility: Ditto.
15 * testsuite/experimental/feat-cxx14.cc: New.
16 * testsuite/experimental/feat-lib-fund.cc: New.
17 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
18 * testsuite/20_util/duration/literals/range.cc: Adjust.
19 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
20 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
21 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
22 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
23 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
24 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
25 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
28 2014-09-30 Siva Chandra Reddy <sivachandra@google.com>
30 * python/hook.in: Only import libstdcxx.v6.
31 * python/libstdcxx/v6/__init__.py: Load printers and xmethods.
33 2014-09-30 Jonathan Wakely <jwakely@redhat.com>
35 * doc/xml/manual/status_cxx2011.xml: Update.
36 * doc/html/manual/status.html: Regenerate.
38 2014-09-30 Andreas Schwab <schwab@linux-m68k.org>
40 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: New
43 * configure.host (abi_baseline_pair): If try_cpu is generic use
44 host_cpu for the default.
46 2014-09-29 François Dumont <fdumont@gcc.gnu.org>
49 * include/debug/safe_base.h
50 (_Safe_iterator_base(const _Safe_iterator_base&)): Delete declaration.
51 (_Safe_iterator_base& operator=(const _Safe_iterator_base&)): Likewise.
52 * include/debug/safe_iterator.h (_Safe_iterator<>): Move normal iterator
53 before _Safe_iterator_base in memory. Lock before modifying the iterator
55 * include/debug/safe_local_iterator.h
56 (_Safe_local_iterator_base(const _Safe_local_iterator_base&)): Delete
58 (_Safe_local_iterator_base& operator=(const _Safe_local_iterator_base&)):
60 * include/debug/safe_unordered_base.h (_Safe_local_iterator<>): Move
61 normal iterator before _Safe_iterator_base in memory. Lock before
62 modifying the iterator in numerous places.
63 * include/debug/forward_list (_Safe_forward_list<>::_M_swap_aux): Adapt.
64 * include/debug/safe_sequence.tcc
65 (_Safe_sequence<>::_M_transfer_from_if): Adapt.
67 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
70 * doc/xml/manual/status_cxx2011.xml: Update.
71 * include/bits/stl_uninitialized.h (uninitialized_fill_n): Return
73 (__uninitialized_fill_n_a, __uninitialized_default_n_a): Likewise.
74 * include/bits/stl_vector.h (vector::_M_fill_initialize,
75 vector::_M_default_initialize): Use returned iterator.
76 * include/bits/vector.tcc (vector::_M_fill_assign,
77 vector::_M_fill_insert, vector::_M_default_append): Likewise.
78 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
79 16505.cc: Adjust return type.
80 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
83 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
85 * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.
87 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
89 * testsuite/27_io/basic_ios/conv/bool_neg.cc: New.
90 * testsuite/27_io/basic_ios/conv/bool.cc: New.
91 * testsuite/27_io/basic_ios/conv/voidptr.cc: New.
93 * testsuite/27_io/basic_ios/conv/bool_neg.cc: Add dg-do compile.
95 2014-09-25 Tim Shen <timshen@google.com>
98 * include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign,
99 basic_regex::imbue, basic_regex::getloc, basic_regex::swap): Add
100 _M_loc for basic_regex.
101 * include/bits/regex_automaton.h: Add _M_traits for _NFA.
102 * include/bits/regex_compiler.h (_Compiler::_M_get_nfa, __compile_nfa):
103 Make _Compiler::_M_nfa heap allocated.
104 * include/bits/regex_compiler.tcc (_Compiler::_Compiler): Make
105 _Compiler::_M_nfa heap allocated.
106 * include/bits/regex_executor.h (_Executor::_M_is_word):
107 Fix accessing _M_traits.
108 * include/bits/regex_executor.tcc (_Executor::_M_dfs):
109 Fix accessing _M_traits.
110 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
113 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
115 * config/abi/pre/gnu.ver: Make GLIBCXX_3.4 patterns stricter so the
116 new GLIBCXX_3.4.21 symbols don't match them.
119 * config/abi/pre/gnu.ver: Add new exports.
120 * include/bits/basic_ios.h (basic_ios::operator bool): Define.
121 * src/c++98/ios_locale.cc (basic_ios::operator void*): Instantiate.
123 2014-09-24 François Dumont <fdumont@gcc.gnu.org>
126 * include/bits/stl_tree.h (_Rb_tree_reuse_or_alloc_node<>): New.
127 (_Rb_tree_alloc_node<>): New.
128 (_Rb_tree<>::operator=(_Rb_tree<>&&)): New.
129 (_Rb_tree<>::_M_assign_unique): New.
130 (_Rb_tree<>::_M_assign_equal): New.
131 (_Rb_tree<>): Adapt to reuse allocated nodes as much as possible.
132 * include/bits/stl_map.h
133 (std::map<>::operator=(std::map<>&&)): Default implementation.
134 (std::map<>::operator=(initializer_list<>)): Adapt to use
135 _Rb_tree::_M_assign_unique.
136 * include/bits/stl_multimap.h
137 (std::multimap<>::operator=(std::multimap<>&&)): Default implementation.
138 (std::multimap<>::operator=(initializer_list<>)): Adapt to use
139 _Rb_tree::_M_assign_equal.
140 * include/bits/stl_set.h
141 (std::set<>::operator=(std::set<>&&)): Default implementation.
142 (std::set<>::operator=(initializer_list<>)): Adapt to use
143 _Rb_tree::_M_assign_unique.
144 * include/bits/stl_multiset.h
145 (std::multiset<>::operator=(std::multiset<>&&)): Default implementation.
146 (std::multiset<>::operator=(initializer_list<>)): Adapt to use
147 _Rb_tree::_M_assign_equal.
148 * testsuite/23_containers/map/allocator/copy_assign.cc (test03): New.
149 * testsuite/23_containers/map/allocator/init-list.cc: New.
150 * testsuite/23_containers/map/allocator/move_assign.cc (test03): New.
151 * testsuite/23_containers/multimap/allocator/copy_assign.cc
153 * testsuite/23_containers/multimap/allocator/init-list.cc: New.
154 * testsuite/23_containers/multimap/allocator/move_assign.cc
156 * testsuite/23_containers/multiset/allocator/copy_assign.cc
158 * testsuite/23_containers/multiset/allocator/init-list.cc: New.
159 * testsuite/23_containers/multiset/allocator/move_assign.cc
161 * testsuite/23_containers/set/allocator/copy_assign.cc (test03): New.
162 * testsuite/23_containers/set/allocator/init-list.cc: New.
163 * testsuite/23_containers/set/allocator/move_assign.cc (test03): New.
165 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
168 * src/c++11/ios.cc (ios_base::_M_swap): Fix typo.
170 2014-09-23 Jonathan Wakely <jwakely@redhat.com>
172 * config/abi/pre/gnu.ver: Adjust basic_ostream exports.
173 * include/std/istream (basic_iostream(basic_iostream&&)): Pass *this
174 to ostream constructor.
175 * include/std/ostream (basic_ostream(basic_iostream*)): Change to take
176 parameter by reference, to avoid ambiguity.
177 * testsuite/27_io/basic_ostream/cons/char/null.cc: New.
179 2014-09-22 Jason Merrill <jason@redhat.com>
181 * testsuite/Makefile.am (%/site.exp): Add @.
182 (check-DEJAGNU): Likewise.
183 * testsuite/Makefile.in: Regenerate.
185 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
187 * include/bits/stl_queue.h: Include missing header.
188 * include/bits/stl_stack.h: Likewise.
189 * testsuite/23_containers/priority_queue/requirements/
190 uses_allocator.cc: New.
191 * testsuite/23_containers/queue/requirements/uses_allocator.cc: New.
192 * testsuite/23_containers/stack/requirements/uses_allocator.cc: New.
194 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
196 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
197 * doc/xml/manual/status_cxx2014.xml: Update TS status.
198 * doc/html/manual/status.html: Regenerate.
200 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
202 * include/std/mutex (try_lock): Do not swallow exceptions.
203 * testsuite/30_threads/try_lock/4.cc: Fix test.
205 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
209 * config/abi/pre/gnu.ver: Add new exports.
210 * config/io/basic_file_stdio.h (__basic_file): Support moving and
212 * include/bits/basic_ios.h (basic_ios::move, basic_ios::swap):
214 * include/bits/ios_base.h (ios_base::_M_move, ios_base::_M_swap):
216 * include/bits/fstream.tcc (basic_filebuf): Likewise.
217 * include/bits/move.h (__exchange): Define for C++11 mode.
218 * include/ext/stdio_filebuf.h (stdio_filebuf): Support moving and
220 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf): Likewise.
221 * include/std/fstream (basic_filebuf, basic_ifstream, basic_ofstream,
222 basic_fstream): Likewise.
223 * include/std/ios: Remove whitespace.
224 * include/std/istream (basic_istream, basic_iostream): Support moving
226 * include/std/ostream (basic_ostream): Likewise.
227 * include/std/sstream (basic_stringbuf, basic_istringstream,
228 basic_ostringstream, basic_stringstream): Likewise.
229 * include/std/streambuf (basic_streambuf): Do not default copy
230 constructor and assignment on first declaration.
231 * include/std/utility (exchange): Forward to __exchange.
232 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
233 * src/c++11/Makefile.am: Add stream-related files.
234 * src/c++11/Makefile.in: Regenerate.
235 * src/c++11/ext11-inst.cc (stdio_filebuf, stdio_sync_filebuf):
236 New file for explicit instantiation definitions.
237 * src/c++11/ios.cc: Move from src/c++98 to here.
238 (ios_base::_M_move, ios_base::_M_swap): Define.
239 * src/c++11/ios-inst.cc: Move from src/c++98 to here.
240 * src/c++11/iostream-inst.cc: Likewise.
241 * src/c++11/istream-inst.cc: Likewise.
242 * src/c++11/ostream-inst.cc: Likewise.
243 * src/c++11/sstream-inst.cc: Likewise.
244 * src/c++11/streambuf-inst.cc: Likewise.
245 * src/c++98/Makefile.am: Remove stream-related files.
246 * src/c++98/Makefile.in: Regenerate.
247 * src/c++98/ext-inst.cc (stdio_filebuf): Remove explicit
249 * src/c++98/misc-inst.cc (stdio_sync_filebuf): Likewise.
250 * src/c++98/ios-inst.cc: Move to src/c++11/.
251 * src/c++98/ios.cc: Move to src/c++11/.
252 * src/c++98/iostream-inst.cc: Likewise.
253 * src/c++98/istream-inst.cc: Likewise.
254 * src/c++98/ostream-inst.cc: Likewise.
255 * src/c++98/sstream-inst.cc: Likewise.
256 * src/c++98/streambuf-inst.cc: Likewise.
257 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
258 * testsuite/27_io/basic_fstream/cons/move.cc: New.
259 * testsuite/27_io/basic_fstream/assign/1.cc: New.
260 * testsuite/27_io/basic_ifstream/cons/move.cc: New.
261 * testsuite/27_io/basic_ifstream/assign/1.cc: New.
262 * testsuite/27_io/basic_istringstream/assign/1.cc: New.
263 * testsuite/27_io/basic_istringstream/cons/move.cc: New.
264 * testsuite/27_io/basic_ofstream/cons/move.cc: New.
265 * testsuite/27_io/basic_ofstream/assign/1.cc: New.
266 * testsuite/27_io/basic_ostringstream/assign/1.cc: New.
267 * testsuite/27_io/basic_ostringstream/cons/move.cc: New.
268 * testsuite/27_io/basic_stringstream/assign/1.cc: New.
269 * testsuite/27_io/basic_stringstream/cons/move.cc: New.
271 2014-09-17 Jason Merrill <jason@redhat.com>
273 * libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
274 dynamic_cast more gracefully.
276 2014-09-15 Jakub Jelinek <jakub@redhat.com>
278 * testsuite/Makefile.am (check_p_numbers0, check_p_numbers1,
279 check_p_numbers2, check_p_numbers3, check_p_numbers4,
280 check_p_numbers5, check_p_numbers6, check_p_numbers,
281 check_p_subdirs): New variables.
282 (check_DEJAGNU_normal_targets): Use check_p_subdirs.
283 (check-DEJAGNU): Rewritten so that for parallelized
284 testing each job runs all the *.exp files, with
285 GCC_RUNTEST_PARALLELIZE_DIR set in environment.
286 * testsuite/Makefile.in: Regenerated.
287 * testsuite/lib/libstdc++.exp (gcc_parallel_test_run_p,
288 gcc_parallel_test_enable): New procedures. If
289 GCC_RUNTEST_PARALLELIZE_DIR is set in environment, override
290 runtest_file_p to invoke also gcc_parallel_test_run_p.
291 * testsuite/libstdc++-abi/abi.exp: Run all the tests serially
292 by the first parallel runtest encountering it. Fix up path
293 of the extract_symvers script.
294 * testsuite/libstdc++-xmethods/xmethods.exp: Run all the tests
295 serially by the first parallel runtest encountering it. Run
296 dg-finish even in case of error.
298 2014-09-15 Jonathan Wakely <jwakely@redhat.com>
300 * include/bits/regex.h (basic_regex): Rename _Ch_typeraits template
301 parameters to _Ch_traits.
303 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
305 * include/debug/deque (__gnu_debug::deque): Make base class C++11
308 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
311 * include/bits/stl_algo.h (random_shuffle): Prevent self-swapping.
312 * testsuite/25_algorithms/random_shuffle/59603.cc: New.
314 2014-09-11 Jonathan Wakely <jwakely@redhat.com>
317 * include/bits/regex.h (match_results::format): Remove stray template
319 * include/bits/regex_compiler.h (_RegexTranslator::_RegexTranslator):
320 Remove parameter name to avoid -Wunused-parameter warning.
321 * include/bits/regex_executor.h (_State_info::_State_info): Reorder
322 mem-initializers to avoid -Wreorder warning.
323 * include/bits/regex_executor.tcc (_Executor::_M_word_boundary):
324 Remove parameter name to avoid -Wunused-parameter warning.
325 * include/bits/regex_scanner.tcc (_Scanner::_M_advance): Add braces
326 to avoid -Wempty-body warning when not in debug mode.
328 2014-09-10 Siva Chandra Reddy <sivachandra@google.com>
330 * python/hook.in: Load the xmethods.
331 * python/Makefile.am (nobase_python_DATA): Add xmethods.py.
332 * python/Makefile.in: Regenerated.
333 * python/libstdcxx/v6/xmethods.py: New file.
334 * testsuite/lib/gdb-test.exp (gdb_version_check_xmethods): New
336 (gdb-test): New optional argument LOAD_XMETHODS. Load xmethods
337 python script if LOAD_XMETHODS is true.
338 * testsuite/libstdc++-xmethods/unique_ptr.cc: New file.
339 * testsuite/libstdc++-xmethods/vector.cc: New file.
340 * testsuite/libstdc++-xmethods/xmethods.exp: New file.
342 2014-09-10 Tony Wang <tony.wang@arm.com>
345 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
346 Return with CONTINUE_UNWINDING when the state pattern
347 contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND
349 2014-09-09 Jonathan Wakely <jwakely@redhat.com>
351 * include/bits/deque.tcc (deque::operator=(const deque&)): Handle
352 allocator propagation.
353 (deque::emplace_front, deque::emplace_back): Use allocator traits.
354 (deque::_M_push_back_aux, deque::_M_push_front_aux): Likewise.
355 (deque::_M_pop_back_aux, deque::_M_pop_front_aux): Likewise.
356 * include/bits/stl_deque.h (__deque_buf_size): Add constexpr.
357 (_Deque_iterator): Handle allocators with custom pointers.
358 (_Deque_base): Likewise. Use allocator traits.
359 (deque): Likewise. Add allocator-extended constructors.
360 (deque::_M_move_assign1, deque::_M_move_assign2): Implement move
361 assignment via tag dispatching.
362 (deque::_M_replace_map): Replace existing data.
363 * include/debug/deque (deque): Add allocator-extended constructors.
364 * include/profile/deque (deque): Likewise.
365 * testsuite/23_containers/deque/allocator/copy.cc: New.
366 * testsuite/23_containers/deque/allocator/copy_assign.cc: New.
367 * testsuite/23_containers/deque/allocator/ext_ptr.cc: New.
368 * testsuite/23_containers/deque/allocator/minimal.cc: New.
369 * testsuite/23_containers/deque/allocator/move.cc: New.
370 * testsuite/23_containers/deque/allocator/move_assign-2.cc: New.
371 * testsuite/23_containers/deque/allocator/move_assign.cc: New.
372 * testsuite/23_containers/deque/allocator/noexcept.cc: New.
373 * testsuite/23_containers/deque/allocator/swap.cc: New.
374 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
375 Adjust dg-error line number.
376 * testsuite/23_containers/deque/requirements/dr438/
377 constructor_1_neg.cc: Likewise.
378 * testsuite/23_containers/deque/requirements/dr438/
379 constructor_2_neg.cc: Likewise.
380 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
382 * testsuite/23_containers/vector/52591.cc: Test both the propagating
383 and always-equal cases.
385 2014-09-06 François Dumont <fdumont@gcc.gnu.org>
387 * include/bits/hashtable_policy.h (_Prime_rehash_policy): Constructor
389 (_Hash_code_base<>): All specialization default constructible if
391 (_Hashtable_base<>): Likewise.
392 * include/bits/hashtable.h (_Hashtable<>()): Implementation defaulted.
393 * include/bits/unordered_map.h (unordered_map<>::unordered_map()): New,
394 implementation defaulted.
395 (unordered_multimap<>::unordered_multimap()): Likewise.
396 * include/bits/unordered_set.h
397 (unordered_set<>::unordered_set()): Likewise.
398 (unordered_multiset<>::unordered_multiset()): Likewise.
399 * include/debug/unordered_map: Likewise.
400 * include/debug/unordered_set: Likewise.
401 * testsuite/23_containers/unordered_map/allocator/noexcept.cc
403 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc
405 * testsuite/23_containers/unordered_set/allocator/noexcept.cc
407 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc
410 2014-08-30 John David Anglin <danglin@gcc.gnu.org>
412 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
414 2014-08-29 Jonathan Wakely <jwakely@redhat.com>
416 * include/std/complex (complex): Define copy constructor and
417 assignment operator as defaulted. Improve Doxygen comments.
419 2014-08-28 Jonathan Wakely <jwakely@redhat.com>
421 * testsuite/ext/random/*: Fix incorrect standard references in
424 2014-08-27 Jonathan Wakely <jwakely@redhat.com>
427 * include/Makefile.am (install-freestanding-headers): Add missing
429 * include/Makefile.in: Regenerate.
431 2014-08-21 Tony Wang <tony.wang@arm.com>
433 * testsuite/18_support/nested_exception/62154.cc: Disable when the
434 target doesn't provide atomic builtins.
436 2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
437 Kai Tietz <ktietz@redhat.com>
439 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
441 * config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
443 * libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
444 #include <windows.h>.
445 (struct elt): Add dll member.
446 (run): Decrement dll refcount.
447 (__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.
449 2014-08-15 Jonathan Wakely <jwakely@redhat.com>
452 * libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
453 Rewrite to conform to C++11 requirements.
454 * testsuite/18_support/nested_exception/62154.cc: New.
456 2014-08-14 Matthias Klose <doko@ubuntu.com>
458 * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
459 Remove empty directory.
461 2014-08-14 Paolo Carlini <paolo.carlini@oracle.com>
463 * testsuite/26_numerics/random/linear_congruential_engine/
464 requirements/non_uint_neg.cc: Adjust for parser change.
465 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
466 requirements/non_uint_neg.cc: Likewise.
468 2014-08-13 Jonathan Wakely <jwakely@redhat.com>
471 * include/std/thread (thread::_M_start_thread): Declare new overload.
472 (thread::thread<_Callable, _Args...>): Call new overload with an
473 explicit reference to pthread_create.
474 * src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
475 * config/abi/pre/gnu.ver: Export new function.
477 2014-08-13 Sylvestre Ledru <sylvestre@debian.org>
479 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
481 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
483 * Fix thinko in the last commit.
485 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
488 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
489 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
491 2014-08-12 Jonathan Wakely <jwakely@redhat.com>
493 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
494 and add overloads for rvalue streams.
495 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
497 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
500 * include/bits/basic_string.h (getline): Declare inline.
502 2014-08-09 Ulrich Drepper <drepper@gmail.com>
504 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
505 (uniform_on_sphere_distribution::operator()): Use the new helper
506 class for the implementation.
508 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
509 equal.cc: Remove bogus part of comment.
510 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
511 inequal.cc: Likewise.
512 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
513 serialize.cc: Add check to verify result of serialzation and
515 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
516 generate.cc: New file.
518 2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
520 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
521 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
523 2014-08-09 François Dumont <fdumont@gcc.gnu.org>
526 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
527 _M_need_rehash to initialize the rehash policy and check if a rehash is
529 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
531 2014-08-07 Jonathan Wakely <jwakely@redhat.com>
533 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
535 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
536 Adjust dg-error line number.
537 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
539 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
541 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
544 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
546 (_State_baseV2::_M_do_set): Change parameters to pointers.
547 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
548 (_State_baseV2::__setter): Initialize _Setter with pointers.
549 (_State_baseV2::__setter(promise<void>*)): Remove overload.
550 (promise::set_value, promise::set_exception): Pass setter directly
552 (_State_baseV2::_Task_setter): Add template parameter for callable
553 type and replace std::function member with pointer to that type.
554 Change _M_result member from reference to pointer.
555 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
556 and initialize _Task_setter with pointers.
557 (__location_invariant): Specialize for _Setter and _Task_setter.
559 * include/std/future (__location_invariant): Move specializations
560 after preprocessor condition.
562 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
565 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
567 2014-08-01 Zifei Tong <zifeitong@gmail.com>
569 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
570 _GLIBCXX_ prefix to macro.
572 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
574 * python/libstdcxx/v6/printers.py
575 (SingleObjContainerPrinter._contained): Use compatibility mixin.
577 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
579 * testsuite/util/testsuite_allocator.h
580 (tracker_allocator_counter::allocate): Remove new invocation, only
582 (tracker_allocator_counter::deallocate): Remove delete invocation, only
584 (check_inconsistent_alloc_value_type): New.
585 (tracker_allocator): Transform as a facade for any allocator type.
586 (uneq_allocator): Likewise.
587 (propagating_allocator): Likewise.
588 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
589 explicitly non propagating allocator.
590 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
591 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
592 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
593 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
594 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
596 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
598 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
600 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
602 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
604 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
607 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
608 const allocator_type&)): Pass non-const allocator to
610 * testsuite/ext/rope/61946.cc: New.
613 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
614 disambiguate unary constructors.
615 (_Tuple_impl): Pass allocator_arg_t arguments.
616 * testsuite/20_util/tuple/61947.cc: New.
617 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
619 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
621 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
622 * include/bits/random.h (_Adaptor): static_assert for non floating-point
624 * include/bits/random.tcc (generate_canonical): Ditto.
625 * include/ext/random.tcc (hypergeometric_distribution::operator()):
626 Use double as a rng result type.
627 * testsuite/26_numerics/random/pr60037-neg.cc: New.
628 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
630 2014-07-25 Uros Bizjak <ubizjak@gmail.com>
632 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
634 2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
636 * include/experimental/string_view: Make the literal operators
637 constexpr like the ctors they call.
639 2014-07-23 H.J. Lu <hongjiu.lu@intel.com>
641 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
643 2014-07-23 Jonathan Wakely <jwakely@redhat.com>
645 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
646 to string instead of using gdb.Type.name attribute.
648 2014-07-19 Jonathan Wakely <jwakely@redhat.com>
650 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
653 2014-07-18 Jonathan Wakely <jwakely@redhat.com>
656 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
658 (SingleObjContainerPrinter): Check if type printers are in use.
660 2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
662 * include/ext/random: Minor formatting and cosmetic tweaks.
663 (uniform_on_sphere_distribution<>::operator==
664 (const uniform_on_sphere_distribution&,
665 const uniform_on_sphere_distribution&)): Compare the _M_nds.
666 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
667 (operator!=(const uniform_on_sphere_distribution&,
668 const uniform_on_sphere_distribution&)): Adjust.
669 * include/ext/random.tcc: Minor cosmetc tweaks.
671 2014-07-15 Jonathan Wakely <jwakely@redhat.com>
673 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
674 printer for class templates.
675 (register_type_printers): Use TemplateTypePrinter for containers
676 and other class templates with default template arguments.
677 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
679 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
680 base class for experimental::any and experimental::optional printers.
681 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
682 New printers for Fundamentals TS types.
683 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
685 2014-07-15 Tim Shen <timshen@google.com>
688 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
689 Clear match queue for next use.
690 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
692 2014-07-14 Ulrich Drepper <drepper@gmail.com>
694 * include/ext/random.tcc: Unfortunately more fixes for
695 operator>> and operator<< for uniform_on_sphere_distribution.
697 2014-07-13 Ulrich Drepper <drepper@gmail.com>
699 * include/ext/random.tcc: Fix operator>> and operator<< for
700 uniform_on_sphere_distribution.
702 2014-07-12 Ulrich Drepper <drepper@gmail.com>
704 * include/ext/random: Add uniform_on_sphere_distribution definition.
705 * include/ext/random.tcc: Add out-of-band member function definitions
706 for uniform_on_sphere_distribution.
707 * testsuite/ext/random/uniform_on_sphere_distribution/
708 cons/default.cc: New file.
709 * testsuite/ext/random/uniform_on_sphere_distribution/
710 operators/equal.cc: New file.
711 * testsuite/ext/random/uniform_on_sphere_distribution/
712 operators/inequal.cc: New file.
713 * testsuite/ext/random/uniform_on_sphere_distribution/
714 operators/serialize.cc: New file.
716 2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
718 Add the logistic_distribution as an extension.
719 * include/ext/random: Add the logistic_distribution.
720 * include/ext/random.tcc: Add the logistic_distribution.
721 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
722 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
723 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
725 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
726 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
727 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
730 2014-07-11 Samuel Bronson <naesten@gmail.com>
732 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
733 instead of insisting that GCC understand -fdiagnostics-color=never
735 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
738 2014-07-11 Samuel Bronson <naesten@gmail.com>
739 Matthias Klose <doko@ubuntu.com>
742 * python/libstdcxx/v6/printers.py: Port to Python 2+3
743 (imap): New compat function.
745 (Iterator): New mixin to allow writing iterators in Python 3 style
746 regardless of which version we're running on.
747 [Python3] (long) New compat alias for "int".
748 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
750 2014-07-10 Jonathan Wakely <jwakely@redhat.com>
752 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
753 tuple members to simplify pretty printing.
754 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
756 * testsuite/experimental/any/cons/4.cc: New.
758 2014-07-09 Jason Merrill <jason@redhat.com>
761 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
762 * libsupc++/tinfo.h: Not here.
764 2014-07-08 Jonathan Wakely <jwakely@redhat.com>
766 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
768 * include/experimental/any: Remove unused header.
769 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
770 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
771 * testsuite/util/testsuite_regex.h: Move include guard.
773 2014-07-01 Tim Shen <timshen@google.com>
777 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
778 a NFA state limit. If it's exceeded, regex_constants::error_space
780 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
781 map (which is sparse) instead of vector. This reduce n times clones'
782 cost from O(n^2) to O(n).
783 * include/std/regex: Add map dependency.
784 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
787 2014-07-01 Tim Shen <timshen@google.com>
790 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
791 not just regex containing back-references.
792 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
793 exchange _M_next and _M_alt for alternative operator,
794 making matching from left to right.
795 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
796 Add position tracking fom DFS.
797 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
798 _Executor<>::_M_dfs): Likewise.
799 * include/bits/regex_scanner.h: Remove unused enum entry.
800 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
803 2014-06-30 Jason Merrill <jason@redhat.com>
805 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
808 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
811 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
812 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
815 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
817 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
819 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
821 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
823 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
826 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
828 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
829 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
830 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
832 * include/ext/alloc_traits.h: Fix comment.
834 * include/Makefile.am: Add new header.
835 * include/Makefile.in: Regenerate.
836 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
837 New RAII utilities for working with allocators.
838 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
839 __allocator_type typedef and use new __allocated_ptr type.
840 (_Sp_counted_ptr_inplace): Likewise.
841 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
842 __allocate_guarded to to simplify exception handling.
843 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
844 * include/std/future (_Result_alloc::_M_destroy): Likewise.
845 (_Result_alloc::_S_allocate_result): Likewise.
846 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
847 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
848 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
849 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
851 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
853 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
855 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
856 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
858 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
860 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
861 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
862 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
863 Remove unused typedef.
864 (time_get::do_get_monthname): Likewise.
865 * include/bits/stl_tree.h: Add system_header pragma.
866 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
867 redundant const-qualifier.
868 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
869 instead of _GLIBCXX_USE_CONSTEXPR.
871 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
873 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
874 * include/std/chrono (_Checked_integral_constant): Allow zero.
875 * testsuite/20_util/duration/literals/values.cc: Test non-positive
876 values and digit separators.
877 * include/experimental/any
880 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
881 apply the signed specifier to wchar_t.
882 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
883 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
884 cv-qualifier and size.
885 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
888 * include/experimental/any (any_v1): Rename namespace to
889 fundamentals_v1. Change string returned by bad_any_cast::what().
890 * include/experimental/optional (fundamentals_v1): Add namespace.
891 * include/experimental/string_view (fundamentals_v1): Likewise.
892 * testsuite/experimental/any/typedefs.cc: New.
893 * testsuite/experimental/optional/typedefs.cc: New.
894 * testsuite/experimental/string_view/typedefs.cc: New.
896 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
897 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
900 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
902 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
904 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
905 * include/Makefile.am: Add new header.
906 * include/Makefile.in: Regenerate.
907 * include/experimental/any: New.
908 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
910 * testsuite/experimental/any/assign/1.cc: New.
911 * testsuite/experimental/any/assign/2.cc: New.
912 * testsuite/experimental/any/cons/1.cc: New.
913 * testsuite/experimental/any/cons/2.cc: New.
914 * testsuite/experimental/any/cons/3.cc: New.
915 * testsuite/experimental/any/misc/any_cast.cc: New.
916 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
917 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
918 * testsuite/experimental/any/misc/swap.cc: New.
919 * testsuite/experimental/any/modifiers/1.cc: New.
920 * testsuite/experimental/any/observers/type.cc: New.
922 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
923 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
925 * include/bits/shared_ptr.h (shared_ptr): Likewise.
926 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
928 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
930 * include/parallel/list_partition.h (__parallel::list_partition):
932 * include/std/iomanip (quoted): Likewise.
933 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
935 * doc/xml/api.xml: Link to more recent API docs.
936 * include/bits/allocator.h: Fix link in doxygen comment.
937 * include/bits/char_traits.h: Likewise.
938 * include/bits/ios_base.h: Likewise.
939 * include/bits/stl_map.h: Likewise.
940 * include/bits/stl_multimap.h: Likewise.
941 * include/bits/stl_multiset.h: Likewise.
942 * include/bits/stl_set.h: Likewise.
943 * include/bits/unordered_map.h: Likewise.
944 * include/bits/unordered_set.h: Likewise.
945 * include/ext/mt_allocator.h: Likewise.
946 * include/std/fstream: Likewise.
947 * include/std/iosfwd: Likewise.
948 * include/std/ostream: Likewise.
949 * include/std/sstream: Likewise.
950 * include/std/streambuf: Likewise.
951 * doc/html/*: Regenerate.
953 * include/experimental/any (any_cast): Combine duplicate doxygen
955 * include/experimental/string_view (basic_string_view): Update
957 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
958 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
959 (dynamic_bitset): Improve Doxygen comments.
960 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
963 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
965 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
966 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
968 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
971 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
972 (bin_search_tree_traits): Do not redeclare template-parameters.
973 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
975 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
977 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
978 parameter for DocBook HTML generation.
979 * doc/Makefile.in: Regenerate.
980 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
981 * doc/xml/faq.xml: Update content and improve formatting.
982 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
983 * doc/xml/manual/allocator.xml: Add stable ID attribute.
984 * doc/xml/manual/bitmap_allocator.xml: Likewise.
985 * doc/xml/manual/build_hacking.xml: Likewise.
986 * doc/xml/manual/codecvt.xml: Change URL.
987 * doc/xml/manual/ctype.xml: Add stable ID attribute.
988 * doc/xml/manual/debug_mode.xml: Likewise.
989 * doc/xml/manual/documentation_hacking.xml: Likewise.
990 * doc/xml/manual/evolution.xml: Likewise.
991 * doc/xml/manual/extensions.xml: Likewise.
992 * doc/xml/manual/locale.xml: Likewise.
993 * doc/xml/manual/messages.xml: Make section id consistent, improve
995 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
996 * doc/xml/manual/profile_mode.xml: Likewise.
997 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
998 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
999 * doc/xml/manual/status_cxx2011.xml: Likewise.
1000 * doc/xml/manual/status_cxx2014.xml: Likewise.
1001 * doc/xml/manual/status_cxxtr1.xml: Likewise.
1002 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
1003 * doc/xml/manual/using.xml: Likewise.
1004 * doc/html/*: Regenerate.
1006 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
1008 * include/tr1/beta_function.tcc: Fix spelling of include guard in
1011 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
1013 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
1015 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
1017 DR 2344 - std::quoted doesn't respect padding
1018 * include/std/iomanip: Allow for padding in quoted inserters.
1019 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
1020 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
1022 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
1024 * testsuite/23_containers/map/operators/1.cc: Simplify test.
1026 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
1028 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
1030 * doc/xml/manual/backwards_compatibility.xml
1031 (backwards.second.stringstreams): Likewise.
1032 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
1034 * doc/xml/manual/containers.xml (associative.bitset.type_string):
1035 Replace <quote> in code example.
1036 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
1037 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
1038 fix typos, improve markup.
1039 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
1040 <emphasis> with <replaceable>.
1041 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
1042 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
1043 and remove newlines in string literal.
1045 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
1049 * testsuite/20_util/is_assignable/value.cc: Update.
1051 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
1053 * include/std/condition_variable (condition_variable_any::_Unlock): Do
1054 not swallow __forced_unwind.
1055 * include/std/future (__future_base::_Task_setter): Likewise.
1056 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
1057 promise and rethrow.
1058 * include/std/mutex (try_lock): Likewise.
1059 * testsuite/30_threads/async/forced_unwind.cc: New.
1060 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
1062 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
1063 members to avoid wasted space when not using a cache.
1064 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
1065 * include/bits/regex_compiler.tcc
1066 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
1068 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
1069 New enumeration type to indicate match mode.
1070 (__detail::_Executor::_State_info): New type holding members only
1071 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
1073 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
1074 Replace template parameter with run-time function parameter.
1075 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
1076 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
1077 implement DFS and BFS mode.
1078 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
1079 Split implementation into ...
1080 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
1081 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
1082 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
1083 argument instead of template argument.
1084 (__detail::_Executor::_M_dfs): Likewise.
1085 * include/bits/regex_scanner.tcc: Fix typos in comments.
1086 * testsuite/performance/28_regex/range.cc: New.
1088 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
1089 Jonathan Wakely <jwakely@redhat.com>
1091 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
1093 (aligned_union): New struct (C++11).
1094 (aligned_union_t): New type alias (C++14).
1095 * doc/xml/manual/status_cxx2011.xml: Update.
1096 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
1097 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1100 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
1103 * include/experimental/string_view (operator basic_string): Correct
1105 (to_string): Replace with member function.
1106 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
1107 allow _M_str to be null.
1108 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
1109 default constructor semantics.
1110 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
1111 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
1112 copyright dates. Remove unused header.
1113 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
1115 * testsuite/experimental/string_view/operations/data/char/1.cc:
1116 Fix copyright dates. Adjust to new default constructor semantics.
1117 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
1119 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
1121 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
1122 (__uses_allocator_arg): Remove unused type.
1123 (__uses_alloc0): Turn into a trivial type.
1124 (__uses_alloc): Add missing template parameter in primary template.
1125 (__uses_alloc_impl): Rename to __uses_alloc_t.
1127 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
1129 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
1130 work with previous versions of Tcl.
1132 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
1133 Benjamin's old email address.
1135 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
1136 Paolo's address too.
1138 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
1140 * include/tr2/bool_set: Use UTF-8 for accented characters.
1141 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
1142 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
1143 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
1145 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
1148 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
1150 (_State_base::_M_dot): Likewise.
1152 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
1154 * include/profile/map.h: Fix typo in comment; minor formatting fix.
1155 * include/profile/multimap.h: Likewise.
1156 * include/profile/set.h: Likewise.
1157 * include/profile/multiset.h: Likewise.
1159 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
1161 * include/profile/array: Clean useless white chars.
1162 * include/profile/base.h: Likewise.
1163 * include/profile/iterator_tracker.h: Likewise.
1164 * include/profile/bitset: Code cleanup and remove not instrumented code.
1165 * include/profile/deque: Likewise.
1166 * include/profile/forward_list: Likewise.
1167 * include/profile/list (std::__profile::_List_profile<>): New.
1168 (std::__profile::list<>): Inherit from latter and adapt.
1169 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
1170 advise to match any ordered to unordered container conversion.
1171 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
1173 * include/Makefile.am: Add latter.
1174 * include/Makefile.in: Regenerate.
1175 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
1176 remove not instrumented code.
1177 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
1178 * include/profile/set.h (std::__profile::set<>): Likewise.
1179 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
1180 * include/profile/unordered_base.h: Add some line feed.
1181 * include/profile/unordered_map: Clean useless white chars and replace
1183 * include/profile/unordered_set: Likewise.
1184 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
1185 (std::__profile::_Vector_profile_post<>): New.
1186 (std::__profile::vector<>): Inherit from latter and adapt.
1188 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
1191 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
1192 dragonfly target selector to all tests that run on freebsd.
1194 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
1196 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
1197 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
1199 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
1201 * testsuite/30_threads/call_once/60497.cc: Likewise.
1202 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
1203 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
1204 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
1205 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
1206 * testsuite/30_threads/promise/60966.cc: Likewise.
1207 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
1208 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
1209 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
1210 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
1211 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
1212 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
1213 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
1214 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
1215 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
1216 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
1217 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
1218 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
1219 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
1220 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
1221 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
1222 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
1223 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
1225 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
1228 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
1230 * testsuite/23_containers/unordered_set/61143.cc: New.
1231 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
1233 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
1236 * include/std/type_traits: Move include outside namespace std.
1237 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
1238 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1239 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1242 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
1245 2014-05-21 John Marino <gnugcc@marino.st>
1247 * acinclude.m4 (*-*-dragonfly*): New target.
1248 * configure: Regenerate.
1249 * configure.host (*-*-dragonfly*): New target.
1250 * config/locale/dragonfly/c_locale.cc: New.
1251 * config/locale/dragonfly/ctype_members.cc: New.
1252 * config/os/bsd/dragonfly/ctype_base.h: New.
1253 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
1254 * config/os/bsd/dragonfly/ctype_inline.h: New.
1255 * config/os/bsd/dragonfly/os_defines.h: New.
1257 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
1259 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
1260 libstdc++.exp imports those flags via getenv.
1261 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
1262 CXXFLAGS contains a '-O' flag.
1264 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1268 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1271 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1272 and add unwind directives.
1274 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
1276 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
1278 2014-05-20 Tim Shen <timshen91@gmail.com>
1281 * include/bits/regex_compiler.h
1282 (_BracketMatcher<>::_M_add_character_class): Add negative character
1284 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
1286 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
1289 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
1291 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
1293 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
1295 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
1296 * libsupc++/new_opnt.cc: Likewise.
1298 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
1301 * include/std/future (__future_base::_State_baseV2::_M_set_result):
1302 Pass lock into _M_do_set and hold it until the function returns.
1303 Signal condition variable after call_once completes.
1304 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
1306 * testsuite/30_threads/promise/60966.cc: New.
1308 2014-05-16 Iain Sandoe <iain@codesourcery.com>
1309 Sandra Loosemore <sandra@codesourcery.com>
1311 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
1312 until after checking that the test is eligible to be run.
1314 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1316 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
1317 test for 32-bit target.
1318 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1320 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
1323 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1326 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1327 and add unwind directives.
1329 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1331 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
1333 * include/std/chrono (chrono_literals::__select_type::_Select_type):
1335 (chrono_literals::_Checked_integral_constant): Define.
1336 Simplify UDL operator templates and check for overflow.
1337 * testsuite/20_util/duration/literals/range.cc: New.
1339 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
1340 Jonathan Wakely <jwakely@redhat.com>
1343 * include/bits/parse_numbers.h: Use integral_constant to remove
1344 duplication and simplify.
1345 * testsuite/20_util/duration/literals/61166.cc: New.
1347 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1350 * include/std/type_traits (__make_unsigned, __make_signed): Define
1351 specializations for wchar_t, char16_t and char32_t.
1352 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
1353 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
1354 test for make_unsigned<volatile wchar_t>.
1355 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1357 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1359 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1361 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1364 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1366 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
1367 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
1368 * include/std/utility (tuple_size, tuple_element): Likewise.
1369 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1370 Adjust dg-error line number.
1372 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
1374 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
1375 (__tuple_element_t): Define.
1376 (tuple_element): Use __tuple_element_t.
1377 (__cv_tuple_size): Define.
1378 (tuple_size<cv _Tp>): Use __cv_tuple_size.
1379 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
1380 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
1381 (__tuple_compare): Remove size check, re-order parameters.
1382 (operator==, operator<): Use static_assert to check requirements.
1383 * include/std/functional (__volget): use __tuple_element_t.
1384 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
1385 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
1387 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
1390 * include/std/tuple (get, __tuple_compare): Qualify more calls to
1391 prevent ADL. Cast comparison results to bool.
1392 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
1393 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
1396 * include/debug/array (get): Qualify call to other get overload.
1397 * include/profile/array (get): Likewise.
1398 * include/std/array (get): Likewise.
1399 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
1400 * include/std/mutex (unique_lock, call_once): Use __addressof.
1401 (__unlock_impl): Remove unused template.
1402 (__try_to_lock): Declare inline.
1403 (__try_lock_impl::__do_try_lock): Qualify function calls.
1404 (lock): Avoid narrowing conversion.
1405 * testsuite/20_util/bind/60497.cc: New.
1406 * testsuite/23_containers/array/element_access/60497.cc: New.
1407 * testsuite/30_threads/call_once/60497.cc: New.
1408 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
1410 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
1412 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
1413 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
1414 * acinclude.m4 (libtool_VERSION): Bump.
1415 * configure: Regenerate.
1416 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
1417 * testsuite/28_regex/regex_error/base.cc: New.
1419 2014-05-08 Joshua Gay <jgay@gnu.org>
1422 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
1423 source" with "free software".
1424 * doc/html/faq.html: Likewise.
1426 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
1429 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
1431 (operator=(const ios_base&)): Likewise.
1432 * include/std/streambuf: Remove trailing whitespace.
1433 (basic_streambuf(const basic_streambuf&)): Fix initializer for
1434 _M_out_end. Define as defaulted for C++11.
1435 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
1436 (swap(basic_streambuf&)): Define for C++11.
1437 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
1440 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
1442 * include/std/iostream: Fix URL in comment.
1443 * src/c++98/ios_init.cc: Fix path in comment.
1445 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
1447 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
1448 * configure: Regenerate.
1450 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
1453 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
1454 comparison function.
1455 * testsuite/23_containers/set/cons/61023.cc: New.
1458 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
1460 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
1461 arithmetic to obtain a mutable iterator from const_iterator.
1462 * include/bits/vector.tcc (vector::insert): Likewise.
1463 * include/debug/vector (vector::erase): Likewise.
1464 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1465 Adjust dg-error line number.
1466 * testsuite/23_containers/vector/requirements/dr438/
1467 constructor_1_neg.cc: Likewise.
1468 * testsuite/23_containers/vector/requirements/dr438/
1469 constructor_2_neg.cc: Likewise.
1470 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1473 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
1475 * include/Makefile.in: Regenerate.
1477 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
1479 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1480 parameter to pass the 2 instances to check allocator equality.
1481 * include/debug/safe_container.h: New, define _Safe_container<>.
1482 * include/Makefile.am: Add previous.
1483 * include/debug/deque (std::__debug::deque<>): Inherit
1484 _Safe_container<>. Use default implementation for all special
1486 * include/debug/forward_list (std::__debug::forward_list<>):
1488 * include/debug/list (std::__debug::list<>): Likewise.
1489 * include/debug/map.h (std::__debug::map<>): Likewise.
1490 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1491 * include/debug/set.h (std::__debug::set<>): Likewise.
1492 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1493 * include/debug/string (std::__debug::basic_string<>): Likewise.
1494 * include/debug/unordered_map
1495 (std::__debug::unordered_map<>): Likewise.
1496 (std::__debug::unordered_multimap<>): Likewise.
1497 * include/debug/unordered_set
1498 (std::__debug::unordered_set<>): Likewise.
1499 (std::__debug::unordered_multiset<>): Likewise.
1500 * include/debug/vector (std::__debug::vector<>): Likewise.
1501 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1503 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1504 (~_Safe_sequence_base()): Add noexcept.
1505 * include/debug/safe_sequence.h
1506 (std::__debug::_Safe_node_sequence<>): New.
1507 * include/debug/safe_unordered_base.h
1508 (_Safe_unordered_container_base()): Add noexcept.
1509 (~_Safe_unordered_container_base()): Likewise.
1510 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1511 * include/debug/safe_unordered_container.h:
1512 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1513 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1514 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1516 * testsuite/util/debug/checks.h (check_construct1): Just implement
1517 an invalid constructor invocation and no other operations
1518 potentially not supported by some types of container.
1519 (check_construct2): Likewise.
1520 (check_construct3): Likewise.
1521 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1522 check on iterators to make sure they are correctly moved in debug
1524 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1526 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1527 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1528 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1529 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1531 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1532 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1534 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1535 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1536 * testsuite/23_containers/unordered_map/allocator/move.cc:
1538 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1540 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1542 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1544 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1546 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1548 * testsuite/23_containers/unordered_set/allocator/move.cc:
1550 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1552 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1554 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1556 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1558 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1560 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1562 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1563 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1564 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1565 * testsuite/23_containers/map/debug/move_neg.cc: New.
1566 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1567 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1568 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1569 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1570 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1571 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1572 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1573 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1574 * testsuite/23_containers/set/debug/move_neg.cc: New.
1575 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1577 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1579 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1580 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1582 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1584 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1586 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1588 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1590 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1592 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1594 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1596 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1597 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1599 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1601 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1602 (CXXABI_1.3.9): Remove __float128 symbols.
1604 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
1607 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1608 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1609 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1610 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1612 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1615 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1616 Check the correct type in the static assertion.
1617 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1619 2014-04-27 Tim Shen <timshen91@gmail.com>
1621 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1622 Add _S_opcode_repeat support to distingush a loop from
1623 _S_opcode_alternative.
1624 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1625 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1626 _StateSeq<>::_M_clone): Likewise.
1627 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1629 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1630 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1631 Uglify local variable __i.
1632 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1633 Use size_t instead of int to compare with vector::size().
1635 2014-04-27 Tim Shen <timshen91@gmail.com>
1637 * include/bits/regex_executor.h: Add _M_rep_count to track how
1638 many times this repeat node are visited.
1639 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1640 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1643 2014-04-27 Tim Shen <timshen91@gmail.com>
1645 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1646 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1647 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1648 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1649 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1650 Adjust debug NFA dump.
1652 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1655 * include/experimental/optional (operator!=): Implement in terms of
1657 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1658 * testsuite/experimental/optional/relops/2.cc: Likewise.
1659 * testsuite/experimental/optional/relops/3.cc: Likewise.
1660 * testsuite/experimental/optional/relops/4.cc: Likewise.
1661 * testsuite/experimental/optional/relops/5.cc: Likewise.
1662 * testsuite/experimental/optional/relops/6.cc: Likewise.
1664 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
1667 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1668 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1671 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
1673 * testsuite/util/testsuite_abi.cc (check_version): Update for
1676 2014-04-24 Tim Shen <timshen91@gmail.com>
1678 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1679 Do _M_alt before _M_next.
1680 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1682 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
1685 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1686 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1687 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1689 2014-04-24 Andreas Schwab <schwab@suse.de>
1691 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1692 new CXXABI_1.3.9 symbols.
1694 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1696 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1697 (CXXABI_1.3.9): New version.
1699 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
1702 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1703 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1704 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1706 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1708 * configure.host: Remove solaris2.9 handling.
1709 Change os_include_dir to os/solaris/solaris2.10.
1710 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1711 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1712 * configure: Regenerate.
1713 * config/abi/post/solaris2.9: Remove.
1714 * config/os/solaris/solaris2.9: Rename to ...
1715 * config/os/solaris/solaris2.10: ... this.
1716 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1719 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1720 Remove Solaris 9 reference.
1721 * doc/html/manual/configure.html: Regenerate.
1723 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1724 Remove *-*-solaris2.9 xfail.
1725 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1728 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1731 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
1733 * include/std/functional (__is_location_invariant): Use __or_ helper.
1735 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
1738 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1741 * include/std/atomic (atomic<_Tp>): Add static assertion.
1742 * testsuite/29_atomics/atomic/60695.cc: New.
1745 * include/std/functional (function::_Callable): Exclude own type
1746 from the callable checks.
1747 * testsuite/20_util/function/60594.cc: New.
1749 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1750 const to constexpr member functions.
1752 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1753 delegating constructor.
1754 * include/bits/shared_ptr_base.h
1755 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1757 * include/std/atomic: Uglify parameter names.
1760 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1761 1.cc: Fix invalid explicit instantiations with unqualified names.
1762 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1764 * testsuite/20_util/tuple/53648.cc: Likweise.
1765 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1767 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1769 * testsuite/23_containers/unordered_map/requirements/
1770 debug_container.cc: Likewise.
1771 * testsuite/23_containers/unordered_map/requirements/
1772 explicit_instantiation/3.cc: Likewise.
1773 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1775 * testsuite/23_containers/unordered_multimap/requirements/
1776 explicit_instantiation/3.cc: Likewise.
1777 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1779 * testsuite/23_containers/unordered_multiset/requirements/
1780 explicit_instantiation/3.cc: Likewise.
1781 * testsuite/23_containers/unordered_set/requirements/
1782 debug_container.cc: Likewise.
1783 * testsuite/23_containers/unordered_set/requirements/
1784 explicit_instantiation/3.cc: Likewise.
1786 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1787 not use uninitialized members in mem-initializers.
1788 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1789 * testsuite/util/testsuite_common_types.h: Update comment.
1791 * include/experimental/string_view: Fix inconsistent exception specs.
1793 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1794 Remove name of unused parameter.
1796 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
1798 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1799 _Vector_base::_M_allocate): NullablePointer requirements do not
1800 include initialization from literal zero, use value-initialization.
1801 * include/bits/vector.tcc (vector::_M_insert_aux,
1802 vector::_M_explace_back_aux): Likewise for assignment.
1804 * include/bits/allocator.h (operator==, operator!=): Add exception
1808 * include/std/tuple (get): Qualify calls to prevent ADL.
1809 * testsuite/20_util/tuple/60497.cc: New.
1811 * include/std/tuple (tuple_element_t): Define.
1812 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1814 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1816 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1819 * include/bits/stl_iterator.h (move_iterator::reference,
1820 move_iterator::operator*): Implement LWG 2106.
1821 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1823 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1825 * include/std/complex (__complex_exp, pow): Specify the template
1826 parameter in calls to std::polar, for expression templates.
1828 2014-04-10 Andreas Schwab <schwab@suse.de>
1830 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1832 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1833 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1835 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1837 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1839 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1840 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1841 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1844 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1845 Jack Howarth <howarth@bromo.med.uc.edu>
1848 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1851 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1853 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1855 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1857 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1858 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1859 * doc/xml/manual/concurrency_extensions.xml
1860 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1861 * doc/html/*: Regenerate.
1863 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1864 Jonathan Wakely <jwakely@redhat.com>
1867 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1868 string if input is not quoted.
1869 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1871 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1873 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1875 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1877 * testsuite/18_support/exception_ptr/60612-terminate.cc
1878 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1879 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1881 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1883 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1885 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1886 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1888 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1890 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1892 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1893 Fix bad s/part/chapter/ substitutions.
1894 * doc/xml/manual/io.xml (std.io): Likewise.
1895 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1896 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1898 * doc/html/*: Regenerate.
1900 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1903 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1904 compatible with __cxa_exception.
1905 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1906 Fix typos in comments.
1907 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1908 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1910 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1913 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1914 Use sizeof pointer type not the element type.
1915 * testsuite/29_atomics/atomic/60658.cc: New.
1917 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1919 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1920 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1921 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1922 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1923 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1924 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1925 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1926 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1927 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1928 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1931 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1933 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1935 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1937 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1938 to delegated constructor.
1939 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1940 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1943 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1945 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1948 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1950 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1953 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1954 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1956 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1957 from different types of debug container. Use _Is_contiguous_sequence
1958 instead of is_lvalue_reference.
1959 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1960 dereferencing past-the-end iterator.
1961 (__foreign_iterator_aux4): Use const value_type* instead of
1962 potentially user-defined const_pointer type.
1963 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1964 and pass end iterator to __gnu_debug::__foreign_iterator.
1965 (__glibcxx_check_insert_range_after): Likewise.
1966 (__glibcxx_check_max_load_factor): Fix comment.
1967 * include/debug/vector (_Is_contiguous_sequence): Define partial
1969 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1970 -std=gnu++11 option and unused header.
1971 * testsuite/23_containers/vector/debug/60587.cc: New.
1972 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1974 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1976 * crossconfig.m4: Support spu-*-elf* targets.
1977 * configure: Regenerate.
1979 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1982 * include/std/future (__future_base::_Task_state<>): Change
1983 constructors to template functions using perfect forwarding.
1984 (__create_task_state): Use decayed type as stored task.
1985 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1986 * testsuite/30_threads/packaged_task/60564.cc: New.
1988 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1990 * scripts/create_testsuite_files: Add testsuite/experimental in
1991 the list of folders to search for tests.
1993 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1995 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1997 2014-03-15 Tim Shen <timshen91@gmail.com>
1999 * include/bits/regex.h: Add/modify comments.
2000 * include/bits/regex_compiler.h: Likewise.
2001 * include/bits/regex_executor.h: Likewise.
2002 * include/bits/regex_executor.tcc: Likewise.
2003 * include/bits/regex_scanner.h: Likewise.
2005 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
2008 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
2009 _ZNSt12system_errorC* symbols which are not exported on any target.
2011 2014-03-12 Roland McGrath <mcgrathr@google.com>
2012 Mark Seaborn <mseaborn@google.com>
2015 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
2016 the address of a null pointer, not with a null pointer to pointer.
2017 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
2018 * testsuite/18_support/bad_exception/59392.cc: New file.
2020 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
2023 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
2025 * include/debug/map (map::operator=(map&&)): Likewise.
2026 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
2027 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
2028 * include/debug/set (set::operator=(set&&)): Likewise.
2029 * include/debug/unordered_map
2030 (unordered_map::operator=(unordered_map&&)): Likewise.
2031 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
2032 * include/debug/unordered_set
2033 (unordered_set::operator=(unordered_set&&)): Likewise.
2034 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
2035 * include/debug/vector (vector::operator=(vector&&)): Likewise.
2036 * testsuite/23_containers/forward_list/debug/60499.cc: New
2037 * testsuite/23_containers/map/debug/60499.cc: New
2038 * testsuite/23_containers/multimap/debug/60499.cc: New
2039 * testsuite/23_containers/multiset/debug/60499.cc: New
2040 * testsuite/23_containers/set/debug/60499.cc: New
2041 * testsuite/23_containers/unordered_map/debug/60499.cc: New
2042 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
2043 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
2044 * testsuite/23_containers/unordered_set/debug/60499.cc: New
2045 * testsuite/23_containers/vector/debug/60499.cc: New
2047 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
2049 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
2050 for filesystem and fundamentals TS work items.
2052 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
2055 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
2056 Adjust dg-error directives.
2058 2014-02-26 Tim Shen <timshen91@gmail.com>
2060 * include/bits/regex.tcc (match_results<>::format,
2061 regex_replace<>): Update __out after calling std::copy.
2062 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
2064 * testsuite/28_regex/match_results/format.cc: Likewise.
2066 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
2069 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
2070 allocator_type&)): Remove redundant call to _M_initialize_map.
2071 (deque::deque(const allocator_type&)): Initialize _Base with a
2072 constructor that calls _M_initialize_map.
2076 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
2078 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
2081 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
2083 Rename testsuite directory shared_mutex to shared_timed_mutex
2085 * testsuite/30_threads/shared_mutex: Moved to...
2086 * testsuite/30_threads/shared_timed_mutex: ...here
2088 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
2090 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
2091 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
2092 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
2093 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
2094 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
2095 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
2096 * testsuite/30_threads/shared_lock/requirements/
2097 explicit_instantiation.cc: Ditto.
2098 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
2099 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
2100 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
2101 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
2102 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
2103 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
2104 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
2105 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
2106 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
2107 * testsuite/30_threads/shared_mutex/requirements/
2108 standard_layout.cc: Ditto.
2109 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
2110 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
2111 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
2112 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
2113 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
2115 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2117 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
2118 execution on i?86-*-solaris2.9, remove comment.
2119 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2121 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
2123 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
2124 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
2125 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
2127 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
2129 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
2130 not use varargs when argument could be non-POD.
2131 (__alloctr_rebind_helper): Eliminate static const bool member by
2132 using true_type and false_type.
2133 (allocator_traits::__allocate_helper): Likewise.
2134 (allocator_traits::__construct_helper): Likewise.
2135 (allocator_traits::__destroy_helper): Likewise.
2136 (allocator_traits::__maxsize_helper): Likewise.
2137 (allocator_traits::__select_helper): Likewise.
2138 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
2139 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
2140 Remove redundant condition.
2141 * include/bits/stl_vector.h (vector::operator=(const vector&)):
2143 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
2144 indirection through __alloc_traits.
2145 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
2146 Eliminate static const bool members by using true_type and false_type.
2147 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
2148 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
2149 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
2151 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
2154 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
2155 (vector::_M_data_ptr): New overloaded functions to ensure empty
2156 vectors do not dereference the pointer.
2157 * testsuite/23_containers/vector/59829.cc: New.
2158 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2159 Adjust dg-error line number.
2160 * testsuite/23_containers/vector/requirements/dr438/
2161 constructor_1_neg.cc: Likewise.
2162 * testsuite/23_containers/vector/requirements/dr438/
2163 constructor_2_neg.cc: Likewise.
2164 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2168 * include/ext/array_allocator.h: Add deprecated attribute.
2171 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
2172 installation and use of python printers.
2173 * doc/xml/manual/status_cxx2011.xml: Update.
2174 * doc/html/*: Regenerate.
2176 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
2177 Kyle Lippincott <spectral@google.com>
2180 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
2181 constructor and grant friendship to weak_ptr.
2182 (weak_ptr::lock()): Use new constructor.
2183 * include/bits/shared_ptr_base.h
2184 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
2185 and define specializations.
2186 (__shared_count): Add new non-throwing constructor.
2187 (__shared_ptr): Add new non-throwing constructor and grant friendship
2189 (__weak_ptr::lock()): Use new constructor.
2190 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
2191 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
2193 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
2196 * include/bits/shared_ptr_base.h
2197 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
2200 2014-01-27 Jason Merrill <jason@redhat.com>
2205 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
2206 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
2207 (__cxa_allocate_exception): Don't set it here.
2209 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
2211 * include/bits/stl_map.h: Remove anachronistic comment.
2212 * include/bits/stl_multimap.h: Add whitespace.
2213 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
2214 -std=gnu++11 instead of -std=c++11.
2215 * testsuite/23_containers/map/operators/2.cc: Likewise.
2216 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
2217 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
2218 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
2220 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
2221 * configure: Regenerate.
2223 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2226 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
2227 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
2229 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2230 Peter A. Bigot <pab@pabigot.com>
2233 * include/experimental/string_view
2234 (copy(_CharT*, size_type, size_type) const): Correct throw string.
2235 Correct copy start location.
2237 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2238 Peter A. Bigot <pab@pabigot.com>
2241 * include/experimental/string_view (operator[](size_type) const):
2242 Fix one-off index error in debug check.
2243 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
2244 test basic_string_view at size().
2245 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
2247 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2248 Peter A. Bigot <pab@pabigot.com>
2251 * include/experimental/string_view
2252 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
2253 * testsuite/experimental/string_view/operations/substr/char/1.cc:
2254 Comment out catch of out_of_range; No terminating null
2255 in basic_string_view. Check begin == end.
2256 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
2259 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
2262 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
2263 constructor to prevent it being implicitly defined as deleted, but
2264 do not copy anything.
2265 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
2266 Define copy and move constructors similar to _Safe_sequence_base's.
2267 * testsuite/23_containers/unordered_map/59548.cc: New.
2269 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2270 Steve Ellcey <sellcey@mips.com>
2272 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
2274 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
2275 * (configure, config.h.in): Regenerate.
2276 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
2278 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
2280 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
2281 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
2284 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
2285 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
2287 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
2289 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
2290 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
2291 functions to perform moving or copying of elements from rvalue tree.
2292 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
2293 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
2294 * testsuite/23_containers/map/59872.cc: New.
2295 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
2297 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
2299 * include/bits/stl_deque.h (_Deque_impl): Move comment.
2302 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
2303 Split into separate default constructor and constructor taking
2305 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
2306 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
2308 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
2309 * include/debug/list (list::list(const _Allocator&)): Likewise.
2310 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
2312 * include/debug/multimap.h
2313 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2314 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
2316 * include/debug/multiset.h
2317 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2318 * include/debug/vector (vector::vector(const allocator_type&)):
2320 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
2321 * include/profile/list (list::list(const _Allocator&)): Likewise.
2322 * include/profile/map.h
2323 (map::map(const _Compare&, const _Allocator&)): Likewise.
2324 * include/profile/multimap.h
2325 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2326 * include/profile/set.h
2327 (set::set(const _Compare&, const _Allocator&)): Likewise.
2328 * include/profile/multiset.h
2329 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2330 * include/profile/vector (vector::vector(const _Allocator&)):
2332 * testsuite/23_containers/deque/58764.cc: New.
2333 * testsuite/23_containers/list/58764.cc: New.
2334 * testsuite/23_containers/map/58764.cc: New.
2335 * testsuite/23_containers/multimap/58764.cc: New.
2336 * testsuite/23_containers/set/58764.cc: New.
2337 * testsuite/23_containers/multiset/58764.cc: New.
2338 * testsuite/23_containers/vector/58764.cc: New.
2339 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2340 Adjust dg-error line number.
2341 * testsuite/23_containers/deque/requirements/dr438/
2342 constructor_1_neg.cc: Likewise.
2343 * testsuite/23_containers/deque/requirements/dr438/
2344 constructor_2_neg.cc: Likewise.
2345 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2347 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2349 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2351 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2353 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2355 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2357 * testsuite/23_containers/vector/requirements/dr438/
2358 constructor_1_neg.cc: Likewise.
2359 * testsuite/23_containers/vector/requirements/dr438/
2360 constructor_2_neg.cc: Likewise.
2361 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2364 PR libstdc++/58764 (again)
2365 * include/bits/stl_list.h (list): Make default constructor's exception
2366 specification conditional.
2367 * include/bits/stl_vector.h (vector): Likewise.
2368 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
2369 to default constructor.
2370 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2371 Adjust dg-error line number.
2372 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2374 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2376 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2378 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2380 * testsuite/23_containers/vector/requirements/dr438/
2381 constructor_1_neg.cc: Likewise.
2382 * testsuite/23_containers/vector/requirements/dr438/
2383 constructor_2_neg.cc: Likewise.
2384 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2387 2014-01-21 Tim Shen <timshen91@gmail.com>
2389 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
2390 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
2391 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
2393 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
2396 * include/bits/hashtable.h (__cache_default): Do not depend on
2397 whether the hash function is DefaultConstructible or CopyAssignable.
2398 (_Hashtable): Adjust static assertions.
2399 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
2400 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2401 dg-error line number.
2402 * testsuite/23_containers/unordered_set/
2403 not_default_constructible_hash_neg.cc: Remove.
2405 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
2407 * scripts/create_testsuite_files: Add testsuite/experimental in
2408 the list of folders to search for tests.
2409 * include/experimental/string_view
2410 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
2411 incompatible with constexpr qualifier.
2412 (basic_string_view<>::front()): Likewise.
2413 (basic_string_view<>::back()): Likewise.
2414 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
2415 Merge dg-options directives into one.
2416 * testsuite/experimental/string_view/element_access/char/2.cc:
2417 Likewise. Remove invalid experimental namespace scope on
2420 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
2423 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
2424 friendship to _Local_iterator_base<..., false>.
2425 (_Local_iterator_base): Give protected access to all existing members.
2426 (_Local_iterator_base::_M_curr()): New public accessor.
2427 (_Local_iterator_base::_M_get_bucket()): New public accessor.
2428 (_Local_iterator_base<..., false>::_M_init()): New function to manage
2429 the lifetime of the _Hash_code_base explicitly.
2430 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
2431 (_Local_iterator_base<..., false>): Define copy constructor and copy
2432 assignment operator that use new functions to manage _Hash_code_base.
2433 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
2434 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
2435 Use public API for _Local_iterator_base.
2436 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
2437 * include/debug/unordered_map (__debug::unordered_map::erase(),
2438 __debug::unordered_multimap::erase()): Likewise.
2439 * include/debug/unordered_set (__debug::unordered_set::erase(),
2440 __debug::unordered_multiset::erase()): Likewise.
2441 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
2443 2014-01-19 Tim Shen <timshen91@gmail.com>
2445 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
2446 Fix parse error of multiple consecutive quantifiers like "a**".
2447 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
2449 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
2451 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
2453 * include/profile/set.h (set): Implement C++11 allocator-aware
2454 container requirements.
2455 * include/profile/map.h (map): Likewise.
2456 * include/profile/multiset.h (multiset): Likewise.
2457 * include/profile/multimap.h (multimap): Likewise.
2458 * include/profile/set.h
2459 (set::operator=(const set&)): Define as default in C++11 mode.
2460 (set::operator=(set&&)): Likewise.
2461 * include/profile/map.h
2462 (map::operator=(const map&)): Likewise.
2463 (map::operator=(map&&)): Likewise.
2464 * include/profile/multiset.h
2465 (multiset::operator=(const multiset&)): Likewise.
2466 (multiset::operator=(multiset&&)): Likewise.
2467 * include/profile/multimap.h
2468 (multimap::operator=(const multimap&)): Likewise.
2469 (multimap::operator=(multimap&&)): Likewise.
2470 * include/profile/set.h (set::operator=(std::initializer_list<>)):
2471 Rely on the same operator from normal mode.
2472 * include/profile/map.h (map::operator=(std::initializer_list<>)):
2474 * include/profile/multiset.h
2475 (multiset::operator=(std::initializer_list<>)): Likewise.
2476 * include/profile/multimap.h
2477 (multimap::operator=(std::initializer_list<>)): Likewise.
2478 * include/profile/set.h (set::swap(set&)): Add noexcept
2480 * include/profile/map.h (map::swap(map&)): Likewise.
2481 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2482 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2484 2014-01-17 Tim Shen <timshen91@gmail.com>
2486 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2488 * include/bits/regex_automaton.h: Do not use std::set.
2489 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2490 _BracketMatcher<>::_M_add_collating_element(),
2491 _BracketMatcher<>::_M_add_equivalence_class(),
2492 _BracketMatcher<>::_M_make_range()): Likewise.
2493 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2495 * include/bits/regex_executor.h: Do not use std::queue.
2496 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2497 _Executor<>::_M_dfs()): Likewise.
2498 * include/std/regex: Remove <map>, <set> and <queue>.
2500 2014-01-17 Tim Shen <timshen91@gmail.com>
2502 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2503 basic_regex<>::assign()): Change __compile_nfa to accept
2505 * include/bits/regex_compiler.h: Change _Compiler's template
2506 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2507 * include/bits/regex_compiler.tcc: Likewise.
2509 2014-01-17 Tim Shen <timshen91@gmail.com>
2511 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2513 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2514 _ScannerBase from _Scanner; Change _Scanner's template argument from
2515 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2517 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2518 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2519 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2521 * include/std/regex: Add <cstring> for using strchr.
2523 2014-01-17 Tim Shen <timshen91@gmail.com>
2525 * bits/regex_automaton.tcc: Indentation fix.
2526 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2527 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2528 _BracketMatcher<>): Add bool option template parameters and
2529 specializations to make matching more efficient and space saving.
2530 * bits/regex_compiler.tcc: Likewise.
2532 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
2535 * include/bits/hashtable_policy.h: Fix some long lines.
2536 * include/bits/hashtable.h (__hash_code_base_access): Define and
2537 use it to check its _M_bucket_index noexcept qualification. Use
2539 (__access_protected_ctor): ...this.
2540 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2542 * testsuite/23_containers/unordered_set/
2543 not_default_constructible_hash_neg.cc: Likewise.
2545 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
2547 * include/debug/set.h (set): Implement C++11 allocator-aware
2548 container requirements.
2549 * include/debug/map.h (map): Likewise.
2550 * include/debug/multiset.h (multiset): Likewise.
2551 * include/debug/multimap.h (multimap): Likewise.
2552 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2553 fix implementation regarding management of safe iterators.
2554 * include/debug/map.h (map::operator=(map&&)): Likewise.
2555 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2556 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2558 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2559 Rely on the same operator from normal mode.
2560 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2562 * include/debug/multiset.h
2563 (multiset::operator=(std::initializer_list<>)): Likewise.
2564 * include/debug/multimap.h
2565 (multimap::operator=(std::initializer_list<>)): Likewise.
2566 * include/debug/set.h (set::swap(set&)): Add noexcept
2567 specification, add allocator equality check.
2568 * include/debug/map.h (map::swap(map&)): Likewise.
2569 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2570 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2572 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
2575 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2576 and stylistic improvements.
2577 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2578 and update for C++11.
2579 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2582 * doc/xml/manual/backwards_compatibility.xml
2583 (backwards.third.nocreate_noreplace): Correct and expand.
2586 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2588 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
2591 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2592 support for non-Movable types.
2595 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2597 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
2599 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2600 *this allocator instance when building temporary vector instance
2601 so that *this allocator does not get moved.
2602 * include/debug/safe_base.h
2603 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2604 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2605 move constructor from _Safe_sequence_base.
2606 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2607 safe iterators if the instance is moved.
2608 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2609 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2610 check on a vector iterator.
2611 * testsuite/23_containers/vector/allocator/move_assign.cc
2613 (test03): New, test with a non-propagating allocator.
2614 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2616 2014-01-07 Tim Shen <timshen91@gmail.com>
2618 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2619 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2620 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2621 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2622 _BracketMatcher<>::_M_add_char(),
2623 _BracketMatcher<>::_M_add_collating_element(),
2624 _BracketMatcher<>::_M_add_equivalence_class(),
2625 _BracketMatcher<>::_M_add_character_class(),
2626 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2627 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2628 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2629 to template parameter; Add cache for _BracketMatcher. Adjust
2630 declarations from here...
2631 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2632 imbuing a regex will trigger a recompilation to rebuild the cache.
2633 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2634 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2635 different template bool parameters.
2636 * include/bits/regex_executor.h: Remove unnecessary declarations.
2637 * include/std/regex: Adjust including orders.
2638 * testsuite/28_regex/traits/char/user_defined.cc: New.
2639 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2641 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2643 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2644 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2645 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2646 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2647 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2649 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2651 Update copyright years
2653 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2655 * testsuite/18_support/new_handler.cc,
2656 testsuite/18_support/terminate_handler.cc,
2657 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2658 the copyright notice.
2660 Copyright (C) 2014 Free Software Foundation, Inc.
2662 Copying and distribution of this file, with or without modification,
2663 are permitted in any medium without royalty provided the copyright
2664 notice and this notice are preserved.