12015-12-16 Jonathan Wakely <jwakely@redhat.com> 2 3 PR libstdc++/68912 4 * include/std/functional (_Bind::operator()): Use lvalue functor to 5 deduce return type. 6 * testsuite/20_util/bind/68912.cc: New. 7 8 Backport from mainline 9 2015-12-02 Jonathan Wakely <jwakely@redhat.com> 10 11 PR libstdc++/56383 12 * testsuite/20_util/enable_shared_from_this/56383.cc: New. 13 * include/bits/shared_ptr_base.h (__enable_shared_from_this): Make 14 friend declaration match previous declaration of 15 __enable_shared_from_this_helper. 16 * include/bits/shared_ptr.h (enable_shared_from_this): Likewise. 17 182015-12-15 Tim Shen <timshen@google.com> 19 20 Backport from mainline 21 2015-12-15 Tim Shen <timshen@google.com> 22 23 PR libstdc++/68863 24 * include/bits/regex_executor.tcc (_Executor::_M_lookahead): 25 Copy the captured content for lookahead, so that the backreferences 26 inside can refer to them. 27 * testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc: 28 New testcase. 29 302015-10-02 Jonathan Wakely <jwakely@redhat.com> 31 32 PR libstdc++/65142 33 * src/c++11/random.cc (random_device::_M_getval()): Check read result 34 and retry after short reads. 35 362015-09-03 Jonathan Wakely <jwakely@redhat.com> 37 38 Backport from mainline 39 2015-04-27 Dmitry Prokoptsev <dprokoptsev@gmail.com> 40 Michael Hanselmann <public@hansmi.ch> 41 42 PR libstdc++/62258 43 * libsupc++/eh_ptr.cc (rethrow_exception): Increment count of 44 uncaught exceptions. 45 * testsuite/18_support/exception_ptr/62258.cc: New. 46 472015-08-28 Tim Shen <timshen@google.com> 48 49 Backport from mainline 50 2015-08-28 Tim Shen <timshen@google.com> 51 52 PR libstdc++/67362 53 * include/bits/regex_scanner.tcc (_Scanner<>::_M_scan_normal): 54 Always returns ordinary char token if the char isn't 55 considered a special char. 56 * testsuite/28_regex/regression.cc: New test file for collecting 57 regression testcases from, typically, bugzilla. 58 592015-08-05 Tim Shen <timshen@google.com> 60 61 Backported from mainline 62 2015-07-29 Tim Shen <timshen@google.com> 63 64 PR libstdc++/67015 65 * include/bits/regex_compiler.h (_Compiler<>::_M_expression_term, 66 _BracketMatcher<>::_M_add_collating_element): Change signature 67 to make checking the and of bracket expression easier. 68 * include/bits/regex_compiler.tcc (_Compiler<>::_M_expression_term): 69 Treat '-' as a valid literal if it's at the end of bracket expression. 70 * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc: 71 New testcases. 72 732015-06-26 Release Manager 74 75 * GCC 4.9.3 released. 76 772015-06-16 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> 78 79 PR target/66200 80 * configure.host (host_cpu): Add aarch64 case. 81 * config/cpu/aarch64/atomic_word.h: New file. 82 832015-06-10 Jonathan Wakely <jwakely@redhat.com> 84 85 Backport from mainline 86 2015-01-20 Jonathan Wakely <jwakely@redhat.com> 87 88 PR libstdc++/64650 89 * include/experimental/optional (bad_optional_access): Add default 90 constructor. 91 * testsuite/experimental/optional/requirements.cc: Test for default 92 constructor. 93 942015-06-08 Jonathan Wakely <jwakely@redhat.com> 95 96 Backported from mainline 97 2015-06-01 Jonathan Wakely <jwakely@redhat.com> 98 99 * testsuite/lib/libstdc++.exp (libstdc++_init): Unset LANGUAGE 100 environment variable. 101 102 PR libstdc++/66354 103 * include/bits/stl_algobase.h (__fill_a): Check length before calling 104 memset. 105 106 PR libstdc++/66327 107 * include/bits/stl_algobase.h (__equal<true>::equal): Do not call 108 memcmp for empty ranges. 109 (__lexicographical_compare<true>::__lc): Likewise. 110 111 Backport from mainline 112 2015-04-13 Jonathan Wakely <jwakely@redhat.com> 113 114 * doc/xml/manual/evolution.xml: Document changes since 4.5 release. 115 * doc/html/*: Regenerate. 116 1172015-06-05 Tim Shen <timshen@google.com> 118 119 PR libstdc++/66359 120 Backport from mainline 121 2014-11-13 Tim Shen <timshen@google.com> 122 123 PR libstdc++/63775 124 * include/bits/regex_compiler.h (_Compiler<>::_M_expression_term, 125 _BracketMatcher<>::_M_make_range): Throw regex_erorr on invalid range 126 like [z-a]. Change _M_expression_term interface. 127 * include/bits/regex_compiler.tcc ( 128 _Compiler<>::_M_insert_bracket_matcher, 129 _Compiler<>::_M_expression_term): Rewrite bracket expression parsing. 130 * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc: 131 Add testcases and move file out of extended. 132 1332015-06-04 Renlin Li <renlin.li@arm.com> 134 135 Backported from mainline 136 2015-06-02 Renlin Li <renlin.li@arm.com> 137 138 * testsuite/27_io/fpos/14775.cc: Add _GLIBCXX_HAVE_LIMIT_FSIZE check. 139 1402015-05-28 Jonathan Wakely <jwakely@redhat.com> 141 142 PR libstdc++/65352 143 * include/profile/array (array::data): Use __array_traits::_S_ptr. 144 * include/debug/array (array::data): Likewise. 145 * include/std/array (__array_traits::_S_ptr): New function. 146 (array::data): Use _S_ptr to avoid creating invalid reference. 147 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust 148 dg-error line numbers. 149 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: 150 likewise. 151 152 Backport from mainline 153 2015-01-20 Jonathan Wakely <jwakely@redhat.com> 154 155 PR libstdc++/64658 156 * include/std/atomic (atomic_init): Define. 157 * testsuite/29_atomics/atomic/64658.cc: New. 158 159 Backport from mainline 160 2014-12-22 Jonathan Wakely <jwakely@redhat.com> 161 162 PR libstdc++/37522 163 * include/bits/basic_string.h (stod, stof, stoi, stol, stold, stoll, 164 stoul, stoull, to_string): Only use _GLIBCXX_HAVE_BROKEN_VSWPRINTF 165 to guard definition of to_wstring. 166 1672015-05-22 David Edelsohn <dje.gcc@gmail.com> 168 169 Backport from mainline 170 2015-05-21 David Edelsohn <dje.gcc@gmail.com> 171 172 PR target/66224 173 * config/cpu/powerpc/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER): 174 Don't use isync. Use lwsync if available. 175 1762015-05-07 Renlin Li <renlin.li@arm.com> 177 178 Backported from mainline 179 2015-04-22 Renlin Li <renlin.li@arm.com> 180 181 * testsuite/lib/dg-options.exp (dg-require-thread-fence): New. 182 * testsuite/lib/libstdc++.exp (check_v3_target_thread_fence): New. 183 * testsuite/29_atomics/atomic_flag/clear/1.cc: Use it. 184 * testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Likewise. 185 * testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Likewise. 186 1872015-04-11 Jonathan Wakely <jwakely@redhat.com> 188 189 * testsuite/30_threads/shared_lock/cons/5.cc: Remove 190 dg-require-gthreads-timed. 191 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise. 192 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise. 193 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise. 194 195 Backport from mainline 196 2015-04-10 Jonathan Wakely <jwakely@redhat.com> 197 198 * include/std/shared_mutex (shared_timed_mutex): Add comments to 199 explain the logic in the non-pthread_rwlock_t version. 200 (_Mutex): Remove redundant type. 201 (_M_n_readers): Rename to _S_max_readers. 202 (_M_write_entered, _M_readers): New convenience functions. 203 (lock, lock_shared, try_lock_shared, unlock_shared): Use convenience 204 functions. Use predicates with condition variables. Simplify bitwise 205 operations. 206 (try_lock_for, try_shared_lock_for): Convert duration to time_point 207 and call try_lock_until or try_shared_lock_until respectively. 208 (try_lock_until, try_shared_lock_until): Wait on the condition 209 variables until the specified time passes. 210 (unlock): Add Debug Mode assertion. 211 (unlock_shared): Add Debug Mode assertion. 212 * testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: New. 213 214 Backport from mainline 215 2015-03-27 Jonathan Wakely <jwakely@redhat.com> 216 217 PR libstdc++/65499 218 * include/std/chrono: Add using-directive for literals to std::chrono. 219 * testsuite/20_util/duration/literals/65499.cc: New. 220 221 Backport from mainline 222 2015-03-26 Jonathan Wakely <jwakely@redhat.com> 223 224 PR libstdc++/58038 225 * include/std/thread (this_thread::sleep_for): Check for negative 226 durations. 227 (this_thread::sleep_until): Check for times in the past. 228 * testsuite/30_threads/this_thread/58038.cc: New. 229 * testsuite/30_threads/this_thread/60421.cc: New. 230 2312015-03-25 Jonathan Wakely <jwakely@redhat.com> 232 233 Backport from mainline 234 2015-03-02 Jonathan Wakely <jwakely@redhat.com> 235 PR libstdc++/65279 236 * include/std/scoped_allocator (__inner_type_impl, 237 scoped_allocator_adaptor): Add defaulted copy assignment and move 238 assignment operators. 239 * testsuite/20_util/scoped_allocator/65279.cc: New. 240 2412015-03-25 Paolo Carlini <paolo.carlini@oracle.com> 242 243 PR libstdc++/65543 244 * include/std/istream (operator>>(basic_istream<>&&, _Tp&): Revert 245 thinko in r150387. 246 * include/std/ostream (operator<<(basic_ostream<>&&, const _Tp&): 247 Likewise. 248 * testsuite/27_io/rvalue_streams-2.cc: New. 249 2502015-02-03 Tim Shen <timshen@google.com> 251 252 PR libstdc++/64680 253 Backported from mainline 254 2015-01-22 Tim Shen <timshen@google.com> 255 256 * include/bits/regex.h (basic_regex<>::basic_regex, 257 basic_regex<>::operator=, basic_regex<>::imbue): Conform to the 258 standard interface. 259 * testsuite/28_regex/basic_regex/assign/char/cstring.cc: New testcase. 260 2612015-02-03 Tim Shen <timshen@google.com> 262 263 PR libstdc++/64649 264 Backported from mainline 265 2015-01-22 Tim Shen <timshen@google.com> 266 267 * include/bits/regex.tcc (regex_traits<>::lookup_collatename, 268 regex_traits<>::lookup_classname): Correctly narrow input chars. 269 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New testcase. 270 2712015-01-19 Tim Shen <timshen@google.com> 272 273 PR libstdc++/64649 274 Backported from mainline 275 2015-01-19 Tim Shen <timshen@google.com> 276 277 * include/bits/regex.tcc (regex_traits<>::lookup_collatename, 278 regex_traits<>::lookup_classname): Support forward iterators. 279 * testsuite/28_regex/traits/char/lookup_classname.cc: New testcases. 280 * testsuite/28_regex/traits/char/lookup_collatename.cc: New testcase. 281 2822015-01-19 Tim Shen <timshen@google.com> 283 284 PR libstdc++/64584 285 PR libstdc++/64585 286 * include/bits/regex.h (basic_regex<>::basic_regex, 287 basic_regex<>::assign, basic_regex<>::imbue, 288 basic_regex<>::swap, basic_regex<>::mark_count): Drop NFA after 289 imbuing basic_regex; Make assign() transactional against exception. 290 * testsuite/28_regex/basic_regex/assign/char/string.cc: New testcase. 291 * testsuite/28_regex/basic_regex/imbue/string.cc: New testcase. 292 2932015-01-18 Jonathan Wakely <jwakely@redhat.com> 294 295 PR libstdc++/64646 296 * include/bits/stl_algo.h (__is_permutation): Also test for reaching 297 end of the second range. 298 * testsuite/25_algorithms/is_permutation/64646.cc: New. 299 3002015-01-09 Jonathan Wakely <jwakely@redhat.com> 301 302 PR libstdc++/64476 303 * include/bits/stl_uninitialized.h (uninitialized_copy): Fix 304 is_assignable arguments. 305 * testsuite/20_util/specialized_algorithms/uninitialized_copy/64476.cc: 306 New. 307 3082015-01-09 Jonathan Wakely <jwakely@redhat.com> 309 310 PR libstdc++/60966 311 * include/std/future (packaged_task::operator()): Increment the 312 reference count on the shared state until the function returns. 313 3142015-01-09 Tim Shen <timshen@google.com> 315 316 PR libstdc++/64239 317 Backported form mainline 318 2015-01-09 Tim Shen <timshen@google.com> 319 320 * include/bits/regex.h (match_results<>::swap): Use std::swap 321 instead of swap. 322 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier): 323 Likewise. 324 * testsuite/28_regex/match_results/swap.cc: New testcase. 325 3262014-12-17 Tim Shen <timshen@google.com> 327 328 PR libstdc++/64302 329 PR libstdc++/64303 330 Backported form mainline 331 2014-12-17 Tim Shen <timshen@google.com> 332 333 * include/bits/regex.h (match_results::cbegin, match_results::cend, 334 regex_token_iterator::regex_token_iterator, 335 regex_token_iterator::_M_normalize_result): Fix match_results cbegin 336 and cend and regex_token_iterator::_M_result invariant. 337 * include/bits/regex.tcc: Fix regex_token_iterator::_M_result invariant. 338 * testsuite/28_regex/iterators/regex_token_iterator/64303.cc: Testcase. 339 3402014-12-13 Tim Shen <timshen@google.com> 341 342 PR libstdc++/64239 343 * include/bits/regex.h (match_results<>::match_results, 344 match_results<>::operator=, match_results<>::position, 345 match_results<>::swap): Fix ctor/assign/swap. 346 * include/bits/regex.tcc: (__regex_algo_impl<>, 347 regex_iterator<>::operator++): Set match_results::_M_begin as 348 "start position". 349 * testsuite/28_regex/iterators/regex_iterator/char/ 350 string_position_01.cc: Test cases. 351 3522014-12-09 Jonathan Wakely <jwakely@redhat.com> 353 354 PR libstdc++/64203 355 * include/std/shared_mutex: Fix preprocessor conditions. 356 * testsuite/experimental/feat-cxx14.cc: Check conditions. 357 3582014-12-06 Jonathan Wakely <jwakely@redhat.com> 359 360 PR libstdc++/63840 361 * include/std/functional (function::function(const function&)): Set 362 _M_manager after operations that might throw. 363 * include/tr1/functional (function::function(const function&), 364 function::function(_Functor, _Useless)): Likewise. 365 * testsuite/20_util/function/63840.cc: New. 366 * testsuite/tr1/3_function_objects/function/63840.cc: New. 367 368 PR libstdc++/61947 369 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to 370 disambiguate unary constructors. 371 (_Tuple_impl): Pass allocator_arg_t arguments. 372 * testsuite/20_util/tuple/61947.cc: New. 373 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line. 374 3752014-12-06 Tim Shen <timshen@google.com> 376 377 PR libstdc++/64140 378 Backport form mainline 379 2014-12-04 Tim Shen <timshen@google.com> 380 381 * include/bits/regex.tcc (regex_iterator<>::operator++): Update 382 prefix.matched after modifying prefix.first. 383 * testsuite/28_regex/iterators/regex_iterator/char/64140.cc: New 384 testcase. 385 3862014-12-02 Matthias Klose <doko@ubuntu.com> 387 388 PR libstdc++/64103 389 Backport from mainline 390 2014-11-03 Paolo Carlini <paolo.carlini@oracle.com> 391 392 * include/parallel/algo.h: Do not use default arguments in function 393 template redeclarations (definitions). 394 395 2014-11-04 Jonathan Wakely <jwakely@redhat.com> 396 397 * include/parallel/numeric.h: Do not use default arguments in function 398 template redeclarations (definitions). 399 4002014-11-28 Tim Shen <timshen@google.com> 401 402 PR libstdc++/63497 403 * include/bits/regex_executor.tcc (_Executor::_M_dfs, 404 _Executor::_M_word_boundary): Avoid dereferecing _M_current at _M_end 405 or other invalid position. 406 4072014-11-13 Thomas Preud'homme <thomas.preudhomme@arm.com> 408 409 Backport from mainline 410 2014-09-10 Tony Wang <tony.wang@arm.com> 411 412 PR target/56846 413 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): 414 Return with CONTINUE_UNWINDING when the state pattern 415 contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND 416 4172014-10-30 David Edelsohn <dje.gcc@gmail.com> 418 419 Backported from mainline. 420 2014-10-30 David Edelsohn <dje.gcc@gmail.com> 421 422 * configure.host (aix4.3+, 5+): Do not use -G in link command. 423 4242014-10-30 Release Manager 425 426 * GCC 4.9.2 released. 427 4282014-10-18 François Dumont <fdumont@gcc.gnu.org> 429 Jonathan Wakely <jwakely@redhat.com> 430 431 PR libstdc++/63500 432 * include/debug/functions.h (__foreign_iterator_aux2): Do not check for 433 foreign iterators if input iterators returns rvalue reference. 434 * testsuite/23_containers/vector/63500.cc: New. 435 4362014-10-14 Kai Tietz <ktietz@redhat.com> 437 438 PR libstdc++/57440 439 * config/os/mingw32/os_defines.h (_GTHREAD_USE_MUTEX_INIT_FUNC): 440 Define to avoid leak. 441 * config/os/mingw32-w64/os_defines.h: Likewise. 442 4432014-10-08 Edward Smith-Rowland <3dw4rd@verizon.net> 444 445 Implement SD-6: SG10 Feature Test Recommendations 446 * include/bits/basic_string.h: Add __cpp_lib feature test macro. 447 * include/bits/stl_algobase.h: Ditto. 448 * include/bits/stl_function.h: Ditto. 449 * include/bits/unique_ptr.h: Ditto. 450 * include/std/chrono: Ditto. 451 * include/std/complex: Ditto. 452 * include/std/iomanip: Ditto. 453 * include/std/shared_mutex: Ditto. 454 * include/std/tuple: Ditto. 455 * include/std/type_traits: Ditto. 456 * include/std/utility: Ditto. 457 * testsuite/experimental/feat-cxx14.cc: New. 458 * testsuite/experimental/feat-lib-fund.cc: New. 459 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust. 460 * testsuite/20_util/duration/literals/range.cc: Adjust. 461 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust. 462 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust. 463 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust. 464 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust. 465 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust. 466 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust. 467 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: 468 Adjust. 469 4702014-10-08 Jonathan Wakely <jwakely@redhat.com> 471 472 * include/bits/regex.h (regex_token_iterator::_M_end_of_seq): Add 473 const qualifier. 474 4752014-10-05 François Dumont <fdumont@gcc.gnu.org> 476 477 PR libstdc++/63456 478 * include/bits/hashtable.h (_M_uses_single_bucket(__bucket_type*)): Test 479 the parameter. 480 * testsuite/23_containers/unordered_set/63456.cc: New. 481 4822014-10-03 Jonathan Wakely <jwakely@redhat.com> 483 484 PR libstdc++/63449 485 * doc/xml/manual/containers.xml: Remove outdated section. Update 486 std::list notes. 487 * doc/html/*: Regenerate. 488 4892014-10-03 Edward Smith-Rowland <3dw4rd@verizon.net> 490 491 * include/std/type_traits: Add is_final<> type trait for C++14. 492 * testsuite/util/testsuite_tr1.h: Add FinalType. 493 * testsuite/20_util/is_final/requirements/ 494 explicit_instantiation.cc: New. 495 * testsuite/20_util/is_final/requirements/typedefs.cc: New. 496 * testsuite/20_util/is_final/value.cc: New. 497 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust. 498 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust. 499 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust. 500 5012014-10-02 Tim Shen <timshen@google.com> 502 503 PR libstdc++/63199 504 * include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign, 505 basic_regex::swap): Fix dangling _M_traits reference problem. 506 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc: 507 New test case. 508 5092014-10-01 Jonathan Wakely <jwakely@redhat.com> 510 511 * doc/xml/manual/status_cxx2011.xml: Corrections. 512 * doc/html/manual/status.html: Regenerate. 513 5142014-10-01 Jonathan Wakely <jwakely@redhat.com> 515 516 * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data. 517 5182014-10-01 Jonathan Wakely <jwakely@redhat.com> 519 520 * include/bits/stl_queue.h: Include missing header. 521 * include/bits/stl_stack.h: Likewise. 522 * testsuite/23_containers/priority_queue/requirements/ 523 uses_allocator.cc: New. 524 * testsuite/23_containers/queue/requirements/uses_allocator.cc: New. 525 * testsuite/23_containers/stack/requirements/uses_allocator.cc: New. 526 5272014-10-01 Jonathan Wakely <jwakely@redhat.com> 528 529 * include/std/mutex (try_lock): Do not swallow exceptions. 530 * testsuite/30_threads/try_lock/4.cc: Fix test. 531 5322014-10-01 Jonathan Wakely <jwakely@redhat.com> 533 534 PR libstdc++/59603 535 * include/bits/stl_algo.h (random_shuffle): Prevent self-swapping. 536 * testsuite/25_algorithms/random_shuffle/59603.cc: New. 537 5382014-09-11 Jonathan Wakely <jwakely@redhat.com> 539 540 PR libstdc++/63219 541 * include/bits/regex.h (match_results::format): Remove stray template 542 parameter. 543 5442014-08-26 Jonathan Wakely <jwakely@redhat.com> 545 546 Backported from mainline 547 2014-08-12 Jonathan Wakely <jwakely@redhat.com> 548 549 * include/bits/basic_string.h (getline): Qualify call to prevent ADL 550 and add overloads for rvalue streams. 551 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc: 552 New. 553 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc: 554 New. 555 5562014-08-26 Jonathan Wakely <jwakely@redhat.com> 557 558 PR libstdc++/62264 559 * include/experimental/string_view: Fix inconsistent exception specs. 560 5612014-08-09 François Dumont <fdumont@gcc.gnu.org> 562 563 PR libstdc++/61667 564 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use 565 _M_need_rehash to initialize the rehash policy and check if a rehash is 566 needed. 567 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New. 568 5692014-08-04 Jonathan Wakely <jwakely@redhat.com> 570 571 Backported from mainline 572 2014-07-29 Jonathan Wakely <jwakely@redhat.com> 573 574 PR libstdc++/61946 575 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool, 576 const allocator_type&)): Pass non-const allocator to 577 _S_new_RopeFunction. 578 * testsuite/ext/rope/61946.cc: New. 579 5802014-08-04 Zifei Tong <zifeitong@gmail.com> 581 582 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add 583 _GLIBCXX_ prefix to macro. 584 5852014-08-04 Samuel Bronson <naesten@gmail.com> 586 587 Backport r212453 from trunk 588 2014-07-11 Samuel Bronson <naesten@gmail.com> 589 Matthias Klose <doko@ubuntu.com> 590 591 PR libstdc++/58962 592 * python/libstdcxx/v6/printers.py: Port to Python 2+3 593 (imap): New compat function. 594 (izip): Likewise. 595 (Iterator): New mixin to allow writing iterators in Python 3 style 596 regardless of which version we're running on. 597 [Python3] (long) New compat alias for "int". 598 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax) 599 600 Backport r210625 from trunk 601 2014-05-19 Jonathan Wakely <jwakely@redhat.com> 602 603 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax. 604 6052014-08-04 Jonathan Wakely <jwakely@redhat.com> 606 607 Backported from mainline 608 2014-06-10 Jonathan Wakely <jwakely@redhat.com> 609 610 PR libstdc++/61390 611 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp 612 (bin_search_tree_traits): Do not redeclare template-parameters. 613 * testsuite/util/testsuite_iterators.h (test_container): Likewise. 614 615 Backported from mainline 616 2014-06-02 Jonathan Wakely <jwakely@redhat.com> 617 618 * include/std/condition_variable (condition_variable_any::_Unlock): Do 619 not swallow __forced_unwind. 620 * include/std/future (__future_base::_Task_setter): Likewise. 621 (__future_base::_Async_state_impl): Turn __forced_unwind into broken 622 promise and rethrow. 623 * include/std/mutex (try_lock): Likewise. 624 * testsuite/30_threads/async/forced_unwind.cc: New. 625 * testsuite/30_threads/packaged_task/forced_unwind.cc: New. 626 627 Backported from mainline 628 2014-06-01 Jonathan Wakely <jwakely@redhat.com> 629 630 PR libstdc++/61374 631 * include/experimental/string_view (operator basic_string): Correct 632 order of arguments. 633 (to_string): Replace with member function. 634 Add inline specifiers. Remove unused header. Remove _S_empty_rep and 635 allow _M_str to be null. 636 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new 637 default constructor semantics. 638 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise. 639 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix 640 copyright dates. Remove unused header. 641 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: 642 Likewise. 643 * testsuite/experimental/string_view/operations/data/char/1.cc: 644 Fix copyright dates. Adjust to new default constructor semantics. 645 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc: 646 Likewise. 647 * testsuite/experimental/string_view/operations/to_string/1.cc: New. 648 649 Backported from mainline 650 2014-04-15 Jonathan Wakely <jwakely@redhat.com> 651 652 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add 653 const to constexpr member functions. 654 6552014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net> 656 657 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...> 658 * include/bits/random.h (_Adaptor): static_assert for non floating-point 659 result type. 660 * include/bits/random.tcc (generate_canonical): Ditto. 661 * include/ext/random.tcc (hypergeometric_distribution::operator()): 662 Use double as a rng result type. 663 * testsuite/26_numerics/random/pr60037-neg.cc: New. 664 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New. 665 6662014-07-16 Release Manager 667 668 * GCC 4.9.1 released. 669 6702014-06-23 Jonathan Wakely <jwakely@redhat.com> 671 672 PR libstdc++/61532 673 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not 674 apply the signed specifier to wchar_t. 675 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise. 676 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Do not 677 apply the unsigned specifier to wchar_t. 678 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: 679 Likewise. 680 6812014-06-13 Jonathan Wakely <jwakely@redhat.com> 682 683 Backport from mainline 684 PR libstdc++/60326 685 * include/std/type_traits (__make_unsigned, __make_signed): Define 686 specializations for wchar_t, char16_t and char32_t. 687 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New. 688 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct 689 test for make_unsigned<volatile wchar_t>. 690 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: 691 Likewise. 692 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error 693 line number. 694 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: 695 Likewise. 696 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: 697 Likewise. 698 699 Backport from mainline 700 PR libstdc++/61269 701 * include/std/type_traits: Move include outside namespace std. 702 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error. 703 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise. 704 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: 705 Likewise. 706 707 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313. 708 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move. 709 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues. 710 7112014-06-07 Ed Smith-Rowland <3dw4rd@verizon.net> 712 713 Backport from mainline 714 DR 2344 - std::quoted doesn't respect padding 715 * include/std/iomanip: Allow for padding in quoted inserters. 716 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New. 717 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New. 718 7192014-06-03 Jonathan Wakely <jwakely@redhat.com> 720 721 * include/bits/regex_executor.tcc (_Executor<>::_M_main): Move instead 722 of copying. 723 7242014-06-03 Jonathan Wakely <jwakely@redhat.com> 725 726 Backport from mainline 727 2014-04-15 Jonathan Wakely <jwakely@redhat.com> 728 729 PR libstdc++/60734 730 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast. 731 732 Backport from mainline 733 2014-04-24 Tim Shen <timshen91@gmail.com> 734 735 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): 736 Do _M_alt before _M_next. 737 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases. 738 739 Backport from mainline 740 2014-05-20 Tim Shen <timshen91@gmail.com> 741 742 PR libstdc++/61227 743 * include/bits/regex_compiler.h 744 (_BracketMatcher<>::_M_add_character_class): Add negative character 745 class support. 746 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply): 747 Likewise. 748 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc: 749 Add more testcases. 750 7512014-05-29 Jonathan Wakely <jwakely@redhat.com> 752 753 * include/tr2/bool_set: Use UTF-8 for accented characters. 754 * scripts/run_doxygen: Handle Doxygen 1.8.x change. 755 7562014-05-27 Jonathan Wakely <jwakely@redhat.com> 757 758 PR libstdc++/61329 759 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add 760 inline specifier. 761 (_State_base::_M_dot): Likewise. 762 7632014-05-23 François Dumont <fdumont@gcc.gnu.org> 764 765 PR libstdc++/61143 766 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a 767 usable state. 768 * testsuite/23_containers/unordered_set/61143.cc: New. 769 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New. 770 7712014-05-17 Jonathan Wakely <jwakely@redhat.com> 772 773 PR libstdc++/60966 774 * include/std/future (__future_base::_State_baseV2::_M_set_result): 775 Signal condition variable after call_once returns. 776 (__future_base::_State_baseV2::_M_do_set): Do not signal here. 777 (promise::set_value, promise::set_exception): Increment the reference 778 count on the shared state until the function returns. 779 * testsuite/30_threads/promise/60966.cc: New. 780 7812014-05-08 Joshua Gay <jgay@gnu.org> 782 783 PR libstdc++/61117 784 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open 785 source" with "free software". 786 * doc/html/faq.html: Likewise. 787 7882014-05-08 Jonathan Wakely <jwakely@redhat.com> 789 790 * include/std/iostream: Fix URL in comment. 791 * src/c++98/ios_init.cc: Fix path in comment. 792 7932014-05-07 Jonathan Wakely <jwakely@redhat.com> 794 795 PR libstdc++/61023 796 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the 797 comparison function. 798 * testsuite/23_containers/set/cons/61023.cc: New. 799 800 PR libstdc++/61086 801 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast): 802 Remove. 803 * include/bits/stl_vector.h (vector::insert, vector::erase): Use 804 arithmetic to obtain a mutable iterator from const_iterator. 805 * include/bits/vector.tcc (vector::insert): Likewise. 806 * include/debug/vector (vector::erase): Likewise. 807 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: 808 Adjust dg-error line number. 809 * testsuite/23_containers/vector/requirements/dr438/ 810 constructor_1_neg.cc: Likewise. 811 * testsuite/23_containers/vector/requirements/dr438/ 812 constructor_2_neg.cc: Likewise. 813 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: 814 Likewise. 815 8162014-05-06 Jonathan Wakely <jwakely@redhat.com> 817 818 Backport from mainline 819 2014-04-15 Jonathan Wakely <jwakely@redhat.com> 820 821 PR libstdc++/60594 822 * include/std/functional (function::_Callable): Exclude own type 823 from the callable checks. 824 * testsuite/20_util/function/60594.cc: New. 825 8262014-05-02 Jonathan Wakely <jwakely@redhat.com> 827 828 PR libstdc++/59476 829 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New 830 function to handle both C++03 and C++11 _Rb_tree_node implementations. 831 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it. 832 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to 833 refer to... 834 * testsuite/libstdc++-prettyprinters/simple11.cc: New. 835 836 PR libstdc++/61036 837 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)): 838 Check the correct type in the static assertion. 839 * testsuite/20_util/shared_ptr/cons/61036.cc: New. 840 8412014-04-27 Lars Gullik Bjønnes <larsbj@gullik.org> 842 843 PR libstdc++/60710 844 * include/experimental/optional (operator!=): Implement in terms of 845 operator==. 846 * testsuite/experimental/optional/relops/1.cc: Remove operator!=. 847 * testsuite/experimental/optional/relops/2.cc: Likewise. 848 * testsuite/experimental/optional/relops/3.cc: Likewise. 849 * testsuite/experimental/optional/relops/4.cc: Likewise. 850 * testsuite/experimental/optional/relops/5.cc: Likewise. 851 * testsuite/experimental/optional/relops/6.cc: Likewise. 852 8532014-04-27 Jonathan Wakely <jwakely@redhat.com> 854 855 PR libstdc++/60497 856 * include/std/tuple (get): Qualify calls to prevent ADL. 857 * testsuite/20_util/tuple/60497.cc: New. 858 859 * include/std/tuple (tuple_element_t): Define. 860 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only 861 test. 862 * testsuite/20_util/tuple/tuple_element_t.cc: New. 863 8642014-04-22 Release Manager 865 866 * GCC 4.9.0 released. 867 8682014-04-10 Andreas Schwab <schwab@suse.de> 869 870 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS 871 symbols. 872 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise. 873 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise. 874 875 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update. 876 8772014-04-07 Jonathan Wakely <jwakely@redhat.com> 878 879 * testsuite/20_util/exchange/1.cc: Add missing return statements. 880 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse. 881 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception 882 specifications. 883 8842014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr> 885 Jack Howarth <howarth@bromo.med.uc.edu> 886 887 PR target/54407 888 * testsuite/30_threads/condition_variable/54185.cc: Skip for 889 darwin < 11. 890 8912014-04-01 Jonathan Wakely <jwakely@redhat.com> 892 893 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers): 894 Update link. 895 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography): 896 Fix broken links. 897 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise. 898 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise. 899 * doc/xml/manual/concurrency_extensions.xml 900 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise. 901 * doc/html/*: Regenerate. 902 9032014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org> 904 Jonathan Wakely <jwakely@redhat.com> 905 906 PR libstdc++/60270 907 * include/std/iomanip (_Quoted_string operator>>): Do not clear 908 string if input is not quoted. 909 * testsuite/27_io/manipulators/standard/char/60270.cc: New. 910 9112014-03-31 Jonathan Wakely <jwakely@redhat.com> 912 913 * libsupc++/eh_ptr.cc: Improve static_assert messages. 914 9152014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 916 917 * testsuite/18_support/exception_ptr/60612-terminate.cc 918 (terminate, f): Wrap in _GLIBCXX_USE_C99. 919 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise. 920 9212014-03-27 Jonathan Wakely <jwakely@redhat.com> 922 923 * doc/xml/manual/io.xml (std.io.objects): Additional markup. 924 925 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters. 926 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes): 927 Likewise. 928 * doc/xml/manual/backwards_compatibility.xml (backwards.third): 929 Likewise. 930 * doc/xml/manual/test.xml (test.organization.layout): Likewise. 931 932 * doc/xml/manual/containers.xml (associative.bitset.size_variable): 933 Fix bad s/part/chapter/ substitutions. 934 * doc/xml/manual/io.xml (std.io): Likewise. 935 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise. 936 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise. 937 938 * doc/html/*: Regenerate. 939 9402014-03-27 Jonathan Wakely <jwakely@redhat.com> 941 942 PR libstdc++/60612 943 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is 944 compatible with __cxa_exception. 945 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding. 946 Fix typos in comments. 947 * testsuite/18_support/exception_ptr/60612-terminate.cc: New. 948 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New. 949 9502014-03-25 Jonathan Wakely <jwakely@redhat.com> 951 952 PR libstdc++/60658 953 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()): 954 Use sizeof pointer type not the element type. 955 * testsuite/29_atomics/atomic/60658.cc: New. 956 9572014-03-24 Jakub Jelinek <jakub@redhat.com> 958 959 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update. 960 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise. 961 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise. 962 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise. 963 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise. 964 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise. 965 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise. 966 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise. 967 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise. 968 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS 969 entries. 970 9712014-03-23 John David Anglin <danglin@gcc.gnu.org> 972 973 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*. 974 9752014-03-23 François Dumont <fdumont@gcc.gnu.org> 976 977 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call 978 to delegated constructor. 979 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise. 980 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)): 981 Likewise. 982 (_Hashtable( 983 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise. 984 9852014-03-23 John David Anglin <danglin@gcc.gnu.org> 986 987 PR libstdc++/60623 988 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update. 989 9902014-03-21 Jonathan Wakely <jwakely@redhat.com> 991 992 PR libstdc++/60587 993 * include/debug/functions.h (_Is_contiguous_sequence): Define. 994 (__foreign_iterator): Accept additional iterator. Do not dispatch on 995 iterator category. 996 (__foreign_iterator_aux2): Likewise. Add overload for iterators 997 from different types of debug container. Use _Is_contiguous_sequence 998 instead of is_lvalue_reference. 999 (__foreign_iterator_aux3): Accept additional iterator. Avoid 1000 dereferencing past-the-end iterator. 1001 (__foreign_iterator_aux4): Use const value_type* instead of 1002 potentially user-defined const_pointer type. 1003 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment 1004 and pass end iterator to __gnu_debug::__foreign_iterator. 1005 (__glibcxx_check_insert_range_after): Likewise. 1006 (__glibcxx_check_max_load_factor): Fix comment. 1007 * include/debug/vector (_Is_contiguous_sequence): Define partial 1008 specializations. 1009 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove 1010 -std=gnu++11 option and unused header. 1011 * testsuite/23_containers/vector/debug/60587.cc: New. 1012 * testsuite/23_containers/vector/debug/60587_neg.cc: New. 1013 10142014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> 1015 1016 * crossconfig.m4: Support spu-*-elf* targets. 1017 * configure: Regenerate. 1018 10192014-03-18 Jonathan Wakely <jwakely@redhat.com> 1020 1021 PR libstdc++/60564 1022 * include/std/future (__future_base::_Task_state<>): Change 1023 constructors to template functions using perfect forwarding. 1024 (__create_task_state): Use decayed type as stored task. 1025 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving. 1026 * testsuite/30_threads/packaged_task/60564.cc: New. 1027 10282014-03-16 François Dumont <fdumont@gcc.gnu.org> 1029 1030 * scripts/create_testsuite_files: Add testsuite/experimental in 1031 the list of folders to search for tests. 1032 10332014-03-15 Andreas Schwab <schwab@linux-m68k.org> 1034 1035 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file. 1036 10372014-03-15 Tim Shen <timshen91@gmail.com> 1038 1039 * include/bits/regex.h: Add/modify comments. 1040 * include/bits/regex_compiler.h: Likewise. 1041 * include/bits/regex_executor.h: Likewise. 1042 * include/bits/regex_executor.tcc: Likewise. 1043 * include/bits/regex_scanner.h: Likewise. 1044 10452014-03-14 Jonathan Wakely <jwakely@redhat.com> 1046 1047 PR ipa/58721 1048 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for 1049 _ZNSt12system_errorC* symbols which are not exported on any target. 1050 10512014-03-12 Roland McGrath <mcgrathr@google.com> 1052 Mark Seaborn <mseaborn@google.com> 1053 1054 PR libstdc++/59392 1055 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with 1056 the address of a null pointer, not with a null pointer to pointer. 1057 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected. 1058 * testsuite/18_support/bad_exception/59392.cc: New file. 1059 10602014-03-11 Jonathan Wakely <jwakely@redhat.com> 1061 1062 PR libstdc++/60499 1063 * include/debug/forward_list (forward_list::operator=(forward_list&&)): 1064 Uglify name. 1065 * include/debug/map (map::operator=(map&&)): Likewise. 1066 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise. 1067 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise. 1068 * include/debug/set (set::operator=(set&&)): Likewise. 1069 * include/debug/unordered_map 1070 (unordered_map::operator=(unordered_map&&)): Likewise. 1071 (unordered_multimap::operator=(unordered_multimap&&)): Likewise. 1072 * include/debug/unordered_set 1073 (unordered_set::operator=(unordered_set&&)): Likewise. 1074 (unordered_multiset::operator=(unordered_multiset&&)): Likewise. 1075 * include/debug/vector (vector::operator=(vector&&)): Likewise. 1076 * testsuite/23_containers/forward_list/debug/60499.cc: New 1077 * testsuite/23_containers/map/debug/60499.cc: New 1078 * testsuite/23_containers/multimap/debug/60499.cc: New 1079 * testsuite/23_containers/multiset/debug/60499.cc: New 1080 * testsuite/23_containers/set/debug/60499.cc: New 1081 * testsuite/23_containers/unordered_map/debug/60499.cc: New 1082 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New 1083 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New 1084 * testsuite/23_containers/unordered_set/debug/60499.cc: New 1085 * testsuite/23_containers/vector/debug/60499.cc: New 1086 10872014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net> 1088 1089 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers 1090 for filesystem and fundamentals TS work items. 1091 10922014-03-04 Paolo Carlini <paolo.carlini@oracle.com> 1093 1094 PR c++/60376 1095 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc: 1096 Adjust dg-error directives. 1097 10982014-02-26 Tim Shen <timshen91@gmail.com> 1099 1100 * include/bits/regex.tcc (match_results<>::format, 1101 regex_replace<>): Update __out after calling std::copy. 1102 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc: 1103 Add testcase. 1104 * testsuite/28_regex/match_results/format.cc: Likewise. 1105 11062014-02-22 Marc Glisse <marc.glisse@inria.fr> 1107 1108 PR libstdc++/60308 1109 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const 1110 allocator_type&)): Remove redundant call to _M_initialize_map. 1111 (deque::deque(const allocator_type&)): Initialize _Base with a 1112 constructor that calls _M_initialize_map. 1113 1114 Partial revert: 1115 1116 2013-09-20 Marc Glisse <marc.glisse@inria.fr> 1117 PR libstdc++/58338 1118 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to 1119 _M_initialize_map. 1120 11212014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net> 1122 1123 Rename testsuite directory shared_mutex to shared_timed_mutex 1124 for consistency. 1125 * testsuite/30_threads/shared_mutex: Moved to... 1126 * testsuite/30_threads/shared_timed_mutex: ...here 1127 11282014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net> 1129 1130 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891. 1131 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex. 1132 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto. 1133 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto. 1134 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto. 1135 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto. 1136 * testsuite/30_threads/shared_lock/requirements/ 1137 explicit_instantiation.cc: Ditto. 1138 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto. 1139 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto. 1140 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto. 1141 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto. 1142 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto. 1143 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto. 1144 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto. 1145 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto. 1146 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto. 1147 * testsuite/30_threads/shared_mutex/requirements/ 1148 standard_layout.cc: Ditto. 1149 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto. 1150 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto. 1151 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto. 1152 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto. 1153 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto. 1154 11552014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 1156 1157 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail 1158 execution on i?86-*-solaris2.9, remove comment. 1159 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise. 1160 11612014-02-09 Richard Sandiford <rdsandiford@googlemail.com> 1162 1163 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file. 1164 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update. 1165 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise. 1166 11672014-01-29 Jonathan Wakely <jwakely@redhat.com> 1168 1169 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do 1170 not use varargs when argument could be non-POD. 1171 (__alloctr_rebind_helper): Eliminate static const bool member by 1172 using true_type and false_type. 1173 (allocator_traits::__allocate_helper): Likewise. 1174 (allocator_traits::__construct_helper): Likewise. 1175 (allocator_traits::__destroy_helper): Likewise. 1176 (allocator_traits::__maxsize_helper): Likewise. 1177 (allocator_traits::__select_helper): Likewise. 1178 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise. 1179 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)): 1180 Remove redundant condition. 1181 * include/bits/stl_vector.h (vector::operator=(const vector&)): 1182 Likewise. 1183 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use 1184 indirection through __alloc_traits. 1185 * include/ext/alloc_traits.h (__allocator_always_compares_equal): 1186 Eliminate static const bool members by using true_type and false_type. 1187 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize. 1188 * testsuite/util/testsuite_allocator.h (PointerBase): Define. 1189 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc: 1190 New. 1191 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New. 1192 1193 PR libstdc++/59829 1194 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr. 1195 (vector::_M_data_ptr): New overloaded functions to ensure empty 1196 vectors do not dereference the pointer. 1197 * testsuite/23_containers/vector/59829.cc: New. 1198 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: 1199 Adjust dg-error line number. 1200 * testsuite/23_containers/vector/requirements/dr438/ 1201 constructor_1_neg.cc: Likewise. 1202 * testsuite/23_containers/vector/requirements/dr438/ 1203 constructor_2_neg.cc: Likewise. 1204 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: 1205 Likewise. 1206 1207 PR libstdc++/21609 1208 * include/ext/array_allocator.h: Add deprecated attribute. 1209 1210 PR libstdc++/57226 1211 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for 1212 installation and use of python printers. 1213 * doc/xml/manual/status_cxx2011.xml: Update. 1214 * doc/html/*: Regenerate. 1215 12162014-01-28 Jonathan Wakely <jwakely@redhat.com> 1217 Kyle Lippincott <spectral@google.com> 1218 1219 PR libstdc++/59656 1220 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing 1221 constructor and grant friendship to weak_ptr. 1222 (weak_ptr::lock()): Use new constructor. 1223 * include/bits/shared_ptr_base.h 1224 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function 1225 and define specializations. 1226 (__shared_count): Add new non-throwing constructor. 1227 (__shared_ptr): Add new non-throwing constructor and grant friendship 1228 to __weak_ptr. 1229 (__weak_ptr::lock()): Use new constructor. 1230 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error. 1231 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise. 1232 12332014-01-27 Jonathan Wakely <jwakely@redhat.com> 1234 1235 PR libstdc++/59215 1236 * include/bits/shared_ptr_base.h 1237 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic 1238 load. 1239 12402014-01-27 Jason Merrill <jason@redhat.com> 1241 1242 Core DR 475 1243 PR c++/41174 1244 PR c++/59224 1245 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions. 1246 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception) 1247 (__cxa_allocate_exception): Don't set it here. 1248 12492014-01-26 Jonathan Wakely <jwakely@redhat.com> 1250 1251 * include/bits/stl_map.h: Remove anachronistic comment. 1252 * include/bits/stl_multimap.h: Add whitespace. 1253 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use 1254 -std=gnu++11 instead of -std=c++11. 1255 * testsuite/23_containers/map/operators/2.cc: Likewise. 1256 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise. 1257 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise. 1258 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise. 1259 1260 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo. 1261 * configure: Regenerate. 1262 12632014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net> 1264 1265 PR libstdc++/59531 1266 * testsuite/experimental/string_view/operations/copy/char/1.cc: New. 1267 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New. 1268 12692014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net> 1270 Peter A. Bigot <pab@pabigot.com> 1271 1272 PR libstdc++/59531 1273 * include/experimental/string_view 1274 (copy(_CharT*, size_type, size_type) const): Correct throw string. 1275 Correct copy start location. 1276 12772014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net> 1278 Peter A. Bigot <pab@pabigot.com> 1279 1280 PR libstdc++/59530 1281 * include/experimental/string_view (operator[](size_type) const): 1282 Fix one-off index error in debug check. 1283 * testsuite/experimental/string_view/element_access/char/1.cc: Don't 1284 test basic_string_view at size(). 1285 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto. 1286 12872014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net> 1288 Peter A. Bigot <pab@pabigot.com> 1289 1290 PR libstdc++/59529 1291 * include/experimental/string_view 1292 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0. 1293 * testsuite/experimental/string_view/operations/substr/char/1.cc: 1294 Comment out catch of out_of_range; No terminating null 1295 in basic_string_view. Check begin == end. 1296 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc: 1297 Ditto. 1298 12992014-01-24 Jonathan Wakely <jwakely@redhat.com> 1300 1301 PR libstdc++/59548 1302 * include/debug/safe_base.h (_Safe_sequence_base): Define copy 1303 constructor to prevent it being implicitly defined as deleted, but 1304 do not copy anything. 1305 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base): 1306 Define copy and move constructors similar to _Safe_sequence_base's. 1307 * testsuite/23_containers/unordered_map/59548.cc: New. 1308 13092014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> 1310 Steve Ellcey <sellcey@mips.com> 1311 1312 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam 1313 function. 1314 * configure.ac: Use GLIBCXX_CHECK_TMPNAM. 1315 * (configure, config.h.in): Regenerate. 1316 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM 1317 13182014-01-23 Jonathan Wakely <jwakely@redhat.com> 1319 1320 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer. 1321 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver. 1322 1323 PR libstdc++/59872 1324 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment. 1325 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)): 1326 Likewise. 1327 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)): 1328 Likewise. 1329 * include/bits/stl_set.h (set::operator=(set&&)): Likewise. 1330 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded 1331 functions to perform moving or copying of elements from rvalue tree. 1332 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data. 1333 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise. 1334 * testsuite/23_containers/map/59872.cc: New. 1335 * testsuite/23_containers/map/56613.cc: Remove duplicate include. 1336 13372014-01-22 Jonathan Wakely <jwakely@redhat.com> 1338 1339 * include/bits/stl_deque.h (_Deque_impl): Move comment. 1340 1341 PR libstdc++/58764 1342 * include/bits/stl_deque.h (deque::deque(const allocator_type&): 1343 Split into separate default constructor and constructor taking 1344 allocator. 1345 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise. 1346 * include/bits/stl_vector.h (vector::vector(const allocator_type&): 1347 Likewise. 1348 * include/debug/deque (deque::deque(const allocator_type&)): Likewise. 1349 * include/debug/list (list::list(const _Allocator&)): Likewise. 1350 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)): 1351 Likewise. 1352 * include/debug/multimap.h 1353 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise. 1354 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)): 1355 Likewise. 1356 * include/debug/multiset.h 1357 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise. 1358 * include/debug/vector (vector::vector(const allocator_type&)): 1359 Likewise. 1360 * include/profile/deque (deque::deque(const _Allocator&)): Likewise. 1361 * include/profile/list (list::list(const _Allocator&)): Likewise. 1362 * include/profile/map.h 1363 (map::map(const _Compare&, const _Allocator&)): Likewise. 1364 * include/profile/multimap.h 1365 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise. 1366 * include/profile/set.h 1367 (set::set(const _Compare&, const _Allocator&)): Likewise. 1368 * include/profile/multiset.h 1369 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise. 1370 * include/profile/vector (vector::vector(const _Allocator&)): 1371 Likewise. 1372 * testsuite/23_containers/deque/58764.cc: New. 1373 * testsuite/23_containers/list/58764.cc: New. 1374 * testsuite/23_containers/map/58764.cc: New. 1375 * testsuite/23_containers/multimap/58764.cc: New. 1376 * testsuite/23_containers/set/58764.cc: New. 1377 * testsuite/23_containers/multiset/58764.cc: New. 1378 * testsuite/23_containers/vector/58764.cc: New. 1379 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: 1380 Adjust dg-error line number. 1381 * testsuite/23_containers/deque/requirements/dr438/ 1382 constructor_1_neg.cc: Likewise. 1383 * testsuite/23_containers/deque/requirements/dr438/ 1384 constructor_2_neg.cc: Likewise. 1385 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: 1386 Likewise. 1387 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: 1388 Likewise. 1389 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc: 1390 Likewise. 1391 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc: 1392 Likewise. 1393 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: 1394 Likewise. 1395 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: 1396 Likewise. 1397 * testsuite/23_containers/vector/requirements/dr438/ 1398 constructor_1_neg.cc: Likewise. 1399 * testsuite/23_containers/vector/requirements/dr438/ 1400 constructor_2_neg.cc: Likewise. 1401 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: 1402 Likewise. 1403 1404 PR libstdc++/58764 (again) 1405 * include/bits/stl_list.h (list): Make default constructor's exception 1406 specification conditional. 1407 * include/bits/stl_vector.h (vector): Likewise. 1408 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept 1409 to default constructor. 1410 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: 1411 Adjust dg-error line number. 1412 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc: 1413 Likewise. 1414 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc: 1415 Likewise. 1416 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: 1417 Likewise. 1418 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: 1419 Likewise. 1420 * testsuite/23_containers/vector/requirements/dr438/ 1421 constructor_1_neg.cc: Likewise. 1422 * testsuite/23_containers/vector/requirements/dr438/ 1423 constructor_2_neg.cc: Likewise. 1424 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: 1425 Likewise. 1426 14272014-01-21 Tim Shen <timshen91@gmail.com> 1428 1429 * include/bits/regex.tcc: Remove incorrect `nosubs` handling. 1430 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly. 1431 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case. 1432 14332014-01-21 Jonathan Wakely <jwakely@redhat.com> 1434 1435 PR libstdc++/56267 1436 * include/bits/hashtable.h (__cache_default): Do not depend on 1437 whether the hash function is DefaultConstructible or CopyAssignable. 1438 (_Hashtable): Adjust static assertions. 1439 * doc/xml/manual/containers.xml (containers.unordered.cache): Update. 1440 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust 1441 dg-error line number. 1442 * testsuite/23_containers/unordered_set/ 1443 not_default_constructible_hash_neg.cc: Remove. 1444 14452014-01-20 François Dumont <fdumont@gcc.gnu.org> 1446 1447 * scripts/create_testsuite_files: Add testsuite/experimental in 1448 the list of folders to search for tests. 1449 * include/experimental/string_view 1450 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT, 1451 incompatible with constexpr qualifier. 1452 (basic_string_view<>::front()): Likewise. 1453 (basic_string_view<>::back()): Likewise. 1454 * testsuite/experimental/string_view/element_access/wchar_t/2.cc: 1455 Merge dg-options directives into one. 1456 * testsuite/experimental/string_view/element_access/char/2.cc: 1457 Likewise. Remove invalid experimental namespace scope on 1458 string_view_type. 1459 14602014-01-20 Jonathan Wakely <jwakely@redhat.com> 1461 1462 PR libstdc++/56267 1463 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant 1464 friendship to _Local_iterator_base<..., false>. 1465 (_Local_iterator_base): Give protected access to all existing members. 1466 (_Local_iterator_base::_M_curr()): New public accessor. 1467 (_Local_iterator_base::_M_get_bucket()): New public accessor. 1468 (_Local_iterator_base<..., false>::_M_init()): New function to manage 1469 the lifetime of the _Hash_code_base explicitly. 1470 (_Local_iterator_base<..., false>::_M_destroy()): Likewise. 1471 (_Local_iterator_base<..., false>): Define copy constructor and copy 1472 assignment operator that use new functions to manage _Hash_code_base. 1473 (operator==(const _Local_iterator_base&, const _Local_iterator_base&), 1474 operator==(const _Local_iterator_base&, const _Local_iterator_base&)): 1475 Use public API for _Local_iterator_base. 1476 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise. 1477 * include/debug/unordered_map (__debug::unordered_map::erase(), 1478 __debug::unordered_multimap::erase()): Likewise. 1479 * include/debug/unordered_set (__debug::unordered_set::erase(), 1480 __debug::unordered_multiset::erase()): Likewise. 1481 * testsuite/23_containers/unordered_set/56267-2.cc: New test. 1482 14832014-01-19 Tim Shen <timshen91@gmail.com> 1484 1485 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()): 1486 Fix parse error of multiple consecutive quantifiers like "a**". 1487 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()): 1488 Likewise. 1489 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New. 1490 14912014-01-17 François Dumont <fdumont@gcc.gnu.org> 1492 1493 * include/profile/set.h (set): Implement C++11 allocator-aware 1494 container requirements. 1495 * include/profile/map.h (map): Likewise. 1496 * include/profile/multiset.h (multiset): Likewise. 1497 * include/profile/multimap.h (multimap): Likewise. 1498 * include/profile/set.h 1499 (set::operator=(const set&)): Define as default in C++11 mode. 1500 (set::operator=(set&&)): Likewise. 1501 * include/profile/map.h 1502 (map::operator=(const map&)): Likewise. 1503 (map::operator=(map&&)): Likewise. 1504 * include/profile/multiset.h 1505 (multiset::operator=(const multiset&)): Likewise. 1506 (multiset::operator=(multiset&&)): Likewise. 1507 * include/profile/multimap.h 1508 (multimap::operator=(const multimap&)): Likewise. 1509 (multimap::operator=(multimap&&)): Likewise. 1510 * include/profile/set.h (set::operator=(std::initializer_list<>)): 1511 Rely on the same operator from normal mode. 1512 * include/profile/map.h (map::operator=(std::initializer_list<>)): 1513 Likewise. 1514 * include/profile/multiset.h 1515 (multiset::operator=(std::initializer_list<>)): Likewise. 1516 * include/profile/multimap.h 1517 (multimap::operator=(std::initializer_list<>)): Likewise. 1518 * include/profile/set.h (set::swap(set&)): Add noexcept 1519 specification. 1520 * include/profile/map.h (map::swap(map&)): Likewise. 1521 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise. 1522 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise. 1523 15242014-01-17 Tim Shen <timshen91@gmail.com> 1525 1526 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not 1527 use std::map. 1528 * include/bits/regex_automaton.h: Do not use std::set. 1529 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(), 1530 _BracketMatcher<>::_M_add_collating_element(), 1531 _BracketMatcher<>::_M_add_equivalence_class(), 1532 _BracketMatcher<>::_M_make_range()): Likewise. 1533 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()): 1534 Likewise. 1535 * include/bits/regex_executor.h: Do not use std::queue. 1536 * include/bits/regex_executor.tcc (_Executor<>::_M_main(), 1537 _Executor<>::_M_dfs()): Likewise. 1538 * include/std/regex: Remove <map>, <set> and <queue>. 1539 15402014-01-17 Tim Shen <timshen91@gmail.com> 1541 1542 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(), 1543 basic_regex<>::assign()): Change __compile_nfa to accept 1544 const _CharT* only. 1545 * include/bits/regex_compiler.h: Change _Compiler's template 1546 argument from <_FwdIter, _TraitsT> to <_TraitsT>. 1547 * include/bits/regex_compiler.tcc: Likewise. 1548 15492014-01-17 Tim Shen <timshen91@gmail.com> 1550 1551 * include/bits/regex_compiler.h: Change _ScannerT into char-type 1552 templated. 1553 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate 1554 _ScannerBase from _Scanner; Change _Scanner's template argument from 1555 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays 1556 instead. 1557 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(), 1558 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(), 1559 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()): 1560 Likewise. 1561 * include/std/regex: Add <cstring> for using strchr. 1562 15632014-01-17 Tim Shen <timshen91@gmail.com> 1564 1565 * bits/regex_automaton.tcc: Indentation fix. 1566 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>, 1567 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>, 1568 _BracketMatcher<>): Add bool option template parameters and 1569 specializations to make matching more efficient and space saving. 1570 * bits/regex_compiler.tcc: Likewise. 1571 15722014-01-15 François Dumont <fdumont@gcc.gnu.org> 1573 1574 PR libstdc++/59712 1575 * include/bits/hashtable_policy.h: Fix some long lines. 1576 * include/bits/hashtable.h (__hash_code_base_access): Define and 1577 use it to check its _M_bucket_index noexcept qualification. Use 1578 also in place of... 1579 (__access_protected_ctor): ...this. 1580 * testsuite/23_containers/unordered_set/instantiation_neg.cc: 1581 Adapt line number. 1582 * testsuite/23_containers/unordered_set/ 1583 not_default_constructible_hash_neg.cc: Likewise. 1584 15852014-01-13 François Dumont <fdumont@gcc.gnu.org> 1586 1587 * include/debug/set.h (set): Implement C++11 allocator-aware 1588 container requirements. 1589 * include/debug/map.h (map): Likewise. 1590 * include/debug/multiset.h (multiset): Likewise. 1591 * include/debug/multimap.h (multimap): Likewise. 1592 * include/debug/set.h (set::operator=(set&&)): Add noexcept and 1593 fix implementation regarding management of safe iterators. 1594 * include/debug/map.h (map::operator=(map&&)): Likewise. 1595 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise. 1596 * include/debug/multimap.h (multimap::operator=(multimap&&)): 1597 Likewise. 1598 * include/debug/set.h (set::operator=(std::initializer_list<>)): 1599 Rely on the same operator from normal mode. 1600 * include/debug/map.h (map::operator=(std::initializer_list<>)): 1601 Likewise. 1602 * include/debug/multiset.h 1603 (multiset::operator=(std::initializer_list<>)): Likewise. 1604 * include/debug/multimap.h 1605 (multimap::operator=(std::initializer_list<>)): Likewise. 1606 * include/debug/set.h (set::swap(set&)): Add noexcept 1607 specification, add allocator equality check. 1608 * include/debug/map.h (map::swap(map&)): Likewise. 1609 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise. 1610 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise. 1611 16122014-01-10 Jonathan Wakely <jwakely@redhat.com> 1613 1614 PR libstdc++/59698 1615 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup 1616 and stylistic improvements. 1617 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise 1618 and update for C++11. 1619 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise. 1620 1621 PR libstdc++/59687 1622 * doc/xml/manual/backwards_compatibility.xml 1623 (backwards.third.nocreate_noreplace): Correct and expand. 1624 1625 PR libstdc++/59699 1626 * doc/xml/manual/support.xml (std.support.types.null): Update links. 1627 16282014-01-09 Jonathan Wakely <jwakely@redhat.com> 1629 1630 PR libstdc++/59738 1631 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore 1632 support for non-Movable types. 1633 1634 PR libstdc++/59680 1635 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep. 1636 16372014-01-08 François Dumont <fdumont@gcc.gnu.org> 1638 1639 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass 1640 *this allocator instance when building temporary vector instance 1641 so that *this allocator does not get moved. 1642 * include/debug/safe_base.h 1643 (_Safe_sequence_base(_Safe_sequence_base&&)): New. 1644 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new 1645 move constructor from _Safe_sequence_base. 1646 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap 1647 safe iterators if the instance is moved. 1648 (__gnu_debug::vector<>::operator=(vector&&)): Likewise. 1649 * testsuite/23_containers/vector/allocator/move.cc (test01): Add 1650 check on a vector iterator. 1651 * testsuite/23_containers/vector/allocator/move_assign.cc 1652 (test02): Likewise. 1653 (test03): New, test with a non-propagating allocator. 1654 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New. 1655 16562014-01-07 Tim Shen <timshen91@gmail.com> 1657 1658 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(), 1659 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(), 1660 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(), 1661 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(), 1662 _BracketMatcher<>::_M_add_char(), 1663 _BracketMatcher<>::_M_add_collating_element(), 1664 _BracketMatcher<>::_M_add_equivalence_class(), 1665 _BracketMatcher<>::_M_add_character_class(), 1666 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(), 1667 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()): 1668 Fix _AnyMatcher behavior of POSIX style and move _M_flags 1669 to template parameter; Add cache for _BracketMatcher. Adjust 1670 declarations from here... 1671 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also, 1672 imbuing a regex will trigger a recompilation to rebuild the cache. 1673 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(), 1674 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for 1675 different template bool parameters. 1676 * include/bits/regex_executor.h: Remove unnecessary declarations. 1677 * include/std/regex: Adjust including orders. 1678 * testsuite/28_regex/traits/char/user_defined.cc: New. 1679 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New. 1680 16812014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 1682 1683 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate. 1684 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise. 1685 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise. 1686 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise. 1687 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise. 1688 16892014-01-02 Richard Sandiford <rdsandiford@googlemail.com> 1690 1691 Update copyright years 1692 16932014-01-02 Richard Sandiford <rdsandiford@googlemail.com> 1694 1695 * testsuite/18_support/new_handler.cc, 1696 testsuite/18_support/terminate_handler.cc, 1697 testsuite/18_support/unexpected_handler.cc: Use the standard form for 1698 the copyright notice. 1699 1700Copyright (C) 2014 Free Software Foundation, Inc. 1701 1702Copying and distribution of this file, with or without modification, 1703are permitted in any medium without royalty provided the copyright 1704notice and this notice are preserved. 1705