Home | History | Annotate | Line # | Download | only in libstdc++-v3
ChangeLog revision 1.1.1.17
      1 2019-11-14  Release Manager
      2 
      3 	* GCC 7.5.0 released.
      4 
      5 2019-10-24  Jonathan Wakely  <jwakely (a] redhat.com>
      6 
      7 	Backport from mainline
      8 	2019-10-18  Jonathan Wakely  <jwakely (a] redhat.com>
      9 
     10 	PR libstdc++/92143
     11 	* libsupc++/new_opa.cc (operator new) [__APPLE__]: Increase alignment
     12 	to at least sizeof(void*).
     13 
     14 	Backport from mainline
     15 	2019-10-08  Jonathan Wakely  <jwakely (a] redhat.com>
     16 
     17 	* doc/Makefile.am (doc-html-docbook-regenerate): New target.
     18 	(${docbook_outdir}/html): Do not create unused 'html/ext' directory.
     19 	* doc/Makefile.in: Regenerate.
     20 	* doc/xml/manual/documentation_hacking.xml: Document new target.
     21 	* doc/html/*: Regenerate.
     22 
     23 	* doc/xml/manual/allocator.xml: Use archived copy of CUJ article.
     24 
     25 	Backport from mainline
     26 	2019-05-31  Gerald Pfeifer  <gerald (a] pfeifer.com>
     27 
     28 	* doc/xml/manual/allocator.xml: Move hoard.org back to http.
     29 
     30 2019-09-11  Jonathan Wakely  <jwakely (a] redhat.com>
     31 
     32 	* python/libstdcxx/v6/xmethods.py (SharedPtrUseCountWorker.__call__):
     33 	Fix syntax error.
     34 
     35 2019-09-02  Jonathan Wakely  <jwakely (a] redhat.com>
     36 
     37 	PR middle-end/89303
     38 	* testsuite/20_util/enable_shared_from_this/89303.cc: New test.
     39 
     40 2019-09-02  Jonathan Wakely  <jwakely (a] redhat.com>
     41 
     42 	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Replace dg-error
     43 	with dg-prune-output for enable_if failure.
     44 	* testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Add
     45 	dg-prune-output for enable_if failure.
     46 
     47 	Backport from mainline
     48 	2019-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
     49 
     50 	PR libstdc++/91308
     51 	* include/bits/unique_ptr.h (unique_ptr::__safe_conversion_up): Remove
     52 	constraints on deleter that should only apply to the constructor.
     53 	(unique_ptr<T[], D>::__safe_conversion_up): Likewise.
     54 	(unique_ptr<T[], D>::unique_ptr(unique_ptr<U, D>&&)): Restore
     55 	constraints on deleter here.
     56 	* testsuite/20_util/unique_ptr/assign/91308.cc: New test.
     57 
     58 2019-09-02  Jonathan Wakely  <jwakely (a] redhat.com>
     59 
     60 	Backport from mainline
     61 	2019-07-29  Jonathan Wakely  <jwakely (a] redhat.com>
     62 
     63 	PR libstdc++/51333
     64 	* libsupc++/cxxabi.h (__gnu_cxx::recursive_init_error): Do not define
     65 	constructor inline.
     66 	* libsupc++/guard_error.cc (__gnu_cxx::recursive_init_error): Define
     67 	constructor.
     68 	* testsuite/18_support/51333.cc: New test.
     69 
     70 2019-09-02  Jonathan Wakely  <jwakely (a] redhat.com>
     71 
     72 	Backport from mainline
     73 	2019-06-07  Jonathan Wakely  <jwakely (a] redhat.com>
     74 
     75 	PR libstdc++/90770
     76 	* src/Makefile.am (stamp-debug): Also test for missing makefile.
     77 	* src/Makefile.in: Regenerate.
     78 
     79 2019-09-02  Jonathan Wakely  <jwakely (a] redhat.com>
     80 
     81 	Backport from mainline
     82 	2019-05-23  Jonathan Wakely  <jwakely (a] redhat.com>
     83 
     84 	* doc/xml/manual/status_cxx2017.xml: Add feature test macro for
     85 	P0040R3.
     86 	* doc/html/*: Regenerate.
     87 
     88 	Backport from mainline
     89 	2019-06-20  Jonathan Wakely  <jwakely (a] redhat.com>
     90 
     91 	* doc/xml/manual/status_cxx2017.xml: Fix outdated reference to
     92 	C++17 working draft.
     93 
     94 	Backport from mainline
     95 	2019-05-21  Jonathan Wakely  <jwakely (a] redhat.com>
     96 
     97 	* doc/xml/manual/shared_ptr.xml: Fix names of lock policy constants.
     98 
     99 2019-09-02  Jonathan Wakely  <jwakely (a] redhat.com>
    100 
    101 	Backport from mainline
    102 	2019-05-17  Jonathan Wakely  <jwakely (a] redhat.com>
    103 
    104 	* include/bits/random.h (seed_seq::param): Fix non-reserved name.
    105 	* include/experimental/type_traits (is_detected_exact)
    106 	(is_detected_exact_v): Likewise.
    107 	* testsuite/17_intro/names.cc: Check for more non-reserved names.
    108 	* testsuite/experimental/names.cc: New test.
    109 
    110 2019-06-26  Jonathan Wakely  <jwakely (a] redhat.com>
    111 
    112 	Backport from mainline
    113 	2019-05-28  Jonathan Wakely  <jwakely (a] redhat.com>
    114 
    115 	PR libstdc++/90634
    116 	* include/experimental/bits/fs_path.h (path::path(path&&)): Only call
    117 	_M_split_cmpts() for a path with multiple components.
    118 	(path::_S_is_dir_sep()): Add missing 'static' keyword to function.
    119 	* src/filesystem/path.cc (path::_M_split_cmpts()): Count number of
    120 	components and reserve space in vector. Return early when there is
    121 	only one component.
    122 	* testsuite/experimental/filesystem/path/construct/90634.cc: New test.
    123 
    124 2019-05-23  Jonathan Wakely  <jwakely (a] redhat.com>
    125 
    126 	Backport from mainline
    127 	2019-02-27  Jonathan Wakely  <jwakely (a] redhat.com>
    128 
    129 	PR libstdc++/89466
    130 	* acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Reorder check for local
    131 	stylesheet directories before check for xsltproc. Try to use
    132 	xmlcatalog to find local stylesheet directory before trying hardcoded
    133 	paths. Add path used by suse to hardcoded paths. Adjust xsltproc
    134 	check to look for the same stylesheet as doc/Makefile.am uses. Don't
    135 	use xsltproc if xmlcatalog fails to find a local stylesheet.
    136 	* configure.ac: Check for xmlcatalog.
    137 	* Makefile.in: Regenerate.
    138 	* configure: Likewise.
    139 	* doc/Makefile.in: Likewise.
    140 	* include/Makefile.in: Likewise.
    141 	* libsupc++/Makefile.in: Likewise.
    142 	* po/Makefile.in: Likewise.
    143 	* python/Makefile.in: Likewise.
    144 	* src/Makefile.in: Likewise.
    145 	* src/c++11/Makefile.in: Likewise.
    146 	* src/c++17/Makefile.in: Likewise.
    147 	* src/c++98/Makefile.in: Likewise.
    148 	* src/filesystem/Makefile.in: Likewise.
    149 	* testsuite/Makefile.in: Likewise.
    150 
    151 2019-05-23  Jonathan Wakely  <jwakely (a] redhat.com>
    152 
    153 	Backport from mainline
    154 	2019-01-22  Jonathan Wakely  <jwakely (a] redhat.com>
    155 
    156 	PR libstdc++/88740
    157 	* testsuite/util/testsuite_hooks.h [stderr] (VERIFY): Use fprintf to
    158 	write to stderr instead of using printf.
    159 
    160 2019-05-23  Jonathan Wakely  <jwakely (a] redhat.com>
    161 
    162 	Backport from mainline
    163 	2019-05-23  Jonathan Wakely  <jwakely (a] redhat.com>
    164 
    165 	* include/experimental/any (__any_caster): Use RTTI if comparing
    166 	addresses fails, to support non-unique addresses in shared libraries.
    167 	* include/std/any (__any_caster): Likewise.
    168 	* testsuite/experimental/any/misc/any_cast_neg.cc: Use 0 for dg-error
    169 	line number.
    170 
    171 2019-05-23  Jonathan Wakely  <jwakely (a] redhat.com>
    172 
    173 	Backport from mainline
    174 	2019-05-23  Jonathan Wakely  <jwakely (a] redhat.com>
    175 
    176 	PR libstdc++/90220
    177 	* include/experimental/any (__any_caster): Constrain to only be
    178 	callable for object types. Use remove_cv_t instead of decay_t.
    179 	If the type decays or isn't copy constructible, compare the manager
    180 	function to a dummy specialization.
    181 	(__any_caster): Add overload constrained for non-object types.
    182 	(any::_Manager_internal<_Op>): Add dummy specialization.
    183 	* testsuite/experimental/any/misc/any_cast.cc: Test function types
    184 	and array types.
    185 
    186 	Backport from mainline
    187 	2019-04-24  Jonathan Wakely  <jwakely (a] redhat.com>
    188 
    189 	PR libstdc++/90220
    190 	* include/std/any (__any_caster): Use remove_cv_t instead of decay_t.
    191 	Avoid a runtime check for types that can never be stored in std::any.
    192 	* testsuite/20_util/any/misc/any_cast.cc: Test std::any_cast with
    193 	array types.
    194 
    195 	Backport from mainline
    196 	2019-04-24  Jonathan Wakely  <jwakely (a] redhat.com>
    197 
    198 	PR libstdc++/90220 (partial)
    199 	* include/std/any (any_cast<T>(any*), any_cast<T>(const any*)): Do
    200 	not attempt ill-formed static_cast to pointers to non-object types.
    201 	* testsuite/20_util/any/misc/any_cast.cc: Test std::any_cast with
    202 	function types.
    203 
    204 2019-05-23  Jonathan Wakely  <jwakely (a] redhat.com>
    205 
    206 	Backported from mainline
    207 	2019-01-15  Jonathan Wakely  <jwakely (a] redhat.com>
    208 
    209 	* doc/xml/manual/status_cxx2017.xml: Document P0032R3 and P0307R2
    210 	status.
    211 	* include/bits/stl_uninitialized.h (__cpp_lib_raw_memory_algorithms):
    212 	Define.
    213 	* include/std/any (__cpp_lib_any): Define as 201606L, because P0032R3
    214 	changes are supported.
    215 	* include/std/optional (__cpp_lib_optional): Likewise.
    216 	* include/std/variant (__cpp_lib_variant): Likewise.
    217 
    218 2019-05-08  Jonathan Wakely  <jwakely (a] redhat.com>
    219 
    220 	Backport from mainline
    221 	2019-04-17  Jonathan Wakely  <jwakely (a] redhat.com>
    222 
    223 	PR libstdc++/90105
    224 	* include/bits/forward_list.tcc (operator==): Do not use operator!= to
    225 	compare elements.
    226 	(forward_list<T, A>::sort(Comp)): When elements are equal take the one
    227 	earlier in the list, so that sort is stable.
    228 	* testsuite/23_containers/forward_list/operations/90105.cc: New test.
    229 	* testsuite/23_containers/forward_list/comparable.cc: Test with
    230 	types that meet the minimum EqualityComparable and LessThanComparable
    231 	requirements. Remove irrelevant comment.
    232 
    233 	Backport from mainline
    234 	2019-03-11  Jonathan Wakely  <jwakely (a] redhat.com>
    235 
    236 	PR libstdc++/89629
    237 	* libsupc++/hash_bytes.cc [__SIZEOF_SIZE_T__ == 8] (_Hash_bytes):
    238 	Use correct type for len_aligned.
    239 	* testsuite/20_util/hash/89629.cc: New test.
    240 
    241 2019-02-22  Jonathan Wakely  <jwakely (a] redhat.com>
    242 
    243 	PR libstdc++/89446
    244 	* include/bits/char_traits.h (__constant_char_array): Check index is
    245 	in range before dereferencing.
    246 	* testsuite/21_strings/basic_string_view/operators/char/89446.cc:
    247 	New test.
    248 
    249 2018-12-24  Iain Sandoe  <iain (a] sandoe.co.uk>
    250 
    251 	Backport from mainline
    252 	2018-12-06  Iain Sandoe  <iain (a] sandoe.co.uk>
    253 
    254 	* scripts/make_exports.pl (check names): Dont try to export
    255 	construction vtable symbols.
    256 
    257 2018-12-24  Iain Sandoe  <iain (a] sandoe.co.uk>
    258 
    259 	Backport from mainline
    260 	2018-12-06  Jonathan Wakely  <jwakely (a] redhat.com>
    261 		    Iain Sandoe  <iain (a] sandoe.co.uk>
    262 
    263 	PR libstdc++/64883
    264 	* testsuite/17_intro/headers/c++1998/all_attributes.cc: Don't test
    265 	always_inline on Darwin.
    266 	* testsuite/17_intro/headers/c++2011/all_attributes.cc: Likewise.
    267 	* testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.
    268 	* testsuite/17_intro/headers/c++2017/all_attributes.cc: Likewise.
    269 	* testsuite/17_intro/headers/c++2020/all_attributes.cc: Likewise.
    270 
    271 2018-12-24  Iain Sandoe  <iain (a] sandoe.co.uk>
    272 
    273 	Backport from mainline
    274 	2018-08-25  Iain Sandoe  <iain (a] sandoe.co.uk>
    275 
    276 	PR libstdc++/70694
    277 	* configure.host (OPT_LDFLAGS): Don't append
    278 	-fvisibility-inlines-hidden for newer Darwin.
    279 
    280 2018-12-06  Release Manager
    281 
    282 	* GCC 7.4.0 released.
    283 
    284 2018-11-28  Franois Dumont  <fdumont (a] gcc.gnu.org>
    285 
    286 	PR libstdc++/88199
    287 	* include/bits/hashtable.h
    288 	(_Hashtable<>::_M_move_assign(_Hashtable&&, false_type)): Deallocate
    289 	former buckets after assignment.
    290 	* testsuite/23_containers/unordered_set/allocator/move_assign.cc
    291 	(test03): New.
    292 
    293 2018-10-31  Jonathan Wakely  <jwakely (a] redhat.com>
    294 
    295 	Backport from mainline
    296 	2018-10-31  Jonathan Wakely  <jwakely (a] redhat.com>
    297 
    298 	PR libstdc++/87822
    299 	* include/bits/stl_pair.h (__pair_base): Change to class template.
    300 	(pair): Make base class type depend on template parameters.
    301 	* testsuite/20_util/pair/87822.cc: New test.
    302 
    303 2018-10-25  Jonathan Wakely  <jwakely (a] redhat.com>
    304 
    305 	PR libstdc++/87749
    306 	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
    307 	(basic_string::operator=(basic_string&&)): For short strings copy the
    308 	buffer inline. Only fall back to using assign(const basic_string&) to
    309 	do a deep copy when reallocation is needed.
    310 	* testsuite/21_strings/basic_string/modifiers/assign/char/87749.cc:
    311 	New test.
    312 	* testsuite/21_strings/basic_string/modifiers/assign/char/
    313 	move_assign_optim.cc: New test.
    314 	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/87749.cc:
    315 	New test.
    316 	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
    317 	move_assign_optim.cc: New test.
    318 
    319 2018-10-23  Jonathan Wakely  <jwakely (a] redhat.com>
    320 
    321 	PR libstdc++/87704
    322 	* include/bits/unique_ptr.h (unique_ptr::unique_ptr(nullptr_t)): Do
    323 	not delegate to default constructor.
    324 	(unique_ptr<T[], D>::unique_ptr(nullptr_t)): Likewise.
    325 	* testsuite/20_util/unique_ptr/cons/incomplete.cc: New test.
    326 
    327 2018-10-22  Jonathan Wakely  <jwakely (a] redhat.com>
    328 
    329 	Backport from mainline
    330 	2017-09-12  Jonathan Wakely  <jwakely (a] redhat.com>
    331 
    332 	PR libstdc++/79433
    333 	* include/Makefile.am: Remove <bits/c++14_warning.h>.
    334 	* include/Makefile.in: Regenerate.
    335 	* include/bits/c++14_warning.h: Remove.
    336 	* include/experimental/algorithm: Do not include <c++14_warning.h>.
    337 	* include/experimental/any: Likewise.
    338 	* include/experimental/array: Likewise.
    339 	* include/experimental/bits/erase_if.h: Likewise.
    340 	* include/experimental/bits/lfts_config.h: Likewise.
    341 	* include/experimental/bits/shared_ptr.h: Likewise.
    342 	* include/experimental/bits/string_view.tcc: Likewise.
    343 	* include/experimental/chrono: Likewise.
    344 	* include/experimental/deque: Likewise.
    345 	* include/experimental/filesystem: Do not include <c++0x_warning.h>.
    346 	* include/experimental/forward_list: Do not include <c++14_warning.h>.
    347 	* include/experimental/functional: Likewise.
    348 	* include/experimental/iterator: Likewise.
    349 	* include/experimental/list: Likewise.
    350 	* include/experimental/map: Likewise.
    351 	* include/experimental/memory: Likewise.
    352 	* include/experimental/numeric: Likewise.
    353 	* include/experimental/optional: Likewise.
    354 	* include/experimental/propagate_const: Likewise.
    355 	* include/experimental/ratio: Likewise.
    356 	* include/experimental/regex: Likewise.
    357 	* include/experimental/set: Likewise.
    358 	* include/experimental/string: Likewise.
    359 	* include/experimental/string_view: Likewise.
    360 	* include/experimental/system_error: Likewise.
    361 	* include/experimental/tuple: Likewise.
    362 	* include/experimental/type_traits: Likewise.
    363 	* include/experimental/unordered_map: Likewise.
    364 	* include/experimental/unordered_set: Likewise.
    365 	* include/experimental/vector: Likewise.
    366 	* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error
    367 	line number.
    368 	* testsuite/experimental/array/neg.cc: Likewise.
    369 	* testsuite/experimental/propagate_const/assignment/move_neg.cc:
    370 	Likewise.
    371 	* testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
    372 	* testsuite/experimental/propagate_const/requirements2.cc: Likewise.
    373 	* testsuite/experimental/propagate_const/requirements3.cc: Likewise.
    374 	* testsuite/experimental/propagate_const/requirements4.cc: Likewise.
    375 	* testsuite/experimental/propagate_const/requirements5.cc: Likewise.
    376 
    377 2018-10-18  Jonathan Wakely  <jwakely (a] redhat.com>
    378 
    379 	Backport from mainline
    380 	2018-10-18  Jonathan Wakely  <jwakely (a] redhat.com>
    381 
    382 	PR libstdc++/87641
    383 	* include/bits/valarray_array.h (__valarray_sum): Use first element
    384 	to initialize accumulator instead of value-initializing it.
    385 	* testsuite/26_numerics/valarray/87641.cc: New test.
    386 
    387 2018-10-15  Jonathan Wakely  <jwakely (a] redhat.com>
    388 
    389 	* testsuite/22_locale/numpunct/members/char/3.cc: Adjust test to
    390 	account for change to glibc it_IT localedata (glibc bz#10797).
    391 
    392 2018-10-12  Jonathan Wakely  <jwakely (a] redhat.com>
    393 
    394 	Backport from mainline
    395 	2018-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
    396 
    397 	PR libstdc++/86751
    398 	* include/bits/stl_pair.h (__pair_base): New class with deleted copy
    399 	assignment operator.
    400 	(pair): Derive from __pair_base.
    401 	(pair::operator=): Remove deleted overload.
    402 	* python/libstdcxx/v6/printers.py (StdPairPrinter): New pretty printer
    403 	so that new base class isn't shown in GDB.
    404 	* testsuite/20_util/pair/86751.cc: New test.
    405 	* testsuite/20_util/pair/ref_assign.cc: New test.
    406 
    407 2018-10-12  Jonathan Wakely  <jwakely (a] redhat.com>
    408 
    409 	Backport from mainline
    410 	2018-09-03  Jonathan Wakely  <jwakely (a] redhat.com>
    411 
    412 	PR libstdc++/78595
    413 	* include/bits/stl_map.h (map::insert(_Pair&&))
    414 	(map::insert(const_iterator, _Pair&&)): Do emplace instead of insert.
    415 	* include/bits/stl_multimap.h (multimap::insert(_Pair&&))
    416 	(multimap::insert(const_iterator, _Pair&&)): Likewise.
    417 	* include/bits/unordered_map.h (unordered_map::insert(_Pair&&))
    418 	(unordered_map::insert(const_iterator, _Pair&&))
    419 	(unordered_multimap::insert(_Pair&&))
    420 	(unordered_multimap::insert(const_iterator, _Pair&&)): Likewise.
    421 	* include/std/type_traits (__enable_if_t): Define for C++11.
    422 	* testsuite/23_containers/map/modifiers/insert/78595.cc: New test.
    423 	* testsuite/23_containers/multimap/modifiers/insert/78595.cc: New test.
    424 	* testsuite/23_containers/unordered_map/modifiers/78595.cc: New test.
    425 	* testsuite/23_containers/unordered_multimap/modifiers/78595.cc: New
    426 	test.
    427 
    428 2018-10-12  Jonathan Wakely  <jwakely (a] redhat.com>
    429 
    430 	Backport from mainline
    431 	2018-08-30  Jonathan Wakely  <jwakely (a] redhat.com>
    432 
    433 	* include/ext/pointer.h (_Pointer_adapter): Define operators for
    434 	pointer arithmetic using long long offsets.
    435 	* testsuite/ext/ext_pointer/1.cc: Test pointer arithmetic using
    436 	long long values.
    437 
    438 2018-10-12  Jonathan Wakely  <jwakely (a] redhat.com>
    439 
    440 	Backport from mainline
    441 	2018-08-23  Jonathan Wakely  <jwakely (a] redhat.com>
    442 
    443 	* testsuite/21_strings/basic_string/init-list.cc:
    444 	Require cxx11-abi.
    445 	* testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc:
    446 	Likewise.
    447 	* testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc:
    448 	Likewise.
    449 
    450 	Backport from mainline
    451 	2018-08-22  Jonathan Wakely  <jwakely (a] redhat.com>
    452 
    453 	PR libstdc++/87061
    454 	* include/experimental/regex [!_GLIBCXX_USE_CXX11_ABI]
    455 	(experimental::pmr::match_results, experimental::pmr::cmatch)
    456 	(experimental::pmr::smatch, experimental::pmr::wcmatch)
    457 	(experimental::pmr::wsmatch): Do not declare for gcc4-compatible ABI,
    458 	because COW strings don't support C++11 allocator model.
    459 	* include/experimental/string [!_GLIBCXX_USE_CXX11_ABI]
    460 	(experimental::pmr::basic_string, experimental::pmr::string)
    461 	(experimental::pmr::u16string, experimental::pmr::u32string)
    462 	(experimental::pmr::wstring): Likewise.
    463 
    464 	Backport from mainline
    465 	2018-08-15  Jonathan Wakely  <jwakely (a] redhat.com>
    466 
    467 	* include/experimental/regex: Remove begin/end macros for namespace.
    468 	* include/experimental/string: Likewise.
    469 	* testsuite/experimental/polymorphic_allocator/pmr_typedefs_deque.cc:
    470 	New test.
    471 	* testsuite/experimental/polymorphic_allocator/
    472 	pmr_typedefs_forward_list.cc: New test.
    473 	* testsuite/experimental/polymorphic_allocator/pmr_typedefs_list.cc:
    474 	New test.
    475 	* testsuite/experimental/polymorphic_allocator/pmr_typedefs_map.cc:
    476 	New test.
    477 	* testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc:
    478 	New test.
    479 	* testsuite/experimental/polymorphic_allocator/
    480 	pmr_typedefs_multimap.cc: New test.
    481 	* testsuite/experimental/polymorphic_allocator/
    482 	pmr_typedefs_multiset.cc: New test.
    483 	* testsuite/experimental/polymorphic_allocator/pmr_typedefs_set.cc:
    484 	New test.
    485 	* testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc:
    486 	New test.
    487 	* testsuite/experimental/polymorphic_allocator/
    488 	pmr_typedefs_unordered_map.cc: New test.
    489 	* testsuite/experimental/polymorphic_allocator/
    490 	pmr_typedefs_unordered_multimap.cc: New test.
    491 	* testsuite/experimental/polymorphic_allocator/
    492 	pmr_typedefs_unordered_multiset.cc: New test.
    493 	* testsuite/experimental/polymorphic_allocator/
    494 	pmr_typedefs_unordered_set.cc: New test.
    495 	* testsuite/experimental/polymorphic_allocator/pmr_typedefs_vector.cc:
    496 	New test.
    497 
    498 2018-10-12  Jonathan Wakely  <jwakely (a] redhat.com>
    499 
    500 	Backport from mainline
    501 	2018-07-24  Jonathan Wakely  <jwakely (a] redhat.com>
    502 
    503 	PR libstdc++/70966
    504 	* include/experimental/memory_resource (__get_default_resource): Use
    505 	placement new to create an object with dynamic storage duration.
    506 
    507 	Backport from mainline
    508 	2018-06-20  Jonathan Wakely  <jwakely (a] redhat.com>
    509 
    510 	PR libstdc++/70966
    511 	* include/experimental/memory_resource (__resource_adaptor_imp): Add
    512 	static assertions to enforce requirements on pointer types.
    513 	(__resource_adaptor_imp::get_allocator()): Add noexcept.
    514 	(new_delete_resource, null_memory_resource): Return address of an
    515 	object with dynamic storage duration.
    516 	(__null_memory_resource): Remove.
    517 	* testsuite/experimental/memory_resource/70966.cc: New.
    518 
    519 2018-10-12  Jonathan Wakely  <jwakely (a] redhat.com>
    520 
    521 	PR libstdc++/77854
    522 	* doc/xml/manual/status_cxx1998.xml: Document size_type and
    523 	difference_type for containers.
    524 	* doc/html/*: Regenerate.
    525 
    526 2018-10-08  Joseph Myers  <joseph (a] codesourcery.com>
    527 
    528 	Backport from mainline
    529 	2018-10-02  Joseph Myers  <joseph (a] codesourcery.com>
    530 
    531 	* testsuite/lib/libstdc++.exp (libstdc++_init): Use
    532 	-fno-show-column in default cxxflags.
    533 
    534 2018-10-08  Jonathan Wakely  <jwakely (a] redhat.com>
    535 
    536 	Backport from mainline
    537 	2018-10-08  Jonathan Wakely  <jwakely (a] redhat.com>
    538 
    539 	PR libstdc++/87538
    540 	* include/std/functional (_Not_fn::operator()): Check value of
    541 	__is_nothrow_invocable as well.
    542 	* testsuite/20_util/function_objects/not_fn/87538.cc: New test.
    543 	* testsuite/experimental/functional/87538.cc: New test.
    544 
    545 2018-08-13  Jonathan Wakely  <jwakely (a] redhat.com>
    546 
    547 	Revert
    548 	2018-08-10  Sebastian Huber  <sebastian.huber (a] embedded-brains.de>
    549 
    550 	PR target/85904
    551 	* configure.ac: Define HAVE_ALIGNED_ALLOC if building for
    552 	Newlib.
    553 	* configure: Regenerate.
    554 
    555 2018-08-10  Sebastian Huber  <sebastian.huber (a] embedded-brains.de>
    556 
    557 	Backport from mainline
    558 	2018-08-10  Sebastian Huber  <sebastian.huber (a] embedded-brains.de>
    559 
    560 	PR target/85904
    561 	* configure.ac: Define HAVE_ALIGNED_ALLOC if building for
    562 	Newlib.
    563 	* configure: Regenerate.
    564 
    565 2018-08-08  Jonathan Wakely  <jwakely (a] redhat.com>
    566 
    567 	* libsupc++/new_opa.cc (aligned_alloc): Declare inside namespace to
    568 	avoid clashing with an ::aligned_alloc function that was not detected
    569 	by configure.
    570 
    571 	* doc/xml/manual/using.xml: Remove empty table cell.
    572 	* doc/html/*: Regenerate.
    573 
    574 	* doc/xml/manual/using.xml: Add missing header to table and fix typo.
    575 	Remove C++17 and C++2a headers not present on gcc-7-branch.
    576 	* doc/html/*: Regenerate.
    577 
    578 2018-08-07  Jonathan Wakely  <jwakely (a] redhat.com>
    579 
    580 	Backport from mainline
    581 	2018-06-27  Jonathan Wakely  <jwakely (a] redhat.com>
    582 
    583 	PR libstdc++/86138
    584 	* include/bits/basic_string.tcc: [_GLIBCXX_EXTERN_TEMPLATE < 0]
    585 	Declare explicit instantiations of COW empty reps and I/O functions.
    586 
    587 	Backport from mainline
    588 	2018-05-08  Jonathan Wakely  <jwakely (a] redhat.com>
    589 
    590 	PR libstdc++/85672
    591 	* include/Makefile.am [!ENABLE_FLOAT128]: Change c++config.h entry
    592 	to #undef _GLIBCXX_USE_FLOAT128 instead of defining it to zero.
    593 	* include/Makefile.in: Regenerate.
    594 	* include/bits/c++config (_GLIBCXX_USE_FLOAT128): Move definition
    595 	within conditional block.
    596 
    597 	Backport from mainline
    598 	2018-05-01  Tulio Magno Quites Machado Filho  <tuliom (a] linux.vnet.ibm.com>
    599 
    600 	PR libstdc++/84654
    601 	* acinclude.m4: Set ENABLE_FLOAT128 instead of _GLIBCXX_USE_FLOAT128.
    602 	* config.h.in: Remove references to _GLIBCXX_USE_FLOAT128.
    603 	* configure: Regenerate.
    604 	* include/Makefile.am: Replace the value of _GLIBCXX_USE_FLOAT128
    605 	based on ENABLE_FLOAT128.
    606 	* include/Makefile.in: Regenerate.
    607 	* include/bits/c++config: Define _GLIBCXX_USE_FLOAT128.
    608 	[!defined(__FLOAT128__) && !defined(__SIZEOF_FLOAT128__)]: Undefine
    609 	_GLIBCXX_USE_FLOAT128.
    610 
    611 	Backport from mainline
    612 	2017-06-17  Jonathan Wakely  <jwakely (a] redhat.com>
    613 
    614 	PR libstdc++/80893
    615 	* testsuite/23_containers/vector/bool/80893.cc: Add { target c++11 }.
    616 
    617 	Backport from mainline
    618 	2017-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
    619 
    620 	PR libstdc++/80893
    621 	* include/bits/stl_bvector.h (vector<bool>::_M_initialize): Avoid
    622 	null pointer dereference when size is zero.
    623 	* testsuite/23_containers/vector/bool/80893.cc: New.
    624 	* testsuite/util/testsuite_allocator.h (PointerBase::PointerBase):
    625 	Add non-explicit constructor from nullptr.
    626 	(PointerBase::derived() const): Add const-qualified overload.
    627 
    628 	Backport from mainline
    629 	2017-12-14  Jonathan Wakely  <jwakely (a] redhat.com>
    630 
    631 	PR libstdc++/68519
    632 	* include/std/condition_variable (condition_variable::wait_for):
    633 	Convert duration to native clock's duration before addition.
    634 	* testsuite/30_threads/condition_variable/members/68519.cc: New test.
    635 
    636 	Backport from mainline
    637 	2018-06-25  Jonathan Wakely  <jwakely (a] redhat.com>
    638 
    639 	PR libstdc++/86292
    640 	* include/bits/stl_vector.h (vector::_M_range_initialize<InputIter>):
    641 	Add try-catch block.
    642 	* testsuite/23_containers/vector/cons/86292.cc: New.
    643 
    644 	Backport from mainline
    645 	2018-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
    646 
    647 	* doc/xml/manual/test.xml: Improve documentation on writing tests for
    648 	newer standards.
    649 	* doc/xml/manual/using.xml: Document all headers for C++11 and later.
    650 	* doc/html/*: Regenerate.
    651 
    652 	Backport from mainline
    653 	2018-08-03  Jonathan Wakely  <jwakely (a] redhat.com>
    654 
    655 	* src/c++11/system_error.cc
    656 	(system_error_category::default_error_condition): Add workaround for
    657 	ENOTEMPTY and EEXIST having the same value on AIX.
    658 	* testsuite/19_diagnostics/error_category/system_category.cc: Add
    659 	extra testcases for EDOM, EILSEQ, ERANGE, EEXIST and ENOTEMPTY.
    660 
    661 	Backport from mainline
    662 	2018-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
    663 
    664 	PR libstdc++/60555
    665 	* src/c++11/system_error.cc
    666 	(system_error_category::default_error_condition): New override to
    667 	check for POSIX errno values.
    668 	* testsuite/19_diagnostics/error_category/generic_category.cc: New
    669 	* testsuite/19_diagnostics/error_category/system_category.cc: New
    670 	test.
    671 
    672 	Backport from mainline
    673 	2018-08-07  Jonathan Wakely  <jwakely (a] redhat.com>
    674 
    675 	PR libstdc++/86861
    676 	* libsupc++/new_opa.cc [_GLIBCXX_HAVE_MEMALIGN] (aligned_alloc):
    677 	Replace macro with inline function.
    678 	[__sun]: Increase alignment to meet memalign precondition.
    679 	[!HAVE__ALIGNED_MALLOC && !HAVE_POSIX_MEMALIGN && !HAVE_MEMALIGN]
    680 	(aligned_alloc): Move check for valid alignment to operator new.
    681 	Remove redundant check for non-zero size, it's enforced by the caller.
    682 	(operator new): Move check for valid alignment here. Use
    683 	__builtin_expect on check for zero size.
    684 
    685 	Backport from mainline
    686 	2018-07-30  Jonathan Wakely  <jwakely (a] redhat.com>
    687 
    688 	* libsupc++/new_opa.cc (operator new(size_t, align_val_t)): Add
    689 	workaround for aligned_alloc bug on AIX.
    690 	* testsuite/18_support/new_aligned.cc: New test.
    691 
    692 	Backport from mainline
    693 	2018-07-30  Jonathan Wakely  <jwakely (a] redhat.com>
    694 
    695 	PR libstdc++/86734
    696 	* include/bits/stl_iterator.h (reverse_iterator::operator->): Use
    697 	addressof (LWG 2188).
    698 	* testsuite/24_iterators/reverse_iterator/dr2188.cc: New test.
    699 
    700 	Backport from mainline
    701 	2018-05-19  Jonathan Wakely  <jwakely (a] redhat.com>
    702 
    703 	* src/c++11/codecvt.cc (__codecvt_utf8_base<wchar_t>::do_in)
    704 	[__SIZEOF_WCHAR_T__==2 && __BYTE_ORDER__!=__ORDER_BIG_ENDIAN__]: Set
    705 	little_endian element in bitmask.
    706 	* testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: Run all tests.
    707 	* testsuite/22_locale/codecvt/codecvt_utf8/wchar_t/1.cc: New.
    708 
    709 2018-07-05  Franois Dumont  <fdumont (a] gcc.gnu.org>
    710 
    711 	Backport from mainline
    712 	2018-07-04  Franois Dumont  <fdumont (a] gcc.gnu.org>
    713 
    714 	PR libstdc++/86272
    715 	* include/debug/string
    716 	(__gnu_debug::basic_string<>::insert<_Ite>(const_iterator, _Ite, _Ite)):
    717 	Use __glibcxx_check_insert_range.
    718 
    719 2018-07-04  Jonathan Wakely  <jwakely (a] redhat.com>
    720 
    721 	Backport from mainline
    722 	2018-03-09  Jonathan Wakely  <jwakely (a] redhat.com>
    723 
    724 	src/filesystem/ops.cc (create_dir): Pass error_code to is_directory.
    725 
    726 	Backport from mainline
    727 	2018-06-18  Jonathan Wakely  <jwakely (a] redhat.com>
    728 
    729 	LWG 3050 Fix cv-qualification of convertibility constraints
    730 	* include/std/chrono (duration, operator*, operator/, operator%): Use
    731 	const-qualified type as source type in is_convertible constraints.
    732 	* testsuite/20_util/duration/arithmetic/dr3050.cc: New.
    733 	* testsuite/20_util/duration/cons/dr3050.cc: New.
    734 	* testsuite/20_util/duration/literals/range.cc: Rename to...
    735 	* testsuite/20_util/duration/literals/range_neg.cc: Here. Adjust
    736 	dg-error lineno.
    737 
    738 	Backport from mainline
    739 	2018-06-13  Jonathan Wakely  <jwakely (a] redhat.com>
    740 
    741 	PR libstdc++/86127
    742 	* include/bits/forward_list.h (_Fwd_list_base::_Tp_alloc_type): Remove
    743 	unused typedef.
    744 	(_Fwd_list_base::_M_create_node, _Fwd_list_base::_M_erase_after):
    745 	Use node allocator to create and destroy elements.
    746 	(forward_list::_Tp_alloc_type): Remove unused typedef.
    747 	(forward_list::_Alloc_traits): Use allocator_traits instead of
    748 	__gnu_cxx::__alloc_traits.
    749 	* include/bits/forward_list.tcc (_Fwd_list_base::_M_erase_after):
    750 	Use node allocator to create and destroy elements.
    751 
    752 	Backport from mainline
    753 	2018-05-29  Jonathan Wakely  <jwakely (a] redhat.com>
    754 
    755 	* include/std/variant (__erased_dtor): Qualify call to __get.
    756 
    757 	Backport from mainline
    758 	2018-05-15  Jonathan Wakely  <jwakely (a] redhat.com>
    759 
    760 	* include/std/variant (__gen_vtable_impl::__visit_invoke): Qualify
    761 	__invoke to prevent ADL.
    762 
    763 	Backport from mainline
    764 	2018-04-05  Jonathan Wakely  <jwakely (a] redhat.com>
    765 
    766 	* include/std/variant (_VARIANT_RELATION_FUNCTION_TEMPLATE): Qualify
    767 	__get calls to avoid ADL and avoid ambiguity due to Clang bug.
    768 
    769 	Backport from mainline
    770 	2018-03-26  Jonathan Wakely  <jwakely (a] redhat.com>
    771 
    772 	* include/std/variant (__get): Qualify calls to avoid ADL.
    773 	(__select_index): Adjust whitespace.
    774 	(variant): Add using-declaration to workaround Clang bug.
    775 
    776 	Backport from mainline
    777 	2018-05-24  Maya Rashish  <coypu (a] sdf.org>
    778 
    779 	PR target/85904
    780 	* crossconfig.m4: Test for aligned_alloc on netbsd.
    781 	* configure: Regenerate.
    782 
    783 	Backport from mainline
    784 	2018-05-18  Jonathan Wakely  <jwakely (a] redhat.com>
    785 
    786 	PR libstdc++/85098
    787 	* include/bits/regex.h [__cplusplus < 201703L] (basic_regex::icase)
    788 	(basic_regex::nosubs, basic_regex::optimize, basic_regex::collate)
    789 	(basic_regex::ECMAScript, basic_regex::basic, basic_regex::extended)
    790 	(basic_regex::awk, basic_regex::grep, basic_regex::egrep): Add
    791 	definitions.
    792 	* include/bits/regex_automaton.h (_NFA::_M_insert_state): Adjust
    793 	whitespace.
    794 	* testsuite/28_regex/basic_regex/85098.cc: New
    795 
    796 	Backport from mainline
    797 	2018-05-07  Jonathan Wakely  <jwakely (a] redhat.com>
    798 
    799 	PR libstdc++/85671
    800 	* include/experimental/bits/fs_path.h (operator/): Likewise.
    801 
    802 	Backport from mainline
    803 	2018-06-14  Daniel Trebbien <dtrebbien (a] gmail.com>
    804 		    Jonathan Wakely  <jwakely (a] redhat.com>
    805 
    806 	PR libstdc++/83982
    807 	* include/bits/vector.tcc (vector::_M_default_append(size_type)):
    808 	Default-construct new elements before moving existing ones.
    809 	* testsuite/23_containers/vector/capacity/resize/strong_guarantee.cc:
    810 	New.
    811 
    812 	Backport from mainline
    813 	2018-05-03  Jonathan Wakely  <jwakely (a] redhat.com>
    814 
    815 	PR libstdc++/84087 LWG DR 2268 basic_string default arguments
    816 	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI=1]
    817 	(append(const basic_string&, size_type, size_type)
    818 	(assign(const basic_string&, size_type, size_type)
    819 	(insert(size_type, const basic_string&, size_type, size_type)
    820 	(replace(size_type,size_type,const basic_string&,size_type,size_type)
    821 	(compare(size_type,size_type,constbasic_string&,size_type,size_type)):
    822 	Add default arguments (LWG 2268).
    823 	[_GLIBCXX_USE_CXX11_ABI=0]
    824 	(append(const basic_string&, size_type, size_type)
    825 	(assign(const basic_string&, size_type, size_type)
    826 	(insert(size_type, const basic_string&, size_type, size_type)
    827 	(replace(size_type,size_type,const basic_string&,size_type,size_type)
    828 	(compare(size_type,size_type,constbasic_string&,size_type,size_type)):
    829 	Likewise.
    830 	* testsuite/21_strings/basic_string/dr2268.cc: New test.
    831 
    832 2018-06-22  Jakub Jelinek  <jakub (a] redhat.com>
    833 
    834 	Backported from mainline
    835 	2018-04-18  David Malcolm  <dmalcolm (a] redhat.com>
    836 
    837 	PR jit/85384
    838 	* configure: Regenerate.
    839 
    840 2018-06-22  Jonathan Wakely  <jwakely (a] redhat.com>
    841 
    842 	Backport from mainline
    843 	2018-06-22  Jonathan Wakely  <jwakely (a] redhat.com>
    844 
    845 	PR libstdc++/86138
    846 	* include/bits/basic_string.tcc:
    847 	[__cplusplus > 201402 && !_GLIBCXX_USE_CXX11_ABI]
    848 	(basic_string<char>::_Rep::_S_empty_rep_storage)
    849 	(basic_string<wchar_t>::_Rep::_S_empty_rep_storage): Add explicit
    850 	instantiation declarations.
    851 	[__cplusplus > 201402] (operator>>, operator<<, getline): Re-enable
    852 	explicit instantiation declarations.
    853 	* testsuite/21_strings/basic_string/cons/char/86138.cc: New.
    854 	* testsuite/21_strings/basic_string/cons/wchar_t/86138.cc: New.
    855 
    856 2018-06-21  Jonathan Wakely  <jwakely (a] redhat.com>
    857 
    858 	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
    859 
    860 2018-06-19  Jonathan Wakely  <jwakely (a] redhat.com>
    861 
    862 	* include/std/utility: Remove unused <exception> header.
    863 
    864 2018-06-15  Jonathan Wakely  <jwakely (a] redhat.com>
    865 
    866 	PR libstdc++/86169
    867 	* include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI]
    868 	(basic_string::data()): Unshare string.
    869 	* testsuite/21_strings/basic_string/operations/data/char/86169.cc:
    870 	New.
    871 
    872 2018-06-15  Jonathan Wakely  <jwakely (a] redhat.com>
    873 
    874 	* include/bits/char_traits.h (__cpp_lib_constexpr_char_traits): Only
    875 	define for C++17 and above.
    876 
    877 2018-05-17  Jonathan Wakely  <jwakely (a] redhat.com>
    878 
    879 	PR libstdc++/85812
    880 	* libsupc++/cxxabi_init_exception.h (__cxa_free_exception): Declare.
    881 	* libsupc++/exception_ptr.h (make_exception_ptr) [__cpp_exceptions]:
    882 	Refactor to separate non-throwing and throwing implementations.
    883 	[__cpp_rtti && !_GLIBCXX_HAVE_CDTOR_CALLABI]: Deallocate the memory
    884 	if constructing the object throws.
    885 
    886 2018-05-14  Jonathan Wakely  <jwakely (a] redhat.com>
    887 
    888 	PR libstdc++/67554
    889 	* include/bits/valarray_array.h (_Array_copy_ctor<_Tp, true>)
    890 	(_Array_copier<_Tp, true>): Do not pass null pointers to memcpy.
    891 
    892 	PR libstdc++/82966
    893 	* include/bits/node_handle.h (_Node_handle_common::_M_swap): Use value
    894 	instead of type.
    895 	* testsuite/23_containers/set/modifiers/node_swap.cc: New.
    896 
    897 2018-05-10  Jonathan Wakely  <jwakely (a] redhat.com>
    898 
    899 	* doc/xml/faq.xml: Link to C++17 status. Add note to outdated answer.
    900 	* doc/xml/manual/debug_mode.xml: Add array and forward_list to list
    901 	of C++11 containers with Debug Mode support.
    902 	* doc/xml/manual/using.xml: Document Dual ABI for ios_base::failure.
    903 	* doc/html/*: Regenerate.
    904 
    905 2018-05-07  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
    906 	    Jonathan Wakely  <jwakely (a] redhat.com>
    907 
    908 	Backport from mainline
    909 	2018-05-07  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
    910 
    911 	PR libstdc++/80506
    912 	* include/bits/random.tcc (gamma_distribution::operator()): Fix magic
    913 	number used in loop condition.
    914 	(gamma_distribution::__generate_impl()): Ditto.
    915 
    916 2018-05-03  Jonathan Wakely  <jwakely (a] redhat.com>
    917 
    918 	PR libstdc++/84769
    919 	* include/std/variant (visit): Qualify std::get call.
    920 
    921 	PR libstdc++/85632 use uintmax_t for arithmetic
    922 	* src/filesystem/ops.cc (experimental::filesystem::space): Perform
    923 	arithmetic in result type.
    924 	* testsuite/experimental/filesystem/operations/space.cc: New.
    925 
    926 2018-04-30  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
    927 
    928 	PR libstdc++/pr66689 - comp_ellint_3 and ellint_3 return garbage values
    929 	* include/tr1/ell_integral.tcc: Correct the nu sign convention
    930 	in ellint_3 and comp_ellint_3.
    931 	* testsuite/tr1/5_numerical_facilities/special_functions/
    932 	06_comp_ellint_3/check_value.cc: Regen with correct values.
    933 	* testsuite/tr1/5_numerical_facilities/special_functions/
    934 	14_ellint_3/check_value.cc: Ditto.
    935 	* testsuite/special_functions/06_comp_ellint_3/check_value.cc: Ditto.
    936 	* testsuite/special_functions/13_ellint_3/check_value.cc: Ditto.
    937 	* testsuite/special_functions/06_comp_ellint_3/pr66689.cc: New.
    938 	* testsuite/special_functions/13_ellint_3/pr66689.cc: New.
    939 	* testsuite/tr1/5_numerical_facilities/special_functions/
    940 	06_comp_ellint_3/pr66689.cc: New.
    941 	* testsuite/tr1/5_numerical_facilities/special_functions/
    942 	14_ellint_3/pr66689.cc: New.
    943 
    944 2018-04-30  Edward Smith-Rowland  <3dw4rd (a] verizon.net>
    945 
    946 	PR libstdc++/68397 std::tr1::expint fails ... long double arguments.
    947 	* include/tr1/exp_integral.tcc: Increase iteration limits.
    948 	* testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
    949 	pr68397.cc: New test.
    950 	* testsuite/special_functions/14_expint/pr68397.cc: New test.
    951 
    952 2018-04-18  Jonathan Wakely  <jwakely (a] redhat.com>
    953 	    Jakub Jelinek  <jakub (a] redhat.com>
    954 
    955 	PR libstdc++/85442
    956 	* src/c++11/Makefile.am: Don't generate debuginfo again for
    957 	cxx11-ios_failure-lt.s and cxx11-ios_failure.s files.
    958 	* src/c++11/Makefile.in: Regenerate.
    959 
    960 2018-04-13  Jonathan Wakely  <jwakely (a] redhat.com>
    961 
    962 	* src/c++11/Makefile.am: Fix sed command.
    963 	* src/c++11/Makefile.in: Regenerate.
    964 
    965 	* src/c++11/Makefile.am: Rewrite sed rule to be less fragile and to
    966 	handle mangled names starting with double underscores on darwin.
    967 	* src/c++11/Makefile.in: Regenerate.
    968 
    969 2018-04-12  Jonathan Wakely  <jwakely (a] redhat.com>
    970 
    971 	* src/c++11/Makefile.am: Fix comment.
    972 	* src/c++11/Makefile.in: Regenerate.
    973 	* src/c++11/cxx11-ios_failure.cc: Fix comment.
    974 	* src/c++98/ios_failure.cc: Likewise.
    975 
    976 	Backport from mainline
    977 	2018-04-10  Jonathan Wakely  <jwakely (a] redhat.com>
    978 
    979 	PR libstdc++/85222
    980 	* src/c++11/Makefile.am [ENABLE_DUAL_ABI]: Add special rules for
    981 	cxx11-ios_failure.cc to rewrite type info for __ios_failure.
    982 	* src/c++11/Makefile.in: Regenerate.
    983 	* src/c++11/cxx11-ios_failure.cc (__ios_failure, __iosfail_type_info):
    984 	New types.
    985 	[_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
    986 	* src/c++11/ios.cc (__throw_ios_failure): Remove definition.
    987 	(_GLIBCXX_USE_CXX11_ABI): Don't define here.
    988 	* src/c++98/ios_failure.cc (__construct_ios_failure)
    989 	(__destroy_ios_failure, is_ios_failure_handler): New functions.
    990 	[!_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
    991 	* testsuite/27_io/ios_base/failure/dual_abi.cc: New.
    992 	* testsuite/27_io/basic_ios/copyfmt/char/1.cc: Revert changes to
    993 	handler types, to always catch std::ios_base::failure.
    994 	* testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
    995 	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
    996 	exceptions_failbit.cc: Likewise.
    997 	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
    998 	exceptions_failbit.cc: Likewise.
    999 	* testsuite/27_io/basic_istream/extractors_other/char/
   1000 	exceptions_null.cc: Likewise.
   1001 	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
   1002 	exceptions_null.cc: Likewise.
   1003 	* testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
   1004 	* testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
   1005 	* testsuite/27_io/basic_ostream/inserters_other/char/
   1006 	exceptions_null.cc: Likewise.
   1007 	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
   1008 	exceptions_null.cc: Likewise.
   1009 	* testsuite/27_io/ios_base/storage/2.cc: Likewise.
   1010 
   1011 2018-03-22  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   1012 
   1013 	PR libstdc++/77691
   1014 	* testsuite/experimental/memory_resource/resource_adaptor.cc:
   1015 	xfail execution on 32-bit Solaris/x86.
   1016 
   1017 2018-03-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1018 
   1019 	Backport from mainline
   1020 	2018-03-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1021 
   1022 	PR libstdc++/84769
   1023 	* include/std/variant (get<_Tp, _Types...>, get_if<_Tp, _Types...>):
   1024 	Qualify calls to get<_Np, Types...> and get_if<_Np, _Types...>.
   1025 
   1026 2018-03-12  Jonathan Wakely  <jwakely (a] redhat.com>
   1027 
   1028 	PR libstdc++/84773
   1029 	PR libstdc++/83662
   1030 	* crossconfig.m4: Check for aligned_alloc etc. on freebsd and mingw32.
   1031 	* configure: Regenerate.
   1032 	* include/c_global/cstdlib [_GLIBCXX_HAVE_ALIGNED_ALLOC]
   1033 	(aligned_alloc): Add using-declaration.
   1034 	* testsuite/18_support/aligned_alloc/aligned_alloc.cc: New test.
   1035 
   1036 2018-03-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1037 
   1038 	Backport from mainline
   1039 	2018-03-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1040 
   1041 	PR libstdc++/84671
   1042 	* include/bits/parse_numbers.h (_Number_help): Add partial
   1043 	specialization to handle digit separators. Adjust partial
   1044 	specialization for recursion temrination to require _Pow == 1ULL.
   1045 	* testsuite/20_util/duration/literals/84671.cc: New
   1046 
   1047 2018-02-26  Jonathan Wakely  <jwakely (a] redhat.com>
   1048 
   1049 	Backport from mainline
   1050 	2018-02-23  Jonathan Wakely  <jwakely (a] redhat.com>
   1051 
   1052 	PR libstdc++/84532
   1053 	* include/std/thread (thread::__make_invoker): Construct tuple
   1054 	directly instead of using make_tuple.
   1055 	* testsuite/30_threads/async/84532.cc: New.
   1056 	* testsuite/30_threads/thread/84532.cc: New.
   1057 
   1058 2018-02-19  Jonathan Wakely  <jwakely (a] redhat.com>
   1059 
   1060 	Backport from mainline
   1061 	2018-02-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1062 
   1063 	PR libstdc++/81797
   1064 	* configure.ac (INCLUDE_DIR_NOTPARALLEL): Define.
   1065 	* configure: Regenerate.
   1066 	* include/Makefile.am (INCLUDE_DIR_NOTPARALLEL): Add .NOTPARALLEL when
   1067 	defined.
   1068 	* include/Makefile.in: Regenerate.
   1069 
   1070 2018-01-29  Jonathan Wakely  <jwakely (a] redhat.com>
   1071 
   1072 	PR libstdc++/83833
   1073 	* testsuite/26_numerics/random/chi_squared_distribution/83833.cc:
   1074 	Add -ffloat-store to options for m68k and ia32.
   1075 
   1076 	PR libstdc++/83658
   1077 	* include/std/any (any::__do_emplace): Only set _M_manager after
   1078 	constructing the contained object.
   1079 	* testsuite/20_util/any/misc/any_cast_neg.cc: Adjust dg-error line.
   1080 	* testsuite/20_util/any/modifiers/83658.cc: New test.
   1081 
   1082 	Backport from mainline
   1083 	2018-01-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1084 
   1085 	PR libstdc++/83833
   1086 	* include/bits/random.h (chi_squared_distribution::param): Update
   1087 	gamma distribution parameter.
   1088 	* testsuite/26_numerics/random/chi_squared_distribution/83833.cc: New
   1089 	test.
   1090 
   1091 2018-01-25  Jonathan Wakely  <jwakely (a] redhat.com>
   1092 
   1093 	PR libstdc++/81076
   1094 	* include/c_global/cstddef (__byte_operand): Define primary template.
   1095 	* testsuite/18_support/byte/81076.cc: New test.
   1096 
   1097 	Backport from mainline
   1098 	2018-01-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1099 
   1100 	PR libstdc++/83830
   1101 	* include/std/type_traits (has_unique_object_representations_v): Add
   1102 	variable template.
   1103 	* testsuite/20_util/has_unique_object_representations/value.cc: Check
   1104 	variable template.
   1105 
   1106 2018-01-25  Release Manager
   1107 
   1108 	* GCC 7.3.0 released.
   1109 
   1110 2018-01-19  Jonathan Wakely  <jwakely (a] redhat.com>
   1111 
   1112 	Backport from mainline
   1113 	2018-01-16  Jonathan Wakely  <jwakely (a] redhat.com>
   1114 
   1115 	PR libstdc++/83834
   1116 	* config/abi/pre/gnu.ver (GLIBCXX_3.4): Replace std::c[a-g]* wildcard
   1117 	pattern with exact match for std::cerr.
   1118 
   1119 2018-01-18  Jonathan Wakely  <jwakely (a] redhat.com>
   1120 
   1121 	Backport from mainline
   1122 	2017-10-23  Jonathan Wakely  <jwakely (a] redhat.com>
   1123 
   1124 	* doc/xml/manual/intro.xml: Include new section.
   1125 	* doc/xml/manual/status_cxxis29124.xml: New section on IS 29124
   1126 	status.
   1127 	* doc/html/*: Regenerate.
   1128 
   1129 	Backport from mainline
   1130 	2017-10-19  Jonathan Wakely  <jwakely (a] redhat.com>
   1131 
   1132 	* doc/xml/manual/status_cxx2017.xml: Update references to C++17
   1133 	section numbers.
   1134 
   1135 2018-01-16  Eric Botcazou  <ebotcazou (a] adacore.com>
   1136 
   1137 	* testsuite/17_intro/names.cc: Undefine 'y' on SPARC/Linux.
   1138 
   1139 2018-01-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1140 
   1141 	* python/libstdcxx/v6/printers.py (register_type_printers): Remove
   1142 	printer for experimental::any. Fix printers for experimental::optional
   1143 	and experimental::basic_string_view.
   1144 
   1145 	Backport from mainline
   1146 	2018-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   1147 
   1148 	PR libstdc++/83626
   1149 	* src/filesystem/ops.cc (remove(const path&, error_code&)): Remove
   1150 	unnecessary symlink_status call.
   1151 	(remove_all(const path&, error_code&)): Use filesystem::remove.
   1152 
   1153 2018-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   1154 
   1155 	Backport from mainline
   1156 	2017-10-19  Jonathan Wakely  <jwakely (a] redhat.com>
   1157 
   1158 	* testsuite/experimental/filesystem/iterators/
   1159 	recursive_directory_iterator.cc: Ensure that error_code arguments are
   1160 	cleared when required.
   1161 	* testsuite/experimental/filesystem/operations/create_directory.cc:
   1162 	Remove redundant check.
   1163 	* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
   1164 	Ensure that error_code argument is cleared when required.
   1165 
   1166 	Backport from mainline
   1167 	2017-12-27  Jonathan Wakely  <jwakely (a] redhat.com>
   1168 
   1169 	PR libstdc++/83600
   1170 	* include/bits/regex.h (match_results::end()): Return valid iterator
   1171 	when not ready.
   1172 	* testsuite/28_regex/match_results/ctors/char/default.cc: Check that
   1173 	unready objects are empty and have equal begin and end iterators.
   1174 	* testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
   1175 
   1176 	Backport from mainline
   1177 	2017-12-27  Jonathan Wakely  <jwakely (a] redhat.com>
   1178 
   1179 	PR libstdc++/83598
   1180 	* include/bits/regex.h (basic_regex): Don't modify flags passed to
   1181 	constructors.
   1182 	* testsuite/28_regex/basic_regex/ctors/83598.cc: New test.
   1183 
   1184 	Backport from mainline
   1185 	2017-12-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1186 
   1187 	PR libstdc++/83279
   1188 	* src/filesystem/std-ops.cc (do_copy_file): Handle sendfile not
   1189 	copying entire file.
   1190 
   1191 	Backport from mainline
   1192 	2018-01-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1193 
   1194 	* include/experimental/fs_ops.h (exists(const path&, error_code&))):
   1195 	Only check status_known once.
   1196 
   1197 	Backport from mainline
   1198 	2018-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   1199 
   1200 	PR libstdc++/83626
   1201 	* src/filesystem/ops.cc (remove(const path&, error_code&)): Do not
   1202 	report an error for ENOENT.
   1203 	(remove_all(const path&)): Fix type of result variable.
   1204 	(remove_all(const path&, error_code&)): Use non-throwing increment
   1205 	for directory iterator. Call POSIX remove directly to avoid redundant
   1206 	calls to symlink_status. Do not report errors for ENOENT.
   1207 	* testsuite/experimental/filesystem/operations/remove_all.cc: Test
   1208 	throwing overload.
   1209 
   1210 	Backport from mainline
   1211 	2018-01-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1212 
   1213 	PR libstdc++/83626
   1214 	* src/filesystem/ops.cc (remove(const path&, error_code&))): Remove
   1215 	redundant call to ec.clear().
   1216 	(remove_all(const path&, error_code&))): Do not return an error for
   1217 	non-existent paths.
   1218 	* testsuite/experimental/filesystem/operations/remove.cc: New test.
   1219 	* testsuite/experimental/filesystem/operations/remove_all.cc: Fix
   1220 	expected results for non-existent paths.
   1221 
   1222 	Backport from mainline
   1223 	2017-10-25  Jonathan Wakely  <jwakely (a] redhat.com>
   1224 
   1225 	PR libstdc++/79283
   1226 	* src/filesystem/ops.cc (read_symlink): Handle st_size being zero.
   1227 
   1228 2018-01-04  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   1229 
   1230 	Backport from mainline
   1231 	2018-01-03  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   1232 
   1233 	Protect optional's deduction guide with the feature macro
   1234 	* include/std/optional: Use the feature macro.
   1235 
   1236 2017-12-28  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1237 
   1238 	Backport from mainline
   1239 	2017-12-20  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1240 
   1241 	PR libstdc++/82522
   1242 	* include/debug/map.h (map::insert(value_type&&))
   1243 	(map::insert(const_iterator, value_type&&)): Add overload for rvalues.
   1244 	* include/debug/multimap.h (multimap::insert(value_type&&))
   1245 	(multimap::insert(const_iterator, value_type&&)): Likewise.
   1246 	* include/debug/unordered_map (unordered_map::insert(value_type&&))
   1247 	(unordered_map::insert(const_iterator, value_type&&))
   1248 	(unordered_multimap::insert(value_type&&))
   1249 	(unordered_multimap::insert(const_iterator, value_type&&)): Likewise.
   1250 	* testsuite/23_containers/map/modifiers/insert/dr2354.cc (test02): New.
   1251 	* testsuite/23_containers/multimap/modifiers/insert/dr2354.cc (test02):
   1252 	New.
   1253 	* testsuite/23_containers/unordered_map/insert/dr2354.cc (test02): New.
   1254 	* testsuite/23_containers/unordered_multimap/insert/dr2354.cc (test02):
   1255 	New.
   1256 
   1257 2017-12-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1258 
   1259 	PR libstdc++/83427
   1260 	* include/bits/refwrap.h (_Weak_result_type_impl)
   1261 	(_Reference_wrapper_base): Deduce noexcept for function types.
   1262 	* testsuite/20_util/bind/83427.cc: New test.
   1263 	* testsuite/20_util/reference_wrapper/83427.cc: New test.
   1264 
   1265 	PR libstdc++/59568
   1266 	* include/std/complex (operator>>): Only use putback if a character
   1267 	was successfully extracted and only set the value if a number was
   1268 	successfully extracted.
   1269 	* testsuite/26_numerics/complex/inserters_extractors/char/59568.cc:
   1270 	New test.
   1271 
   1272 2017-12-12  Jonathan Wakely  <jwakely (a] redhat.com>
   1273 
   1274 	PR libstdc++/83395
   1275 	* include/std/type_traits (__is_invocable_impl): Remove partial
   1276 	specialization for INVOKE<void> and restore is_void<R> check in
   1277 	primary template.
   1278 	(__is_nt_invocable_impl): Likewise.
   1279 	* testsuite/20_util/is_invocable/83395.cc: New test.
   1280 	* testsuite/20_util/is_nothrow_invocable/83395.cc: New test.
   1281 
   1282 2017-12-01  Jonathan Wakely  <jwakely (a] redhat.com>
   1283 
   1284 	Backport from mainline
   1285 	2017-10-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1286 
   1287 	PR libstdc++/82522
   1288 	* doc/xml/manual/intro.xml: Document LWG 2354 changes.
   1289 	* include/bits/stl_map.h (map::insert(value_type&&))
   1290 	(map::insert(const_iterator, value_type&&)): Add overload for rvalues.
   1291 	* include/bits/stl_multimap.h (multimap::insert(value_type&&))
   1292 	(multimap::insert(const_iterator, value_type&&)): Likewise.
   1293 	* include/bits/unordered_map.h (unordered_map::insert(value_type&&))
   1294 	(unordered_map::insert(const_iterator, value_type&&))
   1295 	(unordered_multimap::insert(value_type&&))
   1296 	(unordered_multimap::insert(const_iterator, value_type&&)): Likewise.
   1297 	* testsuite/23_containers/map/modifiers/insert/dr2354.cc: New test.
   1298 	* testsuite/23_containers/multimap/modifiers/insert/dr2354.cc: New
   1299 	test.
   1300 	* testsuite/23_containers/unordered_map/insert/dr2354.cc: New test.
   1301 	* testsuite/23_containers/unordered_multimap/insert/dr2354.cc: New
   1302 	test.
   1303 
   1304 	Backport from mainline
   1305 	2017-11-23  Jonathan Wakely  <jwakely (a] redhat.com>
   1306 
   1307 	PR libstdc++/83134
   1308 	* include/std/type_traits (__not_): Explicitly convert to bool.
   1309 	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
   1310 	* testsuite/20_util/logical_traits/83134.cc: New test.
   1311 	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
   1312 	dg-error.
   1313 	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
   1314 	Likewise.
   1315 
   1316 	Backport from mainline
   1317 	2017-12-01  Jonathan Wakely  <jwakely (a] redhat.com>
   1318 
   1319 	* include/std/type_traits (integral_constant): Make member functions
   1320 	noexcept (LWG 2346).
   1321 	* include/std/utility (integer_sequence): Likewise.
   1322 
   1323 	Backport from mainline
   1324 	2017-11-16  Jonathan Wakely  <jwakely (a] redhat.com>
   1325 
   1326 	* include/std/future (shared_future): Add noexcept to copy constructor
   1327 	and copy-assignment operator (LWG 2799).
   1328 
   1329 	Backport from mainline
   1330 	2017-11-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1331 
   1332 	* include/bits/range_access.h (size, empty, data): Add conditional
   1333 	noexcept to generic overloads.
   1334 
   1335 	Backport from mainline
   1336 	2017-10-24  Jonathan Wakely  <jwakely (a] redhat.com>
   1337 
   1338 	PR libstdc++/82685
   1339 	* include/experimental/string_view (operator""sv): Add noexcept.
   1340 	* include/std/string_view (operator""sv): Likewise.
   1341 
   1342 	Backport from mainline
   1343 	2017-11-30  Jonathan Wakely  <jwakely (a] redhat.com>
   1344 
   1345 	PR libstdc++/83226
   1346 	* include/bits/node_handle.h (_Node_handle::__pointer): Avoid forming
   1347 	pointer-to-reference types.
   1348 	* testsuite/23_containers/map/modifiers/insert/83226.cc: New test.
   1349 
   1350 	Backport from mainline
   1351 	2017-11-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1352 
   1353 	* include/bits/locale_conv.h (wbuffer_convert::_M_conv_get): Fix typo.
   1354 	* testsuite/22_locale/conversions/buffer/3.cc: New test.
   1355 
   1356 	Backport from mainline
   1357 	2017-11-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1358 
   1359 	* include/bits/node_handle.h (_Node_insert_return::get): Remove, as
   1360 	per P0508R0.
   1361 
   1362 2017-10-25  Jonathan Wakely  <jwakely (a] redhat.com>
   1363 
   1364 	* doc/xml/manual/status_cxx1998.xml: Correct statement about
   1365 	what the doc covers.
   1366 	* doc/xml/manual/status_cxx2011.xml: Likewise.
   1367 	* doc/xml/manual/status_cxx2014.xml: Likewise.
   1368 	* doc/xml/manual/status_cxx2017.xml: Update C++17 status, and
   1369 	information on feature-test macros.
   1370 	* doc/xml/manual/status_cxxtr1.xml: Correct statement about what
   1371 	the doc covers.
   1372 	* doc/xml/manual/status_cxxtr24733.xml: Likewise.
   1373 	* doc/html/*: Regenerate.
   1374 
   1375 2017-10-23  Jonathan Wakely  <jwakely (a] redhat.com>
   1376 
   1377 	Backport from mainline
   1378 	2017-07-18  Jonathan Wakely  <jwakely (a] redhat.com>
   1379 
   1380 	PR libstdc++/81395
   1381 	* include/bits/fstream.tcc (basic_filebuf::xsgetn): Don't set buffer
   1382 	pointers for write mode after reading.
   1383 	* testsuite/27_io/basic_filebuf/sgetn/char/81395.cc: New.
   1384 
   1385 2017-10-21  Jonathan Wakely  <jwakely (a] redhat.com>
   1386 
   1387 	* testsuite/experimental/filesystem/path/itr/traversal.cc: Do not
   1388 	increment past-the-end iterators.
   1389 
   1390 2017-10-20  Jonathan Wakely  <jwakely (a] redhat.com>
   1391 
   1392 	* include/std/chrono (__cpp_lib_chrono): Update macro value to
   1393 	indicate support for P0505R0.
   1394 	* testsuite/20_util/duration/arithmetic/constexpr_c++17.cc: Check
   1395 	for updated macro.
   1396 
   1397 	* include/c_global/cstddef: Define __cpp_lib_byte feature-test macro.
   1398 	* testsuite/18_support/byte/requirements.cc: Check macro.
   1399 
   1400 	Backport from mainline
   1401 	2017-10-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1402 
   1403 	PR libstdc++/82481
   1404 	* include/std/mutex (call_once): Suppress clang-tidy warnings about
   1405 	dangling references.
   1406 
   1407 	Backport from mainline
   1408 	2017-09-12  Jonathan Wakely  <jwakely (a] redhat.com>
   1409 
   1410 	PR libstdc++/79433
   1411 	* doc/xml/manual/status_cxx2017.xml: Update feature-test macros.
   1412 	* doc/html/*: Regenerate.
   1413 	* include/Makefile.am: Remove <bits/c++17_warning.h>.
   1414 	* include/Makefile.in: Regenerate.
   1415 	* include/bits/c++17_warning.h: Remove.
   1416 	* include/bits/string_view.tcc: Do not include <bits/c++17_warning.h>
   1417 	for pre-C++17 modes.
   1418 	* include/std/any: Likewise.
   1419 	(__cpp_lib_any): Define.
   1420 	* include/std/mutex (__cpp_lib_scoped_lock): Adjust value as per new
   1421 	SD-6 draft.
   1422 	* include/std/numeric (__cpp_lib_gcd_lcm): Define as per new SD-6
   1423 	draft.
   1424 	* include/std/optional: Do not include <bits/c++17_warning.h>.
   1425 	(__cpp_lib_optional): Define.
   1426 	* include/std/shared_mutex: Do not include <bits/c++14_warning.h>.
   1427 	* include/std/string_view: Do not include <bits/c++17_warning.h>.
   1428 	(__cpp_lib_string_view): Define.
   1429 	* include/std/variant: Do not include <bits/c++17_warning.h>.
   1430 	(__cpp_lib_variant): Define.
   1431 	* testsuite/20_util/optional/cons/value_neg.cc: Adjust dg-error line
   1432 	numbers.
   1433 	* testsuite/26_numerics/gcd/1.cc: Test for __cpp_lib_gcd_lcm.
   1434 	* testsuite/26_numerics/gcd/gcd_neg.cc: Adjust dg-error line
   1435 	numbers.
   1436 	* testsuite/26_numerics/lcm/1.cc: Test for __cpp_lib_gcd_lcm.
   1437 	* testsuite/26_numerics/lcm/lcm_neg.cc: Adjust dg-error line
   1438 	numbers.
   1439 	* testsuite/30_threads/scoped_lock/requirements/typedefs.cc: Adjust
   1440 	expected value of __cpp_lib_scoped_lock.
   1441 
   1442 	Backport from mainline
   1443 	2017-10-19  Jonathan Wakely  <jwakely (a] redhat.com>
   1444 
   1445 	* include/experimental/bits/fs_path.h (path::iterator++(int))
   1446 	(path::iterator--(int)): Fix for paths with only one component.
   1447 	* testsuite/experimental/filesystem/path/itr/traversal.cc: Test
   1448 	post-increment and post-decrement.
   1449 
   1450 2017-09-21  Jonathan Wakely  <jwakely (a] redhat.com>
   1451 
   1452 	* testsuite/25_algorithms/clamp/1.cc: Fix order of arguments and
   1453 	expected results when using predicate defining reverse order.
   1454 	* testsuite/25_algorithms/clamp/constexpr.cc: Likewise.
   1455 
   1456 2017-09-20  Jonathan Wakely  <jwakely (a] redhat.com>
   1457 
   1458 	Backport from mainline
   1459 	2017-06-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1460 
   1461 	* doc/xml/manual/test.xml: Correct instructions on running tests.
   1462 	* testsuite/27_io/basic_ios/copyfmt/char/1.cc: Adjust to pass when
   1463 	-D_GLIBCXX_USE_CXX11_ABI=0 added to RUNTESTFLAGS.
   1464 	* testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
   1465 	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
   1466 	exceptions_failbit.cc: Likewise.
   1467 	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
   1468 	exceptions_failbit.cc: Likewise.
   1469 	* testsuite/27_io/basic_istream/extractors_other/char/
   1470 	exceptions_null.cc: Likewise.
   1471 	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
   1472 	exceptions_null.cc: Likewise.
   1473 	* testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
   1474 	* testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
   1475 	* testsuite/27_io/basic_ostream/inserters_other/char/
   1476 	exceptions_null.cc: Likewise.
   1477 	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
   1478 	exceptions_null.cc: Likewise.
   1479 	* testsuite/27_io/ios_base/storage/2.cc: Likewise.
   1480 
   1481 	PR libstdc++/79162
   1482 	* include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI]
   1483 	(basic_string::_If_sv): Remove from the overload set when the
   1484 	argument is derived from basic_string.
   1485 
   1486 	PR libstdc++/79162
   1487 	* include/bits/basic_string.h (basic_string::_If_sv): Remove from the
   1488 	overload set when the argument is derived from basic_string.
   1489 	* testsuite/21_strings/basic_string/cons/char/moveable2_c++17.cc: New
   1490 	test.
   1491 	* testsuite/21_strings/basic_string/cons/wchar_t/moveable2_c++17.cc:
   1492 	New test.
   1493 
   1494 	* testsuite/24_iterators/range_access_cpp17.cc: Fix order of dg-do
   1495 	and dg-options directives. Fix invalid test.
   1496 
   1497 	Backport from mainline
   1498 	2017-09-20  Jonathan Wakely  <jwakely (a] redhat.com>
   1499 
   1500 	PR libstdc++/82262
   1501 	* include/std/optional (__optional_hash_call_base): Add template
   1502 	parameter for remove_const_t<_Tp> and use it consistently.
   1503 	* testsuite/20_util/optional/hash.cc: Test optional<const T>.
   1504 
   1505 	Backport from mainline
   1506 	2017-09-19  Jonathan Wakely  <jwakely (a] redhat.com>
   1507 
   1508 	PR libstdc++/82254
   1509 	* include/std/type_traits (__is_invocable): Add partial specialization
   1510 	for INVOKE<void> case and remove is_void<R> check from partial
   1511 	specialization for INVOKE<R> case.
   1512 	(__is_nt_invocable_impl): New helper for is_nothrow_invocable_r.
   1513 	(is_nothrow_invocable_r): Use __is_nt_invocable_impl.
   1514 	* testsuite/20_util/is_nothrow_invocable/value.cc: Add tests for
   1515 	conversions that can throw or fail to convert. Use static assert
   1516 	strings to explain negative results.
   1517 	* testsuite/20_util/is_nothrow_invocable/value_ext.cc: Use
   1518 	is_nothrow_constructible in is_nt_invocable_conv.
   1519 
   1520 2017-09-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1521 
   1522 	Backport from mainline
   1523 	2017-09-04  Daniel Kruegler  <daniel.kruegler (a] gmail.com>
   1524 
   1525 	PR libstdc++/79162
   1526 	Implement LWG 2946, LWG 2758's resolution missed further corrections
   1527 	* include/bits/basic_string.h (basic_string::compare): Add missing
   1528 	required noexcept specifications.
   1529 	(basic_string): Introduce internal _S_to_string_view and __sv_wrapper
   1530 	for implicit string_view conversion.
   1531 	(basic_string::basic_string): Fix explicit string_view conversion by
   1532 	implicit conversion using _S_to_string_view and __sv_wrapper.
   1533 	(basic_string): Introduce internal basic_string(__sv_wrapper, Alloc)
   1534 	constructor.
   1535 	(basic_string): Fix operator=(T) template by operator=(const T&)
   1536 	template for uncopyable types (PR 79162).
   1537 	(basic_string::operator+=, basic_string::append, basic_string::assign)
   1538 	(basic_string::insert, basic_string::replace, basic_string::find)
   1539 	(basic_string::rfind, basic_string::find_first_of)
   1540 	(basic_string::find_last_of, basic_string::find_first_not_of)
   1541 	(basic_string::find_last_not_of, basic_string::compare): Replace
   1542 	__sv_type argument by template const T& (LWG 2946) and correct
   1543 	documentation describing __sv_type argument.
   1544 	(basic_string::find, basic_string::rfind, basic_string::find_first_of)
   1545 	(basic_string::find_last_of, basic_string::find_first_not_of)
   1546 	(basic_string::find_last_not_of, basic_string::compare): Replace
   1547 	unconditional noexcept specification by conditional noexcept
   1548 	specification to partially balance the removal of noexcept by LWG 2946.
   1549 	* testsuite/21_strings/basic_string/79162.cc: New.
   1550 	* testsuite/21_strings/basic_string/lwg2946.cc: New.
   1551 
   1552 2017-09-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1553 
   1554 	PR libstdc++/81468
   1555 	* include/std/chrono (time_point(const time_point<_Dur2>&)): Add
   1556 	missing constraint from LWG DR 1177.
   1557 	* testsuite/20_util/duration/cons/dr1177.cc: New.
   1558 	* testsuite/20_util/time_point/cons/81468.cc: New.
   1559 	* testsuite/20_util/duration/literals/range.cc: Update dg-error line.
   1560 
   1561 	* doc/doxygen/mainpage.html: Fix broken URLs.
   1562 
   1563 	PR libstdc++/81835
   1564 	* doc/xml/manual/extensions.xml: Replace unstable URL.
   1565 	* doc/html/manual/ext_demangling.html: Regenerate.
   1566 	* libsupc++/cxxabi.h (__cxa_demangle): Fix broken URL.
   1567 
   1568 2017-09-12  Jonathan Wakely  <jwakely (a] redhat.com>
   1569 
   1570 	Backport from mainline
   1571 	2017-09-12  Jonathan Wakely  <jwakely (a] redhat.com>
   1572 
   1573 	PR libstdc++/70483
   1574 	* include/experimental/bits/string_view.tcc (basic_string_view::find)
   1575 	(basic_string_view::rfind, basic_string_view::find_first_of)
   1576 	(basic_string_view::find_last_of, basic_string_view::find_first_not_of)
   1577 	(basic_string_view::find_last_not_of): Add constexpr specifier.
   1578 	* include/experimental/string_view (basic_string_view::remove_prefix)
   1579 	(basic_string_view::remove_suffix, basic_string_view::swap)
   1580 	(basic_string_view::compare, basic_string_view::find)
   1581 	(basic_string_view::rfind, basic_string_view::find_first_of)
   1582 	(basic_string_view::find_last_of, basic_string_view::find_first_not_of)
   1583 	(basic_string_view::find_last_not_of, operator==, operator!=)
   1584 	(operator<, operator>, operator<=, operator>=): Likewise.
   1585 	* testsuite/experimental/string_view/operations/compare/char/70483.cc:
   1586 	New.
   1587 
   1588 	Backport from mainline
   1589 	2017-09-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1590 
   1591 	PR libstdc++/70483
   1592 	* include/bits/string_view.tcc (basic_string_view::find)
   1593 	(basic_string_view::rfind, basic_string_view::find_first_of)
   1594 	(basic_string_view::find_last_of, basic_string_view::find_first_not_of)
   1595 	(basic_string_view::find_last_not_of): Add constexpr specifier.
   1596 	* include/std/string_view (basic_string_view::operator=)
   1597 	(basic_string_view::rbegin, basic_string_view::rend)
   1598 	(basic_string_view::crbegin, basic_string_view::crend)
   1599 	(basic_string_view::remove_prefix, basic_string_view::remove_suffix)
   1600 	(basic_string_view::swap, basic_string_view::compare)
   1601 	(basic_string_view::find, basic_string_view::rfind)
   1602 	(basic_string_view::find_first_of, basic_string_view::find_last_of)
   1603 	(basic_string_view::find_first_not_of)
   1604 	(basic_string_view::find_last_not_of, basic_string_view::_M_check)
   1605 	(basic_string_view::_M_limit, operator==, operator!=, operator<)
   1606 	(operator>, operator<=, operator>=): Likewise.
   1607 	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
   1608 	char/1.cc: Repeat tests in constexpr context.
   1609 	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
   1610 	wchar_t/1.cc: Likewise.
   1611 	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
   1612 	char/1.cc: Likewise.
   1613 	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
   1614 	wchar_t/1.cc: Likewise.
   1615 	* testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
   1616 	Likewise.
   1617 	* testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
   1618 	Likewise.
   1619 	* testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
   1620 	Likewise.
   1621 	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc:
   1622 	Likewise.
   1623 	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc:
   1624 	Likewise.
   1625 	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc:
   1626 	Likewise.
   1627 	* testsuite/21_strings/basic_string_view/operators/char/2.cc:
   1628 	Likewise.
   1629 	* testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
   1630 	Likewise.
   1631 	* testsuite/21_strings/basic_string_view/range_access/char/1.cc: Test
   1632 	cbegin, cend, rbegin, rend, crbegin and crend.
   1633 	* testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
   1634 	Likewise.
   1635 	* testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
   1636 	Remove trailing whitespace.
   1637 	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
   1638 	1.cc: Likewise.
   1639 	* testsuite/21_strings/basic_string_view/modifiers/swap/char/1.cc:
   1640 	New.
   1641 	* testsuite/21_strings/basic_string_view/modifiers/swap/wchar_t/1.cc:
   1642 	New.
   1643 	* testsuite/21_strings/basic_string_view/operations/compare/char/2.cc:
   1644 	New.
   1645 	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
   1646 	2.cc: New.
   1647 
   1648 	Backport from mainline
   1649 	2017-06-12  Pedro Alves  <palves (a] redhat.com>
   1650 
   1651 	* doc/xml/manual/status_cxx2017.xml: Update C++17 constexpr
   1652 	char_traits status.
   1653 	* doc/html/*: Regenerate.
   1654 
   1655 	* include/bits/char_traits.h (_GLIBCXX_ALWAYS_INLINE): Define if
   1656 	not already defined.
   1657 	(__cpp_lib_constexpr_char_traits): Uncomment.
   1658 	(__constant_string_p, __constant_char_array_p): New.
   1659 	(std::char_traits<char>, std::char_traits<wchar_t>): Add
   1660 	_GLIBCXX17_CONSTEXPR on compare, length and find and use
   1661 	__constant_string_p, __constant_char_array_p and
   1662 	__builtin_constant_p to defer to __gnu_cxx::char_traits at compile
   1663 	time.
   1664 
   1665 	* testsuite/21_strings/char_traits/requirements/
   1666 	constexpr_functions_c++17.cc: Uncomment
   1667 	__cpp_lib_constexpr_char_traits tests.  Uncomment
   1668 	test_compare<char>, test_length<char>, test_find<char>,
   1669 	test_compare<wchar_t>, test_length<wchar_t> and test_find<wchar_t>
   1670 	static_assert tests.
   1671 
   1672 2017-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1673 
   1674 	Backport from mainline
   1675 	2017-08-31  Jonathan Wakely  <jwakely (a] redhat.com>
   1676 
   1677 	PR c++/82039
   1678 	* include/ext/new_allocator.h (__gnu_cxx::new_allocator::allocate):
   1679 	Adjust null pointer constant to avoid warning.
   1680 
   1681 	Backport from mainline
   1682 	2017-08-21  Jonathan Wakely  <jwakely (a] redhat.com>
   1683 
   1684 	PR libstdc++/81912
   1685 	* include/bits/stl_iterator_base_types.h (__iterator_category): Add
   1686 	constexpr for C++11 and later.
   1687 	* testsuite/24_iterators/container_access.cc: Add target selector.
   1688 	* testsuite/24_iterators/range_access.cc: Fix clause number in
   1689 	comment.
   1690 	* testsuite/24_iterators/range_access_cpp14.cc: Likewise.
   1691 	* testsuite/24_iterators/range_access_cpp17.cc: New.
   1692 
   1693 	Backport from mainline
   1694 	2017-08-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1695 
   1696 	* include/std/type_traits (_GLIBCXX_NO_BUILTIN_HAS_UNIQ_OBJ_REP):
   1697 	Replace with _GLIBCXX_HAVE_BUILTIN_HAS_UNIQ_OBJ_REP and use
   1698 	__is_identifier to set it.
   1699 
   1700 	Backport from mainline
   1701 	2017-08-09  Katsuhiko Nishimra  <ktns.87 (a] gmail.com>
   1702 
   1703 	* include/std/type_traits (_GLIBCXX_HAVE_BUILTIN_IS_AGGREGATE): Use
   1704 	__is_identifier instead of __has_builtin.
   1705 
   1706 	Backport from mainline
   1707 	2017-08-18  Jonathan Wakely  <jwakely (a] redhat.com>
   1708 
   1709 	PR libstdc++/81891
   1710 	* include/bits/hashtable.h (_Hashtable(_InputIterator, _InputIterator,
   1711 	size_type, const _H1&, const _H2&, const _Hash&, const _Equal&,
   1712 	const _ExtractKey&, const allocator_type&)): Let destructor do clean
   1713 	up if an exception is thrown.
   1714 	* testsuite/23_containers/unordered_map/cons/81891.cc: New.
   1715 
   1716 	Backport from mainline
   1717 	2017-07-31  Marek Polacek  <polacek (a] redhat.com>
   1718 
   1719 	PR libstdc++/81599
   1720 	* include/bits/stl_stack.h: Fix typo.
   1721 
   1722 	Backport from mainline
   1723 	2017-07-10  Jonathan Wakely  <jwakely (a] redhat.com>
   1724 
   1725 	PR libstdc++/81338
   1726 	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (basic_string):
   1727 	Declare basic_stringbuf to be a friend.
   1728 	* include/bits/sstream.tcc (basic_stringbuf::overflow)
   1729 	[_GLIBCXX_USE_CXX11_ABI]: Use unused capacity before reallocating.
   1730 	* include/std/sstream (basic_stringbuf::__xfer_bufptrs): Update string
   1731 	length to buffer length.
   1732 	* testsuite/27_io/basic_stringstream/assign/81338.cc: New.
   1733 
   1734 2017-08-20  John David Anglin  <danglin (a] gcc.gnu.org>
   1735 
   1736 	PR testsuite/81056
   1737 	* testsuite/17_intro/names.cc: Undef 'd' and 'r' on __hpux__.
   1738 
   1739 2017-08-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1740 
   1741 	Backport from mainline
   1742 	2017-08-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1743 
   1744 	PR libstdc++/79820
   1745 	PR libstdc++/81751
   1746 	* config/io/basic_file_stdio.cc (sys_open(FILE*, ios_base::openmode)):
   1747 	Call fflush on the stream instead of calling sync() while _M_cfile is
   1748 	null. Restore original value of errno.
   1749 	* testsuite/ext/stdio_filebuf/char/79820.cc: New.
   1750 	* testsuite/ext/stdio_filebuf/char/81751.cc: New.
   1751 
   1752 	Backport from mainline
   1753 	2017-07-25  Jonathan Wakely  <jwakely (a] redhat.com>
   1754 
   1755 	PR libstdc++/53984
   1756 	* include/bits/basic_ios.h (basic_ios::_M_setstate): Adjust comment.
   1757 	* include/bits/istream.tcc (basic_istream::sentry): Handle exceptions
   1758 	during construction.
   1759 	* include/std/istream: Adjust comments for formatted input functions
   1760 	and unformatted input functions.
   1761 	* testsuite/27_io/basic_fstream/53984.cc: New.
   1762 	* testsuite/27_io/basic_istream/sentry/char/53984.cc: New.
   1763 
   1764 2017-08-14  Release Manager
   1765 
   1766 	* GCC 7.2.0 released.
   1767 
   1768 2017-07-26  Richard Biener  <rguenther (a] suse.de>
   1769 
   1770 	Backport from mainline
   1771 	2017-06-02  Richard Biener  <rguenther (a] suse.de>
   1772 		Markus Eisenmann  <meisenmann.lba (a] fh-salzburg.ac.at>
   1773 
   1774 	PR libstdc++/80721
   1775 	* libsupc++/eh_alloc.cc (pool::free): Keep list properly
   1776 	sorted and add missing freelist item merging cases.
   1777 
   1778 2017-07-25  Jonathan Wakely  <jwakely (a] redhat.com>
   1779 
   1780 	Backport from mainline
   1781 	2017-06-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1782 
   1783 	* doc/xml/manual/intro.xml: Document LWG 2802, 2873 and 2942 changes.
   1784 	* include/bits/shared_ptr.h (shared_ptr): Use rvalues for deleters
   1785 	(LWG 2802).
   1786 	* include/bits/shared_ptr_base.h (_Sp_ebo_helper, _Sp_counted_deleter
   1787 	(_Sp_counted_deleter::_Impl, __shared_count, __shared_ptr): Likewise.
   1788 	* testsuite/20_util/shared_ptr/cons/lwg2802.cc: New.
   1789 
   1790 	Backport from mainline
   1791 	2017-06-05  Jonathan Wakely  <jwakely (a] redhat.com>
   1792 
   1793 	* include/bits/shared_ptr_base.h (__shared_ptr::owner_before)
   1794 	(__weak_ptr::owner_before, _Sp_owner_less::operator()): Add noexcept
   1795 	specifiers as per LWG 2873 and LWG 2942.
   1796 	* testsuite/20_util/owner_less/noexcept.cc: New.
   1797 	* testsuite/20_util/shared_ptr/observers/owner_before.cc: Test
   1798 	noexcept guarantees.
   1799 	* testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
   1800 
   1801 	Backport from mainline
   1802 	2017-04-28  Jonathan Wakely  <jwakely (a] redhat.com>
   1803 
   1804 	PR libstdc++/80553
   1805 	* include/bits/stl_construct.h (_Destroy, _Destroy_n): Add static
   1806 	assertions to ensure type is destructible.
   1807 	(destroy_at, destroy, destroy_n): Move from stl_uninitialized.h.
   1808 	* include/bits/stl_uninitialized.h (destroy_at, destroy, destroy_n):
   1809 	Move to stl_construct.h.
   1810 	* testsuite/20_util/specialized_algorithms/memory_management_tools/
   1811 	destroy_neg.cc: New test.
   1812 	* testsuite/23_containers/vector/cons/destructible_neg.cc: New test.
   1813 
   1814 	Backport from mainline
   1815 	2017-05-16  Jonathan Wakely  <jwakely (a] redhat.com>
   1816 
   1817 	* configure: Regenerate.
   1818 	* doc/xml/manual/status_cxx2017.xml: Update status table.
   1819 	* doc/html/*: Regenerate.
   1820 	* include/Makefile.am: Add new header.
   1821 	* include/Makefile.in: Regenerate.
   1822 	* include/experimental/source_location: New header implementing N4519.
   1823 	* testsuite/experimental/source_location/1.cc: New test.
   1824 
   1825 	Backport from mainline
   1826 	2017-07-06  Jonathan Wakely  <jwakely (a] redhat.com>
   1827 
   1828 	* include/bits/uses_allocator.h (__use_alloc(const _Alloc&&)): Add
   1829 	deleted overload to prevent dangling references to rvalues.
   1830 	* include/experimental/memory_resource
   1831 	(polymorphic_allocator::construct): Do not call __use_alloc with
   1832 	rvalue arguments.
   1833 
   1834 	Backport from mainline
   1835 	2017-06-08  Jonathan Wakely  <jwakely (a] redhat.com>
   1836 
   1837 	PR libstdc++/81017
   1838 	* include/bits/std_function.h (function::function(function&&))
   1839 	(function::operator=(funtion&&)): Add noexcept.
   1840 	* testsuite/20_util/function/assign/move.cc: Check for noexcept.
   1841 	* testsuite/20_util/function/cons/move.cc: Likewise.
   1842 
   1843 	Backport from mainline
   1844 	2017-07-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1845 
   1846 	* include/std/mutex (scoped_lock): Reorder std::adopt_lock_t parameter
   1847 	as per P0739R0.
   1848 	* testsuite/30_threads/scoped_lock/cons/1.cc: Reorder arguments.
   1849 	* testsuite/30_threads/scoped_lock/cons/deduction.cc: Test deduction
   1850 	with std::adopt_lock_t.
   1851 	* testsuite/30_threads/scoped_lock/requirements/typedefs.cc: Check
   1852 	feature-test macro.
   1853 
   1854 	Backport from mainline
   1855 	2017-07-14  Jason Merrill  <jason (a] redhat.com>
   1856 	    Jonathan Wakely  <jwakely (a] redhat.com>
   1857 
   1858 	* include/std/variant (variant::variant(_Tp&&)): Constrain to remove
   1859 	the constructor for empty variants from the candidate functions
   1860 	during class template argument deduction.
   1861 	* testsuite/20_util/variant/deduction.cc: New.
   1862 
   1863 	Backport from mainline
   1864 	2017-06-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1865 
   1866 	PR libstdc++/80939
   1867 	* include/std/variant (__erased_ctor, __erased_assign, __erased_swap)
   1868 	(__erased_hash): Remove constexpr specifier and qualify calls to
   1869 	__ref_cast.
   1870 	(__erased_dtor): Remove constexpr specifier and use _Destroy.
   1871 
   1872 	Backport from mainline
   1873 	2017-05-20  Tim Shen  <timshen (a] google.com>
   1874 
   1875 	PR libstdc++/80737
   1876 	* include/std/variant(variant::variant): SFINAE on is_same first.
   1877 	* testsuite/20_util/variant/any.cc: test case.
   1878 
   1879 2017-07-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1880 
   1881 	Backport from mainline
   1882 	2017-04-21  Jonathan Wakely  <jwakely (a] redhat.com>
   1883 
   1884 	PR libstdc++/80316
   1885 	* include/std/future (_State_baseV2::_Setter::operator()): Remove
   1886 	_S_check calls that are done after the pointer to the shared state is
   1887 	already dereferenced.
   1888 	(_State_baseV2::_Setter<_Res, void>): Define specialization for void
   1889 	as partial specialization so it can be defined within the definition
   1890 	of _State_baseV2.
   1891 	(_State_baseV2::__setter): Call _S_check.
   1892 	(_State_baseV2::__setter(promise<void>*)): Add overload for use by
   1893 	promise<void>::set_value and promise<void>::set_value_at_thread_exit.
   1894 	(promise<T>, promise<T&>, promise<void>): Make _State a friend.
   1895 	(_State_baseV2::_Setter<void, void>): Remove explicit specialization.
   1896 	(promise<void>::set_value, promise<void>::set_value_at_thread_exit):
   1897 	Use new __setter overload.
   1898 	* testsuite/30_threads/promise/members/at_thread_exit2.cc: New test.
   1899 	* testsuite/30_threads/promise/members/set_exception.cc: Test
   1900 	promise<T&> and promise<void> specializations.
   1901 	* testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
   1902 	Test for no_state error condition.
   1903 	* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
   1904 
   1905 2017-06-27  Jonathan Wakely  <jwakely (a] redhat.com>
   1906 
   1907 	PR libstdc++/81221
   1908 	* include/bits/stl_algo.h (sample): Qualify with _GLIBCXX_STD_A not
   1909 	std.
   1910 	* testsuite/25_algorithms/sample/81221.cc: New.
   1911 
   1912 2017-06-21  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   1913 
   1914 	Backport from mainline
   1915 	2017-06-21  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   1916 
   1917 	PR libstdc++/80675
   1918 	PR libstdc++/80940
   1919 	* include/std/istream:
   1920 	(__is_convertible_to_basic_istream_test(basic_istream<_Ch, _Up>*)): New.
   1921 	(__do_is_convertible_to_basic_istream_impl): Likewise.
   1922 	(__is_convertible_to_basic_istream_impl): Likewise.
   1923 	(__is_convertible_to_basic_istream): Use the new base.
   1924 	(__rvalue_istream_type): New.
   1925 	(operator>>(_Istream&&, _Tp&&)): Use the new helper alias
   1926 	for the SFINAE check, convert to the helper alias type before
   1927 	doing the actual extraction.
   1928 	* include/std/ostream:
   1929 	(__is_convertible_to_basic_ostream_test(basic_ostream<_Ch, _Up>*)): New.
   1930 	(__do_is_convertible_to_basic_ostream_impl): Likewise.
   1931 	(__is_convertible_to_basic_ostream_impl): Likewise.
   1932 	(__is_convertible_to_basic_ostream): Use the new base.
   1933 	(__rvalue_ostream_type): New.
   1934 	(operator<<(_Ostream&&, const _Tp&)): Use the new helper alias
   1935 	for the SFINAE check, convert to the helper alias type before
   1936 	doing the actual insertion.
   1937 	* testsuite/27_io/rvalue_streams-2.cc: Add new tests.
   1938 
   1939 2017-06-21  Uros Bizjak  <ubizjak (a] gmail.com>
   1940 
   1941 	* config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
   1942 
   1943 2017-06-21  Jonathan Wakely  <jwakely (a] redhat.com>
   1944 
   1945 	PR libstdc++/81092
   1946 	* configure: Regenerate.
   1947 
   1948 2017-06-19  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   1949 
   1950 	* config/abi/post/i386-solaris2.10/baseline_symbols.txt: Regenerate.
   1951 	* config/abi/post/i386-solaris2.10/amd64/baseline_symbols.txt: Likewise.
   1952 	* config/abi/post/i386-solaris2.11/baseline_symbols.txt: Likewise.
   1953 	* config/abi/post/i386-solaris2.11/amd64/baseline_symbols.txt: Likewise.
   1954 	* config/abi/post/sparc-solaris2.10/baseline_symbols.txt: Likewise.
   1955 	* config/abi/post/sparc-solaris2.10/sparcv9/baseline_symbols.txt:
   1956 	Likewise.
   1957 	* config/abi/post/sparc-solaris2.11/baseline_symbols.txt: Likewise.
   1958 	* config/abi/post/sparc-solaris2.11/sparcv9/baseline_symbols.txt:
   1959 	Likewise.
   1960 
   1961 2017-06-18  H.J. Lu  <hongjiu.lu (a] intel.com>
   1962 
   1963 	PR libstdc++/81092
   1964 	* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
   1965 
   1966 2017-06-16  Jakub Jelinek  <jakub (a] redhat.com>
   1967 
   1968 	PR libstdc++/81092
   1969 	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
   1970 
   1971 2017-06-16  Jonathan Wakely  <jwakely (a] redhat.com>
   1972 
   1973 	* include/bits/locale_conv.h (wbuffer_convert::sync): Fix condition.
   1974 	* testsuite/22_locale/conversions/buffer/2.cc: New.
   1975 
   1976 	* doc/xml/manual/appendix_contributing.xml: Link to the list of bad
   1977 	names, and link to the test docs and note higher DejaGnu version
   1978 	requirement.
   1979 	* doc/xml/manual/allocator.xml: Fix ViewCVS URLs.
   1980 	* doc/xml/manual/mt_allocator.xml: Likewise.
   1981 	* doc/xml/manual/test.xml: Correct instructions on running tests.
   1982 	* doc/html/*: Regenerate.
   1983 
   1984 	PR libstdc++/81092
   1985 	* acinclude.m4: Bump libtool_VERSION.
   1986 	* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
   1987 	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
   1988 	* config/abi/pre/gnu.ver: Add wstring constructor symbols to new
   1989 	GLIBCXX_3.4.24 version.
   1990 	* doc/xml/manual/abi.xml: Document new versions.
   1991 	* doc/html/*: Regenerate.
   1992 	* testsuite/21_strings/basic_string/cons/char/8.cc: Use base object
   1993 	constructors to ensure required symbols are exported.
   1994 	* testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
   1995 	* testsuite/util/testsuite_abi.cc: Add new version.
   1996 
   1997 	* include/bits/locale_conv.h (wbuffer_convert::_M_put): Add missing
   1998 	return statement.
   1999 	* testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
   2000 	Return void.
   2001 	* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
   2002 	Likewise.
   2003 	* testsuite/23_containers/map/modifiers/insert_or_assign/1.cc: Add
   2004 	missing return statements.
   2005 	* testsuite/23_containers/unordered_map/modifiers/insert_or_assign.cc:
   2006 	Likewise.
   2007 	* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
   2008 	Return void.
   2009 	* testsuite/special_functions/14_expint/pr68397.cc: Likewise.
   2010 
   2011 2017-06-07  Jonathan Wakely  <jwakely (a] redhat.com>
   2012 
   2013 	PR libstdc++/81002
   2014 	* include/bits/regex_compiler.h (__compile_nfa): Add template argument
   2015 	list to specify traits type.
   2016 	* testsuite/28_regex/basic_regex/ctors/basic/iter.cc: New.
   2017 
   2018 2017-05-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2019 
   2020 	PR libstdc++/80796
   2021 	* include/bits/stl_algo.h (search): Add new overload for C++17.
   2022 	* testsuite/25_algorithms/search/searcher.cc: New.
   2023 
   2024 2017-05-18  Jonathan Wakely  <jwakely (a] redhat.com>
   2025 
   2026 	PR libstdc++/80478
   2027 	* include/std/functional (_Mem_fn_traits_base): Add specializations
   2028 	for noexcept member function types.
   2029 	* testsuite/20_util/function_objects/mem_fn/80478.cc: New test.
   2030 
   2031 2017-05-18  Jonathan Wakely  <jwakely (a] redhat.com>
   2032 
   2033 	* doc/xml/manual/policy_data_structures.xml: Fix typo.
   2034 	* doc/xml/manual/test_policy_data_structures.xml: Likewise.
   2035 	* doc/html/*: Regenerate.
   2036 
   2037 	* doc/xml/manual/abi.xml: Document latest library versions.
   2038 	* doc/xml/manual/build_hacking.xml: Document requirement to update
   2039 	abi.xml when bumping library versions.
   2040 	* doc/html/*: Regenerate.
   2041 
   2042 2017-05-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2043 
   2044 	PR libstdc++/80761
   2045 	* include/bits/node_handle.h (_Node_insert_return): Reorder members.
   2046 	(tuple_size, tuple_element): Remove partial specializations.
   2047 	* include/bits/stl_tree.h (_Rb_tree::insert_return_type): Use
   2048 	const_iterator for std::set.
   2049 	* testsuite/23_containers/map/modifiers/extract.cc: New.
   2050 	* testsuite/23_containers/set/modifiers/extract.cc: New.
   2051 	* testsuite/23_containers/unordered_map/modifiers/extract.cc: New.
   2052 	* testsuite/23_containers/unordered_set/modifiers/extract.cc: New.
   2053 
   2054 2017-05-12  Jonathan Wakely  <jwakely (a] redhat.com>
   2055 
   2056 	PR libstdc++/78939
   2057 	* include/std/utility (tuple_size<cv T>) [__cplusplus > 201402L]:
   2058 	Only define partial specializations when tuple_size<T>::value is
   2059 	valid.
   2060 	* testsuite/20_util/tuple/78939.cc: New.
   2061 
   2062 2017-05-02  Release Manager
   2063 
   2064 	* GCC 7.1.0 released.
   2065 
   2066 2017-04-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2067 
   2068 	* doc/xml/manual/abi.xml: Rephrase one of the references to the
   2069 	Itanium C++ ABI.
   2070 	* doc/xml/manual/test.xml: Document DejaGnu 1.5.3 requirement.
   2071 	* doc/html/*: Regenerate.
   2072 
   2073 	* libsupc++/new: Update comment on #endif directive.
   2074 
   2075 	PR libstdc++/80448
   2076 	* include/experimental/bits/fs_dir.h (directory_iterator)
   2077 	(recursive_directory_iterator): Remove noexcept from defaulted
   2078 	constructors.
   2079 
   2080 	PR libstdc++/80446
   2081 	* include/std/type_traits (is_aggregate): Change __has_builtin checks.
   2082 	* libsupc++/new (launder): Likewise.
   2083 
   2084 2017-04-18  Jonathan Wakely  <jwakely (a] redhat.com>
   2085 
   2086 	* include/std/functional (default_searcher, __boyer_moore_array_base)
   2087 	(__is_std_equal_to, __boyer_moore_base_t, boyer_moore_searcher)
   2088 	(boyer_moore_horspool_searcher): Remove redundant namespace
   2089 	qualification.
   2090 	(default_searcher::operator()): Construct return value early and
   2091 	advance second member in-place.
   2092 	(boyer_moore_horspool_searcher::operator()): Increment random access
   2093 	iterator directly instead of using std::next.
   2094 	(boyer_moore_searcher::operator()): Fix return value.
   2095 	* testsuite/20_util/function_objects/searchers.cc: Check both parts
   2096 	of return values.
   2097 
   2098 2017-04-12  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2099 
   2100 	* doc/xml/faq.xml: Update reference link to C++ ABI for Itanium.
   2101 	* doc/xml/manual/abi.xml. Ditto (thrice).
   2102 
   2103 2017-04-03  Jonathan Wakely  <jwakely (a] redhat.com>
   2104 
   2105 	* doc/xml/manual/status_cxx2017.xml: Remove duplicate table entry.
   2106 	* doc/html/*: Regenerate.
   2107 
   2108 	* testsuite/20_util/reference_wrapper/invoke.cc: Uncomment tests
   2109 	that no longer fail.
   2110 
   2111 	* include/bits/ios_base.h: Correct comment.
   2112 	* testsuite/util/testsuite_hooks.h: Likewise.
   2113 
   2114 	* doc/xml/manual/status_cxx2017.xml: Update C++17 status table.
   2115 	* doc/xml/manual/appendix_contributing.xml (contrib.organization): Add
   2116 	directories for debug, parallel and profile headers.
   2117 	* doc/html/*: Regenerate.
   2118 
   2119 	* include/bits/char_traits.h (__gnu_cxx::char_traits): Add
   2120 	_GLIBCXX14_CONSTEXPR on assign, compare, find, and length.
   2121 	(std::char_traits<char>, std::char_traits<wchar_t>): Add
   2122 	_GLIBCXX17_CONSTEXPR on assign.
   2123 	(std::char_traits<char16_t>, std::char_traits<char32_t>): Add
   2124 	_GLIBCXX17_CONSTEXPR on assign, compare, find, and length.
   2125 	* testsuite/21_strings/char_traits/requirements/
   2126 	constexpr_functions_c++17.cc: New test.
   2127 
   2128 2017-04-03  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2129 
   2130 	PR libstdc++/79141
   2131 	* include/bits/stl_pair.h (__nonesuch_no_braces): New.
   2132 	(operator=(typename conditional<
   2133 	__and_<is_copy_assignable<_T1>,
   2134 	is_copy_assignable<_T2>>::value,
   2135 	const pair&, const __nonesuch&>::type)): Change __nonesuch
   2136 	to __nonesuch_no_braces.
   2137 	(operator=(typename conditional<
   2138 	__not_<__and_<is_copy_assignable<_T1>,
   2139 	is_copy_assignable<_T2>>>::value,
   2140 	const pair&, const __nonesuch&>::type)): Likewise.
   2141 	(operator=(typename conditional<
   2142 	__and_<is_move_assignable<_T1>,
   2143 	is_move_assignable<_T2>>::value,
   2144 	pair&&, __nonesuch&&>::type)): Likewise.
   2145 	* testsuite/20_util/pair/79141.cc: New.
   2146 
   2147 2017-04-03  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2148 
   2149 	Implement std::is_aggregate.
   2150 	* include/std/type_traits (is_aggregate, is_aggregate_v): New.
   2151 	* testsuite/20_util/is_aggregate/requirements/explicit_instantiation.cc:
   2152 	New.
   2153 	* testsuite/20_util/is_aggregate/requirements/typedefs.cc: Likewise.
   2154 	* testsuite/20_util/is_aggregate/value.cc: Likewise.
   2155 
   2156 2017-03-29  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2157 
   2158 	Adjust optional's pretty printer for LWG 2900.
   2159 	* python/libstdcxx/v6/printers.py (StdExpOptionalPrinter.__init__):
   2160 	Look at the nested payload in case of non-experimental optional.
   2161 
   2162 2017-03-29  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2163 
   2164 	Implement LWG 2900, The copy and move constructors
   2165 	of optional are not constexpr.
   2166 	* include/std/optional (_Optional_payload): New.
   2167 	(_Optional_base): Remove the bool parameter.
   2168 	(_Optional_base<_Tp, false>): Remove.
   2169 	(_Optional_base()): Adjust.
   2170 	(_Optional_base(nullopt_t)): Likewise.
   2171 	(_Optional_base(in_place_t, _Args&&...)): Likewise.
   2172 	(_Optional_base(in_place_t, initializer_list<_Up>, _Args&&...)):
   2173 	Likewise.
   2174 	(_Optional_base(const _Optional_base&)): Likewise.
   2175 	(_Optional_base(_Optional_base&&)): Likewise.
   2176 	(operator=(const _Optional_base&)): Likewise.
   2177 	(operator=(_Optional_base&&)): Likewise.
   2178 	(~_Optional_base()): Remove.
   2179 	(_M_is_engaged()): Adjust.
   2180 	(_M_get()): Likewise.
   2181 	(_M_construct(_Args&&...)): Likewise.
   2182 	(_M_destruct()): Likewise.
   2183 	(_M_reset()): Likewise.
   2184 	(_Optional_base::_Empty_byte): Remove.
   2185 	(_Optional_base::_M_empty): Remove.
   2186 	(_Optional_base::_M_payload): Adjust.
   2187 	* testsuite/20_util/optional/cons/value_neg.cc: Adjust.
   2188 	* testsuite/20_util/optional/constexpr/cons/value.cc: Add tests.
   2189 
   2190 2017-03-28  Jonathan Wakely  <jwakely (a] redhat.com>
   2191 
   2192 	PR libstdc++/80137
   2193 	* include/bits/random.tcc (generate_canonical): Use std::nextafter
   2194 	or numeric_limits::epsilon() to reduce out-of-range values.
   2195 	* testsuite/26_numerics/random/uniform_real_distribution/operators/
   2196 	64351.cc: Verify complexity requirement is met.
   2197 
   2198 	* doc/xml/manual/abi.xml: Add xml:id anchor.
   2199 	* doc/xml/manual/using.xml (manual.intro.using.macros): Document
   2200 	_GLIBCXX_RELEASE. Link to new anchor for __GLIBCXX__ notes.
   2201 	(concurrency.io.structure): Add markup.
   2202 	* doc/html/*: Regenerate.
   2203 
   2204 	PR libstdc++/80229
   2205 	* include/bits/shared_ptr_base.h
   2206 	(__shared_ptr::_M_enable_shared_from_this_with): Change parameters to
   2207 	non-const and then use remove_cv to get unqualified type.
   2208 	* testsuite/20_util/enable_shared_from_this/members/const.cc: Don't
   2209 	cast away constness on object created const.
   2210 	* testsuite/20_util/shared_ptr/cons/80229.cc: New test.
   2211 
   2212 2017-03-26  Markus Trippelsdorf  <markus (a] trippelsdorf.de>
   2213 
   2214 	PR libstdc++/80183
   2215 	* include/bits/stl_tree.h:
   2216 	(_Rb_tree_header::_M_move_data(_Rb_tree_header&)): Also save _M_color.
   2217 
   2218 2017-03-23  Jonathan Wakely  <jwakely (a] redhat.com>
   2219 
   2220 	* testsuite/23_containers/array/tuple_interface/
   2221 	tuple_element_debug_neg.cc: Adjust dg-error.
   2222 	* testsuite/23_containers/list/operations/78389.cc: Fix less-than to
   2223 	define a valid strict weak ordering.
   2224 	* testsuite/23_containers/priority_queue/67085.cc: Disable test for
   2225 	Debug Mode, due to debug checks making extra copies of predicate.
   2226 	* testsuite/ext/pb_ds/regression/priority_queue_binary_heap-62045.cc:
   2227 	Likewise.
   2228 
   2229 	* doc/xml/faq.xml: Add link.
   2230 	* doc/xml/manual/backwards_compatibility.xml: Remove outdated
   2231 	information on pre-ISO headers. Replace broken link to C++ FAQ Lite.
   2232 	* doc/xml/manual/io.xml: Update broken link.
   2233 	* doc/html/*: Regenerate.
   2234 
   2235 2017-03-23  Daniel Kruegler  <daniel.kruegler (a] gmail.com>
   2236 
   2237 	Implement LWG 2686, Why is std::hash specialized for error_code,
   2238 	but not error_condition?
   2239 	* include/std/system_error (hash<error_condition>): Define for C++17.
   2240 	* testsuite/20_util/hash/operators/size_t.cc (hash<error_condition>):
   2241 	Instantiate test for error_condition.
   2242 	* testsuite/20_util/hash/requirements/explicit_instantiation.cc
   2243 	(hash<error_condition>): Instantiate hash<error_condition>.
   2244 
   2245 	* include/bits/c++config (_GLIBCXX17_INLINE): Define.
   2246 	* include/bits/regex_constants.h (All std::regex_constants constants):
   2247 	Add _GLIBCXX17_INLINE as per P0607R0.
   2248 	* include/bits/std_mutex.h (defer_lock, try_to_lock, adopt_lock):
   2249 	Likewise.
   2250 	* include/bits/stl_pair.h (piecewise_construct): Likewise.
   2251 	* include/bits/uses_allocator.h (allocator_arg, uses_allocator_v)
   2252 	(__is_uses_allocator_constructible_v)
   2253 	(__is_nothrow_uses_allocator_constructible_v): Likewise.
   2254 	* include/std/chrono (treat_as_floating_point_v): Likewise.
   2255 	* include/std/functional (is_bind_expression_v, is_placeholder_v):
   2256 	Likewise.
   2257 	* include/std/optional (nullopt): Likewise.
   2258 	* include/std/ratio (ratio_equal_v, ratio_not_equal_v, ratio_less_v)
   2259 	ratio_less_equal_v, ratio_greater_v, ratio_greater_equal_v): Likewise.
   2260 	* include/std/system_error (is_error_code_enum_v)
   2261 	(is_error_condition_enum_v): Likewise.
   2262 	* include/std/tuple (tuple_size_v, ignore): Likewise.
   2263 	(ignore): Declare ignore constexpr as per LWG 2773, declare assignment
   2264 	constexpr as per LWG 2933.
   2265 	* include/std/type_traits (All variable templates): Add
   2266 	_GLIBCXX17_INLINE as per P0607R0.
   2267 	* include/std/variant (variant_size_v, variant_npos, __index_of_v)
   2268 	(__tuple_count_v, __exactly_once): Likewise.
   2269 	* testsuite/18_support/headers/new/synopsis.cc
   2270 	(hardware_destructive_interference_size)
   2271 	(hardware_constructive_interference_size): Likewise for commented-out
   2272 	variables.
   2273 	* testsuite/20_util/tuple/creation_functions/constexpr.cc: Add new
   2274 	test function for constexpr std::ignore (LWG 2773).
   2275 	* testsuite/20_util/tuple/creation_functions/constexpr_cpp14.cc: New
   2276 	test for LWG 2933.
   2277 
   2278 2017-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2279 
   2280 	* include/bits/shared_ptr.h (shared_ptr, weak_ptr): Add deduction
   2281 	guides for C++17.
   2282 	* include/bits/std_function.h (function): Likewise.
   2283 	* include/bits/stl_pair.h (pair): Likewise.
   2284 	* include/debug/array (__gnu_debug::array): Likewise.
   2285 	* include/std/array (array): Likewise.
   2286 	* include/std/functional (make_default_searcher)
   2287 	(make_boyer_moore_searcher, make_boyer_moore_horspool_searcher):
   2288 	Remove generator functions.
   2289 	* include/std/tuple (tuple): Add deduction guides.
   2290 	* include/std/valarray (valarray): Likewise.
   2291 	* testsuite/20_util/function_objects/searchers.cc: Adjust to use
   2292 	class template argument deduction instead of generator functions.
   2293 	* testsuite/20_util/function/cons/deduction.cc: New test.
   2294 	* testsuite/20_util/optional/cons/deduction_guide.cc: Rename to ...
   2295 	* testsuite/20_util/optional/cons/deduction.cc: ... here.
   2296 	* testsuite/20_util/pair/cons/deduction.cc: New test.
   2297 	* testsuite/20_util/shared_ptr/cons/deduction.cc: New test.
   2298 	* testsuite/20_util/tuple/cons/deduction.cc: New test.
   2299 	* testsuite/20_util/tuple/element_access/get_neg.cc: Adjust dg-error.
   2300 	* testsuite/20_util/unique_ptr/cons/deduction_neg.cc: New test.
   2301 	* testsuite/20_util/weak_ptr/cons/deduction.cc: New test.
   2302 	* testsuite/23_containers/array/cons/deduction.cc: New test.
   2303 	* testsuite/23_containers/array/cons/deduction_neg.cc: New test.
   2304 	* testsuite/23_containers/array/tuple_interface/get_debug_neg.cc:
   2305 	Adjust dg-error.
   2306 	* testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
   2307 	* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
   2308 	Likewise.
   2309 	* testsuite/26_numerics/valarray/deduction.cc: New test.
   2310 	* testsuite/30_threads/lock_guard/cons/deduction.cc: New test.
   2311 	* testsuite/30_threads/scoped_lock/cons/deduction.cc: New test.
   2312 	* testsuite/30_threads/unique_lock/cons/deduction.cc: New test.
   2313 
   2314 2017-03-20  Franois Dumont  <fdumont (a] gcc.gnu.org>
   2315 
   2316 	* include/bits/stl_deque.h (deque): Access allocator value_type only if
   2317 	concept checks are enabled.
   2318 	* include/bits/stl_stack.h (stack): Likewise.
   2319 	* include/bits/stl_vector.h (vector): Likewise.
   2320 	* include/bits/stl_list.h (list): Likewise and check
   2321 	_SGIAssignableConcept only in C++03.
   2322 	* include/bits/stl_map.h (map): Likewise.
   2323 	* include/bits/stl_set.h (set): Likewise.
   2324 	* include/bits/stl_multimap.h (multimap): Likewise.
   2325 	* include/bits/stl_multiset.h (multiset): Likewise.
   2326 	* include/bits/stl_queue.h (queue, priority_queue): Likewise.
   2327 
   2328 2017-03-18  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2329 
   2330 	* doc/xml/manual/appendix_contributing.xml: Convert link to
   2331 	ansi.org to https.
   2332 	Update link to the C++ standard at ansi.org.
   2333 
   2334 	* doc/xml/faq.xml: Remove information redundant with the above;
   2335 	instead add a reference.
   2336 
   2337 2017-03-17  Jonathan Wakely  <jwakely (a] redhat.com>
   2338 
   2339 	* src/c++11/codecvt.cc (range): Add non-type template parameter and
   2340 	define oerloaded operators for reading and writing code units.
   2341 	(range<Elem, false>): Define partial specialization for accessing
   2342 	wide characters in potentially unaligned byte ranges.
   2343 	(ucs2_span(const char16_t*, const char16_t*, ...))
   2344 	(ucs4_span(const char16_t*, const char16_t*, ...)): Change parameters
   2345 	to range<const char16_t, false> in order to avoid unaligned reads.
   2346 	(__codecvt_utf16_base<char16_t>::do_out)
   2347 	(__codecvt_utf16_base<char32_t>::do_out)
   2348 	(__codecvt_utf16_base<wchar_t>::do_out): Use range specialization for
   2349 	unaligned data to avoid unaligned writes.
   2350 	(__codecvt_utf16_base<char16_t>::do_in)
   2351 	(__codecvt_utf16_base<char32_t>::do_in)
   2352 	(__codecvt_utf16_base<wchar_t>::do_in): Likewise for writes. Return
   2353 	error if there are unprocessable trailing bytes.
   2354 	(__codecvt_utf16_base<char16_t>::do_length)
   2355 	(__codecvt_utf16_base<char32_t>::do_length)
   2356 	(__codecvt_utf16_base<wchar_t>::do_length): Pass arguments of type
   2357 	range<const char16_t, false> to span functions.
   2358 	* testsuite/22_locale/codecvt/codecvt_utf16/misaligned.cc: New test.
   2359 
   2360 2017-03-16  Jonathan Wakely  <jwakely (a] redhat.com>
   2361 
   2362 	PR libstdc++/79980
   2363 	* src/c++11/codecvt.cc (to_integer(codecvt_mode)): Fix target type.
   2364 
   2365 	PR libstdc++/80041
   2366 	* src/c++11/codecvt.cc (__codecvt_utf16_base<wchar_t>::do_out)
   2367 	(__codecvt_utf16_base<wchar_t>::do_in): Convert char arguments to
   2368 	char16_t to work with UTF-16 instead of UTF-8.
   2369 	* testsuite/22_locale/codecvt/codecvt_utf16/80041.cc: New test.
   2370 
   2371 	* src/c++11/codecvt.cc (codecvt<char16_t, char, mbstate_t>)
   2372 	(codecvt<char32_t, char, mbstate_t>, __codecvt_utf8_base<char16_t>)
   2373 	(__codecvt_utf8_base<char32_t>, __codecvt_utf8_base<wchar_t>)
   2374 	(__codecvt_utf16_base<char16_t>, __codecvt_utf16_base<char32_t>)
   2375 	(__codecvt_utf16_base<wchar_t>, __codecvt_utf8_utf16_base<char16_t>)
   2376 	(__codecvt_utf8_utf16_base<char32_t>)
   2377 	(__codecvt_utf8_utf16_base<wchar_t>): Fix do_encoding() and
   2378 	do_max_length() return values.
   2379 	* testsuite/22_locale/codecvt/codecvt_utf16/members.cc: New test.
   2380 	* testsuite/22_locale/codecvt/codecvt_utf8/members.cc: New test.
   2381 	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/members.cc: New test.
   2382 
   2383 	PR libstdc++/79980
   2384 	* include/bits/locale_conv.h (__do_str_codecvt): Set __count on
   2385 	error path.
   2386 	* src/c++11/codecvt.cc (operator&=, operator|=, operator~): Overloads
   2387 	for manipulating codecvt_mode values.
   2388 	(read_utf16_bom): Compare input to BOM constants instead of integral
   2389 	constants that depend on endianness.  Take mode parameter by
   2390 	reference and adjust it, to distinguish between no BOM present and
   2391 	UTF-16BE BOM present.
   2392 	(ucs4_in, ucs2_span, ucs4_span): Adjust calls to read_utf16_bom.
   2393 	(surrogates): New enumeration type.
   2394 	(utf16_in, utf16_out): Add surrogates parameter to choose between
   2395 	UTF-16 and UCS2 behaviour.
   2396 	(utf16_span, ucs2_span): Use std::min not std::max.
   2397 	(ucs2_out): Use std::min not std::max.  Disallow surrogate pairs.
   2398 	(ucs2_in): Likewise. Adjust calls to read_utf16_bom.
   2399 	* testsuite/22_locale/codecvt/codecvt_utf16/79980.cc: New test.
   2400 	* testsuite/22_locale/codecvt/codecvt_utf8/79980.cc: New test.
   2401 
   2402 	PR libstdc++/79511
   2403 	* src/c++11/codecvt.cc (write_utf16_code_point): Don't write 0xffff
   2404 	as a surrogate pair.
   2405 	(__codecvt_utf8_utf16_base<char32_t>::do_in): Use native endianness
   2406 	for internal representation.
   2407 	(__codecvt_utf8_utf16_base<wchar_t>::do_in): Likewise.
   2408 	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/79511.cc: New test.
   2409 
   2410 	PR libstdc++/80064
   2411 	* include/bits/stl_heap.h (__is_heap, push_heap, __adjust_heap)
   2412 	(pop_heap, make_heap, sort_heap, is_heap_until, is_heap): Cope with
   2413 	invalid instantiations using function types for _Compare argument.
   2414 	* testsuite/25_algorithms/make_heap/80064.cc: New test.
   2415 
   2416 	PR libstdc++/67440
   2417 	* python/libstdcxx/v6/printers.py (find_type): Avoid gdb.Type.name
   2418 	for GDB 7.6 compatibility, use gdb.Type.unqualified instead.
   2419 
   2420 2017-03-15  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2421 
   2422 	Implement LWG 2857, {variant,optional,any}::emplace should
   2423 	return the constructed value.
   2424 	* include/std/any (emplace(_Args&&...)): Change the return type and
   2425 	return a reference to the constructed value.
   2426 	(emplace(initializer_list<_Up>, _Args&&...)): Likewise.
   2427 	* include/std/optional (emplace(_Args&&...)): Likewise.
   2428 	(emplace(initializer_list<_Up>, _Args&&...)): Likewise.
   2429 	* include/std/variant (emplace<_Tp>(_Args&&...)): Likewise.
   2430 	(emplace<_Tp>(initializer_list<_Up>, _Args&&...)): Likewise.
   2431 	(emplace<_Np>(_Args&&...)): Likewise.
   2432 	(emplace<_Np>(initializer_list<_Up>, _Args&&...)): Likewise.
   2433 	* testsuite/20_util/any/assign/emplace.cc: Add tests for
   2434 	checking the return value of emplace.
   2435 	* testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
   2436 	* testsuite/20_util/optional/assignment/6.cc: Add tests for
   2437 	checking the return value of emplace.
   2438 	* testsuite/20_util/variant/run.cc: Likewise.
   2439 
   2440 2017-03-15  Xi Ruoyao  <ryxi (a] stu.xidian.edu.cn>
   2441 
   2442 	PR libstdc++/62045
   2443 	* include/ext/pb_ds/qdetail/binary_heap_/binary_heap_.hpp
   2444 	(is_heap): Remove.
   2445 	(push_heap): Remove the wrong checking using is_heap.
   2446 	(make_heap): Remove the assertion using is_heap.
   2447 	* include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp
   2448 	(modify): Ditto.
   2449 	(resize_for_insert_if_needed): Add PB_DS_ASSERT_VALID after
   2450 	calling make_heap.
   2451 
   2452 2017-03-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2453 
   2454 	PR libstdc++/62045
   2455 	* testsuite/ext/pb_ds/regression/priority_queue_binary_heap-62045.cc:
   2456 	New test.
   2457 	* testsuite/ext/pb_ds/regression/priority_queues.cc: Fix copy&paste
   2458 	error in comment.
   2459 
   2460 2017-03-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2461 
   2462 	* acinclude.m4 (GLIBCXX_CHECK_S_ISREG_OR_S_IFREG): Fix typo in
   2463 	comment.
   2464 	* config.h.in: Regenerate.
   2465 	* configure: Regenerate.
   2466 	* doc/Makefile.in: Regenerate.
   2467 
   2468 2017-03-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2469 
   2470 	PR libstdc++/79162
   2471 	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
   2472 	(basic_string<C,T,A>::operator=(basic_string_view<C,T>)): Replace
   2473 	with a constrained template.
   2474 	[!_GLIBCXX_USE_CXX11_ABI]
   2475 	(basic_string<C,T,A>::operator=(basic_string_view<C,T>)): Likewise.
   2476 	* testsuite/21_strings/basic_string/cons/char/79162.cc: New test.
   2477 	* testsuite/21_strings/basic_string/cons/wchar_t/79162.cc: New test.
   2478 
   2479 2017-03-13  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2480 
   2481 	PR libstdc++/80034
   2482 	* include/bits/list.tcc (merge(list&&)): Use const for the size_t
   2483 	in the catch-block.
   2484 	(merge(list&&, _StrictWeakOrdering)): Likewise.
   2485 	* testsuite/23_containers/list/operations/80034.cc: New.
   2486 
   2487 2017-03-13  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2488 
   2489 	Implement LWG 2806, Base class of bad_optional_access.
   2490 	* include/std/optional (bad_optional_access):
   2491 	Derive from std::exception.
   2492 	(bad_optional_access::bad_optional_access): Adjust.
   2493 	(bad_optional_access::what): New.
   2494 	(__throw_bad_optional_access(const char*)):
   2495 	Remove the parameter and adjust calls.
   2496 	* testsuite/20_util/optional/cons/value_neg.cc: Adjust.
   2497 	* testsuite/20_util/optional/typedefs.cc: Likewise.
   2498 
   2499 2017-03-12  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2500 
   2501 	Implement LWG 2934, optional<const T> doesn't compare with T.
   2502 	* include/std/optional
   2503 	(operator==(const optional<_Tp>&, const optional<_Tp>&)):
   2504 	Turn into operator==(const optional<_Tp>&, const optional<_Up>&).
   2505 	(operator!=(const optional<_Tp>&, const optional<_Tp>&)):
   2506 	Turn into operator!=(const optional<_Tp>&, const optional<_Up>&).
   2507 	(operator<(const optional<_Tp>&, const optional<_Tp>&)):
   2508 	Turn into operator<(const optional<_Tp>&, const optional<_Up>&.
   2509 	(operator>(const optional<_Tp>&, const optional<_Tp>&)):
   2510 	Turn into operator>(const optional<_Tp>&, const optional<_Up>&.
   2511 	(operator<=(const optional<_Tp>&, const optional<_Tp>&)):
   2512 	Turn into operator<=(const optional<_Tp>&, const optional<_Up>&).
   2513 	(operator>=(const optional<_Tp>&, const optional<_Tp>&)):
   2514 	Turn into operator>=(const optional<_Tp>&, const optional<_Up>&).
   2515 	(operator==(const optional<_Tp>&, const _Tp&)):
   2516 	Turn into operator==(const optional<_Tp>&, const _Up&).
   2517 	(operator==(const _Tp&, const optional<_Tp>&)):
   2518 	Turn into operator==(const _Up&, const optional<_Tp>&).
   2519 	(operator!=(const optional<_Tp>&, const _Tp&)):
   2520 	Turn into operator!=(const optional<_Tp>&, const _Up&).
   2521 	(operator!=(const _Tp&, const optional<_Tp>&)):
   2522 	Turn into operator!=(const _Up&, const optional<_Tp>&).
   2523 	(operator<(const optional<_Tp>&, const _Tp&)):
   2524 	Turn into operator<(const optional<_Tp>&, const _Up&).
   2525 	(operator<(const _Tp&, const optional<_Tp>&)):
   2526 	Turn into operator<(const _Up&, const optional<_Tp>&).
   2527 	(operator>(const optional<_Tp>&, const _Tp&)):
   2528 	Turn into operator>(const optional<_Tp>&, const _Up&).
   2529 	(operator>(const _Tp&, const optional<_Tp>&)):
   2530 	Turn into operator>(const _Up&, const optional<_Tp>&).
   2531 	(operator<=(const optional<_Tp>&, const _Tp&)):
   2532 	Turn into operator<=(const optional<_Tp>&, const _Up&).
   2533 	(operator<=(const _Tp&, const optional<_Tp>&)):
   2534 	Turn into operator<=(const _Up&, const optional<_Tp>&).
   2535 	(operator>=(const optional<_Tp>&, const _Tp&)):
   2536 	Turn into operator>=(const optional<_Tp>&, const _Up&).
   2537 	(operator>=(const _Tp&, const optional<_Tp>&)):
   2538 	Turn into operator>=(const _Up&, const optional<_Tp>&).
   2539 	* testsuite/20_util/optional/relops/7.cc: New.
   2540 
   2541 2017-03-10  Jonathan Wakely  <jwakely (a] redhat.com>
   2542 
   2543 	* testsuite/17_intro/names.cc: Undefine macros that clash with
   2544 	identifiers in AIX system headers.
   2545 
   2546 	* include/bits/invoke.h (__invoke): Use __invoke_result instead of
   2547 	result_of, and __is_nothrow_invocable instead of
   2548 	__is_nothrow_callable.
   2549 	* include/bits/shared_ptr_base.h (__shared_ptr): Use __is_invocable
   2550 	instead of __is_callable.
   2551 	* include/std/functional (invoke): use invoke_result_t instead of
   2552 	result_of_t and is_nothrow_invocable instead of is_nothrow_callable.
   2553 	(_Not_fn): Use __invoke_result instead of result_of.
   2554 	* include/std/type_traits (__result_of_memobj, __result_of_memfun):
   2555 	Remove partial specializations for reference_wrapper types.
   2556 	(__result_of_impl): Use __inv_unwrap to strip reference_wrapper.
   2557 	(__invoke_result): Define replacement for result_of and then use it to
   2558 	define result_of.
   2559 	(__is_callable_impl, __is_callable, __is_nothrow_callable): Replace
   2560 	with __is_invocable_impl, __is_invocable, and __is_nothrow_invocable
   2561 	respectively.
   2562 	(invoke_result, invoke_result_t): Define for C++17.
   2563 	(is_callable, is_nothrow_callable): Replace with is_invocable,
   2564 	is_invocable_r, is_nothrow_invocable, and is_nothrow_invocable_r.
   2565 	(is_callable_v, is_nothrow_callable_v): Replace with is_invocable_v,
   2566 	is_invocable_r_v, is_nothrow_invocable_v, and is_nothrow_invocable_r_v.
   2567 	* include/std/variant (hash<variant<T...>>): Use is_nothrow_invocable_v
   2568 	instead of is_nothrow_callable_v.
   2569 	* testsuite/20_util/function_objects/invoke/59768.cc: Remove unused
   2570 	main function.
   2571 	* testsuite/20_util/function_objects/not_fn/1.cc: Use is_invocable
   2572 	instead of is_callable.
   2573 	* testsuite/20_util/is_callable/*: Rename directory and adjust tests
   2574 	to use new traits.
   2575 	* testsuite/20_util/is_nothrow_callable/*: Likewise.
   2576 	* testsuite/20_util/optional/hash.cc: Use is_invocable_v instead of
   2577 	is_callable.
   2578 	* testsuite/20_util/variant/hash.cc: Likewise.
   2579 
   2580 2017-03-10  George Lander  <george.lander (a] arm.com>
   2581 
   2582 	* acinclude.m4 (glibcxx_cv_obsolete_isnan): Define
   2583 	_GLIBCXX_INCLUDE_NEXT_C_HEADERS before including math.h.
   2584 	* configure: Regenerate.
   2585 
   2586 2017-03-09  Jonathan Wakely  <jwakely (a] redhat.com>
   2587 
   2588 	* include/std/functional (_Not_fn): Define macro to simplify
   2589 	repetitive function definitions.
   2590 
   2591 	* doc/xml/manual/status_cxx2017.xml: Document std::byte support.
   2592 	* include/c_global/cstddef (std::byte): Define for C++17.
   2593 	* testsuite/18_support/byte/global_neg.cc: New test.
   2594 	* testsuite/18_support/byte/ops.cc: New test.
   2595 	* testsuite/18_support/byte/requirements.cc: New test.
   2596 
   2597 2017-03-05  Jonathan Wakely  <jwakely (a] redhat.com>
   2598 
   2599 	* doc/xml/manual/status_cxx2017.xml: Document P0156R2 status.
   2600 	* doc/html/*: Regenerate.
   2601 	* include/std/mutex (scoped_lock): Implement new C++17 template.
   2602 	* testsuite/30_threads/scoped_lock/cons/1.cc: New test.
   2603 	* testsuite/30_threads/scoped_lock/requirements/
   2604 	explicit_instantiation.cc: New test.
   2605 	* testsuite/30_threads/scoped_lock/requirements/typedefs.cc: New test.
   2606 
   2607 2017-03-02  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2608 	    Franois Dumont  <frs.dumont (a] gmail.com>
   2609 	    Jonathan Wakely  <jwakely (a] redhat.com>
   2610 
   2611 	* doc/xml/manual/debug_mode.xml: Update and simplify note
   2612 	on link- and run-time coexistence.
   2613 
   2614 2017-03-02  Jonathan Wakely  <jwakely (a] redhat.com>
   2615 
   2616 	* testsuite/17_intro/headers/names.cc: Rename to ...
   2617 	* testsuite/17_intro/names.cc: ... here.
   2618 
   2619 	PR libstdc++/79789
   2620 	* include/bits/hashtable_policy.h (__clp2): Use reserved names for
   2621 	parameters and local variables.
   2622 	* include/bits/ios_base.h (make_error_code, make_error_condition):
   2623 	Likewise.
   2624 	* include/bits/list.tcc (list::sort): Likewise.
   2625 	* include/bits/mask_array.h (mask_array): Likewise.
   2626 	* include/bits/regex.h (regex_token_iterator): Likewise.
   2627 	* include/bits/slice_array.h (slice_array): Likewise.
   2628 	* include/bits/stl_algo.h (__sample): Likewise.
   2629 	* include/std/memory (undeclare_no_pointers): Likewise.
   2630 	* include/std/type_traits (is_callable_v, is_nothrow_callable_v):
   2631 	Likewise.
   2632 	* libsupc++/exception_ptr.h (__dest_thunk): Likewise.
   2633 	* testsuite/17_intro/headers/names.cc: New test.
   2634 
   2635 	PR libstdc++/79798
   2636 	* include/std/functional (bind::_Res_type_impl): Fix incorrect use of
   2637 	result_of that loses top-level cv-qualifiers.
   2638 	* testsuite/20_util/bind/79798.cc: New test.
   2639 
   2640 2017-03-01  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2641 
   2642 	* doc/xml/manual/documentation_hacking.xml: Tweak link to
   2643 	doxygen.org.
   2644 
   2645 2017-02-23  Jonathan Wakely  <jwakely (a] redhat.com>
   2646 
   2647 	* include/experimental/iterator: Include <iterator>.
   2648 	* testsuite/experimental/iterator/requirements.cc: Check for contents
   2649 	of <iterator>.
   2650 
   2651 2017-02-19  Dinka Ranns  <dinka.ranns (a] googlemail.com>
   2652 
   2653 	C++17 GB50 resolution
   2654 	* include/std/chrono (duration::operator++()): Add
   2655 	_GLIBCXX17_CONSTEXPR.
   2656 	(duration::operator++(int)): Likewise.
   2657 	(duration::operator--()): Likewise.
   2658 	(duration::operator--(int)): Likewise.
   2659 	(duration::operator+=(const duration&)): Likewise.
   2660 	(duration::operator-=(const duration&)): Likewise.
   2661 	(duration::operator*=(const rep&)): Likewise.
   2662 	(duration::operator/=(const rep&)): Likewise.
   2663 	(duration::operator%=(const rep&)): Likewise.
   2664 	(duration::operator%=(const duration&)): Likewise.
   2665 	(time_point::operator+=(const duration&)): Likewise.
   2666 	(time_point::operator-=(const duration&)): Likewise.
   2667 	* testsuite/20_util/duration/arithmetic/constexpr_c++17.cc: New test.
   2668 	* testsuite/20_util/duration/literals/range.cc: Adjust dg-error.
   2669 	* testsuite/20_util/time_point/arithmetic/constexpr.cc: New test.
   2670 
   2671 2017-02-19  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2672 
   2673 	* doc/xml/manual/debug.xml: Adjust link to ThreadSanitizer.
   2674 
   2675 2017-02-18  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2676 
   2677 	* doc/xml/manual/io.xml: Update link to groups.google.com.
   2678 	Tweak link description.
   2679 
   2680 2017-02-18  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2681 
   2682 	* doc/xml/manual/profile_mode.xml: Fix link.
   2683 
   2684 2017-02-16  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2685 
   2686 	* doc/xml/manual/policy_data_structures.xml: Simplify and
   2687 	standardize references to boost.org.
   2688 	* doc/xml/manual/policy_data_structures_biblio.xml: Ditto.
   2689 	* doc/xml/manual/shared_ptr.xml: Ditto.
   2690 
   2691 2017-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   2692 
   2693 	PR libstdc++/60936
   2694 	* src/c++11/snprintf_lite.cc (__concat_size_t): Calculate length
   2695 	written to buffer, not length remaining in buffer.
   2696 
   2697 2017-02-15  Tim Shen  <timshen (a] google.com>
   2698 
   2699 	PR libstdc++/78723
   2700 	* include/std/variant (operator<(), operator>(), operator<=(),
   2701 	operator>=(), operator==(), operator!=()): Implement P0393R3.
   2702 	* testsuite/20_util/variant/compile.cc: Adjust tests.
   2703 	* testsuite/20_util/variant/run.cc: Adjust tests.
   2704 
   2705 2017-02-15  Tim Shen  <timshen (a] google.com>
   2706 
   2707 	PR libstdc++/79513
   2708 	* include/std/variant (visit()): Forward variant types to the return
   2709 	type detection code.
   2710 	* testsuite/20_util/variant/compile.cc: Add test cases.
   2711 
   2712 2017-02-13  H.J. Lu  <hongjiu.lu (a] intel.com>
   2713 
   2714 	PR libstdc++/79348
   2715 	* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
   2716 
   2717 2017-02-13  Jakub Jelinek  <jakub (a] redhat.com>
   2718 
   2719 	PR libstdc++/79348
   2720 	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
   2721 	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
   2722 	* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
   2723 	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
   2724 	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Likewise.
   2725 	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
   2726 	* config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt: Likewise.
   2727 	* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
   2728 	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
   2729 
   2730 2017-02-13  Jonathan Wakely  <jwakely (a] redhat.com>
   2731 
   2732 	PR libstdc++/79486
   2733 	* include/std/future (__future_base::_Task_state::_M_run)
   2734 	(__future_base::_Task_state::_M_run_delayed): Use lvalue types in
   2735 	result_of expressions.
   2736 	* testsuite/30_threads/packaged_task/79486.cc: New.
   2737 
   2738 2017-02-11  Jonathan Wakely  <jwakely (a] redhat.com>
   2739 
   2740 	PR libstdc++/79467
   2741 	* include/bits/shared_ptr_base.h (__shared_ptr(_Yp*, _Deleter))
   2742 	(__shared_ptr(_Yp*, _Deleter, _Alloc)): Use lvalue types in
   2743 	__is_callable check.
   2744 	* testsuite/20_util/shared_ptr/cons/79467.cc: New.
   2745 
   2746 	* include/bits/atomic_base.h: Re-indent.
   2747 
   2748 2017-02-10  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2749 
   2750 	* doc/xml/manual/profile_mode.xml: Update a paper reference.
   2751 
   2752 2017-02-08  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2753 
   2754 	* src/c++11/snprintf_lite.cc (__err): Use https for bug reporting.
   2755 
   2756 2017-02-08  Jonathan Wakely  <jwakely (a] redhat.com>
   2757 
   2758 	* doc/xml/manual/policy_data_structures.xml: Fix spelling of author's
   2759 	name.
   2760 	* doc/xml/manual/policy_data_structures_biblio.xml: Likewise. Remove
   2761 	broken links to texts that are no longer online.
   2762 	* doc/xml/manual/profile_mode.xml: Update links to CGO 2009 paper and
   2763 	LCPC 2006 paper.
   2764 	* doc/xml/manual/using.xml: Update links to memory model information.
   2765 	* doc/xml/manual/using_exceptions.xml: Update link to "Appendix E:
   2766 	Standard-Library Exception Safety".
   2767 	* doc/html/*: Regenerate.
   2768 
   2769 2017-02-08  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2770 
   2771 	* doc/xml/manual/profile_mode.xml: Unbreak link to
   2772 	"Optimizing Sorting with Machine Learning Algorithms".
   2773 
   2774 2017-02-08  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2775 
   2776 	* src/c++11/snprintf_lite.cc (__err): Update bug reporting URL.
   2777 
   2778 2017-02-08  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2779 
   2780 	* doc/xml/manual/abi.xml: Update link to "Sun Studio 11: C++
   2781 	Migration Guide".
   2782 
   2783 2017-02-07  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2784 
   2785 	* doc/html/ext/lwg-active.html: Remove.
   2786 	* doc/html/ext/lwg-closed.html: Ditto.
   2787 	* doc/html/ext/lwg-defects.html: Ditto.
   2788 
   2789 	* doc/Makefile.am (xml_extradir): Remove.
   2790 	(xml_extra): Ditto.
   2791 	(stamp-html-docbook-lwg): Remove recipe...
   2792 	(stamp-html-docbook-data): ...and its use here.
   2793 	* doc/Makefile.in: Regenerate.
   2794 
   2795 	* doc/xml/manual/intro.xml: Shorten two paragraphs explaining
   2796 	the relationship to the upstream working group.
   2797 	Replace a local link to ../ext/lwg-active.html by the upstream one.
   2798 	Replace all reference to ../ext/lwg-defects.html by a new entity
   2799 	&DR; which refers to the upstream address.
   2800 
   2801 2017-02-07  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2802 
   2803 	* doc/xml/manual/status_cxx2017.xml: Fix link to N4284.
   2804 
   2805 2017-02-06  Jonathan Wakely  <jwakely (a] redhat.com>
   2806 
   2807 	PR libstdc++/79323
   2808 	* testsuite/20_util/duration/literals/range.cc: Prune extra output
   2809 	at -O0.
   2810 
   2811 2017-02-06  Gerald Pfeifer  <gerald (a] pfeifer.com>
   2812 
   2813 	* doc/xml/manual/documentation_hacking.xml: Update URL of the
   2814 	DocBook Element Reference.  Use that term as link description
   2815 	instead of "online".
   2816 	epubcheck has moved to GitHub.
   2817 	Remove obsolete link to DocBook Publishing Tools.
   2818 
   2819 2017-02-03  Jonathan Wakely  <jwakely (a] redhat.com>
   2820 
   2821 	PR libstdc++/66145
   2822 	* testsuite/27_io/basic_ios/copyfmt/char/1.cc: Restore ABI override
   2823 	so new ios::failure can be caught even when old ABI is the default.
   2824 	* testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
   2825 	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
   2826 	exceptions_failbit.cc: Likewise.
   2827 	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
   2828 	exceptions_failbit.cc: Likewise.
   2829 	* testsuite/27_io/basic_istream/extractors_other/char/
   2830 	exceptions_null.cc: Likewise.
   2831 	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
   2832 	exceptions_null.cc: Likewise.
   2833 	* testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
   2834 	* testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
   2835 	* testsuite/27_io/basic_ostream/inserters_other/char/
   2836 	exceptions_null.cc: Likewise.
   2837 	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
   2838 	exceptions_null.cc: Likewise.
   2839 	* testsuite/27_io/ios_base/storage/2.cc: Likewise.
   2840 
   2841 	PR libstdc++/60936
   2842 	* src/c++11/Makefile.am: Add new files.
   2843 	* src/c++11/Makefile.in: Regenerate.
   2844 	* src/c++11/cow-string-inst.cc [!_GLIBCXX_USE_CXX11_ABI]
   2845 	(operator<<, operator>>, getline): Move explicit instantiations to ...
   2846 	* src/c++11/cow-string-io-inst.cc: ... new file.
   2847 	* src/c++11/cow-wstring-inst.cc [!_GLIBCXX_USE_CXX11_ABI]
   2848 	(operator<<, operator>>, getline): Move explicit instantiations to ...
   2849 	* src/c++11/cow-wstring-io-inst.cc: ... new file.
   2850 	* src/c++11/functexcept.cc (__throw_ios_failure, __throw_system_error)
   2851 	(__throw_future_error, __throw_bad_function_call):
   2852 	(__throw_regex_error): Move functions for C++11 exceptions to the
   2853 	files that define the exception types.
   2854 	* src/c++11/functional.cc (__throw_bad_function_call): Move here.
   2855 	* src/c++11/future.cc (__throw_future_error): Likewise.
   2856 	* src/c++11/ios.cc (__throw_ios_failure): Likewise.
   2857 	* src/c++11/regex.cc (__throw_regex_error): Likewise.
   2858 	* src/c++11/snprintf_lite.cc (__concat_size_t): Print decimal
   2859 	representation directly instead of calling __int_to_char.
   2860 	* src/c++11/sso_string.cc (__sso_string): New file for definition
   2861 	of __sso_string type.
   2862 	* src/c++11/string-io-inst.cc [_GLIBCXX_USE_CXX11_ABI]: New file for
   2863 	explicit instantiations of narrow string I/O functions.
   2864 	* src/c++11/system_error.cc (__throw_system_error): Move here.
   2865 	(__sso_string): Move to new file.
   2866 	* src/c++11/wstring-io-inst.cc [_GLIBCXX_USE_CXX11_ABI]: New file for
   2867 	explicit instantiations of wide string I/O functions.
   2868 	* src/c++98/misc-inst.cc [_GLIBCXX_USE_CXX11_ABI] (operator<<)
   2869 	(operator>>, getline): Remove explicit instantiations from here.
   2870 
   2871 2017-02-02  H.J. Lu  <hongjiu.lu (a] intel.com>
   2872 
   2873 	* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
   2874 
   2875 2017-02-02  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   2876 
   2877 	* configure.host: Separate Solaris/SPARC and x86 baselines.
   2878 	* config/abi/post/solaris2.10/baseline_symbols.txt: Move ...
   2879 	* config/abi/post/sparc-solaris2.10/baseline_symbols.txt: ... here.
   2880 	* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Move ...
   2881 	* config/abi/post/sparc-solaris2.10/sparcv9/baseline_symbols.txt:
   2882 	... here.
   2883 	* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Move ...
   2884 	* config/abi/post/i386-solaris2.10/amd64/baseline_symbols.txt: ... here.
   2885 	* config/abi/post/i386-solaris2.10/baseline_symbols.txt: New file.
   2886 	* config/abi/post/solaris2.11/baseline_symbols.txt: Move ...
   2887 	* config/abi/post/sparc-solaris2.11/baseline_symbols.txt: ... here.
   2888 	* config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Move ...
   2889 	* config/abi/post/sparc-solaris2.11/sparcv9/baseline_symbols.txt:
   2890 	... here.
   2891 	* config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Move ...
   2892 	* config/abi/post/i386-solaris2.11/amd64/baseline_symbols.txt: ... here.
   2893 	* config/abi/post/i386-solaris2.11/baseline_symbols.txt: New file.
   2894 
   2895 	* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
   2896 	* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
   2897 	* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
   2898 	* config/abi/post/solaris2.11/baseline_symbols.txt: Likewise.
   2899 	* config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Likewise.
   2900 	* config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Likewise.
   2901 
   2902 2017-02-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2903 
   2904 	PR libstdc++/78346
   2905 	* include/bits/predefined_ops.h (_Iter_equals_iter): Store iterator
   2906 	not its referent.
   2907 	(_Iter_comp_to_iter): Likewise.
   2908 	* testsuite/25_algorithms/search/78346.cc: New test.
   2909 
   2910 	PR libstdc++/79254
   2911 	* config/abi/pre/gnu.ver: Remove recently added symbols.
   2912 	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
   2913 	(basic_string::_M_copy_assign): Remove.
   2914 	(basic_string::operator=(const basic_string&)): Don't dispatch to
   2915 	_M_copy_assign. If source object is small just deallocate, otherwise
   2916 	perform new allocation before making any changes.
   2917 	* include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI]
   2918 	(basic_string::_M_copy_assign(const basic_string&, true_type)):
   2919 	Remove.
   2920 	* testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
   2921 	Test cases where the allocators are equal or the string is small.
   2922 	* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
   2923 	Likewise.
   2924 
   2925 2017-01-30  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2926 
   2927 	Implement LWG 2825, LWG 2756 breaks class template argument
   2928 	deduction for optional.
   2929 	* include/std/optional: Add a deduction guide.
   2930 	* testsuite/20_util/optional/cons/deduction_guide.cc: New.
   2931 
   2932 2017-01-27  Jonathan Wakely  <jwakely (a] redhat.com>
   2933 
   2934 	PR libstdc++/79254
   2935 	* config/abi/pre/gnu.ver: Add new symbols.
   2936 	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
   2937 	(basic_string::_M_copy_assign): New overloaded functions to perform
   2938 	copy assignment.
   2939 	(basic_string::operator=(const basic_string&)): Dispatch to
   2940 	_M_copy_assign.
   2941 	* include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI]
   2942 	(basic_string::_M_copy_assign(const basic_string&, true_type)):
   2943 	Define, performing rollback on exception.
   2944 	* testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
   2945 	Test exception-safety guarantee.
   2946 	* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
   2947 	Likewise.
   2948 	* testsuite/util/testsuite_allocator.h (uneq_allocator::swap): Make
   2949 	std::swap visible.
   2950 
   2951 2017-01-26  Jonathan Wakely  <jwakely (a] redhat.com>
   2952 
   2953 	PR libstdc++/70607
   2954 	* include/tr1/complex (conj): Remove using-declaration and restore
   2955 	overloads, reverting previous change.
   2956 
   2957 	* testsuite/23_containers/list/operations/78389.cc: Fix for C++11
   2958 	mode.
   2959 	* testsuite/23_containers/priority_queue/requirements/constructible.cc:
   2960 	Mark as unsupported in C++98 mode.
   2961 	* testsuite/23_containers/queue/requirements/constructible.cc:
   2962 	Likewise.
   2963 	* testsuite/23_containers/stack/requirements/constructible.cc:
   2964 	Likewise.
   2965 	* testsuite/25_algorithms/make_heap/movable.cc: Fix for C++11 mode.
   2966 
   2967 	PR libstdc++/79243
   2968 	* include/bits/c++config (literals::string_view_literals::__7): Add.
   2969 	Only declare versioned namespaces for the relevant C++ dialects.
   2970 	* include/experimental/bits/erase_if.h (fundamentals_v2::__detail):
   2971 	Add versioning macros.
   2972 	* include/experimental/bits/lfts_config.h:
   2973 	(fundamentals_v1::__detail::__7, fundamentals_v2::__detail::__7): Add.
   2974 	* include/experimental/string_view (fundamentals_v2::__detail):
   2975 	Add versioning macros.
   2976 	(fundamentals_v2::__detail::__identity): Remove.
   2977 	(fundamentals_v2::__detail::__idt): Use common_type instead of
   2978 	__detail::__identity.
   2979 	* include/std/string_view (__detail::__identity, __detail::__idt):
   2980 	Likewise.
   2981 	(literals::string_view_literals): Fix nesting of versioning macros.
   2982 
   2983 	PR libstdc++/79190
   2984 	* libsupc++/del_opa.cc (operator delete(void*, std::align_val_t))
   2985 	[!_GLIBCXX_HAVE_ALIGNED_ALLOC && !_GLIBCXX_HAVE_POSIX_MEMALIGN
   2986 	&& !_GLIBCXX_HAVE_MEMALIGN && !_GLIBCXX_HAVE__ALIGNED_MALLOC]:
   2987 	Retrieve original pointer value allocated by malloc.
   2988 	* libsupc++/new_opa.cc [!_GLIBCXX_HAVE_ALIGNED_ALLOC
   2989 	&& !_GLIBCXX_HAVE_POSIX_MEMALIGN && !_GLIBCXX_HAVE_MEMALIGN
   2990 	&& !_GLIBCXX_HAVE__ALIGNED_MALLOC] (aligned_alloc(size_t, size_t)):
   2991 	Define, adjusting pointer value allocated by malloc and storing for
   2992 	retrieval by operator delete.
   2993 
   2994 2017-01-26  Jakub Jelinek  <jakub (a] redhat.com>
   2995 
   2996 	* libsupc++/eh_atomics.h: Update copyright years.
   2997 	* testsuite/20_util/unique_ptr/cons/default.cc: Update copyright years.
   2998 
   2999 2017-01-25  Jonathan Wakely  <jwakely (a] redhat.com>
   3000 
   3001 	PR libstdc++/61791
   3002 	PR libstdc++/70607
   3003 	* include/std/complex (real(T), imag(T)): Add _GLIBCXX_CONSTEXPR.
   3004 	(proj(T), conj(T)): Change return types per DR 1522.
   3005 	* include/tr1/complex (conj): Remove overloads and use std::conj.
   3006 	* testsuite/26_numerics/complex/dr781_dr1137.cc: Rename to...
   3007 	* testsuite/26_numerics/complex/dr781.cc: ... this, and update.
   3008 	* testsuite/26_numerics/complex/value_operations/constexpr2.cc: Test
   3009 	real(T) and imag(T). Allow testing for C++11 too.
   3010 
   3011 2017-01-24  Jonathan Wakely  <jwakely (a] redhat.com>
   3012 
   3013 	PR libstdc++/79206
   3014 	* include/experimental/string_view (operator==): Check sizes first.
   3015 	* include/std/string_view (operator==): Likewise.
   3016 
   3017 2017-01-23  Jonathan Wakely  <jwakely (a] redhat.com>
   3018 
   3019 	* testsuite/experimental/array/make_array.cc: Restore <functional>
   3020 	inclusion.
   3021 
   3022 2017-01-23  Thomas Preud'homme  <thomas.preudhomme (a] arm.com>
   3023 
   3024 	* testsuite/29_atomics/atomic/69301.cc: Require atomic builtins.
   3025 
   3026 2017-01-23  Jonathan Wakely  <jwakely (a] redhat.com>
   3027 
   3028 	PR libstdc++/79195
   3029 	* include/experimental/array (__make_array_elem): New class template
   3030 	and partial specialization.
   3031 	(__is_reference_wrapper): Move into __make_array_elem specialization.
   3032 	(make_array): Use __make_array_elem to determine element type and move
   3033 	static assertion into specialization. Qualify std::forward call.
   3034 	(to_array): Add exception specifiation.
   3035 	* testsuite/experimental/array/make_array.cc: Test argument types
   3036 	without a common type.
   3037 	* testsuite/experimental/array/neg.cc: Adjust expected error message.
   3038 
   3039 2017-01-22  Gerald Pfeifer  <gerald (a] pfeifer.com>
   3040 
   3041 	* doc/xml/manual/debug.xml: code.google.com uses https now.
   3042 
   3043 2017-01-22  Gerald Pfeifer  <gerald (a] pfeifer.com>
   3044 
   3045 	* doc/xml/manual/test.xml: Fix link into gccint online manual.
   3046 
   3047 2017-01-21  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   3048 
   3049 	Make poisoned hashes SFINAE away the call operator of the hash.
   3050 	* include/bits/functional_hash.h
   3051 	(__poison_hash::__enable_hash_call): New.
   3052 	* include/std/optional (__optional_hash_call_base): New.
   3053 	(hash<optional<_Tp>>): Derive from the new base,
   3054 	move the hash function into that base.
   3055 	* include/std/variant (__variant_hash_call_base_impl): New.
   3056 	(__variant_hash_call_base): Likewise.
   3057 	(hash<variant<_Types...>>): Derive from the new base,
   3058 	move the hash function into that base.
   3059 	* testsuite/20_util/optional/hash.cc: Add tests for is_callable.
   3060 	* testsuite/20_util/variant/hash.cc: Likewise.
   3061 
   3062 2017-01-20  Joe Seymour  <joe.s (a] somniumtech.com>
   3063 
   3064 	* acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): Support uint20_t.
   3065 	* configure: Regenerate.
   3066 
   3067 2017-01-20  Jonathan Wakely  <jwakely (a] redhat.com>
   3068 
   3069 	PR libstdc++/69240
   3070 	* include/bits/random.h (uniform_real_distribution::param_type)
   3071 	(normal_distribution::param_type, lognormal_distribution::param_type)
   3072 	(gamma_distribution::param_type, chi_squared_distribution::param_type)
   3073 	(cauchy_distribution::param_type, fisher_f_distribution::param_type)
   3074 	(student_t_distribution::param_type)
   3075 	(bernoulli_distribution::param_type, binomial_distribution::param_type)
   3076 	(geometric_distribution::param_type)
   3077 	(negative_binomial_distribution::param_type)
   3078 	(poisson_distribution::param_type)
   3079 	(exponential_distribution::param_type)
   3080 	(weibull_distribution::param_type)
   3081 	(extreme_value_distribution::param_type)
   3082 	(discrete_distribution::param_type)
   3083 	(piecewise_constant_distribution::param_type)
   3084 	(piecewise_linear_distribution::param_type): Define operator!=.
   3085 	* include/bits/uniform_int_dist.h
   3086 	(uniform_int_distribution::param_type): Likewise.
   3087 	* include/ext/random (beta_distribution::param_type)
   3088 	(rice_distribution::param_type, nakagami_distribution::param_type)
   3089 	(pareto_distribution::param_type, k_distribution::param_type)
   3090 	(arcsine_distribution::param_type, hoyt_distribution::param_type)
   3091 	(triangular_distribution::param_type)
   3092 	(von_mises_distribution::param_type)
   3093 	(hypergeometric_distribution::param_type)
   3094 	(logistic_distribution::param_type)
   3095 	(uniform_on_sphere_distribution::param_type)
   3096 	(uniform_inside_sphere_distribution::param_type): Likewise.
   3097 	* testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc:
   3098 	Test construction with param_type.
   3099 	* testsuite/26_numerics/random/binomial_distribution/cons/parms.cc:
   3100 	Likewise.
   3101 	* testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
   3102 	Likewise.
   3103 	* testsuite/26_numerics/random/chi_squared_distribution/cons/parms.cc:
   3104 	Likewise.
   3105 	* testsuite/26_numerics/random/exponential_distribution/cons/parms.cc:
   3106 	Likewise.
   3107 	* testsuite/26_numerics/random/extreme_value_distribution/cons/
   3108 	parms.cc: Likewise.
   3109 	* testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc:
   3110 	Likewise.
   3111 	* testsuite/26_numerics/random/gamma_distribution/cons/parms.cc:
   3112 	Likewise.
   3113 	* testsuite/26_numerics/random/geometric_distribution/cons/parms.cc:
   3114 	Likewise.
   3115 	* testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc:
   3116 	Likewise.
   3117 	* testsuite/26_numerics/random/negative_binomial_distribution/cons/
   3118 	parms.cc: Likewise.
   3119 	* testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
   3120 	Likewise.
   3121 	* testsuite/26_numerics/random/poisson_distribution/cons/parms.cc:
   3122 	Likewise.
   3123 	* testsuite/26_numerics/random/student_t_distribution/cons/parms.cc:
   3124 	Likewise.
   3125 	* testsuite/26_numerics/random/uniform_int_distribution/cons/parms.cc:
   3126 	Likewise.
   3127 	* testsuite/26_numerics/random/uniform_real_distribution/cons/parms.cc:
   3128 	Likewise.
   3129 	* testsuite/26_numerics/random/weibull_distribution/cons/parms.cc:
   3130 	Likewise.
   3131 	* testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise.
   3132 	* testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise.
   3133 	* testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
   3134 	* testsuite/ext/random/hypergeometric_distribution/cons/parms.cc:
   3135 	Likewise.
   3136 	* testsuite/ext/random/k_distribution/cons/parms.cc: Likewise.
   3137 	* testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise.
   3138 	* testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise.
   3139 	* testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
   3140 	* testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise.
   3141 	* testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise.
   3142 	* testsuite/ext/random/triangular_distribution/cons/parms.cc:
   3143 	Likewise.
   3144 	* testsuite/ext/random/uniform_inside_sphere_distribution/cons/
   3145 	parms.cc: Likewise.
   3146 	* testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise.
   3147 
   3148 	PR libstdc++/72792
   3149 	* include/bits/alloc_traits.h (__allocator_traits_base::__diff_type)
   3150 	(__allocator_traits_base::__size_type): Remove.
   3151 	(allocator_traits::_Ptr): New class template to detect const and void
   3152 	pointer types without instantiating pointer_traits::rebind
   3153 	unnecessarily.
   3154 	(allocator_traits::_Diff): Likewise for detecting difference_type.
   3155 	(allocator_traits::_Size): New class template to detect size_type
   3156 	without instantiating make_unsigned unnecessarily.
   3157 	* include/bits/ptr_traits.h (pointer_traits::element_type): Use
   3158 	__detected_or_t instead of __detected_or_t_.
   3159 	* include/std/type_traits (__detected_or_t_): Remove.
   3160 	* testsuite/20_util/allocator_traits/members/pointers.cc: New test.
   3161 
   3162 	PR libstdc++/72792
   3163 	PR libstdc++/72793
   3164 	* include/bits/alloc_traits.h (__allocator_traits_base::__rebind):
   3165 	Replace with class template using void_t.
   3166 	(__alloc_rebind): Define in terms of
   3167 	__allocator_traits_base::__rebind.
   3168 	(allocator_traits): Remove unconditional static_assert for
   3169 	rebind_alloc.
   3170 	* include/bits/ptr_traits.h (__replace_first_arg): Remove type member.
   3171 	(pointer_traits::__rebind): Replace with class template using void_t.
   3172 	(pointer_traits::rebind): Define in terms of __rebind.
   3173 	(pointer_traits): Remove unconditional static_assert for rebind.
   3174 	* testsuite/20_util/allocator_traits/members/rebind_alloc.cc: New test.
   3175 	* testsuite/20_util/pointer_traits/rebind.cc: New test.
   3176 
   3177 	PR libstdc++/69321
   3178 	* include/experimental/any (__any_caster): Avoid instantiating
   3179 	manager function for types that can't be stored in any.
   3180 	* include/std/any (__any_caster): Likewise.
   3181 	* testsuite/20_util/any/misc/any_cast.cc: Test non-copyable type.
   3182 	* testsuite/experimental/any/misc/any_cast.cc: Likewise.
   3183 
   3184 	PR libstdc++/64903
   3185 	* include/bits/stl_algo.h (is_partitioned): Use increment instead of
   3186 	std::advance.
   3187 
   3188 2017-01-19  Jonathan Wakely  <jwakely (a] redhat.com>
   3189 
   3190 	PR libstdc++/79156
   3191 	* include/bits/shared_ptr_base.h (__enable_shared_from_this_base):
   3192 	Fix return type.
   3193 	(__enable_shared_from_this): Declare __shared_ptr as a friend.
   3194 	* testsuite/ext/shared_ptr/1.cc: New test.
   3195 
   3196 	PR libstdc++/64903
   3197 	* include/bits/stl_algo.h (is_partitioned): Don't retest the partition
   3198 	point.
   3199 	* testsuite/25_algorithms/is_partitioned/2.cc: New test.
   3200 
   3201 	* doc/xml/manual/abi.xml: Fix typo.
   3202 	* doc/html/manual/abi.html: Likewise.
   3203 
   3204 	PR libstdc++/67085
   3205 	* include/bits/predefined_ops.h (_Iter_less_val, _Val_less_iter): Add
   3206 	converting constructors from _Iter_less_iter.
   3207 	(_Iter_comp_val, _Val_comp_iter): Add converting constructors from
   3208 	_Iter_comp_iter.
   3209 	(__iter_comp_val(_Iter_comp_iter<C>): Use converting constructor.
   3210 	(__val_comp_iter(_Iter_comp_iter<C>): Likewise.
   3211 	* include/bits/stl_heap.h (__is_heap_until, __push_heap, __pop_heap)
   3212 	(__make_heap, __sort_heap): Change _Compare parameters to references.
   3213 	(__is_heap, push_heap, __adjust_heap, __pop_heap, pop_heap)
   3214 	(__make_heap, make_heap, sort_heap, is_heap_until): Pass comparison
   3215 	functions as lvalues.
   3216 	(is_heap): Call __is_heap_until directly to avoid copying __comp.
   3217 	* testsuite/23_containers/priority_queue/67085.cc: Adjust test to
   3218 	count copies during construction with empty sequence.
   3219 
   3220 	PR libstdc++/67085
   3221 	* include/bits/stl_heap.h (__is_heap): Use _GLIBCXX_MOVE.
   3222 	(__make_heap, __sort_heap): Don't use _GLIBCXX_MOVE inside loops.
   3223 	* testsuite/23_containers/priority_queue/67085.cc: Adjust expected
   3224 	number of copies.
   3225 	* testsuite/25_algorithms/make_heap/movable.cc: New test.
   3226 
   3227 	PR libstdc++/67085
   3228 	* include/bits/stl_heap.h (push_heap, __adjust_heap, __pop_heap)
   3229 	(pop_heap, __make_heap, make_heap, __sort_heap, sort_heap): Use
   3230 	_GLIBCXX_MOVE when passing comparison function to other functions.
   3231 	(is_heap_until, is_heap): Use std::move when passing comparison
   3232 	function.
   3233 	* testsuite/23_containers/priority_queue/67085.cc: New test.
   3234 
   3235 	PR libstdc++/78905
   3236 	* doc/xml/manual/abi.xml (abi.versioning.history): Add markup to
   3237 	macro names, filenames, and literal values. Document _GLIBCXX_RELEASE.
   3238 	Document that the deprecated _GLIBCXX_VERSION macro was removed for
   3239 	the 4.0.0 release.
   3240 	* doc/html/*: Regenerate.
   3241 	* include/Makefile.am (_GLIBCXX_RELEASE): Set value.
   3242 	* include/Makefile.in: Regenerate.
   3243 	* include/bits/c++config (_GLIBCXX_RELEASE): Add #define.
   3244 	* testsuite/ext/profile/mutex_extensions_neg.cc: Use lineno of 0 in
   3245 	dg-error.
   3246 
   3247 2017-01-18  Jonathan Wakely  <jwakely (a] redhat.com>
   3248 
   3249 	PR libstdc++/69301
   3250 	* include/std/atomic (atomic<T>::load, atomic<T>::exchange): Use
   3251 	aligned buffer instead of default-initialized variable.
   3252 	* testsuite/29_atomics/atomic/69301.cc: New test.
   3253 	* include/experimental/memory (observer_ptr::release): Use reserved
   3254 	name.
   3255 	* include/ext/pointer.h (_Pointer_adapter::operator++(int))
   3256 	(_Pointer_adapter::operator--(int)): Likewise.
   3257 
   3258 	PR libstdc++/68925
   3259 	* include/experimental/random (randint): Use temporary instead of
   3260 	thread_local static.
   3261 
   3262 2017-01-17  Joshua Conner  <joshconner (a] google.com>
   3263 
   3264 	* crossconfig.m4: Add fuchsia OS.
   3265 	* configure: Regenerate.
   3266 
   3267 2017-01-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3268 
   3269 	PR libstdc++/69699
   3270 	* doc/xml/manual/abi.xml (abi.versioning.history): Explain why the
   3271 	__GLIBCXX__ macro is not useful. Remove redundant date information
   3272 	and link to the GCC release timeline.
   3273 	(abi.versioning.active): Move partial sentence into the previous
   3274 	paragraph.
   3275 	* doc/html/*: Regenerate.
   3276 
   3277 	PR libstdc++/79114
   3278 	* libsupc++/nested_exception.h (throw_with_nested): Use decay instead
   3279 	of remove_reference.
   3280 	* testsuite/18_support/nested_exception/79114.cc: New test.
   3281 
   3282 2017-01-17  Jakub Jelinek  <jakub (a] redhat.com>
   3283 
   3284 	PR other/79046
   3285 	* configure.ac: Add GCC_BASE_VER.
   3286 	* fragment.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
   3287 	get version from BASE-VER file.
   3288 	* po/Makefile.in: Regenerated.
   3289 	* libsupc++/Makefile.in: Regenerated.
   3290 	* testsuite/Makefile.in: Regenerated.
   3291 	* src/Makefile.in: Regenerated.
   3292 	* configure: Regenerated.
   3293 	* Makefile.in: Regenerated.
   3294 	* include/Makefile.in: Regenerated.
   3295 	* doc/Makefile.in: Regenerated.
   3296 	* python/Makefile.in: Regenerated.
   3297 	* src/c++11/Makefile.in: Regenerated.
   3298 	* src/c++98/Makefile.in: Regenerated.
   3299 	* src/filesystem/Makefile.in: Regenerated.
   3300 
   3301 2017-01-16  Jonathan Wakely  <jwakely (a] redhat.com>
   3302 
   3303 	PR libstdc++/66145
   3304 	* src/c++11/functexcept.cc: Use new ABI for std::ios_base::failure
   3305 	exceptions.
   3306 	* testsuite/27_io/basic_ios/copyfmt/char/1.cc: Don't override ABI
   3307 	for test, so new ios::failure can be caught.
   3308 	* testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
   3309 	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
   3310 	exceptions_failbit.cc: Likewise.
   3311 	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
   3312 	exceptions_failbit.cc: Likewise.
   3313 	* testsuite/27_io/basic_istream/extractors_other/char/
   3314 	exceptions_null.cc: Likewise.
   3315 	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
   3316 	exceptions_null.cc: Likewise.
   3317 	* testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
   3318 	* testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
   3319 	* testsuite/27_io/basic_ostream/inserters_other/char/
   3320 	exceptions_null.cc: Likewise.
   3321 	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
   3322 	exceptions_null.cc: Likewise.
   3323 	* testsuite/27_io/ios_base/storage/2.cc: Likewise.
   3324 
   3325 	PR libstdc++/78702
   3326 	* include/bits/locale_classes.h (locale::facet::__shim): Change from
   3327 	private to protected.
   3328 	* src/c++11/cxx11-shim_facets.cc (__shim_accessor): Define helper to
   3329 	make locale::facet::__shim accessible.
   3330 
   3331 2017-01-16  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   3332 
   3333 	PR libstdc++/78389
   3334 	* include/bits/list.tcc (merge(list&&)): Fix backwards size adjustments.
   3335 	(merge(list&&, _StrictWeakOrdering)): Likewise.
   3336 	* testsuite/23_containers/list/operations/78389.cc: Add
   3337 	better test for the sizes.
   3338 
   3339 2017-01-14  Jonathan Wakely  <jwakely (a] redhat.com>
   3340 
   3341 	* testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc:
   3342 	Skip test when -D_GLIBCXX_PROFILE mode is included in options.
   3343 	* testsuite/23_containers/map/modifiers/extract.cc: Likewise.
   3344 	* testsuite/23_containers/map/modifiers/insert_or_assign/1.cc:
   3345 	Likewise.
   3346 	* testsuite/23_containers/map/modifiers/try_emplace/1.cc: Likewise.
   3347 	* testsuite/23_containers/multimap/modifiers/extract.cc: Likewise.
   3348 	* testsuite/23_containers/multiset/modifiers/extract.cc: Likewise.
   3349 	* testsuite/23_containers/set/modifiers/extract.cc: Likewise.
   3350 	* testsuite/23_containers/unordered_map/modifiers/extract.cc:
   3351 	Likewise.
   3352 	* testsuite/23_containers/unordered_multimap/modifiers/extract.cc::
   3353 	Likewise.
   3354 	* testsuite/23_containers/unordered_multiset/modifiers/extract.cc::
   3355 	Likewise.
   3356 	* testsuite/23_containers/unordered_set/modifiers/extract.cc:
   3357 	Likewise.
   3358 	* testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
   3359 	Likewise.
   3360 	* testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
   3361 	* testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
   3362 	* testsuite/25_algorithms/lexicographical_compare/71545.cc: Likewise.
   3363 	* testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
   3364 	* testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
   3365 	* testsuite/libstdc++-prettyprinters/cxx11.cc: Likewise.
   3366 	* testsuite/libstdc++-prettyprinters/cxx17.cc: Likewise.
   3367 	* testsuite/libstdc++-prettyprinters/debug.cc: Likewise.
   3368 	* testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Likewise.
   3369 	* testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
   3370 	* testsuite/libstdc++-prettyprinters/simple.cc: Likewise.
   3371 	* testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
   3372 	* testsuite/libstdc++-prettyprinters/whatis.cc: Likewise.
   3373 
   3374 2017-01-13  Jonathan Wakely  <jwakely (a] redhat.com>
   3375 
   3376 	PR libstdc++/65411
   3377 	* config/io/basic_file_stdio.cc (__basic_file<char>::close()): Don't
   3378 	retry fclose on EINTR.
   3379 
   3380 	* include/profile/base.h: Remove unused header that leads to header
   3381 	cycle in C++17 mode.
   3382 
   3383 	PR libstdc++/79075
   3384 	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (basic_string):
   3385 	Make _If_sv private.
   3386 	[!_GLIBCXX_USE_CXX11_ABI] (basic_string): Add member functions taking
   3387 	basic_string_view arguments.
   3388 
   3389 	PR libstdc++/79075
   3390 	* testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Remove
   3391 	redundant option from cxxflags.
   3392 	(check_effective_target_cxx11-abi): Define.
   3393 	* testsuite/21_strings/basic_string/allocator/71964.cc: Use cxx11-abi
   3394 	effective target.
   3395 	* testsuite/21_strings/basic_string/allocator/char/copy.cc: Likewise.
   3396 	* testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
   3397 	Likewise.
   3398 	* testsuite/21_strings/basic_string/allocator/char/minimal.cc:
   3399 	Likewise.
   3400 	* testsuite/21_strings/basic_string/allocator/char/move.cc: Likewise.
   3401 	* testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
   3402 	Likewise.
   3403 	* testsuite/21_strings/basic_string/allocator/char/noexcept.cc:
   3404 	Likewise.
   3405 	* testsuite/21_strings/basic_string/allocator/char/swap.cc: Likewise.
   3406 	* testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
   3407 	Likewise.
   3408 	* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
   3409 	Likewise.
   3410 	* testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
   3411 	Likewise.
   3412 	* testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
   3413 	Likewise.
   3414 	* testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
   3415 	Likewise.
   3416 	* testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
   3417 	Likewise.
   3418 	* testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
   3419 	Likewise.
   3420 	* testsuite/23_containers/list/61347.cc: Likewise.
   3421 	* testsuite/27_io/basic_fstream/cons/base.cc: Likewise.
   3422 	* testsuite/27_io/ios_base/failure/cxx11.cc: Likewise.
   3423 
   3424 2017-01-13  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   3425 
   3426 	PR libstdc++/78389
   3427 	* include/bits/list.tcc (merge(list&&)):
   3428 	Adjust list sizes if the comparator throws.
   3429 	(merge(list&&, _StrictWeakOrdering)): Likewise.
   3430 	(sort()): Splice elements back from the scratch buffers
   3431 	if the comparator throws.
   3432 	(sort(_StrictWeakOrdering)): Likewise.
   3433 	* testsuite/23_containers/list/operations/78389.cc: New.
   3434 
   3435 2017-01-13  Jonathan Wakely  <jwakely (a] redhat.com>
   3436 
   3437 	* testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Mark
   3438 	XFAIL for C++17 until node reinsertion supports fancy pointers.
   3439 
   3440 	PR libstdc++/78361
   3441 	* testsuite/20_util/add_pointer/value.cc: Test forming function
   3442 	pointers.
   3443 
   3444 2017-01-13  Michael Brune  <lucdanton (a] free.fr>
   3445 
   3446 	PR libstdc++/78361
   3447 	* include/std/type_traits (__is_referenceable): Handle noexcept
   3448 	function types.
   3449 
   3450 2017-01-12  Jonathan Wakely  <jwakely (a] redhat.com>
   3451 
   3452 	PR libstdc++/77528
   3453 	* include/bits/stl_queue.h (queue, priority_queue): Remove default
   3454 	member-initializers and define default constructors as templates with
   3455 	constraints.
   3456 	* include/bits/stl_stack.h (stack): Likewise.
   3457 	* testsuite/23_containers/priority_queue/requirements/constructible.cc:
   3458 	New.
   3459 	* testsuite/23_containers/priority_queue/requirements/
   3460 	explicit_instantiation/1.cc: Test more instantiations.
   3461 	* testsuite/23_containers/priority_queue/requirements/
   3462 	explicit_instantiation/1_c++98.cc: Likewise.
   3463 	* testsuite/23_containers/queue/requirements/constructible.cc: New.
   3464 	* testsuite/23_containers/stack/requirements/constructible.cc: New.
   3465 
   3466 	PR libstdc++/66284
   3467 	* doc/xml/manual/intro.xml: Document LWG 2781 change.
   3468 	* doc/html/*: Regenerate.
   3469 	* include/std/functional (_Function_base::_Ref_manager): Remove.
   3470 	(_Function_handler): Remove partial specializations for
   3471 	reference_wrapper.
   3472 	(function::target): Remove special case for const qualification.
   3473 	* testsuite/20_util/function/6.cc: Adjust tests for target type.
   3474 	* testsuite/20_util/function/7.cc: Likewise.
   3475 	* testsuite/20_util/function/8.cc: Likewise.
   3476 
   3477 2017-01-11  Jonathan Wakely  <jwakely (a] redhat.com>
   3478 
   3479 	PR libstdc++/78134
   3480 	* include/bits/stl_map.h (map::lower_bound, map::upper_bound)
   3481 	(map::equal_range): Fix return type of heterogeneous overloads.
   3482 	* include/bits/stl_multimap.h (multimap::lower_bound)
   3483 	(multimap::upper_bound, multimap::equal_range): Likewise.
   3484 	* include/bits/stl_multiset.h (multiset::lower_bound)
   3485 	(multiset::upper_bound, multiset::equal_range): Likewise.
   3486 	* include/bits/stl_set.h (set::lower_bound, set::upper_bound)
   3487 	(set::equal_range): Likewise.
   3488 	* testsuite/23_containers/map/operations/2.cc
   3489 	* testsuite/23_containers/multimap/operations/2.cc
   3490 	* testsuite/23_containers/multiset/operations/2.cc
   3491 	* testsuite/23_containers/set/operations/2.cc
   3492 
   3493 	PR libstdc++/78273
   3494 	* include/bits/stl_map.h (map::count<_Kt>(const _Kt&)): Don't assume
   3495 	the heterogeneous comparison can only find one match.
   3496 	* include/bits/stl_set.h (set::count<_Kt>(const _Kt&)): Likewise.
   3497 	* testsuite/23_containers/map/operations/2.cc: Test count works with
   3498 	comparison function that just partitions rather than sorting.
   3499 	* testsuite/23_containers/set/operations/2.cc: Likewise.
   3500 
   3501 2017-01-11  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   3502 
   3503 	Reduce the size of variant, it doesn't need an index of
   3504 	type size_t internally.
   3505 	* include/std/variant (parse_numbers.h): New include.
   3506 	(__select_index): New.
   3507 	(_Variant_storage<false, _Types...>::_M_reset_impl): Use
   3508 	_index_type for comparison with variant_npos.
   3509 	(_Variant_storage<false, _Types...>::__index_type): New.
   3510 	(_Variant_storage<false, _Types...>::_M_index): Change the
   3511 	type from size_t to __index_type.
   3512 	(_Variant_storage<true, _Types...>::__index_type): New.
   3513 	(_Variant_storage<true, _Types...>::_M_index): Change the
   3514 	type from size_t to __index_type.
   3515 	(_Variant_base::_M_valid): Use _Storage::__index_type
   3516 	for comparison with variant_npos.
   3517 	(variant::index): Use _Base::_Storage::__index_type
   3518 	for comparison with variant_npos.
   3519 	* testsuite/20_util/variant/index_type.cc: New.
   3520 
   3521 2017-01-10  Jonathan Wakely  <jwakely (a] redhat.com>
   3522 
   3523 	* testsuite/18_support/exception_ptr/60612-unexpected.cc: Adjust
   3524 	effective target selector to prevent running in C++17 mode.
   3525 
   3526 	PR libstdc++/77528
   3527 	* include/bits/stl_queue.h (queue::c): Add default member initializer.
   3528 	(queue::queue()): Add constructor and define as defaulted.
   3529 	(queue::queue(_Sequence&&)): Remove default argument.
   3530 	(priority_queue::c, priority_queue::comp): Add default member
   3531 	initializers.
   3532 	(priority_queue::priority_queue()): Add constructor and define as
   3533 	defaulted.
   3534 	(priority_queue::priority_queue(const _Compare&, _Sequence&&)):
   3535 	Remove default argument for first parameter.
   3536 	* include/bits/stl_stack.h (stack::c): Add default member initializer.
   3537 	(stack::stack()): Add constructor and define as defaulted.
   3538 	(stack::stack(const _Sequence&)): Remove default argument.
   3539 	* testsuite/23_containers/priority_queue/requirements/
   3540 	explicit_instantiation/1.cc: Test explicit instantiation with
   3541 	non-DefaultConstructible sequence.
   3542 	* testsuite/23_containers/priority_queue/77528.cc: New test.
   3543 	* testsuite/23_containers/priority_queue/requirements/
   3544 	explicit_instantiation/1_c++0x.cc: Replace with 1_c++98.cc.
   3545 	* testsuite/23_containers/queue/77528.cc: New test.
   3546 	* testsuite/23_containers/queue/requirements/explicit_instantiation/
   3547 	1.cc: Test explicit instantiation with non-DefaultConstructible
   3548 	sequence.
   3549 	* testsuite/23_containers/queue/requirements/explicit_instantiation/
   3550 	1_c++0x.cc: Replace with 1_c++98.cc.
   3551 	* testsuite/23_containers/stack/77528.cc: New test.
   3552 	* testsuite/23_containers/stack/requirements/explicit_instantiation/
   3553 	1.cc: Test explicit instantiation with non-DefaultConstructible
   3554 	sequence.
   3555 	* testsuite/23_containers/stack/requirements/explicit_instantiation/
   3556 	1_c++0x.cc: Replace with 1_c++98.cc.
   3557 
   3558 2017-01-10  Felipe Magno de Almeida <felipe (a] expertisesolutions.com.br>
   3559 
   3560 	* include/bits/locale_facets_nonio.tcc
   3561 	(time_get::_M_extract_via_format): Avoid compilation errors with
   3562 	non-standard struct tm.
   3563 
   3564 2017-01-10  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3565 	    Jonathan Wakely  <jwakely (a] redhat.com>
   3566 
   3567 	* python/libstdcxx/v6/printers.py (_versioned_namespace): Define.
   3568 	(is_specialization, strip_versioned_namespace): New helpers functions
   3569 	to work with symbols in the versioned namespace.
   3570 	(Printer.add_version): Add second name using versioned namespace.
   3571 	(add_one_template_type_printer, add_one_type_printer): Add second
   3572 	type printers using versioned namespace.
   3573 	(register_type_printers): Add template type printer for basic_string.
   3574 	(build_libstdcxx_dictionary): Remove dead code.
   3575 	* python/libstdcxx/v6/xmethods.py: Make all matchers look for
   3576 	versioned namespace.
   3577 	* testsuite/libstdc++-prettyprinters/48362.cc: Adjust expected
   3578 	results.
   3579 	* testsuite/libstdc++-prettyprinters/whatis.cc: Likewise.
   3580 
   3581 2017-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   3582 
   3583 	PR libstdc++/79017
   3584 	* acinclude.m4 (GLIBCXX_CHECK_C99_TR1): Check for llrint and llround
   3585 	functions separately on darwin and if they're missing define
   3586 	_GLIBCXX_NO_C99_ROUNDING_FUNCS.
   3587 	* config.h.in: Regenerate.
   3588 	* configure: Regenerate.
   3589 	* include/c_global/cmath [_GLIBCXX_NO_C99_ROUNDING_FUNCS] (llrint)
   3590 	(llrintf, llrintl, llround, llroundf, llroundl): Do not define.
   3591 
   3592 	* testsuite/30_threads/condition_variable/members/3.cc: Use new macro
   3593 	to detect correct thread_local destructors.
   3594 	* testsuite/util/testsuite_hooks.h (CORRECT_THREAD_LOCAL_DTORS):
   3595 	Define.
   3596 
   3597 2017-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   3598 	    Aditya Kumar  <hiraditya (a] msn.com>
   3599 
   3600 	PR libstdc++/66414
   3601 	* include/bits/basic_string.tcc
   3602 	(basic_string::find(const CharT*, size_type, size_type)): Optimize.
   3603 
   3604 2017-01-06  Jonathan Wakely  <jwakely (a] redhat.com>
   3605 
   3606 	* testsuite/21_strings/basic_string/operations/find/char/6.cc: New.
   3607 	* testsuite/21_strings/basic_string/operations/find/wchar_t/6.cc: New.
   3608 
   3609 	* testsuite/util/performance/priority_queue/mem_usage/pop_test.hpp:
   3610 	Include <cassert> header.
   3611 
   3612 	PR libstdc++/78968
   3613 	* crossconfig.m4: Check for __cxa_thread_atexit on *-*-freebsd*.
   3614 	* configure: Regenerate.
   3615 
   3616 2017-01-06  Barrett Adair  <barrettellisadair (a] gmail.com>
   3617 	    Jonathan Wakely  <jwakely (a] redhat.com>
   3618 
   3619 	* include/std/variant (variant, swap): Replace __and_ usage with fold
   3620 	expressions.
   3621 
   3622 2017-01-06  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   3623 
   3624 	PR go/78978
   3625 	* acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Remove.
   3626 	* configure.ac: Call GCC_CHECK_ASSEMBLER_HWCAP instead of
   3627 	GLIBCXX_CHECK_ASSEMBLER_HWCAP.
   3628 	* fragment.am (CONFIG_CXXFLAGS): Use HWCAP_CFLAGS instead of
   3629 	HWCAP_FLAGS.
   3630 	* aclocal.m4: Regenerate.
   3631 	* configure: Regenerate.
   3632 	* Makefile.in, doc/Makefile.in, include/Makefile.in,
   3633 	libsupc++/Makefile.in, po/Makefile.in, python/Makefile.in,
   3634 	src/Makefile.in, src/c++11/Makefile.in, src/c++98/Makefile.in,
   3635 	src/filesystem/Makefile.in, testsuite/Makefile.in: Regenerate.
   3636 
   3637 2017-01-06  Jonathan Wakely  <jwakely (a] redhat.com>
   3638 
   3639 	* include/bits/c++config (_GLIBCXX_ASSERTIONS): Avoid redefinition.
   3640 
   3641 	PR libstdc++/78991
   3642 	* include/bits/predefined_ops.h (_Iter_comp_iter, _Iter_comp_val)
   3643 	(_Val_comp_iter, _Iter_equals_val, _Iter_pred, _Iter_comp_to_val)
   3644 	(_Iter_comp_to_iter, _Iter_negate): Make constructors explicit and
   3645 	move function objects.
   3646 	(__iter_comp_iter, __iter_comp_val, __val_comp_iter, __pred_iter)
   3647 	(__iter_comp_val, __iter_comp_iter, __negate): Move function objects.
   3648 	* testsuite/25_algorithms/sort/78991.cc: New test.
   3649 
   3650 2017-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   3651 
   3652 	* include/bits/std_function.h (function::_Signature_type): Remove.
   3653 	(function::function(_Functor)): Adjust.
   3654 
   3655 2017-01-05  Tim Shen  <timshen (a] google.com>
   3656 
   3657 	PR libstdc++/78996
   3658 	* include/std/variant (__gen_vtable_impl): rename __unused to
   3659 	__dimensions to avoid naming conflict.
   3660 
   3661 2017-01-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3662 
   3663 	PR libstdc++/78968
   3664 	* config.h.in: Regenerate.
   3665 	* configure: Likewise.
   3666 	* configure.ac: Check for __cxa_thread_atexit.
   3667 	* libsupc++/atexit_thread.cc [_GLIBCXX_HAVE___CXA_THREAD_ATEXIT]:
   3668 	Don't define __cxa_thread_atexit if libc provides it.
   3669 
   3670 2017-01-04  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   3671 
   3672 	Implement 2801, Default-constructibility of unique_ptr.
   3673 	* include/bits/unique_ptr.h (__uniq_ptr_impl::_DeleterConstraint): New.
   3674 	(unique_ptr::_DeleterConstraint): Likewise.
   3675 	(unique_ptr()): Constrain.
   3676 	(unique_ptr(pointer)): Likewise.
   3677 	(unique_ptr(nullptr_t)): Likewise.
   3678 	(unique_ptr<_Tp[], _Dp>::_DeleterConstraint): New.
   3679 	(unique_ptr<_Tp[], _Dp>::unique_ptr()): Constrain.
   3680 	(unique_ptr<_Tp[], _Dp>::unique_ptr(_Up)): Likewise.
   3681 	(unique_ptr<_Tp[], _Dp>::unique_ptr(nullptr_t)): Likewise.
   3682 	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust.
   3683 	* testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Likewise.
   3684 	* testsuite/20_util/unique_ptr/cons/default.cc: New.
   3685 	* testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Adjust.
   3686 
   3687 2017-01-04  Pauli Nieminen  <suokkos (a] gmail.com>
   3688 	    Jonathan Wakely  <jwakely (a] redhat.com>
   3689 
   3690 	PR libstdc++/64735
   3691 	* acinclude.m4 (GLIBCXX_CHECK_EXCEPTION_PTR_SYMVER): Define.
   3692 	* config.h.in: Regenerate.
   3693 	* config/abi/pre/gnu.ver [HAVE_EXCEPTION_PTR_SINCE_GCC46]
   3694 	(GLIBCXX_3.4.15, GLIBCXX_3.4.21, CXXABI_1.3.3, CXXABI_1.3.5): Make
   3695 	exports for exception_ptr, nested_exception, and future conditional.
   3696 	[HAVE_EXCEPTION_PTR_SINCE_GCC46] (GLIBCXX_3.4.23, CXXABI_1.3.11): Add
   3697 	exports for exception_ptr, nested_exception, and future conditional.
   3698 	* configure: Regenerate.
   3699 	* configure.ac: Use GLIBCXX_CHECK_EXCEPTION_PTR_SYMVER.
   3700 	* include/std/future: Remove check for ATOMIC_INT_LOCK_FREE
   3701 	* libsupc++/eh_atomics.h: New file for internal use only.
   3702 	(__eh_atomic_inc, __eh_atomic_dec): New.
   3703 	* libsupc++/eh_ptr.cc (exception_ptr::_M_addref)
   3704 	(exception_ptr::_M_release) (__gxx_dependent_exception_cleanup)
   3705 	(rethrow_exception): Use eh_atomics.h reference counting helpers.
   3706 	* libsupc++/eh_throw.cc (__gxx_exception_cleanup): Likewise.
   3707 	* libsupc++/eh_tm.cc (free_any_cxa_exception): Likewise.
   3708 	* libsupc++/exception: Remove check for ATOMIC_INT_LOCK_FREE.
   3709 	* libsupc++/exception_ptr.h: Likewise.
   3710 	* libsupc++/guard.cc: Include header for ATOMIC_INT_LOCK_FREE macro.
   3711 	* libsupc++/nested_exception.cc: Remove check for
   3712 	ATOMIC_INT_LOCK_FREE.
   3713 	* libsupc++/nested_exception.h: Likewise.
   3714 	* src/c++11/future.cc: Likewise.
   3715 	* testsuite/18_support/exception_ptr/*: Remove atomic builtins checks.
   3716 	* testsuite/18_support/nested_exception/*: Likewise.
   3717 	* testsuite/30_threads/async/*: Likewise.
   3718 	* testsuite/30_threads/future/*: Likewise.
   3719 	* testsuite/30_threads/headers/future/types_std_c++0x.cc: Likewise.
   3720 	* testsuite/30_threads/packaged_task/*: Likewise.
   3721 	* testsuite/30_threads/promise/*: Likewise.
   3722 	* testsuite/30_threads/shared_future/*: Likewise.
   3723 
   3724 2017-01-03  Gerald Pfeifer  <gerald (a] pfeifer.com>
   3725 
   3726 	* doc/xml/manual/documentation_hacking.xml: sourceforge.net now
   3727 	defaults to https; adjust reference.
   3728 
   3729 2017-01-03  Jonathan Wakely  <jwakely (a] redhat.com>
   3730 
   3731 	PR libstdc++/78956
   3732 	* include/std/thread (thread(const thread&&)): Add deleted
   3733 	constructor.
   3734 	* testsuite/30_threads/thread/cons/lwg2097.cc: New test.
   3735 
   3736 	* doc/xml/manual/spine.xml: Update copyright years.
   3737 	* doc/xml/manual/build_hacking.xml: Fix spelling of libbuilddir.
   3738 	* doc/xml/manual/test.xml: Likewise.
   3739 	* doc/html/*: Regenerate.
   3740 
   3741 2017-01-01  Gerald Pfeifer  <gerald (a] pfeifer.com>
   3742 
   3743 	* doc/xml/faq.xml: Update address of C++ ABI link.
   3744 	* doc/xml/manual/abi.xml: Ditto.
   3745 
   3746 2017-01-01  Jakub Jelinek  <jakub (a] redhat.com>
   3747 
   3748 	Update copyright years.
   3749 
   3751 Copyright (C) 2017 Free Software Foundation, Inc.
   3752 
   3753 Copying and distribution of this file, with or without modification,
   3754 are permitted in any medium without royalty provided the copyright
   3755 notice and this notice are preserved.
   3756