Home | History | Annotate | Line # | Download | only in libstdc++-v3
      1  1.1  mrg 2020-12-27  Gerald Pfeifer  <gerald (a] pfeifer.com>
      2  1.1  mrg 
      3  1.1  mrg 	* doc/xml/manual/abi.xml: Update link to Arm ABI.
      4  1.1  mrg 	* doc/html/manual/abi.html: Regenerate.
      5  1.1  mrg 
      6  1.1  mrg 2020-12-27  Gerald Pfeifer  <gerald (a] pfeifer.com>
      7  1.1  mrg 
      8  1.1  mrg 	* doc/xml/manual/debug.xml: Move Valgrind references to https.
      9  1.1  mrg 	* doc/html/manual/debug.html: Regenerate.
     10  1.1  mrg 
     11  1.1  mrg 2020-12-26  Gerald Pfeifer  <gerald (a] pfeifer.com>
     12  1.1  mrg 
     13  1.1  mrg 	* doc/xml/manual/abi.xml: Update link to Intel's compatibility
     14  1.1  mrg 	with GNU compilers document.
     15  1.1  mrg 	* doc/html/manual/abi.html: Regenerate.
     16  1.1  mrg 
     17  1.1  mrg 2020-12-25  Gerald Pfeifer  <gerald (a] pfeifer.com>
     18  1.1  mrg 
     19  1.1  mrg 	* doc/xml/manual/messages.xml: Update link to Java docs.
     20  1.1  mrg 	* doc/html/manual/facets.html: Ditto.
     21  1.1  mrg 
     22  1.1  mrg 2020-12-25  Gerald Pfeifer  <gerald (a] pfeifer.com>
     23  1.1  mrg 
     24  1.1  mrg 	* doc/xml/manual/documentation_hacking.xml: Convert three links
     25  1.1  mrg 	to doxygen.nl to https.
     26  1.1  mrg 	* doc/html/manual/documentation_hacking.html: Regenerate.
     27  1.1  mrg 
     28  1.1  mrg 2020-12-23  Olivier Hainque  <hainque (a] adacore.com>
     29  1.1  mrg 
     30  1.1  mrg 	* testsuite/17_intro/names.cc: Account for VxWorks headers.
     31  1.1  mrg 
     32  1.1  mrg 2020-12-21  Patrick Palka  <ppalka (a] redhat.com>
     33  1.1  mrg 
     34  1.1  mrg 	* include/bits/c++config (_GLIBCXX_FLOAT_IS_IEEE_BINARY_32):
     35  1.1  mrg 	Define this macro.
     36  1.1  mrg 	(_GLIBCXX_DOUBLE_IS_IEEE_BINARY_64): Likewise.
     37  1.1  mrg 	* include/std/charconv (to_chars): Use these macros to
     38  1.1  mrg 	conditionally hide the overloads for floating-point types.
     39  1.1  mrg 	* src/c++17/floating_to_chars.cc: Use the macros to
     40  1.1  mrg 	conditionally disable this file.
     41  1.1  mrg 	(floating_type_traits<float>): Remove redundant static assert.
     42  1.1  mrg 	(floating_type_traits<double>): Likewise.
     43  1.1  mrg 	* testsuite/20_util/to_chars/double.cc: Run this test only on
     44  1.1  mrg 	ieee-floats effective targets.
     45  1.1  mrg 	* testsuite/20_util/to_chars/float.cc: Likewise.
     46  1.1  mrg 	* testsuite/20_util/to_chars/long_double.cc: Likewise.
     47  1.1  mrg 	* testsuite/lib/libstdc++.exp
     48  1.1  mrg 	(check_effective_target_ieee-floats): Define new proc for
     49  1.1  mrg 	detecting whether float and double have the IEEE binary32 and
     50  1.1  mrg 	binary64 formats.
     51  1.1  mrg 
     52  1.1  mrg 2020-12-20  Jonathan Wakely  <jwakely (a] redhat.com>
     53  1.1  mrg 
     54  1.1  mrg 	* include/std/semaphore: Fix indentation.
     55  1.1  mrg 
     56  1.1  mrg 2020-12-18  Patrick Palka  <ppalka (a] redhat.com>
     57  1.1  mrg 
     58  1.1  mrg 	PR libstdc++/98377
     59  1.1  mrg 	* src/c++17/floating_to_chars.cc (__floating_to_chars_precision):
     60  1.1  mrg 	Fix mistake.
     61  1.1  mrg 
     62  1.1  mrg 2020-12-18  Patrick Palka  <ppalka (a] redhat.com>
     63  1.1  mrg 
     64  1.1  mrg 	PR libstdc++/98370
     65  1.1  mrg 	* src/c++17/floating_to_chars.cc (__floating_to_chars_shortest):
     66  1.1  mrg 	Provide explicit template arguments to the call to std::max.
     67  1.1  mrg 
     68  1.1  mrg 2020-12-18  Patrick Palka  <ppalka (a] redhat.com>
     69  1.1  mrg 
     70  1.1  mrg 	PR libstdc++/98374
     71  1.1  mrg 	* src/c++17/floating_to_chars.cc: Guard include of <langinfo.h>
     72  1.1  mrg 	with __has_include.
     73  1.1  mrg 	(__floating_to_chars_precision) [!defined(RADIXCHAR)]: Don't
     74  1.1  mrg 	attempt to obtain the radix character of the current locale,
     75  1.1  mrg 	just assume it's '.'.
     76  1.1  mrg 
     77  1.1  mrg 2020-12-18  Patrick Palka  <ppalka (a] redhat.com>
     78  1.1  mrg 
     79  1.1  mrg 	* src/c++17/floating_from_chars.cc (from_chars_impl)
     80  1.1  mrg 	[!defined(FE_TONEAREST)]: Don't adjust the rounding mode.
     81  1.1  mrg 	* src/c++17/floating_to_chars.cc (__floating_to_chars_precision):
     82  1.1  mrg 	Likewise.
     83  1.1  mrg 
     84  1.1  mrg 2020-12-18  Patrick Palka  <ppalka (a] redhat.com>
     85  1.1  mrg 
     86  1.1  mrg 	* testsuite/20_util/to_chars/double.cc: New test, consisting of
     87  1.1  mrg 	testcases imported from the MSVC STL testsuite.
     88  1.1  mrg 	* testsuite/20_util/to_chars/float.cc: Likewise.
     89  1.1  mrg 
     90  1.1  mrg 2020-12-18  Patrick Palka  <ppalka (a] redhat.com>
     91  1.1  mrg 
     92  1.1  mrg 	* config/abi/pre/gnu.ver: Add new exports.
     93  1.1  mrg 	* include/std/charconv (to_chars): Declare the floating-point
     94  1.1  mrg 	overloads for float, double and long double.
     95  1.1  mrg 	* src/c++17/Makefile.am (sources): Add floating_to_chars.cc.
     96  1.1  mrg 	* src/c++17/Makefile.in: Regenerate.
     97  1.1  mrg 	* src/c++17/floating_to_chars.cc: New file.
     98  1.1  mrg 	(to_chars): Define for float, double and long double.
     99  1.1  mrg 	* testsuite/20_util/to_chars/long_double.cc: New test.
    100  1.1  mrg 
    101  1.1  mrg 2020-12-18  Patrick Palka  <ppalka (a] redhat.com>
    102  1.1  mrg 
    103  1.1  mrg 	* src/c++17/ryu/common.h, src/c++17/ryu/d2fixed.c,
    104  1.1  mrg 	src/c++17/ryu/d2fixed_full_table.h, src/c++17/ryu/d2s.c,
    105  1.1  mrg 	src/c++17/ryu/d2s_intrinsics.h, src/c++17/ryu/f2s.c,
    106  1.1  mrg 	src/c++17/ryu/f2s_intrinsics.h, src/c++17/ryu/generic_128.c:
    107  1.1  mrg 	Apply local modifications.
    108  1.1  mrg 
    109  1.1  mrg 2020-12-18  Patrick Palka  <ppalka (a] redhat.com>
    110  1.1  mrg 
    111  1.1  mrg 	* src/c++17/ryu/MERGE: New file.
    112  1.1  mrg 	* src/c++17/ryu/common.h, src/c++17/ryu/d2fixed.c,
    113  1.1  mrg 	src/c++17/ryu/d2fixed_full_table.h, src/c++17/ryu/d2s.c,
    114  1.1  mrg 	src/c++17/ryu/d2s_full_table.h, src/c++17/ryu/d2s_intrinsics.h,
    115  1.1  mrg 	src/c++17/ryu/digit_table.h, src/c++17/ryu/f2s.c,
    116  1.1  mrg 	src/c++17/ryu/f2s_intrinsics.h, src/c++17/ryu/generic_128.c,
    117  1.1  mrg 	src/c++17/ryu/generic_128.h, src/c++17/ryu/ryu_generic_128.h:
    118  1.1  mrg 	Import these files from the Ryu library.
    119  1.1  mrg 
    120  1.1  mrg 2020-12-17  Jonathan Wakely  <jwakely (a] redhat.com>
    121  1.1  mrg 
    122  1.1  mrg 	* config/os/djgpp/error_constants.h: Test POSIX errno macros
    123  1.1  mrg 	directly, instead of corresponding _GLIBCXX_HAVE_EXXX macros.
    124  1.1  mrg 	* config/os/mingw32-w64/error_constants.h: Likewise.
    125  1.1  mrg 	* config/os/mingw32/error_constants.h: Likewise.
    126  1.1  mrg 
    127  1.1  mrg 2020-12-17  Jonathan Wakely  <jwakely (a] redhat.com>
    128  1.1  mrg 
    129  1.1  mrg 	* testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed):
    130  1.1  mrg 	Fix condition for _GTHREAD_USE_MUTEX_TIMEDLOCK test.
    131  1.1  mrg 
    132  1.1  mrg 2020-12-17  Jonathan Wakely  <jwakely (a] redhat.com>
    133  1.1  mrg 
    134  1.1  mrg 	* src/c++11/mutex.cc (std::once_flag::_M_finish): Add
    135  1.1  mrg 	maybe_unused attribute to variable used in assertion.
    136  1.1  mrg 
    137  1.1  mrg 2020-12-17  Jonathan Wakely  <jwakely (a] redhat.com>
    138  1.1  mrg 
    139  1.1  mrg 	PR libstdc++/98344
    140  1.1  mrg 	* include/bits/semaphore_base.h: Fix preprocessor condition.
    141  1.1  mrg 
    142  1.1  mrg 2020-12-17  Jonathan Wakely  <jwakely (a] redhat.com>
    143  1.1  mrg 
    144  1.1  mrg 	* include/bits/std_thread.h (hash<thread::id>): Move here,
    145  1.1  mrg 	from ...
    146  1.1  mrg 	* include/std/thread (hash<thread::id>): ... here.
    147  1.1  mrg 
    148  1.1  mrg 2020-12-17  Jonathan Wakely  <jwakely (a] redhat.com>
    149  1.1  mrg 
    150  1.1  mrg 	* config.h.in: Regenerate.
    151  1.1  mrg 	* configure: Regenerate.
    152  1.1  mrg 
    153  1.1  mrg 2020-12-16  Jonathan Wakely  <jwakely (a] redhat.com>
    154  1.1  mrg 
    155  1.1  mrg 	* Makefile.in: Regenerate.
    156  1.1  mrg 	* config.h.in: Regenerate.
    157  1.1  mrg 	* config/abi/pre/gnu.ver: Make patterns less greedy.
    158  1.1  mrg 	* config/os/gnu-linux/ldbl-ieee128-extra.ver: New file with patterns
    159  1.1  mrg 	for IEEE128 long double symbols.
    160  1.1  mrg 	* configure: Regenerate.
    161  1.1  mrg 	* configure.ac: Enable alternative 128-bit long double format on
    162  1.1  mrg 	powerpc64*-*-linux*.
    163  1.1  mrg 	* doc/Makefile.in: Regenerate.
    164  1.1  mrg 	* fragment.am: Regenerate.
    165  1.1  mrg 	* include/Makefile.am: Set _GLIBCXX_LONG_DOUBLE_ALT128_COMPAT.
    166  1.1  mrg 	* include/Makefile.in: Regenerate.
    167  1.1  mrg 	* include/bits/c++config: Define inline namespace for new long
    168  1.1  mrg 	double symbols. Don't define _GLIBCXX_USE_FLOAT128 when it's the
    169  1.1  mrg 	same type as long double.
    170  1.1  mrg 	* include/bits/locale_classes.h [_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT]
    171  1.1  mrg 	(locale::_Impl::_M_init_extra_ldbl128): Declare new member function.
    172  1.1  mrg 	* include/bits/locale_facets.h (_GLIBCXX_NUM_FACETS): Simplify by
    173  1.1  mrg 	only counting narrow character facets.
    174  1.1  mrg 	(_GLIBCXX_NUM_CXX11_FACETS): Likewise.
    175  1.1  mrg 	(_GLIBCXX_NUM_LBDL_ALT128_FACETS): New.
    176  1.1  mrg 	[_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT] (num_get::__do_get): Define
    177  1.1  mrg 	vtable placeholder for __ibm128 long double type.
    178  1.1  mrg 	[_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT && __LONG_DOUBLE_IEEE128__]
    179  1.1  mrg 	(num_get::__do_get): Declare vtable placeholder for __ibm128 long
    180  1.1  mrg 	double type.
    181  1.1  mrg 	[_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT && __LONG_DOUBLE_IEEE128__]
    182  1.1  mrg 	(num_put::__do_put): Likewise.
    183  1.1  mrg 	* include/bits/locale_facets.tcc
    184  1.1  mrg 	[_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT && __LONG_DOUBLE_IEEE128__]
    185  1.1  mrg 	(num_get::__do_get, num_put::__do_put): Define.
    186  1.1  mrg 	* include/bits/locale_facets_nonio.h
    187  1.1  mrg 	[_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT && __LONG_DOUBLE_IEEE128__]
    188  1.1  mrg 	(money_get::__do_get): Declare vtable placeholder for __ibm128 long
    189  1.1  mrg 	double type.
    190  1.1  mrg 	[_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT && __LONG_DOUBLE_IEEE128__]
    191  1.1  mrg 	(money_put::__do_put): Likewise.
    192  1.1  mrg 	* include/bits/locale_facets_nonio.tcc
    193  1.1  mrg 	[_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT && __LONG_DOUBLE_IEEE128__]
    194  1.1  mrg 	(money_get::__do_get, money_put::__do_put): Define.
    195  1.1  mrg 	* include/ext/numeric_traits.h [_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT]
    196  1.1  mrg 	(__numeric_traits<__ibm128>, __numeric_traits<__ieee128>): Define.
    197  1.1  mrg 	* libsupc++/Makefile.in: Regenerate.
    198  1.1  mrg 	* po/Makefile.in: Regenerate.
    199  1.1  mrg 	* python/Makefile.in: Regenerate.
    200  1.1  mrg 	* src/Makefile.am: Add compatibility-ldbl-alt128.cc and
    201  1.1  mrg 	compatibility-ldbl-alt128-cxx11.cc sources and recipes for objects.
    202  1.1  mrg 	* src/Makefile.in: Regenerate.
    203  1.1  mrg 	* src/c++11/Makefile.in: Regenerate.
    204  1.1  mrg 	* src/c++11/compatibility-ldbl-alt128-cxx11.cc: New file defining
    205  1.1  mrg 	symbols using the old 128-bit long double format, for the cxx11 ABI.
    206  1.1  mrg 	* src/c++11/compatibility-ldbl-alt128.cc: Likewise, for the
    207  1.1  mrg 	gcc4-compatible ABI.
    208  1.1  mrg 	* src/c++11/compatibility-ldbl-facets-aliases.h: New header for long
    209  1.1  mrg 	double compat aliases.
    210  1.1  mrg 	* src/c++11/cow-locale_init.cc: Add comment.
    211  1.1  mrg 	* src/c++11/cxx11-locale-inst.cc: Define C and C_is_char
    212  1.1  mrg 	unconditionally.
    213  1.1  mrg 	* src/c++11/cxx11-wlocale-inst.cc: Add sanity check. Include
    214  1.1  mrg 	locale-inst.cc directly, not via cxx11-locale-inst.cc.
    215  1.1  mrg 	* src/c++11/locale-inst-monetary.h: New header for monetary
    216  1.1  mrg 	category instantiations.
    217  1.1  mrg 	* src/c++11/locale-inst-numeric.h: New header for numeric category
    218  1.1  mrg 	instantiations.
    219  1.1  mrg 	* src/c++11/locale-inst.cc: Include new headers for monetary,
    220  1.1  mrg 	numeric, and long double definitions.
    221  1.1  mrg 	* src/c++11/wlocale-inst.cc: Remove long double compat aliases that
    222  1.1  mrg 	are defined in new header now.
    223  1.1  mrg 	* src/c++17/Makefile.am: Use -mabi=ibmlongdouble for
    224  1.1  mrg 	floating_from_chars.cc.
    225  1.1  mrg 	* src/c++17/Makefile.in: Regenerate.
    226  1.1  mrg 	* src/c++17/floating_from_chars.cc (from_chars_impl): Add
    227  1.1  mrg 	if-constexpr branch for __ieee128.
    228  1.1  mrg 	(from_chars): Overload for __ieee128.
    229  1.1  mrg 	* src/c++20/Makefile.in: Regenerate.
    230  1.1  mrg 	* src/c++98/Makefile.in: Regenerate.
    231  1.1  mrg 	* src/c++98/locale_init.cc (num_facets): Adjust calculation.
    232  1.1  mrg 	(locale::_Impl::_Impl(size_t)): Call _M_init_extra_ldbl128.
    233  1.1  mrg 	* src/c++98/localename.cc (num_facets): Adjust calculation.
    234  1.1  mrg 	(locale::_Impl::_Impl(const char*, size_t)): Call
    235  1.1  mrg 	_M_init_extra_ldbl128.
    236  1.1  mrg 	* src/filesystem/Makefile.in: Regenerate.
    237  1.1  mrg 	* testsuite/Makefile.in: Regenerate.
    238  1.1  mrg 	* testsuite/util/testsuite_abi.cc: Add new symbol versions.
    239  1.1  mrg 	Allow new symbols to be added to GLIBCXX_IEEE128_3.4.29 and
    240  1.1  mrg 	CXXABI_IEEE128_1.3.13 too.
    241  1.1  mrg 	* testsuite/26_numerics/complex/abi_tag.cc: Add u9__ieee128 to
    242  1.1  mrg 	regex matching expected symbols.
    243  1.1  mrg 
    244  1.1  mrg 2020-12-16  Jonathan Wakely  <jwakely (a] redhat.com>
    245  1.1  mrg 
    246  1.1  mrg 	* include/std/utility: Use __has_builtin without checking if
    247  1.1  mrg 	it's defined.
    248  1.1  mrg 
    249  1.1  mrg 2020-12-16  Jonathan Wakely  <jwakely (a] redhat.com>
    250  1.1  mrg 
    251  1.1  mrg 	* include/bits/c++config: Warn if __STRICT_ANSI__ state is
    252  1.1  mrg 	inconsistent with __GLIBCXX_TYPE_INT_N_0.
    253  1.1  mrg 
    254  1.1  mrg 2020-12-16  Jonathan Wakely  <jwakely (a] redhat.com>
    255  1.1  mrg 
    256  1.1  mrg 	PR libstdc++/96083
    257  1.1  mrg 	* include/ext/throw_allocator.h: Use __has_builtin to check for
    258  1.1  mrg 	__builtin_sprintf support, and use std::sprintf if necessary.
    259  1.1  mrg 
    260  1.1  mrg 2020-12-16  Jonathan Wakely  <jwakely (a] redhat.com>
    261  1.1  mrg 
    262  1.1  mrg 	PR libstdc++/98319
    263  1.1  mrg 	* include/experimental/random: Only define contents for C++14
    264  1.1  mrg 	and later.
    265  1.1  mrg 	* include/experimental/source_location: Likewise.
    266  1.1  mrg 	* include/experimental/utility: Likewise.
    267  1.1  mrg 	* testsuite/experimental/feat-lib-fund.cc: Include all LFTS
    268  1.1  mrg 	headers that are present. Allow test to run for all modes.
    269  1.1  mrg 
    270  1.1  mrg 2020-12-16  Jonathan Wakely  <jwakely (a] redhat.com>
    271  1.1  mrg 
    272  1.1  mrg 	PR libstdc++/46447
    273  1.1  mrg 	* testsuite/performance/29_atomics/atomic_flag.cc: New test.
    274  1.1  mrg 
    275  1.1  mrg 2020-12-16  Jonathan Wakely  <jwakely (a] redhat.com>
    276  1.1  mrg 
    277  1.1  mrg 	PR libstdc++/93151
    278  1.1  mrg 	* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Remove.
    279  1.1  mrg 	* configure.ac: Regenerate.
    280  1.1  mrg 	* config/os/generic/error_constants.h: Test POSIX errno macros
    281  1.1  mrg 	directly, instead of corresponding _GLIBCXX_HAVE_EXXX macros.
    282  1.1  mrg 	* testsuite/19_diagnostics/headers/system_error/errc_std_c++0x.cc:
    283  1.1  mrg 	Likewise.
    284  1.1  mrg 	* testsuite/19_diagnostics/headers/system_error/93151.cc: New
    285  1.1  mrg 	test.
    286  1.1  mrg 
    287  1.1  mrg 2020-12-15  Jonathan Wakely  <jwakely (a] redhat.com>
    288  1.1  mrg 
    289  1.1  mrg 	Revert:
    290  1.1  mrg 	2020-12-15  Jonathan Wakely  <jwakely (a] redhat.com>
    291  1.1  mrg 
    292  1.1  mrg 	PR libstdc++/98108
    293  1.1  mrg 	* include/std/iostream (__ioinit): Add init_priority attribute.
    294  1.1  mrg 
    295  1.1  mrg 2020-12-15  Keith Packard  <keithp (a] keithp.com>
    296  1.1  mrg 
    297  1.1  mrg 	* acinclude.m4 (GLIBCXX_ENABLE_CSTDIO): Allow "stdio_pure"
    298  1.1  mrg 	option and define _GLIBCXX_USE_PURE_STDIO when it is used. Also
    299  1.1  mrg 	add "stdio_posix" option as an alias for "stdio".
    300  1.1  mrg 	* config/io/basic_file_stdio.cc [_GLIBCXX_USE_PURE_STDIO]: Only
    301  1.1  mrg 	use defined stdio entry points for all I/O operations, without
    302  1.1  mrg 	direct calls to underlying POSIX functions.
    303  1.1  mrg 	* config.h.in: Regenerate.
    304  1.1  mrg 	* configure: Regenerate.
    305  1.1  mrg 
    306  1.1  mrg 2020-12-15  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
    307  1.1  mrg 
    308  1.1  mrg 	* testsuite/27_io/rvalue_streams.cc: Run the extraction to a char*
    309  1.1  mrg 	for C++17 and lower only.
    310  1.1  mrg 
    311  1.1  mrg 2020-12-15  Jonathan Wakely  <jwakely (a] redhat.com>
    312  1.1  mrg 
    313  1.1  mrg 	* testsuite/25_algorithms/lexicographical_compare/deque_iterators/1.cc:
    314  1.1  mrg 	Add dg-timeout-factor directive.
    315  1.1  mrg 	* testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc:
    316  1.1  mrg 	Increase timeout factor from 2.0 to 3.0.
    317  1.1  mrg 	* testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc:
    318  1.1  mrg 	Likewise.
    319  1.1  mrg 	* testsuite/lib/libstdc++.exp (check_effective_target_debug-mode):
    320  1.1  mrg 	Define "debug-mode" as an effective-target keyword.
    321  1.1  mrg 
    322  1.1  mrg 2020-12-15  Jonathan Wakely  <jwakely (a] redhat.com>
    323  1.1  mrg 
    324  1.1  mrg 	* include/bits/c++config (__glibcxx_assert_1): Define as empty
    325  1.1  mrg 	for C++11.
    326  1.1  mrg 
    327  1.1  mrg 2020-12-15  Marius Hillenbrand  <mhillen (a] linux.ibm.com>
    328  1.1  mrg 
    329  1.1  mrg 	* testsuite/22_locale/locale/cons/5.cc: Add missing directives
    330  1.1  mrg 	for required locales.
    331  1.1  mrg 
    332  1.1  mrg 2020-12-15  Jonathan Wakely  <jwakely (a] redhat.com>
    333  1.1  mrg 
    334  1.1  mrg 	* include/bits/iterator_concepts.h (incrementable_traits<Tp>):
    335  1.1  mrg 	Remove workaround for PR c++/78173.
    336  1.1  mrg 
    337  1.1  mrg 2020-12-15  Vladimir Vishnevsky  <vv.os.swe (a] gmail.com>
    338  1.1  mrg 
    339  1.1  mrg 	* configure.ac: Skip AC_LIBTOOL_DLOPEN check if avr-libc is used.
    340  1.1  mrg 	* configure: Regenerate.
    341  1.1  mrg 
    342  1.1  mrg 2020-12-15  Jonathan Wakely  <jwakely (a] redhat.com>
    343  1.1  mrg 
    344  1.1  mrg 	PR libstdc++/98108
    345  1.1  mrg 	* include/std/iostream (__ioinit): Add init_priority attribute.
    346  1.1  mrg 
    347  1.1  mrg 2020-12-15  Gerald Pfeifer  <gerald (a] pfeifer.com>
    348  1.1  mrg 
    349  1.1  mrg 	* doc/xml/manual/codecvt.xml: Update link to Unicode-HOWTO.
    350  1.1  mrg 	* doc/html/manual/facets.html: Regenerate.
    351  1.1  mrg 
    352  1.1  mrg 2020-12-14  Franois Dumont  <fdumont (a] gcc.gnu.org>
    353  1.1  mrg 
    354  1.1  mrg 	* testsuite/23_containers/array/debug/back1_neg.cc: Target c++14 because assertion
    355  1.1  mrg 	is disabled in C++11.
    356  1.1  mrg 	* testsuite/23_containers/array/debug/front1_neg.cc: Likewise.
    357  1.1  mrg 	* testsuite/23_containers/array/debug/square_brackets_operator1_neg.cc: Likewise.
    358  1.1  mrg 
    359  1.1  mrg 2020-12-14  Martin Sebor  <msebor (a] redhat.com>
    360  1.1  mrg 
    361  1.1  mrg 	* testsuite/ext/vstring/requirements/exception/basic.cc: Suppress
    362  1.1  mrg 	a false positive warning.
    363  1.1  mrg 	* testsuite/ext/vstring/requirements/exception/propagation_consistent.cc:
    364  1.1  mrg 	  Same.
    365  1.1  mrg 
    366  1.1  mrg 2020-12-14  Franois Dumont  <fdumont (a] gcc.gnu.org>
    367  1.1  mrg 
    368  1.1  mrg 	* testsuite/23_containers/array/debug/back2_neg.cc: target c++14 because assertion
    369  1.1  mrg 	for constexpr is disabled in C++11.
    370  1.1  mrg 	* testsuite/23_containers/array/debug/front2_neg.cc: Likewise.
    371  1.1  mrg 	* testsuite/23_containers/array/debug/square_brackets_operator2_neg.cc: Likewise.
    372  1.1  mrg 	* testsuite/23_containers/vector/debug/multithreaded_swap.cc: Include <memory>
    373  1.1  mrg 	for shared_ptr.
    374  1.1  mrg 
    375  1.1  mrg 2020-12-12  Franois Dumont  <fdumont (a] gcc.gnu.org>
    376  1.1  mrg 
    377  1.1  mrg 	* include/debug/macros.h (__glibcxx_check_can_increment_range): Replace
    378  1.1  mrg 	_GLIBCXX_DEBUG_VERIFY_COND_AT usage with _GLIBCXX_DEBUG_VERIFY_AT_F.
    379  1.1  mrg 	(__glibcxx_check_can_decrement_range): Likewise.
    380  1.1  mrg 	* testsuite/25_algorithms/copy_backward/constexpr.cc (test03): New.
    381  1.1  mrg 	* testsuite/25_algorithms/copy/debug/constexpr_neg.cc: New test.
    382  1.1  mrg 	* testsuite/25_algorithms/copy_backward/debug/constexpr_neg.cc: New test.
    383  1.1  mrg 	* testsuite/25_algorithms/equal/constexpr_neg.cc: New test.
    384  1.1  mrg 	* testsuite/25_algorithms/equal/debug/constexpr_neg.cc: New test.
    385  1.1  mrg 
    386  1.1  mrg 2020-12-10  Jonathan Wakely  <jwakely (a] redhat.com>
    387  1.1  mrg 
    388  1.1  mrg 	PR libstdc++/98226
    389  1.1  mrg 	* include/std/bit (__countl_one, __countr_one): Remove redundant
    390  1.1  mrg 	branches.
    391  1.1  mrg 
    392  1.1  mrg 2020-12-09  Jonathan Wakely  <jwakely (a] redhat.com>
    393  1.1  mrg 
    394  1.1  mrg 	* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Define NO_SLEEP
    395  1.1  mrg 	if none of nanosleep, sleep and Sleep is available.
    396  1.1  mrg 	* config.h.in: Regenerate.
    397  1.1  mrg 	* configure: Regenerate.
    398  1.1  mrg 	* include/std/thread [_GLIBCXX_NO_SLEEP] (__sleep_for): Do
    399  1.1  mrg 	not declare.
    400  1.1  mrg 	[_GLIBCXX_NO_SLEEP] (sleep_for, sleep_until): Do not
    401  1.1  mrg 	define.
    402  1.1  mrg 	* src/c++11/thread.cc [_GLIBCXX_NO_SLEEP] (__sleep_for): Do
    403  1.1  mrg 	not define.
    404  1.1  mrg 
    405  1.1  mrg 2020-12-08  Jason Merrill  <jason (a] redhat.com>
    406  1.1  mrg 
    407  1.1  mrg 	PR c++/96299
    408  1.1  mrg 	* testsuite/18_support/comparisons/algorithms/partial_order.cc:
    409  1.1  mrg 	One more line needs to use VERIFY instead of static_assert.
    410  1.1  mrg 
    411  1.1  mrg 2020-12-08  Jonathan Wakely  <jwakely (a] redhat.com>
    412  1.1  mrg 
    413  1.1  mrg 	* doc/xml/manual/appendix_contributing.xml: Use consistent
    414  1.1  mrg 	indentation.
    415  1.1  mrg 	* doc/html/manual/source_code_style.html: Regenerate.
    416  1.1  mrg 
    417  1.1  mrg 2020-12-05  Iain Sandoe  <iain (a] sandoe.co.uk>
    418  1.1  mrg 
    419  1.1  mrg 	PR target/97865
    420  1.1  mrg 	* configure: Regenerate.
    421  1.1  mrg 
    422  1.1  mrg 2020-12-04  Jakub Jelinek  <jakub (a] redhat.com>
    423  1.1  mrg 
    424  1.1  mrg 	PR c++/80780
    425  1.1  mrg 	* testsuite/18_support/source_location/1.cc (main): Adjust for
    426  1.1  mrg 	__builtin_source_location using __PRETTY_FUNCTION__-like names instead
    427  1.1  mrg 	__FUNCTION__-like.
    428  1.1  mrg 	* testsuite/18_support/source_location/consteval.cc (main): Likewise.
    429  1.1  mrg 
    430  1.1  mrg 2020-12-03  Martin Sebor  <msebor (a] redhat.com>
    431  1.1  mrg 
    432  1.1  mrg 	* testsuite/ext/vstring/modifiers/clear/56166.cc: Suppress a false
    433  1.1  mrg 	positive warning.
    434  1.1  mrg 
    435  1.1  mrg 2020-12-03  Jonathan Wakely  <jwakely (a] redhat.com>
    436  1.1  mrg 
    437  1.1  mrg 	* testsuite/26_numerics/bit/bit.cast/bit_cast.cc: Remove stray
    438  1.1  mrg 	word from copy&paste.
    439  1.1  mrg 	* testsuite/26_numerics/bit/bit.cast/version.cc: Likewise.
    440  1.1  mrg 
    441  1.1  mrg 2020-12-03  Jonathan Wakely  <jwakely (a] redhat.com>
    442  1.1  mrg 
    443  1.1  mrg 	* doc/xml/manual/status_cxx2020.xml: Update C++20 status.
    444  1.1  mrg 	* doc/html/*: Regenerate.
    445  1.1  mrg 
    446  1.1  mrg 2020-12-03  JeanHeyd Meneide  <phdofthehouse (a] gmail.com>
    447  1.1  mrg 
    448  1.1  mrg 	* doc/doxygen/user.cfg.in (INPUT): Add <source_location>.
    449  1.1  mrg 	* include/Makefile.am: Add <source_location>.
    450  1.1  mrg 	* include/Makefile.in: Regenerate.
    451  1.1  mrg 	* include/std/version (__cpp_lib_source_location): Define.
    452  1.1  mrg 	* include/std/source_location: New file.
    453  1.1  mrg 	* testsuite/18_support/source_location/1.cc: New test.
    454  1.1  mrg 	* testsuite/18_support/source_location/consteval.cc: New test.
    455  1.1  mrg 	* testsuite/18_support/source_location/srcloc.h: New test.
    456  1.1  mrg 	* testsuite/18_support/source_location/version.cc: New test.
    457  1.1  mrg 
    458  1.1  mrg 2020-12-03  Jonathan Wakely  <jwakely (a] redhat.com>
    459  1.1  mrg 
    460  1.1  mrg 	PR libstdc++/93121
    461  1.1  mrg 	* include/std/bit (__cpp_lib_bit_cast, bit_cast): Define.
    462  1.1  mrg 	* include/std/version (__cpp_lib_bit_cast): Define.
    463  1.1  mrg 	* testsuite/26_numerics/bit/bit.cast/bit_cast.cc: New test.
    464  1.1  mrg 	* testsuite/26_numerics/bit/bit.cast/version.cc: New test.
    465  1.1  mrg 
    466  1.1  mrg 2020-12-03  Jonathan Wakely  <jwakely (a] redhat.com>
    467  1.1  mrg 
    468  1.1  mrg 	* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt:
    469  1.1  mrg 	Update.
    470  1.1  mrg 	* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
    471  1.1  mrg 	Update.
    472  1.1  mrg 
    473  1.1  mrg 2020-12-03  Jonathan Wakely  <jwakely (a] redhat.com>
    474  1.1  mrg 
    475  1.1  mrg 	* include/std/array (array::operator[](size_t) const, array::front() const)
    476  1.1  mrg 	(array::back() const) [__cplusplus == 201103]: Disable
    477  1.1  mrg 	assertions.
    478  1.1  mrg 	* testsuite/23_containers/array/element_access/constexpr_element_access.cc:
    479  1.1  mrg 	Check for correct values.
    480  1.1  mrg 	* testsuite/23_containers/array/tuple_interface/get_neg.cc:
    481  1.1  mrg 	Adjust dg-error line numbers.
    482  1.1  mrg 	* testsuite/23_containers/array/debug/constexpr_c++11.cc: New test.
    483  1.1  mrg 
    484  1.1  mrg 2020-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
    485  1.1  mrg 
    486  1.1  mrg 	PR libstdc++/65480
    487  1.1  mrg 	PR libstdc++/68735
    488  1.1  mrg 	* python/libstdcxx/v6/printers.py (function_pointer_to_name):
    489  1.1  mrg 	New helper function to get the name of a function from its
    490  1.1  mrg 	address.
    491  1.1  mrg 	(StdExpAnyPrinter.__init__): Use it.
    492  1.1  mrg 
    493  1.1  mrg 2020-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
    494  1.1  mrg 
    495  1.1  mrg 	* testsuite/lib/dg-options.exp (add_options_for_libatomic):
    496  1.1  mrg 	Replace powerpc-ibm-aix* and powerpc*-*-darwin* with check for
    497  1.1  mrg 	powerpc && ilp32.
    498  1.1  mrg 
    499  1.1  mrg 2020-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
    500  1.1  mrg 
    501  1.1  mrg 	* testsuite/27_io/basic_istream/ignore/char/94749.cc: Add
    502  1.1  mrg 	dg-timeout-factor for ilp32 targets.
    503  1.1  mrg 	* testsuite/27_io/basic_istream/ignore/wchar_t/94749.cc:
    504  1.1  mrg 	Likewise.
    505  1.1  mrg 
    506  1.1  mrg 2020-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
    507  1.1  mrg 
    508  1.1  mrg 	* include/ext/rope (rope::_S_concat_char_iter)
    509  1.1  mrg 	(rope::_S_destr_concat_char_iter): Add allocator parameter.
    510  1.1  mrg 	(rope::push_back, rope::append, rope::insert, operator+):
    511  1.1  mrg 	Pass allocator.
    512  1.1  mrg 	* include/ext/ropeimpl.h (rope::_S_concat_char_iter)
    513  1.1  mrg 	(rope::_S_destr_concat_char_iter): Add allocator parameter
    514  1.1  mrg 	and use it.
    515  1.1  mrg 	(_Rope_char_ref_proxy::operator=(_CharT)): Pass allocator.
    516  1.1  mrg 
    517  1.1  mrg 2020-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
    518  1.1  mrg 
    519  1.1  mrg 	* include/ext/rope: Fix indentation of access specifiers.
    520  1.1  mrg 
    521  1.1  mrg 2020-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
    522  1.1  mrg 
    523  1.1  mrg 	* include/bits/atomic_timed_wait.h: Use #if instead of #ifdef.
    524  1.1  mrg 	* include/bits/semaphore_base.h: Likewise.
    525  1.1  mrg 	* include/std/version: Remove trailing whitespace.
    526  1.1  mrg 
    527  1.1  mrg 2020-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
    528  1.1  mrg 
    529  1.1  mrg 	* python/libstdcxx/v6/printers.py (StdExpPathPrinter): Store the
    530  1.1  mrg 	name of the type and pass it to the iterator.
    531  1.1  mrg 	(StdPathPrinter): Likewise.
    532  1.1  mrg 	* testsuite/libstdc++-prettyprinters/filesystem-ts.cc: New test.
    533  1.1  mrg 
    534  1.1  mrg 2020-12-01  Thomas Rodgers  <trodgers (a] redhat.com>
    535  1.1  mrg 
    536  1.1  mrg 	* include/bits/atomic_base.h: Replace usage of
    537  1.1  mrg 	_GLIBCXX_HAVE_ATOMIC_WAIT with __cpp_lib_atomic_wait.
    538  1.1  mrg 	* include/bits/atomic_timed_wait.h: Likewise.
    539  1.1  mrg 	* include/bits/atomic_wait.h: Define __cpp_lib_atomic_wait
    540  1.1  mrg 	feature test macro.
    541  1.1  mrg 	* include/bits/semaphore_base.h: Replace usage of
    542  1.1  mrg 	_GLIBCXX_HAVE_ATOMIC_WAIT with __cpp_lib_atomic_wait.
    543  1.1  mrg 	* include/std/atomic: Likewise.
    544  1.1  mrg 	* include/std/latch: Likewise.
    545  1.1  mrg 	* include/std/semaphore: Likewise.
    546  1.1  mrg 	* include/std/version: Define __cpp_lib_atomic wait
    547  1.1  mrg 	feature test macro and replace usage of
    548  1.1  mrg 	_GLIBCXX_HAVE_ATOMIC_WAIT.
    549  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/1.cc: New test.
    550  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/2.cc: Likewise.
    551  1.1  mrg 
    552  1.1  mrg 2020-12-01  Michael Weghorn  <m.weghorn (a] posteo.de>
    553  1.1  mrg 
    554  1.1  mrg 	* python/libstdcxx/v6/printers.py (StdBitIteratorPrinter)
    555  1.1  mrg 	(StdBitReferencePrinter): Add pretty-printers for
    556  1.1  mrg 	_Bit_reference, _Bit_iterator and _Bit_const_iterator.
    557  1.1  mrg 	* testsuite/libstdc++-prettyprinters/simple.cc: Test
    558  1.1  mrg 	std::_Bit_reference, std::_Bit_iterator and
    559  1.1  mrg 	std::_Bit_const_iterator.
    560  1.1  mrg 	* testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
    561  1.1  mrg 
    562  1.1  mrg 2020-12-01  Jonathan Wakely  <jwakely (a] redhat.com>
    563  1.1  mrg 
    564  1.1  mrg 	* include/bits/c++config (_GLIBCXX_HAS_BUILTIN): Define macro to
    565  1.1  mrg 	work around different implementations of __has_builtin.
    566  1.1  mrg 	(_GLIBCXX_HAVE_BUILTIN_HAS_UNIQ_OBJ_REP)
    567  1.1  mrg 	(_GLIBCXX_HAVE_BUILTIN_IS_AGGREGATE)
    568  1.1  mrg 	(_GLIBCXX_HAVE_BUILTIN_IS_CONSTANT_EVALUATED)
    569  1.1  mrg 	(_GLIBCXX_HAVE_BUILTIN_IS_SAME, _GLIBCXX_HAVE_BUILTIN_LAUNDER):
    570  1.1  mrg 	Define using _GLIBCXX_HAS_BUILTIN.
    571  1.1  mrg 
    572  1.1  mrg 2020-12-01  Jonathan Wakely  <jwakely (a] redhat.com>
    573  1.1  mrg 
    574  1.1  mrg 	* testsuite/27_io/basic_istream/get/char/lwg3464.cc: Add
    575  1.1  mrg 	dg-timeout-factor directive.
    576  1.1  mrg 	* testsuite/27_io/basic_istream/get/wchar_t/lwg3464.cc:
    577  1.1  mrg 	Likewise.
    578  1.1  mrg 
    579  1.1  mrg 2020-12-01  Jonathan Wakely  <jwakely (a] redhat.com>
    580  1.1  mrg 
    581  1.1  mrg 	PR libstdc++/98003
    582  1.1  mrg 	* testsuite/27_io/basic_syncbuf/sync_ops/1.cc: Add options for
    583  1.1  mrg 	libatomic.
    584  1.1  mrg 
    585  1.1  mrg 2020-11-30  Jonathan Wakely  <jwakely (a] redhat.com>
    586  1.1  mrg 
    587  1.1  mrg 	* doc/doxygen/user.cfg.in (INPUT): Add <latch> and <semaphore>.
    588  1.1  mrg 
    589  1.1  mrg 2020-11-30  Jonathan Wakely  <jwakely (a] redhat.com>
    590  1.1  mrg 
    591  1.1  mrg 	* testsuite/lib/libstdc++.exp (libstdc++_init): Reduce
    592  1.1  mrg 	default tool_timeout to 360.
    593  1.1  mrg 
    594  1.1  mrg 2020-11-30  Jonathan Wakely  <jwakely (a] redhat.com>
    595  1.1  mrg 
    596  1.1  mrg 	* testsuite/20_util/specialized_algorithms/pstl/*: Add
    597  1.1  mrg 	dg-timeout-factor.
    598  1.1  mrg 	* testsuite/25_algorithms/pstl/*: Likewise.
    599  1.1  mrg 	* testsuite/26_numerics/pstl/*: Likewise.
    600  1.1  mrg 	* testsuite/28_regex/*: Likewise.
    601  1.1  mrg 
    602  1.1  mrg 2020-11-29  John David Anglin  <danglin (a] gcc.gnu.org>
    603  1.1  mrg 
    604  1.1  mrg 	* configure: Regenerate.
    605  1.1  mrg 
    606  1.1  mrg 2020-11-27  Jonathan Wakely  <jwakely (a] redhat.com>
    607  1.1  mrg 
    608  1.1  mrg 	* testsuite/lib/libstdc++.exp (v3_try_preprocess): Define
    609  1.1  mrg 	new proc to preprocess a chunk of code.
    610  1.1  mrg 	(v3_check_preprocessor_condition): Define new proc to test
    611  1.1  mrg 	a preprocessor condition depending on GCC or libstdc++ macros.
    612  1.1  mrg 	(check_v3_target_debug_mode, check_v3_target_normal_mode):
    613  1.1  mrg 	Use v3_try_preprocess.
    614  1.1  mrg 	(check_v3_target_normal_namespace)
    615  1.1  mrg 	(check_v3_target_parallel_mode, check_v3_target_cstdint)
    616  1.1  mrg 	(check_v3_target_cmath, check_v3_target_atomic_builtins)
    617  1.1  mrg 	(check_v3_target_gthreads, check_v3_target_gthreads_timed)
    618  1.1  mrg 	(check_v3_target_sleep, check_v3_target_sched_yield)
    619  1.1  mrg 	(check_v3_target_string_conversions, check_v3_target_swprintf)
    620  1.1  mrg 	(check_v3_target_binary_io, check_v3_target_nprocs): Use
    621  1.1  mrg 	v3_check_preprocessor_condition.
    622  1.1  mrg 	(check_effective_target_cxx11): Likewise.
    623  1.1  mrg 	(check_effective_target_random_device): Likewise.
    624  1.1  mrg 	(check_effective_target_tbb-backend): Likewise.
    625  1.1  mrg 	(check_effective_target_futex): Likewise.
    626  1.1  mrg 	(check_v3_target_little_endian) Call check_effective_target_le.
    627  1.1  mrg 	(check_effective_target_atomic-builtins): New proc to define
    628  1.1  mrg 	new effective-target keyword.
    629  1.1  mrg 	(check_effective_target_gthreads-timed): Likewise.
    630  1.1  mrg 
    631  1.1  mrg 2020-11-27  Jonathan Wakely  <jwakely (a] redhat.com>
    632  1.1  mrg 
    633  1.1  mrg 	* testsuite/27_io/filesystem/operations/absolute.cc: Avoid
    634  1.1  mrg 	-Wrange-loop-construct warning.
    635  1.1  mrg 	* testsuite/27_io/filesystem/path/append/source.cc: Likewise.
    636  1.1  mrg 	* testsuite/27_io/filesystem/path/assign/copy.cc: Likewise.
    637  1.1  mrg 	* testsuite/27_io/filesystem/path/compare/path.cc: Likewise.
    638  1.1  mrg 	* testsuite/27_io/filesystem/path/construct/copy.cc: Likewise.
    639  1.1  mrg 	* testsuite/27_io/filesystem/path/decompose/extension.cc:
    640  1.1  mrg 	Likewise.
    641  1.1  mrg 	* testsuite/27_io/filesystem/path/decompose/filename.cc:
    642  1.1  mrg 	Likewise.
    643  1.1  mrg 	* testsuite/27_io/filesystem/path/decompose/parent_path.cc:
    644  1.1  mrg 	Likewise.
    645  1.1  mrg 	* testsuite/27_io/filesystem/path/decompose/relative_path.cc:
    646  1.1  mrg 	Likewise.
    647  1.1  mrg 	* testsuite/27_io/filesystem/path/decompose/root_directory.cc:
    648  1.1  mrg 	Likewise.
    649  1.1  mrg 	* testsuite/27_io/filesystem/path/decompose/root_path.cc:
    650  1.1  mrg 	Likewise.
    651  1.1  mrg 	* testsuite/27_io/filesystem/path/itr/traversal.cc: Likewise.
    652  1.1  mrg 	* testsuite/27_io/filesystem/path/modifiers/remove_filename.cc:
    653  1.1  mrg 	Likewise.
    654  1.1  mrg 	* testsuite/27_io/filesystem/path/modifiers/replace_extension.cc:
    655  1.1  mrg 	Likewise.
    656  1.1  mrg 	* testsuite/27_io/filesystem/path/modifiers/replace_filename.cc:
    657  1.1  mrg 	Likewise.
    658  1.1  mrg 	* testsuite/27_io/filesystem/path/nonmember/append.cc: Likewise.
    659  1.1  mrg 	* testsuite/27_io/filesystem/path/nonmember/cmp.cc: Likewise.
    660  1.1  mrg 	* testsuite/27_io/filesystem/path/nonmember/cmp_c++20.cc:
    661  1.1  mrg 	Likewise.
    662  1.1  mrg 	* testsuite/27_io/filesystem/path/nonmember/hash_value.cc:
    663  1.1  mrg 	Likewise.
    664  1.1  mrg 	* testsuite/27_io/filesystem/path/query/has_extension.cc:
    665  1.1  mrg 	Likewise.
    666  1.1  mrg 	* testsuite/27_io/filesystem/path/query/has_filename.cc:
    667  1.1  mrg 	Likewise.
    668  1.1  mrg 	* testsuite/27_io/filesystem/path/query/has_parent_path.cc:
    669  1.1  mrg 	Likewise.
    670  1.1  mrg 	* testsuite/27_io/filesystem/path/query/has_relative_path.cc:
    671  1.1  mrg 	Likewise.
    672  1.1  mrg 	* testsuite/27_io/filesystem/path/query/has_root_directory.cc:
    673  1.1  mrg 	Likewise.
    674  1.1  mrg 	* testsuite/27_io/filesystem/path/query/has_root_name.cc:
    675  1.1  mrg 	Likewise.
    676  1.1  mrg 	* testsuite/27_io/filesystem/path/query/has_root_path.cc:
    677  1.1  mrg 	Likewise.
    678  1.1  mrg 	* testsuite/27_io/filesystem/path/query/has_stem.cc: Likewise.
    679  1.1  mrg 	* testsuite/27_io/filesystem/path/query/is_relative.cc: Likewise.
    680  1.1  mrg 	* testsuite/experimental/filesystem/operations/absolute.cc:
    681  1.1  mrg 	Likewise.
    682  1.1  mrg 	* testsuite/experimental/filesystem/path/assign/copy.cc: Likewise.
    683  1.1  mrg 	* testsuite/experimental/filesystem/path/compare/path.cc:
    684  1.1  mrg 	Likewise.
    685  1.1  mrg 	* testsuite/experimental/filesystem/path/construct/copy.cc:
    686  1.1  mrg 	Likewise.
    687  1.1  mrg 	* testsuite/experimental/filesystem/path/decompose/extension.cc:
    688  1.1  mrg 	Likewise.
    689  1.1  mrg 	* testsuite/experimental/filesystem/path/decompose/filename.cc:
    690  1.1  mrg 	Likewise.
    691  1.1  mrg 	* testsuite/experimental/filesystem/path/decompose/parent_path.cc:
    692  1.1  mrg 	Likewise.
    693  1.1  mrg 	* testsuite/experimental/filesystem/path/decompose/relative_path.cc:
    694  1.1  mrg 	Likewise.
    695  1.1  mrg 	* testsuite/experimental/filesystem/path/decompose/root_directory.cc:
    696  1.1  mrg 	Likewise.
    697  1.1  mrg 	* testsuite/experimental/filesystem/path/decompose/root_path.cc:
    698  1.1  mrg 	Likewise.
    699  1.1  mrg 	* testsuite/experimental/filesystem/path/itr/traversal.cc:
    700  1.1  mrg 	Likewise.
    701  1.1  mrg 	* testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
    702  1.1  mrg 	Likewise.
    703  1.1  mrg 	* testsuite/experimental/filesystem/path/modifiers/replace_extension.cc:
    704  1.1  mrg 	Likewise.
    705  1.1  mrg 	* testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
    706  1.1  mrg 	Likewise.
    707  1.1  mrg 	* testsuite/experimental/filesystem/path/nonmember/hash_value.cc:
    708  1.1  mrg 	Likewise.
    709  1.1  mrg 	* testsuite/experimental/filesystem/path/query/has_extension.cc:
    710  1.1  mrg 	Likewise.
    711  1.1  mrg 	* testsuite/experimental/filesystem/path/query/has_filename.cc:
    712  1.1  mrg 	Likewise.
    713  1.1  mrg 	* testsuite/experimental/filesystem/path/query/has_parent_path.cc:
    714  1.1  mrg 	Likewise.
    715  1.1  mrg 	* testsuite/experimental/filesystem/path/query/has_relative_path.cc:
    716  1.1  mrg 	Likewise.
    717  1.1  mrg 	* testsuite/experimental/filesystem/path/query/has_root_directory.cc:
    718  1.1  mrg 	Likewise.
    719  1.1  mrg 	* testsuite/experimental/filesystem/path/query/has_root_name.cc:
    720  1.1  mrg 	Likewise.
    721  1.1  mrg 	* testsuite/experimental/filesystem/path/query/has_root_path.cc:
    722  1.1  mrg 	Likewise.
    723  1.1  mrg 	* testsuite/experimental/filesystem/path/query/has_stem.cc:
    724  1.1  mrg 	Likewise.
    725  1.1  mrg 	* testsuite/experimental/filesystem/path/query/is_relative.cc:
    726  1.1  mrg 	Likewise.
    727  1.1  mrg 
    728  1.1  mrg 2020-11-27  Jonathan Wakely  <jwakely (a] redhat.com>
    729  1.1  mrg 
    730  1.1  mrg 	* src/c++98/locale.cc (locale::facet::_S_get_c_locale()):
    731  1.1  mrg 	Revert change to use __is_single_threaded.
    732  1.1  mrg 	* src/c++98/locale_init.cc (locale::_S_initialize()):
    733  1.1  mrg 	Likewise.
    734  1.1  mrg 
    735  1.1  mrg 2020-11-26  Jonathan Wakely  <jwakely (a] redhat.com>
    736  1.1  mrg 
    737  1.1  mrg 	* include/bits/atomic_wait.h (_GLIBCXX_HAVE_ATOMIC_WAIT):
    738  1.1  mrg 	Define.
    739  1.1  mrg 	* include/bits/atomic_base.h: Check _GLIBCXX_HAVE_ATOMIC_WAIT.
    740  1.1  mrg 	* include/bits/atomic_timed_wait.h: Likewise.
    741  1.1  mrg 	* include/bits/semaphore_base.h: Likewise.
    742  1.1  mrg 	* include/std/atomic: Likewise.
    743  1.1  mrg 	* include/std/latch: Likewise.
    744  1.1  mrg 	* include/std/semaphore: Likewise.
    745  1.1  mrg 
    746  1.1  mrg 2020-11-26  Jonathan Wakely  <jwakely (a] redhat.com>
    747  1.1  mrg 
    748  1.1  mrg 	* include/std/latch: Depend on _GLIBCXX_HAS_GTHREADS and
    749  1.1  mrg 	_GLIBCXX_HAVE_LINUX_FUTEX.
    750  1.1  mrg 	* include/std/version (__cpp_lib_latch): Define conditionally.
    751  1.1  mrg 
    752  1.1  mrg 2020-11-26  Jonathan Wakely  <jwakely (a] redhat.com>
    753  1.1  mrg 
    754  1.1  mrg 	* testsuite/lib/libstdc++.exp (check_effective_target_gthreads):
    755  1.1  mrg 	Call check_v3_target_gthreads not check_v3_target_gthreads_timed.
    756  1.1  mrg 
    757  1.1  mrg 2020-11-26  Jonathan Wakely  <jwakely (a] redhat.com>
    758  1.1  mrg 
    759  1.1  mrg 	* testsuite/28_regex/algorithms/regex_match/basic/string_range_01_03.cc:
    760  1.1  mrg 	Add dg-timeout-factor directive.
    761  1.1  mrg 	* testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
    762  1.1  mrg 	Likewise.
    763  1.1  mrg 	* testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc:
    764  1.1  mrg 	Likewise.
    765  1.1  mrg 	* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
    766  1.1  mrg 	Likewise.
    767  1.1  mrg 	* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/anymatcher.cc:
    768  1.1  mrg 	Likewise.
    769  1.1  mrg 	* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc:
    770  1.1  mrg 	Likewise.
    771  1.1  mrg 	* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc:
    772  1.1  mrg 	Likewise.
    773  1.1  mrg 	* testsuite/28_regex/algorithms/regex_match/extended/wstring_locale.cc:
    774  1.1  mrg 	Likewise.
    775  1.1  mrg 	* testsuite/28_regex/algorithms/regex_search/61720.cc: Likewise.
    776  1.1  mrg 	* testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
    777  1.1  mrg 	Likewise.
    778  1.1  mrg 	* testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
    779  1.1  mrg 	Likewise.
    780  1.1  mrg 	* testsuite/28_regex/basic_regex/ctors/deduction.cc: Likewise.
    781  1.1  mrg 
    782  1.1  mrg 2020-11-26  Jonathan Wakely  <jwakely (a] redhat.com>
    783  1.1  mrg 
    784  1.1  mrg 	* testsuite/lib/libstdc++.exp (libstdc++_init): Only set
    785  1.1  mrg 	tool_timeout if it hasn't been set by the user already.
    786  1.1  mrg 
    787  1.1  mrg 2020-11-26  Jonathan Wakely  <jwakely (a] redhat.com>
    788  1.1  mrg 
    789  1.1  mrg 	PR libstdc++/97936
    790  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/bool.cc: Fix missed
    791  1.1  mrg 	notifications by making the new thread wait until the parent
    792  1.1  mrg 	thread is waiting on the condition variable.
    793  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/pointers.cc: Likewise.
    794  1.1  mrg 	* testsuite/29_atomics/atomic_flag/wait_notify/1.cc: Likewise.
    795  1.1  mrg 	* testsuite/29_atomics/atomic_ref/wait_notify.cc: Likewise.
    796  1.1  mrg 
    797  1.1  mrg 2020-11-26  Jonathan Wakely  <jwakely (a] redhat.com>
    798  1.1  mrg 
    799  1.1  mrg 	* testsuite/18_support/96817.cc: Use new effective-target
    800  1.1  mrg 	keywords to select supported targets more effectively.
    801  1.1  mrg 	* testsuite/30_threads/call_once/66146.cc: Likewise.
    802  1.1  mrg 	* testsuite/lib/libstdc++.exp (check_effective_target_futex):
    803  1.1  mrg 	Define new proc.
    804  1.1  mrg 	(check_effective_target_gthreads): Define new proc to replace
    805  1.1  mrg 	dg-require-gthreads.
    806  1.1  mrg 
    807  1.1  mrg 2020-11-26  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
    808  1.1  mrg 
    809  1.1  mrg 	* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Remove libposix4
    810  1.1  mrg 	references.
    811  1.1  mrg 	<solaris*>: Don't use -lrt any longer.
    812  1.1  mrg 	* configure: Regenerate.
    813  1.1  mrg 	* doc/xml/manual/configure.xml (--enable-libstdcxx-time=OPTION):
    814  1.1  mrg 	Remove libposix4 reference.
    815  1.1  mrg 
    816  1.1  mrg 2020-11-26  Jonathan Wakely  <jwakely (a] redhat.com>
    817  1.1  mrg 
    818  1.1  mrg 	PR libstdc++/98001
    819  1.1  mrg 	* testsuite/ext/stdio_filebuf/char/79820.cc: Do not pass invalid
    820  1.1  mrg 	FILE* to constructor.
    821  1.1  mrg 
    822  1.1  mrg 2020-11-26  Jonathan Wakely  <jwakely (a] redhat.com>
    823  1.1  mrg 
    824  1.1  mrg 	* include/precompiled/stdc++.h: Add new headers.
    825  1.1  mrg 	* include/std/stop_token: Include <semaphore> unconditionally.
    826  1.1  mrg 
    827  1.1  mrg 2020-11-25  Jonathan Wakely  <jwakely (a] redhat.com>
    828  1.1  mrg 
    829  1.1  mrg 	* include/bits/atomic_timed_wait.h (__cond_wait_until): Do not
    830  1.1  mrg 	perform redundant conversions to the same clock.
    831  1.1  mrg 
    832  1.1  mrg 2020-11-25  Jonathan Wakely  <jwakely (a] redhat.com>
    833  1.1  mrg 
    834  1.1  mrg 	* include/bits/atomic_timed_wait.h (__cond_wait_until_impl):
    835  1.1  mrg 	Do not define when _GLIBCXX_HAVE_LINUX_FUTEX is defined. Use
    836  1.1  mrg 	__condvar and mutex instead of __gthread_cond_t and
    837  1.1  mrg 	unique_lock<mutex>.
    838  1.1  mrg 	(__cond_wait_until): Likewise. Fix test for return value of
    839  1.1  mrg 	__cond_wait_until_impl.
    840  1.1  mrg 	(__timed_waiters::_M_do_wait_until): Use __condvar instead
    841  1.1  mrg 	of __gthread_cond_t.
    842  1.1  mrg 	* include/bits/atomic_wait.h: Remove <bits/unique_lock.h>
    843  1.1  mrg 	include. Only include <bits/std_mutex.h> if not using futexes.
    844  1.1  mrg 	(__platform_wait_max_value): Remove unused variable.
    845  1.1  mrg 	(__waiters::lock_t): Use lock_guard instead of unique_lock.
    846  1.1  mrg 	(__waiters::_M_cv): Use __condvar instead of __gthread_cond_t.
    847  1.1  mrg 	(__waiters::_M_do_wait(__platform_wait_t)): Likewise.
    848  1.1  mrg 	(__waiters::_M_notify()): Likewise. Use notify_one() if not
    849  1.1  mrg 	asked to notify all.
    850  1.1  mrg 	* include/bits/std_mutex.h (__condvar): New type.
    851  1.1  mrg 	* include/std/condition_variable (condition_variable::_M_cond)
    852  1.1  mrg 	(condition_variable::wait_until): Use __condvar instead of
    853  1.1  mrg 	__gthread_cond_t.
    854  1.1  mrg 	* src/c++11/condition_variable.cc (condition_variable): Define
    855  1.1  mrg 	default constructor and destructor as defaulted.
    856  1.1  mrg 	(condition_variable::wait, condition_variable::notify_one)
    857  1.1  mrg 	(condition_variable::notify_all): Forward to corresponding
    858  1.1  mrg 	member function of __condvar.
    859  1.1  mrg 
    860  1.1  mrg 2020-11-25  Jonathan Wakely  <jwakely (a] redhat.com>
    861  1.1  mrg 
    862  1.1  mrg 	PR libstdc++/97936
    863  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/bool.cc: Re-eneable
    864  1.1  mrg 	test.
    865  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/generic.cc: Likewise.
    866  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/pointers.cc: Likewise.
    867  1.1  mrg 	* testsuite/29_atomics/atomic_flag/wait_notify/1.cc: Likewise.
    868  1.1  mrg 	* testsuite/29_atomics/atomic_float/wait_notify.cc: Likewise.
    869  1.1  mrg 	* testsuite/29_atomics/atomic_integral/wait_notify.cc: Likewise.
    870  1.1  mrg 	* testsuite/util/atomic/wait_notify_util.h: Fix missed
    871  1.1  mrg 	notifications by making the new thread wait until the parent
    872  1.1  mrg 	thread is waiting on the condition variable.
    873  1.1  mrg 
    874  1.1  mrg 2020-11-25  Jonathan Wakely  <jwakely (a] redhat.com>
    875  1.1  mrg 
    876  1.1  mrg 	PR libstdc++/97935
    877  1.1  mrg 	* include/bits/iterator_concepts.h (__detail::__iter_without_category):
    878  1.1  mrg 	New helper concept.
    879  1.1  mrg 	(__iterator_traits::__cat): Use __detail::__iter_without_category.
    880  1.1  mrg 	* testsuite/24_iterators/associated_types/iterator.traits.cc: New test.
    881  1.1  mrg 
    882  1.1  mrg 2020-11-25  Jonathan Wakely  <jwakely (a] redhat.com>
    883  1.1  mrg 
    884  1.1  mrg 	* testsuite/17_intro/names.cc: Do not test 'v' on AIX.
    885  1.1  mrg 
    886  1.1  mrg 2020-11-25  Jonathan Wakely  <jwakely (a] redhat.com>
    887  1.1  mrg 
    888  1.1  mrg 	PR libstdc++/97936
    889  1.1  mrg 	* include/bits/atomic_wait.h (__platform_wait): Check errno,
    890  1.1  mrg 	not just the value of EAGAIN.
    891  1.1  mrg 	(__waiters::__waiters()): Fix name of data member.
    892  1.1  mrg 
    893  1.1  mrg 2020-11-25  Jonathan Wakely  <jwakely (a] redhat.com>
    894  1.1  mrg 
    895  1.1  mrg 	PR libstdc++/97936
    896  1.1  mrg 	* include/bits/atomic_wait.h (__platform_wait): Return if futex
    897  1.1  mrg 	sets EAGAIN.
    898  1.1  mrg 	* testsuite/30_threads/latch/3.cc: Re-enable test.
    899  1.1  mrg 	* testsuite/30_threads/semaphore/try_acquire_until.cc: Likewise.
    900  1.1  mrg 
    901  1.1  mrg 2020-11-24  Jonathan Wakely  <jwakely (a] redhat.com>
    902  1.1  mrg 
    903  1.1  mrg 	PR libstdc++/97936
    904  1.1  mrg 	PR libstdc++/97944
    905  1.1  mrg 	* testsuite/29_atomics/atomic_integral/wait_notify.cc: Disable.
    906  1.1  mrg 	Do not require pthreads, but add -pthread when appropriate.
    907  1.1  mrg 	* testsuite/30_threads/jthread/95989.cc: Likewise.
    908  1.1  mrg 	* testsuite/30_threads/latch/3.cc: Likewise.
    909  1.1  mrg 	* testsuite/30_threads/semaphore/try_acquire_until.cc: Likewise.
    910  1.1  mrg 
    911  1.1  mrg 2020-11-24  Jonathan Wakely  <jwakely (a] redhat.com>
    912  1.1  mrg 
    913  1.1  mrg 	* testsuite/30_threads/jthread/95989.cc: Run all three test
    914  1.1  mrg 	functions, not just the first one twice.
    915  1.1  mrg 
    916  1.1  mrg 2020-11-24  Jonathan Wakely  <jwakely (a] redhat.com>
    917  1.1  mrg 
    918  1.1  mrg 	PR libstdc++/67791
    919  1.1  mrg 	* src/c++11/thread.cc (thread::_M_start_thread(_State_ptr, void (*)())):
    920  1.1  mrg 	Check that gthreads is available before calling __gthread_create.
    921  1.1  mrg 
    922  1.1  mrg 2020-11-24  Jonathan Wakely  <jwakely (a] redhat.com>
    923  1.1  mrg 
    924  1.1  mrg 	* src/c++98/locale.cc (locale::facet::_S_get_c_locale())
    925  1.1  mrg 	(locale::id::_M_id() const): Use __is_single_threaded.
    926  1.1  mrg 	* src/c++98/locale_init.cc (locale::_S_initialize()):
    927  1.1  mrg 	Likewise.
    928  1.1  mrg 
    929  1.1  mrg 2020-11-23  Jonathan Wakely  <jwakely (a] redhat.com>
    930  1.1  mrg 
    931  1.1  mrg 	* include/bits/semaphore_base.h
    932  1.1  mrg 	(__platform_semaphore::_M_try_acquire_until): Fix type of
    933  1.1  mrg 	variable.
    934  1.1  mrg 
    935  1.1  mrg 2020-11-23  Stephan Bergmann  <sbergman (a] redhat.com>
    936  1.1  mrg 
    937  1.1  mrg 	* include/bits/atomic_wait.h (__thread_relax, __thread_yield):
    938  1.1  mrg 	Add 'inline'.
    939  1.1  mrg 
    940  1.1  mrg 2020-11-23  Jonathan Wakely  <jwakely (a] redhat.com>
    941  1.1  mrg 
    942  1.1  mrg 	* acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Check for
    943  1.1  mrg 	* config.h.in: Regenerate.
    944  1.1  mrg 	* configure: Regenerate.
    945  1.1  mrg 	* include/bits/semaphore_base.h (_GLIBCXX_HAVE_POSIX_SEMAPHORE):
    946  1.1  mrg 	Check autoconf macro instead of defining it here.
    947  1.1  mrg 
    948  1.1  mrg 2020-11-23  Jonathan Wakely  <jwakely (a] redhat.com>
    949  1.1  mrg 
    950  1.1  mrg 	* include/bits/atomic_wait.h: Do not define anything unless
    951  1.1  mrg 	gthreads or futexes are available.
    952  1.1  mrg 	* include/bits/atomic_timed_wait.h: Likewise.
    953  1.1  mrg 	* include/bits/semaphore_base.h: Likewise.
    954  1.1  mrg 	* include/std/semaphore: Likewise.
    955  1.1  mrg 	* include/bits/atomic_base.h (atomic_flag::wait)
    956  1.1  mrg 	(atomic_flag::notify_one, atomic_flag::notify_all)
    957  1.1  mrg 	(__atomic_base<I>::wait, __atomic_base<I>::notify_one)
    958  1.1  mrg 	(__atomic_base<I>::notify_all, __atomic_base<P*>::wait)
    959  1.1  mrg 	(__atomic_base<P*>::notify_one, __atomic_base<P*>::notify_all)
    960  1.1  mrg 	(__atomic_impl::wait, __atomic_impl::notify_one)
    961  1.1  mrg 	(__atomic_impl::notify_all, __atomic_float::wait)
    962  1.1  mrg 	(__atomic_float::notify_one, __atomic_float::notify_all)
    963  1.1  mrg 	(__atomic_ref::wait, __atomic_ref::notify_one)
    964  1.1  mrg 	(__atomic_ref::notify_all): Only define if gthreads or futexes
    965  1.1  mrg 	are available.
    966  1.1  mrg 	* include/std/atomic (atomic::wait, atomic::notify_one)
    967  1.1  mrg 	(atomic::notify_all): Likewise.
    968  1.1  mrg 	* include/std/version (__cpp_lib_semaphore): Define
    969  1.1  mrg 	conditionally.
    970  1.1  mrg 
    971  1.1  mrg 2020-11-23  Jonathan Wakely  <jwakely (a] redhat.com>
    972  1.1  mrg 
    973  1.1  mrg 	PR libstdc++/97948
    974  1.1  mrg 	* testsuite/29_atomics/atomic_float/wait_notify.cc: Add options
    975  1.1  mrg 	for libatomic.
    976  1.1  mrg 	* testsuite/29_atomics/atomic_integral/wait_notify.cc: Likewise.
    977  1.1  mrg 	* testsuite/29_atomics/atomic_ref/wait_notify.cc: Likewise.
    978  1.1  mrg 
    979  1.1  mrg 2020-11-21  Jonathan Wakely  <jwakely (a] redhat.com>
    980  1.1  mrg 
    981  1.1  mrg 	* include/bits/atomic_base.h (atomic_flag::wait): Use correct
    982  1.1  mrg 	type for __atomic_wait call.
    983  1.1  mrg 	* include/bits/atomic_timed_wait.h (__atomic_wait_until): Check
    984  1.1  mrg 	_GLIBCXX_HAVE_LINUX_FUTEX.
    985  1.1  mrg 	* include/bits/atomic_wait.h (__atomic_notify): Likewise.
    986  1.1  mrg 	* include/bits/semaphore_base.h (_GLIBCXX_HAVE_POSIX_SEMAPHORE):
    987  1.1  mrg 	Only define if SEM_VALUE_MAX or _POSIX_SEM_VALUE_MAX is defined.
    988  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/bool.cc: Disable on
    989  1.1  mrg 	non-linux targes.
    990  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/generic.cc: Likewise.
    991  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/pointers.cc: Likewise.
    992  1.1  mrg 	* testsuite/29_atomics/atomic_flag/wait_notify/1.cc: Likewise.
    993  1.1  mrg 	* testsuite/29_atomics/atomic_float/wait_notify.cc: Likewise.
    994  1.1  mrg 
    995  1.1  mrg 2020-11-20  Thomas Rodgers  <trodgers (a] redhat.com>
    996  1.1  mrg 
    997  1.1  mrg 	* include/Makefile.am (bits_headers): Add new header.
    998  1.1  mrg 	* include/Makefile.in: Regenerate.
    999  1.1  mrg 	* include/bits/atomic_base.h (__atomic_flag::wait): Define.
   1000  1.1  mrg 	(__atomic_flag::notify_one): Likewise.
   1001  1.1  mrg 	(__atomic_flag::notify_all): Likewise.
   1002  1.1  mrg 	(__atomic_base<_Itp>::wait): Likewise.
   1003  1.1  mrg 	(__atomic_base<_Itp>::notify_one): Likewise.
   1004  1.1  mrg 	(__atomic_base<_Itp>::notify_all): Likewise.
   1005  1.1  mrg 	(__atomic_base<_Ptp*>::wait): Likewise.
   1006  1.1  mrg 	(__atomic_base<_Ptp*>::notify_one): Likewise.
   1007  1.1  mrg 	(__atomic_base<_Ptp*>::notify_all): Likewise.
   1008  1.1  mrg 	(__atomic_impl::wait): Likewise.
   1009  1.1  mrg 	(__atomic_impl::notify_one): Likewise.
   1010  1.1  mrg 	(__atomic_impl::notify_all): Likewise.
   1011  1.1  mrg 	(__atomic_float<_Fp>::wait): Likewise.
   1012  1.1  mrg 	(__atomic_float<_Fp>::notify_one): Likewise.
   1013  1.1  mrg 	(__atomic_float<_Fp>::notify_all): Likewise.
   1014  1.1  mrg 	(__atomic_ref<_Tp>::wait): Likewise.
   1015  1.1  mrg 	(__atomic_ref<_Tp>::notify_one): Likewise.
   1016  1.1  mrg 	(__atomic_ref<_Tp>::notify_all): Likewise.
   1017  1.1  mrg 	(atomic_wait<_Tp>): Likewise.
   1018  1.1  mrg 	(atomic_wait_explicit<_Tp>): Likewise.
   1019  1.1  mrg 	(atomic_notify_one<_Tp>): Likewise.
   1020  1.1  mrg 	(atomic_notify_all<_Tp>): Likewise.
   1021  1.1  mrg 	* include/bits/atomic_wait.h: New file.
   1022  1.1  mrg 	* include/bits/atomic_timed_wait.h: New file.
   1023  1.1  mrg 	* include/bits/semaphore_base.h: New file.
   1024  1.1  mrg 	* include/std/atomic (atomic<bool>::wait): Define.
   1025  1.1  mrg 	(atomic<bool>::wait_one): Likewise.
   1026  1.1  mrg 	(atomic<bool>::wait_all): Likewise.
   1027  1.1  mrg 	(atomic<_Tp>::wait): Likewise.
   1028  1.1  mrg 	(atomic<_Tp>::wait_one): Likewise.
   1029  1.1  mrg 	(atomic<_Tp>::wait_all): Likewise.
   1030  1.1  mrg 	(atomic<_Tp*>::wait): Likewise.
   1031  1.1  mrg 	(atomic<_Tp*>::wait_one): Likewise.
   1032  1.1  mrg 	(atomic<_Tp*>::wait_all): Likewise.
   1033  1.1  mrg 	* include/std/latch: New file.
   1034  1.1  mrg 	* include/std/semaphore: New file.
   1035  1.1  mrg 	* include/std/version: Add __cpp_lib_semaphore and
   1036  1.1  mrg 	__cpp_lib_latch defines.
   1037  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/bool.cc: New test.
   1038  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/pointers.cc: Likewise.
   1039  1.1  mrg 	* testsuite/29_atomics/atomic/wait_notify/generic.cc: Liekwise.
   1040  1.1  mrg 	* testsuite/29_atomics/atomic_flag/wait_notify/1.cc: Likewise.
   1041  1.1  mrg 	* testsuite/29_atomics/atomic_float/wait_notify.cc: Likewise.
   1042  1.1  mrg 	* testsuite/29_atomics/atomic_integral/wait_notify.cc: Likewise.
   1043  1.1  mrg 	* testsuite/29_atomics/atomic_ref/wait_notify.cc: Likewise.
   1044  1.1  mrg 	* testsuite/30_threads/semaphore/1.cc: New test.
   1045  1.1  mrg 	* testsuite/30_threads/semaphore/2.cc: Likewise.
   1046  1.1  mrg 	* testsuite/30_threads/semaphore/least_max_value_neg.cc: Likewise.
   1047  1.1  mrg 	* testsuite/30_threads/semaphore/try_acquire.cc: Likewise.
   1048  1.1  mrg 	* testsuite/30_threads/semaphore/try_acquire_for.cc: Likewise.
   1049  1.1  mrg 	* testsuite/30_threads/semaphore/try_acquire_posix.cc: Likewise.
   1050  1.1  mrg 	* testsuite/30_threads/semaphore/try_acquire_until.cc: Likewise.
   1051  1.1  mrg 	* testsuite/30_threads/latch/1.cc: New test.
   1052  1.1  mrg 	* testsuite/30_threads/latch/2.cc: New test.
   1053  1.1  mrg 	* testsuite/30_threads/latch/3.cc: New test.
   1054  1.1  mrg 	* testsuite/util/atomic/wait_notify_util.h: New File.
   1055  1.1  mrg 
   1056  1.1  mrg 2020-11-20  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1057  1.1  mrg 
   1058  1.1  mrg 	PR libstdc++/83938
   1059  1.1  mrg 	* include/bits/stl_tempbuf.h (get_temporary_buffer): Change __len
   1060  1.1  mrg 	computation in the loop to avoid truncation.
   1061  1.1  mrg 	* include/bits/stl_algo.h:
   1062  1.1  mrg 	(__inplace_merge): Take temporary buffer length from smallest range.
   1063  1.1  mrg 	(__stable_sort): Limit temporary buffer length.
   1064  1.1  mrg 	* testsuite/25_algorithms/inplace_merge/1.cc (test4): New.
   1065  1.1  mrg 	* testsuite/performance/25_algorithms/stable_sort.cc: Test stable_sort
   1066  1.1  mrg 	under different heap memory conditions.
   1067  1.1  mrg 	* testsuite/performance/25_algorithms/inplace_merge.cc: New test.
   1068  1.1  mrg 
   1069  1.1  mrg 2020-11-20  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1070  1.1  mrg 
   1071  1.1  mrg 	* include/bits/move.h (_GLIBCXX_FWDREF): New.
   1072  1.1  mrg 	* include/bits/stl_tree.h: Adapt to use latter.
   1073  1.1  mrg 	(_Rb_tree<>::_M_clone_node): Add _MoveValue template parameter.
   1074  1.1  mrg 	(_Rb_tree<>::_M_mbegin): New.
   1075  1.1  mrg 	(_Rb_tree<>::_M_begin): Use latter.
   1076  1.1  mrg 	(_Rb_tree<>::_M_copy): Add _MoveValues template parameter.
   1077  1.1  mrg 	* testsuite/23_containers/map/allocator/move_cons.cc: New test.
   1078  1.1  mrg 	* testsuite/23_containers/multimap/allocator/move_cons.cc: New test.
   1079  1.1  mrg 	* testsuite/23_containers/multiset/allocator/move_cons.cc: New test.
   1080  1.1  mrg 	* testsuite/23_containers/set/allocator/move_cons.cc: New test.
   1081  1.1  mrg 
   1082  1.1  mrg 2020-11-20  Jonathan Wakely  <jwakely (a] redhat.com>
   1083  1.1  mrg 
   1084  1.1  mrg 	PR libstdc++/92546
   1085  1.1  mrg 	* include/std/regex (pmr::smatch, pmr::wsmatch): Declare using
   1086  1.1  mrg 	underlying __normal_iterator type, not nested typedef
   1087  1.1  mrg 	basic_string::const_iterator.
   1088  1.1  mrg 
   1089  1.1  mrg 2020-11-19  Jonathan Wakely  <jwakely (a] redhat.com>
   1090  1.1  mrg 
   1091  1.1  mrg 	PR libstdc++/95989
   1092  1.1  mrg 	* config/os/gnu-linux/os_defines.h (_GLIBCXX_NATIVE_THREAD_ID):
   1093  1.1  mrg 	Define new macro to get reliable thread ID.
   1094  1.1  mrg 	* include/bits/std_thread.h: (this_thread::get_id): Use new
   1095  1.1  mrg 	macro if it's defined.
   1096  1.1  mrg 	* testsuite/30_threads/jthread/95989.cc: New test.
   1097  1.1  mrg 	* testsuite/30_threads/this_thread/95989.cc: New test.
   1098  1.1  mrg 
   1099  1.1  mrg 2020-11-19  Jonathan Wakely  <jwakely (a] redhat.com>
   1100  1.1  mrg 
   1101  1.1  mrg 	* testsuite/30_threads/async/async.cc: Include <thread>.
   1102  1.1  mrg 	* testsuite/30_threads/future/members/93456.cc: Likewise.
   1103  1.1  mrg 
   1104  1.1  mrg 2020-11-19  Jonathan Wakely  <jwakely (a] redhat.com>
   1105  1.1  mrg 
   1106  1.1  mrg 	PR libstdc++/92546
   1107  1.1  mrg 	* include/Makefile.am: Add new <bits/std_thread.h> header.
   1108  1.1  mrg 	* include/Makefile.in: Regenerate.
   1109  1.1  mrg 	* include/std/future: Include new header instead of <thread>.
   1110  1.1  mrg 	* include/std/stop_token: Include new header instead of
   1111  1.1  mrg 	<bits/gthr.h>.
   1112  1.1  mrg 	(stop_token::_S_yield()): Use this_thread::yield().
   1113  1.1  mrg 	(_Stop_state_t::_M_requester): Change type to std::thread::id.
   1114  1.1  mrg 	(_Stop_state_t::_M_request_stop()): Use this_thread::get_id().
   1115  1.1  mrg 	(_Stop_state_t::_M_remove_callback(_Stop_cb*)): Likewise.
   1116  1.1  mrg 	Use __is_single_threaded() to decide whether to synchronize.
   1117  1.1  mrg 	* include/std/thread (thread, operator==, this_thread::get_id)
   1118  1.1  mrg 	(this_thread::yield): Move to new header.
   1119  1.1  mrg 	(operator<=>, operator!=, operator<, operator<=, operator>)
   1120  1.1  mrg 	(operator>=, hash<thread::id>, operator<<): Define even when
   1121  1.1  mrg 	gthreads not available.
   1122  1.1  mrg 	* src/c++11/thread.cc: Include <memory>.
   1123  1.1  mrg 	* include/bits/std_thread.h: New file.
   1124  1.1  mrg 	(thread, operator==, this_thread::get_id, this_thread::yield):
   1125  1.1  mrg 	Define even when gthreads not available.
   1126  1.1  mrg 	[!_GLIBCXX_HAS_GTHREADS] (thread::join, thread::detach)
   1127  1.1  mrg 	(thread::hardware_concurrency): Define inline.
   1128  1.1  mrg 
   1129  1.1  mrg 2020-11-19  Jonathan Wakely  <jwakely (a] redhat.com>
   1130  1.1  mrg 
   1131  1.1  mrg 	PR libstdc++/93421
   1132  1.1  mrg 	PR libstdc++/93456
   1133  1.1  mrg 	* src/c++11/futex.cc (syscall_time_t): New typedef for
   1134  1.1  mrg 	the type of the syscall_timespec::tv_sec member.
   1135  1.1  mrg 	(relative_timespec, _M_futex_wait_until)
   1136  1.1  mrg 	(_M_futex_wait_until_steady): Use syscall_time_t in overflow
   1137  1.1  mrg 	checks, not time_t.
   1138  1.1  mrg 
   1139  1.1  mrg 2020-11-18  Patrick Palka  <ppalka (a] redhat.com>
   1140  1.1  mrg 
   1141  1.1  mrg 	* include/std/ranges (join_view::_Iterator::_M_satisfy): Uglify
   1142  1.1  mrg 	local variable inner.
   1143  1.1  mrg 	(join_view::_Iterator::operator->): Use _Inner_iter instead of
   1144  1.1  mrg 	_Outer_iter in the function signature as per LWG 3500.
   1145  1.1  mrg 	* testsuite/std/ranges/adaptors/join.cc (test08): Test it.
   1146  1.1  mrg 
   1147  1.1  mrg 2020-11-17  Jonathan Wakely  <jwakely (a] redhat.com>
   1148  1.1  mrg 
   1149  1.1  mrg 	PR libstdc++/93421
   1150  1.1  mrg 	* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Fail if struct
   1151  1.1  mrg 	timespec isn't compatible with SYS_clock_gettime.
   1152  1.1  mrg 	* configure: Regenerate.
   1153  1.1  mrg 	* src/c++11/chrono.cc: Revert changes for time64 compatibility.
   1154  1.1  mrg 	Add static_assert instead.
   1155  1.1  mrg 	* src/c++11/futex.cc (_M_futex_wait_until_steady): Assume
   1156  1.1  mrg 	SYS_clock_gettime can use struct timespec.
   1157  1.1  mrg 
   1158  1.1  mrg 2020-11-17  Jonathan Wakely  <jwakely (a] redhat.com>
   1159  1.1  mrg 
   1160  1.1  mrg 	PR libstdc++/97869
   1161  1.1  mrg 	* include/precompiled/stdc++.h: Include <coroutine>.
   1162  1.1  mrg 	* include/std/version (__cpp_lib_span): Check __cpp_lib_concepts
   1163  1.1  mrg 	before defining.
   1164  1.1  mrg 
   1165  1.1  mrg 2020-11-17  Patrick Palka  <ppalka (a] redhat.com>
   1166  1.1  mrg 
   1167  1.1  mrg 	PR libstdc++/97828
   1168  1.1  mrg 	* include/bits/ranges_algo.h (__search_n_fn::operator()): Check
   1169  1.1  mrg 	random_access_iterator before using the backtracking
   1170  1.1  mrg 	implementation.  When the backwards scan fails prematurely,
   1171  1.1  mrg 	reset __remainder appropriately.
   1172  1.1  mrg 	* testsuite/25_algorithms/search_n/97828.cc: New test.
   1173  1.1  mrg 
   1174  1.1  mrg 2020-11-16  Jonathan Wakely  <jwakely (a] redhat.com>
   1175  1.1  mrg 
   1176  1.1  mrg 	* src/Makefile.am (libstdc++-symbols.ver-sun): Remove -lrt from
   1177  1.1  mrg 	arguments passed to make_sunver.pl script.
   1178  1.1  mrg 	* src/Makefile.in: Regenerate.
   1179  1.1  mrg 
   1180  1.1  mrg 2020-11-15  Jason Merrill  <jason (a] redhat.com>
   1181  1.1  mrg 
   1182  1.1  mrg 	* testsuite/20_util/result_of/sfinae_friendly_1.cc: Adjust.
   1183  1.1  mrg 
   1184  1.1  mrg 2020-11-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1185  1.1  mrg 
   1186  1.1  mrg 	PR libstdc++/93421
   1187  1.1  mrg 	* src/c++11/chrono.cc [_GLIBCXX_USE_CLOCK_GETTIME_SYSCALL]
   1188  1.1  mrg 	(syscall_timespec): Define a type suitable for SYS_clock_gettime
   1189  1.1  mrg 	calls.
   1190  1.1  mrg 	(system_clock::now(), steady_clock::now()): Use syscall_timespec
   1191  1.1  mrg 	instead of timespec.
   1192  1.1  mrg 	* src/c++11/futex.cc (syscall_timespec): Define a type suitable
   1193  1.1  mrg 	for SYS_futex and SYS_clock_gettime calls.
   1194  1.1  mrg 	(relative_timespec): Use syscall_timespec instead of timespec.
   1195  1.1  mrg 	(__atomic_futex_unsigned_base::_M_futex_wait_until): Likewise.
   1196  1.1  mrg 	(__atomic_futex_unsigned_base::_M_futex_wait_until_steady):
   1197  1.1  mrg 	Likewise.
   1198  1.1  mrg 
   1199  1.1  mrg 2020-11-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1200  1.1  mrg 
   1201  1.1  mrg 	PR libstdc++/93456
   1202  1.1  mrg 	* src/c++11/futex.cc (relative_timespec): Remove redundant check
   1203  1.1  mrg 	negative values.
   1204  1.1  mrg 	* testsuite/30_threads/future/members/wait_until_overflow.cc: Moved to...
   1205  1.1  mrg 	* testsuite/30_threads/future/members/93456.cc: ...here.
   1206  1.1  mrg 
   1207  1.1  mrg 2020-11-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1208  1.1  mrg 
   1209  1.1  mrg 	* src/c++11/futex.cc (relative_timespec): Add [[unlikely]]
   1210  1.1  mrg 	attributes.
   1211  1.1  mrg 	(__atomic_futex_unsigned_base::_M_futex_wait_until)
   1212  1.1  mrg 	(__atomic_futex_unsigned_base::_M_futex_wait_until_steady):
   1213  1.1  mrg 	Check for overflow.
   1214  1.1  mrg 	* testsuite/30_threads/future/members/wait_until_overflow.cc:
   1215  1.1  mrg 	New test.
   1216  1.1  mrg 
   1217  1.1  mrg 2020-11-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1218  1.1  mrg 
   1219  1.1  mrg 	* src/c++11/futex.cc (relative_timespec): New function to
   1220  1.1  mrg 	create relative time from two absolute times.
   1221  1.1  mrg 	(__atomic_futex_unsigned_base::_M_futex_wait_until)
   1222  1.1  mrg 	(__atomic_futex_unsigned_base::_M_futex_wait_until_steady):
   1223  1.1  mrg 	Use relative_timespec.
   1224  1.1  mrg 
   1225  1.1  mrg 2020-11-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1226  1.1  mrg 
   1227  1.1  mrg 	* testsuite/30_threads/future/members/poll.cc: Require gthreads
   1228  1.1  mrg 	and add -pthread for targets that require it. Relax required
   1229  1.1  mrg 	ratio of wait_for calls before/after the future is ready.
   1230  1.1  mrg 
   1231  1.1  mrg 2020-11-12  Jonathan Wakely  <jwakely (a] redhat.com>
   1232  1.1  mrg 
   1233  1.1  mrg 	* include/std/future (future::wait_for): Do not wait for
   1234  1.1  mrg 	durations less than or equal to zero.
   1235  1.1  mrg 	* src/c++11/futex.cc (_M_futex_wait_until)
   1236  1.1  mrg 	(_M_futex_wait_until_steady): Do not wait for timeouts before
   1237  1.1  mrg 	the epoch.
   1238  1.1  mrg 	* testsuite/30_threads/future/members/poll.cc: New test.
   1239  1.1  mrg 
   1240  1.1  mrg 2020-11-12  Jonathan Wakely  <jwakely (a] redhat.com>
   1241  1.1  mrg 
   1242  1.1  mrg 	* include/ext/numeric_traits.h (__numeric_traits): Change
   1243  1.1  mrg 	primary template to always derive from __numeric_traits_integer.
   1244  1.1  mrg 	(__numeric_traits<float>, __numeric_traits<double>)
   1245  1.1  mrg 	(__numeric_traits<long double>): Add explicit specializations.
   1246  1.1  mrg 
   1247  1.1  mrg 2020-11-12  Jonathan Wakely  <jwakely (a] redhat.com>
   1248  1.1  mrg 
   1249  1.1  mrg 	PR libstdc++/97798
   1250  1.1  mrg 	* include/ext/numeric_traits.h (__glibcxx_signed)
   1251  1.1  mrg 	(__glibcxx_digits, __glibcxx_min, __glibcxx_max): Remove
   1252  1.1  mrg 	macros.
   1253  1.1  mrg 	(__is_integer_nonstrict::__width): Define new constant.
   1254  1.1  mrg 	(__numeric_traits_integer): Define constants in terms of each
   1255  1.1  mrg 	other and __is_integer_nonstrict::__width, rather than the
   1256  1.1  mrg 	removed macros.
   1257  1.1  mrg 	(_GLIBCXX_INT_N_TRAITS): Macro to define explicit
   1258  1.1  mrg 	specializations for non-standard integer types.
   1259  1.1  mrg 
   1260  1.1  mrg 2020-11-11  Jonathan Yong  <10walls (a] gmail.com>
   1261  1.1  mrg 
   1262  1.1  mrg 	* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Exclude
   1263  1.1  mrg 	cygwin and mingw from relro linker test.
   1264  1.1  mrg 	* configure: Regenerate.
   1265  1.1  mrg 
   1266  1.1  mrg 2020-11-11  Paul Scharnofske  <asynts (a] gmail.com>
   1267  1.1  mrg 
   1268  1.1  mrg 	* include/std/thread (jthread::operator=(jthread&&)): Transfer
   1269  1.1  mrg 	any existing state to a temporary that will request a stop and
   1270  1.1  mrg 	then join.
   1271  1.1  mrg 	* testsuite/30_threads/jthread/jthread.cc: Test move assignment.
   1272  1.1  mrg 
   1273  1.1  mrg 2020-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1274  1.1  mrg 
   1275  1.1  mrg 	* include/std/stop_token (_Stop_state_t::_M_requester): Define
   1276  1.1  mrg 	new struct with members to store and check the thread ID.
   1277  1.1  mrg 	(_Stop_state_t::_M_request_stop()): Use _M_requester._M_set().
   1278  1.1  mrg 	(_Stop_state_t::_M_remove_callback(_Stop_cb*)): Use
   1279  1.1  mrg 	_M_requester._M_is_current_thread().
   1280  1.1  mrg 
   1281  1.1  mrg 2020-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1282  1.1  mrg 
   1283  1.1  mrg 	* include/std/ostream (__syncbuf_base): New class template.
   1284  1.1  mrg 	(emit_on_flush, noemit_on_flush, flush_emit): New manipulators.
   1285  1.1  mrg 	* include/std/syncstream (basic_syncbuf): Derive from
   1286  1.1  mrg 	__syncbuf_base instead of basic_streambuf.
   1287  1.1  mrg 	(basic_syncbuf::operator=): Remove self-assignment check.
   1288  1.1  mrg 	(basic_syncbuf::swap): Remove self-swap check.
   1289  1.1  mrg 	(basic_syncbuf::emit): Do not skip pubsync() call if sequence
   1290  1.1  mrg 	is empty.
   1291  1.1  mrg 	(basic_syncbuf::sync): Remove no-op pubsync on stringbuf.
   1292  1.1  mrg 	(basic_syncbuf::overflow): Define override.
   1293  1.1  mrg 	* testsuite/27_io/basic_syncstream/basic_ops/1.cc: Test
   1294  1.1  mrg 	basic_osyncstream::put(char_type).
   1295  1.1  mrg 	* testsuite/27_io/basic_ostream/emit/1.cc: New test.
   1296  1.1  mrg 
   1297  1.1  mrg 2020-11-10  Jonathan Wakely  <jwakely (a] redhat.com>
   1298  1.1  mrg 
   1299  1.1  mrg 	* config/locale/generic/c_locale.cc (__set_C_locale()): New function
   1300  1.1  mrg 	to set the "C" locale and return the name of the previous locale.
   1301  1.1  mrg 	(__convert_to_v<float>, __convert_to_v<double>)
   1302  1.1  mrg 	(__convert_to_v<long double>): Use __set_C_locale and set failbit on
   1303  1.1  mrg 	error.
   1304  1.1  mrg 
   1305  1.1  mrg 2020-11-10  Jonathan Wakely  <jwakely (a] redhat.com>
   1306  1.1  mrg 
   1307  1.1  mrg 	* include/std/sstream (basic_stringbug, basic_istringstream)
   1308  1.1  mrg 	(basic_ostringstream, basic_stringstream): Reorder C++20
   1309  1.1  mrg 	constructors to be declared next to other constructors.
   1310  1.1  mrg 
   1311  1.1  mrg 2020-11-10  Jonathan Wakely  <jwakely (a] redhat.com>
   1312  1.1  mrg 
   1313  1.1  mrg 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.21): Tighten patterns.
   1314  1.1  mrg 	(GLIBCXX_3.4.29): Export new symbols.
   1315  1.1  mrg 	* include/bits/alloc_traits.h (__allocator_like): New concept.
   1316  1.1  mrg 	* include/std/sstream (basic_stringbuf::swap): Add exception
   1317  1.1  mrg 	specification.
   1318  1.1  mrg 	(basic_stringbuf::str() const): Add ref-qualifier. Use new
   1319  1.1  mrg 	_M_high_mark function.
   1320  1.1  mrg 	(basic_stringbuf::str(const SAlloc&) const): Define new function.
   1321  1.1  mrg 	(basic_stringbuf::str() &&): Likewise.
   1322  1.1  mrg 	(basic_stringbuf::str(const basic_string<C,T,SAlloc>&)):
   1323  1.1  mrg 	Likewise.
   1324  1.1  mrg 	(basic_stringbuf::str(basic_string<C,T,Alloc>&&)): Likewise.
   1325  1.1  mrg 	(basic_stringbuf::view() const): Use _M_high_mark.
   1326  1.1  mrg 	(basic_istringstream::str, basic_ostringstream::str)
   1327  1.1  mrg 	(basic_stringstream::str): Define new overloads.
   1328  1.1  mrg 	* src/c++20/sstream-inst.cc (basic_stringbuf::str)
   1329  1.1  mrg 	(basic_istringstream::str, basic_ostringstream::str)
   1330  1.1  mrg 	(basic_stringstream::str): Explicit instantiation definitions
   1331  1.1  mrg 	for new overloads.
   1332  1.1  mrg 	* testsuite/27_io/basic_istringstream/view/char/1.cc: Add more
   1333  1.1  mrg 	checks.
   1334  1.1  mrg 	* testsuite/27_io/basic_istringstream/view/wchar_t/1.cc:
   1335  1.1  mrg 	Likewise.
   1336  1.1  mrg 	* testsuite/27_io/basic_ostringstream/view/char/1.cc:
   1337  1.1  mrg 	Likewise.
   1338  1.1  mrg 	* testsuite/27_io/basic_ostringstream/view/wchar_t/1.cc:
   1339  1.1  mrg 	Likewise.
   1340  1.1  mrg 	* testsuite/27_io/basic_stringstream/view/char/1.cc:
   1341  1.1  mrg 	Likewise.
   1342  1.1  mrg 	* testsuite/27_io/basic_stringstream/view/wchar_t/1.cc:
   1343  1.1  mrg 	Likewise.
   1344  1.1  mrg 	* testsuite/27_io/basic_istringstream/str/char/2.cc: New test.
   1345  1.1  mrg 	* testsuite/27_io/basic_istringstream/str/wchar_t/2.cc: New test.
   1346  1.1  mrg 	* testsuite/27_io/basic_ostringstream/str/char/3.cc: New test.
   1347  1.1  mrg 	* testsuite/27_io/basic_ostringstream/str/wchar_t/3.cc: New test.
   1348  1.1  mrg 	* testsuite/27_io/basic_stringbuf/str/char/4.cc: New test.
   1349  1.1  mrg 	* testsuite/27_io/basic_stringbuf/str/wchar_t/4.cc: New test.
   1350  1.1  mrg 	* testsuite/27_io/basic_stringstream/str/char/5.cc: New test.
   1351  1.1  mrg 	* testsuite/27_io/basic_stringstream/str/wchar_t/5.cc.cc: New test.
   1352  1.1  mrg 
   1353  1.1  mrg 2020-11-10  Jonathan Wakely  <jwakely (a] redhat.com>
   1354  1.1  mrg 
   1355  1.1  mrg 	PR libstdc++/97415
   1356  1.1  mrg 	* include/std/sstream (basic_stringbuf::_M_update_egptr)
   1357  1.1  mrg 	(basic_stringbuf::__xfer_bufptrs::__xfer_bufptrs): Check for
   1358  1.1  mrg 	null before comparing pointers.
   1359  1.1  mrg 
   1360  1.1  mrg 2020-11-09  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1361  1.1  mrg 
   1362  1.1  mrg 	* include/debug/array: Remove.
   1363  1.1  mrg 	* include/Makefile.am: Remove <debug/array>.
   1364  1.1  mrg 	* include/Makefile.in: Regenerate.
   1365  1.1  mrg 	* include/experimental/functional: Adapt.
   1366  1.1  mrg 	* include/std/array: Move to _GLIBCXX_INLINE_VERSION namespace.
   1367  1.1  mrg 	* include/std/functional: Adapt.
   1368  1.1  mrg 	* include/std/span: Adapt.
   1369  1.1  mrg 	* testsuite/23_containers/array/debug/back1_neg.cc:
   1370  1.1  mrg 	Remove dg-require-debug-mode. Add -D_GLIBCXX_ASSERTIONS option.
   1371  1.1  mrg 	* testsuite/23_containers/array/debug/back2_neg.cc: Likewise.
   1372  1.1  mrg 	* testsuite/23_containers/array/debug/front1_neg.cc: Likewise.
   1373  1.1  mrg 	* testsuite/23_containers/array/debug/front2_neg.cc: Likewise.
   1374  1.1  mrg 	* testsuite/23_containers/array/debug/square_brackets_operator1_neg.cc:
   1375  1.1  mrg 	Likewise.
   1376  1.1  mrg 	* testsuite/23_containers/array/debug/square_brackets_operator2_neg.cc:
   1377  1.1  mrg 	Likewise.
   1378  1.1  mrg 	* testsuite/23_containers/array/element_access/60497.cc
   1379  1.1  mrg 	* testsuite/23_containers/array/tuple_interface/get_debug_neg.cc:
   1380  1.1  mrg 	Remove.
   1381  1.1  mrg 	* testsuite/23_containers/array/tuple_interface/get_neg.cc
   1382  1.1  mrg 	* testsuite/23_containers/array/tuple_interface/tuple_element_debug_neg.cc
   1383  1.1  mrg 	* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc
   1384  1.1  mrg 
   1385  1.1  mrg 2020-11-09  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1386  1.1  mrg 
   1387  1.1  mrg 	* include/debug/assertions.h (__glibcxx_requires_non_empty_range):
   1388  1.1  mrg 	Remove __builtin_expect.
   1389  1.1  mrg 	(__glibcxx_requires_subscript): Likewise.
   1390  1.1  mrg 	(__glibcxx_requires_nonempty): Likewise.
   1391  1.1  mrg 	* include/debug/formatter.h (__check_singular): Add C++11 constexpr
   1392  1.1  mrg 	qualification.
   1393  1.1  mrg 	* include/debug/helper_functions.h (__check_singular): Likewise. Skip
   1394  1.1  mrg 	check if constant evaluated.
   1395  1.1  mrg 	(__valid_range): Do not skip check if constant evaluated.
   1396  1.1  mrg 	* include/debug/macros.h (_GLIBCXX_DEBUG_VERIFY_COND_AT): Add
   1397  1.1  mrg 	__builtin_expect.
   1398  1.1  mrg 	(_GLIBCXX_DEBUG_VERIFY_AT_F): Use __glibcxx_assert_1.
   1399  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/char/back_constexpr_neg.cc:
   1400  1.1  mrg 	New test.
   1401  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/char/constexpr.cc: New test.
   1402  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/char/constexpr_neg.cc: New test.
   1403  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/char/front_back_constexpr.cc:
   1404  1.1  mrg 	New test.
   1405  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/char/front_constexpr_neg.cc:
   1406  1.1  mrg 	New test.
   1407  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/back_constexpr_neg.cc:
   1408  1.1  mrg 	New test.
   1409  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/constexpr.cc: New test.
   1410  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/constexpr_neg.cc: New test.
   1411  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/front_constexpr_neg.cc:
   1412  1.1  mrg 	New test.
   1413  1.1  mrg 	* testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_neg.cc: New test.
   1414  1.1  mrg 	* testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_pred_neg.cc: New test.
   1415  1.1  mrg 	* testsuite/25_algorithms/lower_bound/debug/constexpr_valid_range_neg.cc: New test.
   1416  1.1  mrg 	* testsuite/25_algorithms/lower_bound/debug/partitioned_neg.cc: New test.
   1417  1.1  mrg 	* testsuite/25_algorithms/lower_bound/debug/partitioned_pred_neg.cc: New test.
   1418  1.1  mrg 	* testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_neg.cc: New test.
   1419  1.1  mrg 	* testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_pred_neg.cc: New test.
   1420  1.1  mrg 	* testsuite/25_algorithms/upper_bound/debug/constexpr_valid_range_neg.cc: New test.
   1421  1.1  mrg 	* testsuite/25_algorithms/upper_bound/debug/partitioned_neg.cc: New test.
   1422  1.1  mrg 	* testsuite/25_algorithms/upper_bound/debug/partitioned_pred_neg.cc: New test.
   1423  1.1  mrg 
   1424  1.1  mrg 2020-11-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1425  1.1  mrg 
   1426  1.1  mrg 	* include/bits/uniform_int_dist.h (__detail::_Power_of_2):
   1427  1.1  mrg 	Document that true result for zero is intentional.
   1428  1.1  mrg 
   1429  1.1  mrg 2020-11-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1430  1.1  mrg 
   1431  1.1  mrg 	* include/std/bit (__popcount): Remove redundant check for zero.
   1432  1.1  mrg 
   1433  1.1  mrg 2020-11-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1434  1.1  mrg 
   1435  1.1  mrg 	PR libstdc++/97729
   1436  1.1  mrg 	* libsupc++/exception_ptr.h (exception_ptr::exception_ptr())
   1437  1.1  mrg 	(exception_ptr::exception_ptr(const exception_ptr&))
   1438  1.1  mrg 	(exception_ptr::~exception_ptr()): Remove 'always_inline'
   1439  1.1  mrg 	attributes. Use 'inline' unconditionally.
   1440  1.1  mrg 
   1441  1.1  mrg 2020-11-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1442  1.1  mrg 
   1443  1.1  mrg 	PR libstdc++/97758
   1444  1.1  mrg 	* include/bits/std_function.h [!__cpp_rtti]: Include <typeinfo>.
   1445  1.1  mrg 
   1446  1.1  mrg 2020-11-07  Liu Hao  <lh_mouse (a] 126.com>
   1447  1.1  mrg 
   1448  1.1  mrg 	* libsupc++/cxxabi.h: (__cxa_atexit): mark with _GLIBCXX_CDTOR_CALLABI
   1449  1.1  mrg 	(__cxa_thread_atexit): ditto
   1450  1.1  mrg 	* libsupc++/atexit_thread.cc: (__cxa_atexit): mark with
   1451  1.1  mrg 	_GLIBCXX_CDTOR_CALLABI
   1452  1.1  mrg 	(__cxa_thread_atexit): ditto
   1453  1.1  mrg 	(elt): ditto
   1454  1.1  mrg 
   1455  1.1  mrg 2020-11-06  Jonathan Wakely  <jwakely (a] redhat.com>
   1456  1.1  mrg 
   1457  1.1  mrg 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.21): Tighten up patterns
   1458  1.1  mrg 	for basic_stringbuf that refer to __xfer_bufptrs.
   1459  1.1  mrg 
   1460  1.1  mrg 2020-11-05  Marek Polacek  <polacek (a] redhat.com>
   1461  1.1  mrg 
   1462  1.1  mrg 	PR c++/25814
   1463  1.1  mrg 	* testsuite/20_util/reference_wrapper/lwg2993.cc: Add a dg-warning.
   1464  1.1  mrg 	* testsuite/25_algorithms/generate_n/87982_neg.cc: Likewise.
   1465  1.1  mrg 
   1466  1.1  mrg 2020-11-05  Jonathan Wakely  <jwakely (a] redhat.com>
   1467  1.1  mrg 
   1468  1.1  mrg 	PR libstdc++/96269
   1469  1.1  mrg 	* include/std/optional (operator==, operator!=, operator<)
   1470  1.1  mrg 	(operator>, operator<=, operator>=): Fix types used in
   1471  1.1  mrg 	SFINAE constraints.
   1472  1.1  mrg 	* testsuite/20_util/optional/relops/96269.cc: New test.
   1473  1.1  mrg 
   1474  1.1  mrg 2020-11-05  Jonathan Wakely  <jwakely (a] redhat.com>
   1475  1.1  mrg 
   1476  1.1  mrg 	PR libstdc++/97731
   1477  1.1  mrg 	* src/filesystem/dir.cc (recursive_directory_iterator): Call the
   1478  1.1  mrg 	right overload of _Dir::advance.
   1479  1.1  mrg 	* testsuite/experimental/filesystem/iterators/97731.cc: New test.
   1480  1.1  mrg 
   1481  1.1  mrg 2020-11-05  Jonathan Wakely  <jwakely (a] redhat.com>
   1482  1.1  mrg 
   1483  1.1  mrg 	PR libstdc++/97729
   1484  1.1  mrg 	* include/std/future (__basic_future::_M_get_result): Use
   1485  1.1  mrg 	nullptr for null pointer constant.
   1486  1.1  mrg 	* libsupc++/eh_ptr.cc (operator==, operator!=): Remove
   1487  1.1  mrg 	definitions.
   1488  1.1  mrg 	* libsupc++/exception_ptr.h (_GLIBCXX_EH_PTR_USED): Define
   1489  1.1  mrg 	macro to conditionally add __attribute__((__used__)).
   1490  1.1  mrg 	(operator==, operator!=, exception_ptr::exception_ptr())
   1491  1.1  mrg 	(exception_ptr::exception_ptr(const exception_ptr&))
   1492  1.1  mrg 	(exception_ptr::~exception_ptr())
   1493  1.1  mrg 	(exception_ptr::operator=(const exception_ptr&))
   1494  1.1  mrg 	(exception_ptr::swap(exception_ptr&)): Always define as
   1495  1.1  mrg 	inline. Add macro to be conditionally "used".
   1496  1.1  mrg 
   1497  1.1  mrg 2020-11-05  Jonathan Wakely  <jwakely (a] redhat.com>
   1498  1.1  mrg 
   1499  1.1  mrg 	PR libstdc++/97729
   1500  1.1  mrg 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.29): Add exports.
   1501  1.1  mrg 	* src/c++20/sstream-inst.cc (basic_stringbuf): Instantiate
   1502  1.1  mrg 	private constructor taking __xfer_bufptrs.
   1503  1.1  mrg 
   1504  1.1  mrg 2020-11-05  Jonathan Wakely  <jwakely (a] redhat.com>
   1505  1.1  mrg 
   1506  1.1  mrg 	* include/std/sstream (basic_stringbuf(const allocator_type&):
   1507  1.1  mrg 	Add explicit.
   1508  1.1  mrg 	(basic_stringbuf(const basic_string<C,T,SA>&, openmode, const A&)):
   1509  1.1  mrg 	Call _M_stringbuf_init. Construct _M_string from pointer and length
   1510  1.1  mrg 	to avoid constraint checks for string view.
   1511  1.1  mrg 	(basic_stringbuf::view()): Make __sv_type alias local to the
   1512  1.1  mrg 	function.
   1513  1.1  mrg 	(basic_istringstream(const basic_string<C,T,SA>&, openmode, const A&)):
   1514  1.1  mrg 	Pass string to _M_streambuf instead of constructing a temporary
   1515  1.1  mrg 	with the wrong allocator.
   1516  1.1  mrg 	(basic_ostringstream(const basic_string<C,T,SA>&, openmode, const A&)):
   1517  1.1  mrg 	Likewise.
   1518  1.1  mrg 	(basic_stringstream(const basic_string<C,T,SA>&, openmode, const A&)):
   1519  1.1  mrg 	Likewise.
   1520  1.1  mrg 	* src/c++20/sstream-inst.cc: Use string_view and wstring_view
   1521  1.1  mrg 	typedefs in explicit instantiations.
   1522  1.1  mrg 	* testsuite/27_io/basic_istringstream/cons/char/1.cc: Add more
   1523  1.1  mrg 	tests for constructors.
   1524  1.1  mrg 	* testsuite/27_io/basic_ostringstream/cons/char/1.cc: Likewise.
   1525  1.1  mrg 	* testsuite/27_io/basic_stringbuf/cons/char/1.cc: Likewise.
   1526  1.1  mrg 	* testsuite/27_io/basic_stringbuf/cons/char/2.cc: Likewise.
   1527  1.1  mrg 	* testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
   1528  1.1  mrg 	* testsuite/27_io/basic_stringbuf/cons/wchar_t/2.cc: Likewise.
   1529  1.1  mrg 	* testsuite/27_io/basic_stringstream/cons/char/1.cc: Likewise.
   1530  1.1  mrg 
   1531  1.1  mrg 2020-11-05  Jonathan Wakely  <jwakely (a] redhat.com>
   1532  1.1  mrg 
   1533  1.1  mrg 	* include/std/sstream: Adjust whitespace.
   1534  1.1  mrg 
   1535  1.1  mrg 2020-11-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1536  1.1  mrg 
   1537  1.1  mrg 	PR libstdc++/97719
   1538  1.1  mrg 	* include/std/sstream (basic_stringstream(string_type&&, openmode)):
   1539  1.1  mrg 	Fix default argument.
   1540  1.1  mrg 	* testsuite/27_io/basic_stringstream/cons/char/97719.cc: New test.
   1541  1.1  mrg 
   1542  1.1  mrg 2020-11-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1543  1.1  mrg 
   1544  1.1  mrg 	* testsuite/18_support/96817.cc: Fail fast if the library is
   1545  1.1  mrg 	configured to not use futexes.
   1546  1.1  mrg 
   1547  1.1  mrg 2020-11-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1548  1.1  mrg 
   1549  1.1  mrg 	PR libstdc++/94971
   1550  1.1  mrg 	* include/bits/stl_algo.h (search(FIter, FIter, const Searcher):
   1551  1.1  mrg 	Adjust #if condition.
   1552  1.1  mrg 	* include/parallel/algo.h (search(FIter, FIter, const Searcher&):
   1553  1.1  mrg 	Define new overload for C++17.
   1554  1.1  mrg 
   1555  1.1  mrg 2020-11-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1556  1.1  mrg 
   1557  1.1  mrg 	PR libstdc++/92285
   1558  1.1  mrg 	* doc/xml/manual/evolution.xml: Document change to base class.
   1559  1.1  mrg 	* doc/html/manual/api.html: Regenerate.
   1560  1.1  mrg 
   1561  1.1  mrg 2020-11-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1562  1.1  mrg 
   1563  1.1  mrg 	* include/bits/uniform_int_dist.h (uniform_int_distribution::_S_nd):
   1564  1.1  mrg 	Use qualified-id to refer to static member functions.
   1565  1.1  mrg 
   1566  1.1  mrg 2020-11-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1567  1.1  mrg 
   1568  1.1  mrg 	* include/std/syncstream: Include <bits/std_mutex.h>
   1569  1.1  mrg 	unconditionally.
   1570  1.1  mrg 
   1571  1.1  mrg 2020-11-03  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1572  1.1  mrg 
   1573  1.1  mrg 	* config/abi/pre/gnu-versioned-namespace.ver:
   1574  1.1  mrg 	Add __istream_extract and _Safe_local_iterator_base::_M_attach_single
   1575  1.1  mrg 	symbols.
   1576  1.1  mrg 
   1577  1.1  mrg 2020-11-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1578  1.1  mrg 
   1579  1.1  mrg 	* src/c++11/mutex.cc [_GLIBCXX_HAVE_TLS] (__once_proxy): Define
   1580  1.1  mrg 	separately for TLS targets.
   1581  1.1  mrg 	[!_GLIBCXX_HAVE_TLS] (__get_once_functor_lock_ptr): Replace with ...
   1582  1.1  mrg 	(set_lock_ptr): ... this. Set new value and return previous
   1583  1.1  mrg 	value.
   1584  1.1  mrg 	[!_GLIBCXX_HAVE_TLS] (__set_once_functor_lock_ptr): Adjust to
   1585  1.1  mrg 	use set_lock_ptr.
   1586  1.1  mrg 	[!_GLIBCXX_HAVE_TLS] (__once_proxy): Likewise.
   1587  1.1  mrg 
   1588  1.1  mrg 2020-11-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1589  1.1  mrg 
   1590  1.1  mrg 	PR libstdc++/55394
   1591  1.1  mrg 	PR libstdc++/66146
   1592  1.1  mrg 	PR libstdc++/84323
   1593  1.1  mrg 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.29): Add new symbols.
   1594  1.1  mrg 	* include/std/mutex [!_GLIBCXX_HAS_GTHREADS] (once_flag): Define
   1595  1.1  mrg 	even when gthreads is not supported.
   1596  1.1  mrg 	(once_flag::_M_once) [_GLIBCXX_HAVE_LINUX_FUTEX]: Change type
   1597  1.1  mrg 	from __gthread_once_t to int.
   1598  1.1  mrg 	(once_flag::_M_passive(), once_flag::_M_activate())
   1599  1.1  mrg 	(once_flag::_M_finish(bool), once_flag::_Active_execution):
   1600  1.1  mrg 	Define new members for futex and non-threaded implementation.
   1601  1.1  mrg 	[_GLIBCXX_HAS_GTHREADS] (once_flag::_Prepare_execution): New
   1602  1.1  mrg 	RAII helper type.
   1603  1.1  mrg 	(call_once): Use new members of once_flag.
   1604  1.1  mrg 	* src/c++11/mutex.cc (std::once_flag::_M_activate): Define.
   1605  1.1  mrg 	(std::once_flag::_M_finish): Define.
   1606  1.1  mrg 	* testsuite/30_threads/call_once/39909.cc: Do not require
   1607  1.1  mrg 	gthreads.
   1608  1.1  mrg 	* testsuite/30_threads/call_once/49668.cc: Likewise.
   1609  1.1  mrg 	* testsuite/30_threads/call_once/60497.cc: Likewise.
   1610  1.1  mrg 	* testsuite/30_threads/call_once/call_once1.cc: Likewise.
   1611  1.1  mrg 	* testsuite/30_threads/call_once/dr2442.cc: Likewise.
   1612  1.1  mrg 	* testsuite/30_threads/call_once/once_flag.cc: Add test for
   1613  1.1  mrg 	constexpr constructor.
   1614  1.1  mrg 	* testsuite/30_threads/call_once/66146.cc: New test.
   1615  1.1  mrg 	* testsuite/30_threads/call_once/constexpr.cc: Removed.
   1616  1.1  mrg 	* testsuite/30_threads/once_flag/cons/constexpr.cc: Removed.
   1617  1.1  mrg 
   1618  1.1  mrg 2020-11-03  Jonathan Yong  <10walls (a] gmail.com>
   1619  1.1  mrg 
   1620  1.1  mrg 	* src/Makefile.am (libstdc___la_LINK): Add lt_host_flags.
   1621  1.1  mrg 	* src/Makefile.in: Regenerate.
   1622  1.1  mrg 
   1623  1.1  mrg 2020-11-02  Thomas Rodgers  <trodgers (a] redhat.com>
   1624  1.1  mrg 
   1625  1.1  mrg 	* doc/doxygen/user.cfg.in (INPUT): Add new header.
   1626  1.1  mrg 	* include/Makefile.am (std_headers): Add new header.
   1627  1.1  mrg 	* include/Makefile.in: Regenerate.
   1628  1.1  mrg 	* include/precompiled/stdc++.h: Include new header.
   1629  1.1  mrg 	* include/std/syncstream: New header.
   1630  1.1  mrg 	* include/std/version: Add __cpp_lib_syncbuf.
   1631  1.1  mrg 	* testsuite/27_io/basic_syncbuf/1.cc: New test.
   1632  1.1  mrg 	* testsuite/27_io/basic_syncbuf/2.cc: Likewise.
   1633  1.1  mrg 	* testsuite/27_io/basic_syncbuf/basic_ops/1.cc:
   1634  1.1  mrg 	Likewise.
   1635  1.1  mrg 	* testsuite/27_io/basic_syncbuf/requirements/types.cc:
   1636  1.1  mrg 	Likewise.
   1637  1.1  mrg 	* testsuite/27_io/basic_syncbuf/sync_ops/1.cc:
   1638  1.1  mrg 	Likewise.
   1639  1.1  mrg 	* testsuite/27_io/basic_syncstream/1.cc: Likewise.
   1640  1.1  mrg 	* testsuite/27_io/basic_syncstream/2.cc: Likewise.
   1641  1.1  mrg 	* testsuite/27_io/basic_syncstream/basic_ops/1.cc:
   1642  1.1  mrg 	Likewise.
   1643  1.1  mrg 	* testsuite/27_io/basic_syncstream/requirements/types.cc:
   1644  1.1  mrg 	Likewise.
   1645  1.1  mrg 
   1646  1.1  mrg 2020-11-01  Jonathan Wakely  <jwakely (a] redhat.com>
   1647  1.1  mrg 
   1648  1.1  mrg 	* include/std/type_traits (is_integral<wchar_t>)
   1649  1.1  mrg 	(make_unsigned<wchar_t>, make_signed<wchar_t>): Define based
   1650  1.1  mrg 	on #ifdef __WCHAR_TYPE__ instead of _GLIBCXX_USE_WCHAR_T.
   1651  1.1  mrg 	* include/bits/cpp_type_traits.h (__is_integer<wchar_t>)
   1652  1.1  mrg 	(__is_char<wchar_t>): Likewise.
   1653  1.1  mrg 
   1654  1.1  mrg 2020-10-31  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1655  1.1  mrg 
   1656  1.1  mrg 	* src/c++17/floating_from_chars.cc (_GLIBCXX_USE_CX11_ABI): Add define.
   1657  1.1  mrg 	(buffering_string): New.
   1658  1.1  mrg 	[!_GLIBCXX_USE_CXX11_ABI](reserve_string): New.
   1659  1.1  mrg 	(from_chars): Adapt.
   1660  1.1  mrg 	* src/c++20/sstream-inst.cc: Limit instantiations to
   1661  1.1  mrg 	_GLIBCXX_USE_CXX11_ABI.
   1662  1.1  mrg 
   1663  1.1  mrg 2020-10-31  Jonathan Wakely  <jwakely (a] redhat.com>
   1664  1.1  mrg 
   1665  1.1  mrg 	* include/bits/random.h (independent_bit_engine): Fix typo
   1666  1.1  mrg 	in comment.
   1667  1.1  mrg 	(shuffle_order_engine): Fix incorrect description in comment.
   1668  1.1  mrg 	* include/bits/random.tcc (__representable_as_double
   1669  1.1  mrg 	(__p1_representable_as_double): New helper functions.
   1670  1.1  mrg 	(shuffle_order_engine::operator()): Use double for calculation
   1671  1.1  mrg 	if (max() - min() + 1) is representable as double.
   1672  1.1  mrg 	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
   1673  1.1  mrg 	line number.
   1674  1.1  mrg 
   1675  1.1  mrg 2020-10-31  Jonathan Wakely  <jwakely (a] redhat.com>
   1676  1.1  mrg 
   1677  1.1  mrg 	PR libstdc++/96958
   1678  1.1  mrg 	* include/bits/hashtable_policy.h (_Prime_rehash_policy)
   1679  1.1  mrg 	(_Power2_rehash_policy): Use ceil and floor instead of ceill and
   1680  1.1  mrg 	floorl.
   1681  1.1  mrg 	* src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy): Likewise.
   1682  1.1  mrg 	Use double instead of long double.
   1683  1.1  mrg 
   1684  1.1  mrg 2020-10-31  Patrick Palka  <ppalka (a] redhat.com>
   1685  1.1  mrg 
   1686  1.1  mrg 	PR libstdc++/97600
   1687  1.1  mrg 	* include/std/ranges (basic_istream_view::begin): Initialize
   1688  1.1  mrg 	_Iterator from 'this' instead of '*this'.
   1689  1.1  mrg 	(basic_istream_view::_Iterator::_Iterator): Adjust constructor
   1690  1.1  mrg 	accordingly.
   1691  1.1  mrg 	(filter_view::_Iterator::_Iterator): Take a filter_view*
   1692  1.1  mrg 	argument instead of a filter_view& argument.
   1693  1.1  mrg 	(filter_view::_Sentinel::_Sentinel): Likewise.
   1694  1.1  mrg 	(filter_view::begin): Initialize _Iterator from 'this' instead
   1695  1.1  mrg 	of '*this'.
   1696  1.1  mrg 	(filter_view::end): Likewise.
   1697  1.1  mrg 	(transform_view::_Iterator::_Iterator): Take a _Parent* instead
   1698  1.1  mrg 	of a _Parent&.
   1699  1.1  mrg 	(filter_view::_Iterator::operator+): Adjust accordingly.
   1700  1.1  mrg 	(filter_view::_Iterator::operator-): Likewise.
   1701  1.1  mrg 	(filter_view::begin): Initialize _Iterator from 'this' instead
   1702  1.1  mrg 	of '*this'.
   1703  1.1  mrg 	(filter_view::end): Likewise.
   1704  1.1  mrg 	(join_view::_Iterator): Take a _Parent* instead of a _Parent&.
   1705  1.1  mrg 	(join_view::_Sentinel): Likewise.
   1706  1.1  mrg 	(join_view::begin): Initialize _Iterator from 'this' instead of
   1707  1.1  mrg 	'*this'.
   1708  1.1  mrg 	(join_view::end): Initialize _Sentinel from 'this' instead of
   1709  1.1  mrg 	'*this'.
   1710  1.1  mrg 	(split_view::_OuterIter): Take a _Parent& instead of a _Parent*.
   1711  1.1  mrg 	(split_view::begin): Initialize _OuterIter from 'this' instead
   1712  1.1  mrg 	of '*this'.
   1713  1.1  mrg 	(split_view::end): Likewise.
   1714  1.1  mrg 	* testsuite/std/ranges/97600.cc: New test.
   1715  1.1  mrg 
   1716  1.1  mrg 2020-10-30  Jonathan Wakely  <jwakely (a] redhat.com>
   1717  1.1  mrg 
   1718  1.1  mrg 	* include/std/ranges (enable_borrowed_view<take_view<T>>)
   1719  1.1  mrg 	(enable_borrowed_view<drop_view<T>>)
   1720  1.1  mrg 	(enable_borrowed_view<drop_while_view<T>>)
   1721  1.1  mrg 	(enable_borrowed_view<reverse_view<T>>)
   1722  1.1  mrg 	(enable_borrowed_view<common_view<T>>)
   1723  1.1  mrg 	(enable_borrowed_view<elements_view<T>>): Add partial
   1724  1.1  mrg 	specializations as per P2017R1.
   1725  1.1  mrg 	* testsuite/std/ranges/adaptors/conditionally_borrowed.cc:
   1726  1.1  mrg 	New test.
   1727  1.1  mrg 
   1728  1.1  mrg 2020-10-30  Jonathan Wakely  <jwakely (a] redhat.com>
   1729  1.1  mrg 
   1730  1.1  mrg 	PR libstdc++/96958
   1731  1.1  mrg 	* include/bits/hashtable_policy.h (_Prime_rehash_policy)
   1732  1.1  mrg 	(_Power2_rehash_policy): Use double instead of long double.
   1733  1.1  mrg 
   1734  1.1  mrg 2020-10-30  Jonathan Wakely  <jwakely (a] redhat.com>
   1735  1.1  mrg 
   1736  1.1  mrg 	* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
   1737  1.1  mrg 	Avoid -Wcatch-value warnings.
   1738  1.1  mrg 
   1739  1.1  mrg 2020-10-30  Patrick Palka  <ppalka (a] redhat.com>
   1740  1.1  mrg 
   1741  1.1  mrg 	* include/std/ranges (__detail::__box): For the partial
   1742  1.1  mrg 	specialization used by types that are already semiregular,
   1743  1.1  mrg 	make the default constructor value-initialize the underlying
   1744  1.1  mrg 	object instead of default-initializing it.  Make its in place
   1745  1.1  mrg 	constructor explicit.
   1746  1.1  mrg 	* testsuite/std/ranges/adaptors/detail/semiregular_box.cc:
   1747  1.1  mrg 	Augment test.
   1748  1.1  mrg 
   1749  1.1  mrg 2020-10-30  David Edelsohn  <dje.gcc (a] gmail.com>
   1750  1.1  mrg 
   1751  1.1  mrg 	* testsuite/20_util/unique_ptr/creation/for_overwrite.cc: XFAIL on AIX.
   1752  1.1  mrg 
   1753  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   1754  1.1  mrg 
   1755  1.1  mrg 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.21): Tighten patterns
   1756  1.1  mrg 	for old <sstream> symbols some more.
   1757  1.1  mrg 
   1758  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   1759  1.1  mrg 
   1760  1.1  mrg 	* include/bits/ranges_util.h (subrange::subrange(R&&)): Use
   1761  1.1  mrg 	direct-initialization instead of list-initialization, so a
   1762  1.1  mrg 	potential narrowing conversion from ranges::size(r) to the
   1763  1.1  mrg 	stored size isn't ill-formed.
   1764  1.1  mrg 
   1765  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   1766  1.1  mrg 
   1767  1.1  mrg 	* include/bits/parse_numbers.h (_Select_int_base): Avoid
   1768  1.1  mrg 	narrowing conversion in constant expression.
   1769  1.1  mrg 	* include/experimental/buffer (buffer_copy): Avoid narrowing
   1770  1.1  mrg 	conversion.
   1771  1.1  mrg 	* include/experimental/internet (hash<>::operator()): Do not
   1772  1.1  mrg 	use deprecated 'argument_type' member.
   1773  1.1  mrg 	* include/std/variant (variant::emplace): Use cast instead
   1774  1.1  mrg 	of implicit conversion from size_t to narrower unsigned type.
   1775  1.1  mrg 
   1776  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   1777  1.1  mrg 
   1778  1.1  mrg 	* include/tr1/shared_ptr.h (__shared_count, __shared_ptr)
   1779  1.1  mrg 	(shared_ptr): Add diagnostic pragmas around uses of auto_ptr.
   1780  1.1  mrg 	* testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc:
   1781  1.1  mrg 	Adust dg-error line numbers.
   1782  1.1  mrg 
   1783  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   1784  1.1  mrg 
   1785  1.1  mrg 	* testsuite/18_support/96817.cc: Avoid -Wunused warnings.
   1786  1.1  mrg 	* testsuite/20_util/any/assign/2.cc: Likewise.
   1787  1.1  mrg 	* testsuite/20_util/any/cons/2.cc: Likewise.
   1788  1.1  mrg 	* testsuite/20_util/align/1.cc: Avoid -Wsign-compare warning.
   1789  1.1  mrg 	* testsuite/20_util/function/65760.cc: Avoid -Wunused warning.
   1790  1.1  mrg 	* testsuite/20_util/function/1.cc: Avoid -Wcatch-value warning.
   1791  1.1  mrg 	* testsuite/20_util/function/cons/move_target.cc: Avoid -Wunused
   1792  1.1  mrg 	warning.
   1793  1.1  mrg 	* testsuite/20_util/headers/memory/synopsis.cc: Add exception
   1794  1.1  mrg 	specification.
   1795  1.1  mrg 	* testsuite/20_util/monotonic_buffer_resource/allocate.cc: Avoid
   1796  1.1  mrg 	-Wsign-compare warning.
   1797  1.1  mrg 	* testsuite/20_util/tuple/cons/deduction.cc: Avoid -Wunused
   1798  1.1  mrg 	warning.
   1799  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_copy/808590-cxx11.cc:
   1800  1.1  mrg 	Avoid -Wdeprecated-copy warning.
   1801  1.1  mrg 	* testsuite/21_strings/basic_string/56166.cc: Avoid
   1802  1.1  mrg 	-Wcatch-value warning.
   1803  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
   1804  1.1  mrg 	Avoid -Wcatch-value warnings.
   1805  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
   1806  1.1  mrg 	Likewise.
   1807  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
   1808  1.1  mrg 	Likewise.
   1809  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
   1810  1.1  mrg 	Likewise.
   1811  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
   1812  1.1  mrg 	Likewise.
   1813  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
   1814  1.1  mrg 	Likewise.
   1815  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
   1816  1.1  mrg 	Likewise.
   1817  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/char/stoull.cc:
   1818  1.1  mrg 	Likewise.
   1819  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stod.cc:
   1820  1.1  mrg 	Likewise.
   1821  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stof.cc:
   1822  1.1  mrg 	Likewise.
   1823  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoi.cc:
   1824  1.1  mrg 	Likewise.
   1825  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stol.cc:
   1826  1.1  mrg 	Likewise.
   1827  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stold.cc:
   1828  1.1  mrg 	Likewise.
   1829  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoll.cc:
   1830  1.1  mrg 	Likewise.
   1831  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoul.cc:
   1832  1.1  mrg 	Likewise.
   1833  1.1  mrg 	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoull.cc:
   1834  1.1  mrg 	Likewise.
   1835  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/compare/char/nonnull.cc:
   1836  1.1  mrg 	Prune additional diagnostics.
   1837  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/find/char/nonnull.cc:
   1838  1.1  mrg 	Likewise.
   1839  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/rfind/char/nonnull.cc:
   1840  1.1  mrg 	Likewise.
   1841  1.1  mrg 	* testsuite/21_strings/headers/string/synopsis.cc: Add exception
   1842  1.1  mrg 	specifications.
   1843  1.1  mrg 	* testsuite/22_locale/locale/cons/12352.cc: Define sized
   1844  1.1  mrg 	delete operators to avoid warnings.
   1845  1.1  mrg 	* testsuite/23_containers/deque/modifiers/swap/1.cc: Add
   1846  1.1  mrg 	exception specification.
   1847  1.1  mrg 	* testsuite/23_containers/forward_list/cons/11.cc: Avoid
   1848  1.1  mrg 	-Wdeprecated-copy warning.
   1849  1.1  mrg 	* testsuite/23_containers/headers/bitset/synopsis.cc: Add
   1850  1.1  mrg 	exception specification.
   1851  1.1  mrg 	* testsuite/23_containers/headers/deque/synopsis.cc: Likewise.
   1852  1.1  mrg 	* testsuite/23_containers/headers/forward_list/synopsis.cc:
   1853  1.1  mrg 	Likewise.
   1854  1.1  mrg 	* testsuite/23_containers/headers/list/synopsis.cc: Likewise.
   1855  1.1  mrg 	* testsuite/23_containers/headers/map/synopsis.cc: Likewise.
   1856  1.1  mrg 	* testsuite/23_containers/headers/queue/synopsis.cc: Likewise.
   1857  1.1  mrg 	* testsuite/23_containers/headers/set/synopsis.cc: Likewise.
   1858  1.1  mrg 	* testsuite/23_containers/headers/vector/synopsis.cc: Likewise.
   1859  1.1  mrg 	* testsuite/23_containers/list/modifiers/swap/1.cc: Likewise.
   1860  1.1  mrg 	* testsuite/23_containers/map/modifiers/swap/1.cc: Likewise.
   1861  1.1  mrg 	* testsuite/23_containers/multimap/modifiers/swap/1.cc:
   1862  1.1  mrg 	Likewise.
   1863  1.1  mrg 	* testsuite/23_containers/multiset/modifiers/swap/1.cc:
   1864  1.1  mrg 	Likewise.
   1865  1.1  mrg 	* testsuite/23_containers/set/modifiers/swap/1.cc: Likewise.
   1866  1.1  mrg 	* testsuite/23_containers/unordered_set/56267-2.cc: Avoid
   1867  1.1  mrg 	-Wdeprecated-copy warning.
   1868  1.1  mrg 	* testsuite/23_containers/vector/bool/23632.cc: Avoid
   1869  1.1  mrg 	-Wempty-body warning.
   1870  1.1  mrg 	* testsuite/23_containers/vector/modifiers/swap/1.cc: Add
   1871  1.1  mrg 	exception specification.
   1872  1.1  mrg 	* testsuite/25_algorithms/heap/moveable2.cc: Fix misplaced
   1873  1.1  mrg 	parentheses around arguments.
   1874  1.1  mrg 	* testsuite/25_algorithms/sample/1.cc: Use return value.
   1875  1.1  mrg 	* testsuite/25_algorithms/search/searcher.cc: Avoid -Wunused
   1876  1.1  mrg 	warnings.
   1877  1.1  mrg 	* testsuite/27_io/basic_ostream/exceptions/char/9561.cc:
   1878  1.1  mrg 	Likewise.
   1879  1.1  mrg 	* testsuite/27_io/basic_ostream/exceptions/wchar_t/9561.cc:
   1880  1.1  mrg 	Likewise.
   1881  1.1  mrg 	* testsuite/27_io/filesystem/operations/remove_all.cc: Avoid
   1882  1.1  mrg 	-Wsign-compare warning.
   1883  1.1  mrg 	* testsuite/experimental/any/assign/2.cc: Avoid -Wunused warnings.
   1884  1.1  mrg 	* testsuite/experimental/any/cons/2.cc: Likewise.
   1885  1.1  mrg 	* testsuite/experimental/filesystem/operations/remove_all.cc:
   1886  1.1  mrg 	Avoid -Wign-compare warning.
   1887  1.1  mrg 	* testsuite/experimental/memory/observer_ptr/cons/cons.cc:
   1888  1.1  mrg 	Likewise.
   1889  1.1  mrg 	* testsuite/experimental/memory_resource/null_memory_resource.cc:
   1890  1.1  mrg 	Likewise.
   1891  1.1  mrg 	* testsuite/experimental/source_location/1.cc: Avoid -Waddress
   1892  1.1  mrg 	warning.
   1893  1.1  mrg 	* testsuite/ext/pod_char_traits.cc: Avoid -Wunused warning.
   1894  1.1  mrg 	* testsuite/ext/vstring/modifiers/clear/56166.cc: Avoid
   1895  1.1  mrg 	-Wcatch-value.
   1896  1.1  mrg 	* testsuite/std/concepts/concepts.lang/concept.swappable/swap.cc:
   1897  1.1  mrg 	Avoid -Wunused warning.
   1898  1.1  mrg 	* testsuite/std/concepts/concepts.lang/concept.swappable/swappable.cc:
   1899  1.1  mrg 	Likewise.
   1900  1.1  mrg 	* testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc:
   1901  1.1  mrg 	Prune additional warnings.
   1902  1.1  mrg 	* testsuite/tr1/3_function_objects/function/1.cc: Avoid
   1903  1.1  mrg 	-Wcatch-value warning.
   1904  1.1  mrg 	* testsuite/util/replacement_memory_operators.h: Define sized
   1905  1.1  mrg 	delete to avoid warnings.
   1906  1.1  mrg 	* testsuite/util/testsuite_api.h (_NonDefaultConstructible): Add
   1907  1.1  mrg 	user-declared assignment operator to stop -Wdeprecated-copy
   1908  1.1  mrg 	warnings.
   1909  1.1  mrg 	* testsuite/util/testsuite_containers.h: Avoid -Wunused warning.
   1910  1.1  mrg 	* testsuite/util/testsuite_iterators.h: Avoid -Wsign-compare
   1911  1.1  mrg 	warnings.
   1912  1.1  mrg 	* testsuite/util/testsuite_new_operators.h: Define sized deleted.
   1913  1.1  mrg 
   1914  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   1915  1.1  mrg 
   1916  1.1  mrg 	* testsuite/25_algorithms/all_of/constexpr.cc: Check result of
   1917  1.1  mrg 	the algorithm.
   1918  1.1  mrg 	* testsuite/25_algorithms/any_of/constexpr.cc: Likewise.
   1919  1.1  mrg 	* testsuite/25_algorithms/binary_search/constexpr.cc: Likewise.
   1920  1.1  mrg 	* testsuite/25_algorithms/copy_backward/constexpr.cc: Likewise.
   1921  1.1  mrg 	* testsuite/25_algorithms/count/constexpr.cc: Likewise.
   1922  1.1  mrg 	* testsuite/25_algorithms/equal/constexpr.cc: Likewise.
   1923  1.1  mrg 	* testsuite/25_algorithms/equal_range/constexpr.cc: Likewise.
   1924  1.1  mrg 	* testsuite/25_algorithms/fill/constexpr.cc: Likewise.
   1925  1.1  mrg 	* testsuite/25_algorithms/find_end/constexpr.cc: Likewise.
   1926  1.1  mrg 	* testsuite/25_algorithms/find_if/constexpr.cc: Likewise.
   1927  1.1  mrg 	* testsuite/25_algorithms/is_partitioned/constexpr.cc: Likewise.
   1928  1.1  mrg 	* testsuite/25_algorithms/is_permutation/constexpr.cc: Likewise.
   1929  1.1  mrg 	* testsuite/25_algorithms/is_sorted_until/constexpr.cc:
   1930  1.1  mrg 	Likewise.
   1931  1.1  mrg 	* testsuite/25_algorithms/lexicographical_compare/constexpr.cc:
   1932  1.1  mrg 	Likewise.
   1933  1.1  mrg 	* testsuite/25_algorithms/lower_bound/constexpr.cc: Likewise.
   1934  1.1  mrg 	* testsuite/25_algorithms/merge/constexpr.cc: Likewise.
   1935  1.1  mrg 	* testsuite/25_algorithms/mismatch/constexpr.cc: Likewise.
   1936  1.1  mrg 	* testsuite/25_algorithms/none_of/constexpr.cc: Likewise.
   1937  1.1  mrg 	* testsuite/25_algorithms/partition_copy/constexpr.cc: Likewise.
   1938  1.1  mrg 	* testsuite/25_algorithms/remove_copy/constexpr.cc: Likewise.
   1939  1.1  mrg 	* testsuite/25_algorithms/remove_copy_if/constexpr.cc: Likewise.
   1940  1.1  mrg 	* testsuite/25_algorithms/remove_if/constexpr.cc: Likewise.
   1941  1.1  mrg 	* testsuite/25_algorithms/replace_if/constexpr.cc: Likewise.
   1942  1.1  mrg 	* testsuite/25_algorithms/reverse/constexpr.cc: Likewise.
   1943  1.1  mrg 	* testsuite/25_algorithms/reverse_copy/constexpr.cc: Likewise.
   1944  1.1  mrg 	* testsuite/25_algorithms/rotate_copy/constexpr.cc: Likewise.
   1945  1.1  mrg 	* testsuite/25_algorithms/search/constexpr.cc: Likewise.
   1946  1.1  mrg 	* testsuite/25_algorithms/set_difference/constexpr.cc: Likewise.
   1947  1.1  mrg 	* testsuite/25_algorithms/set_intersection/constexpr.cc:
   1948  1.1  mrg 	Likewise.
   1949  1.1  mrg 	* testsuite/25_algorithms/set_symmetric_difference/constexpr.cc:
   1950  1.1  mrg 	Likewise.
   1951  1.1  mrg 	* testsuite/25_algorithms/set_union/constexpr.cc: Likewise.
   1952  1.1  mrg 	* testsuite/25_algorithms/unique_copy/constexpr.cc: Likewise.
   1953  1.1  mrg 	* testsuite/25_algorithms/upper_bound/constexpr.cc: Likewise.
   1954  1.1  mrg 
   1955  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   1956  1.1  mrg 
   1957  1.1  mrg 	* include/bits/uniform_int_dist.h (_Power_of_two): Add
   1958  1.1  mrg 	constexpr.
   1959  1.1  mrg 	(uniform_int_distribution::_S_nd): Add static_assert to ensure
   1960  1.1  mrg 	the wider type is twice as wide as the result type.
   1961  1.1  mrg 	(uniform_int_distribution::__generate_impl): Add static_assert
   1962  1.1  mrg 	and declare variables as constexpr where appropriate.
   1963  1.1  mrg 	(uniform_int_distribution:operator()): Likewise. Only consider
   1964  1.1  mrg 	the uniform random bit generator's range of possible results
   1965  1.1  mrg 	when deciding whether _S_nd can be used, not the __uctype type.
   1966  1.1  mrg 
   1967  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   1968  1.1  mrg 
   1969  1.1  mrg 	* include/ext/rope (_Refcount_Base::_M_ref_count): Remove
   1970  1.1  mrg 	volatile qualifier.
   1971  1.1  mrg 	(_Refcount_Base::_M_decr()): Likewise.
   1972  1.1  mrg 
   1973  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   1974  1.1  mrg 
   1975  1.1  mrg 	* include/bits/std_function.h (_Function_handler<void, void>):
   1976  1.1  mrg 	Define explicit specialization used for invalid target types.
   1977  1.1  mrg 	(_Base_manager::_M_manager) [!__cpp_rtti]: Return null.
   1978  1.1  mrg 	(function::target_type()): Check for null pointer.
   1979  1.1  mrg 	(function::target()): Define unconditionall. Fix bug with
   1980  1.1  mrg 	const_cast of function pointer type.
   1981  1.1  mrg 	(function::target() const): Define unconditionally, but
   1982  1.1  mrg 	only use RTTI if enabled.
   1983  1.1  mrg 	* testsuite/20_util/function/target_no_rtti.cc: New test.
   1984  1.1  mrg 
   1985  1.1  mrg 2020-10-29  Patrick Palka  <ppalka (a] redhat.com>
   1986  1.1  mrg 
   1987  1.1  mrg 	* testsuite/25_algorithms/lexicographical_compare/constrained.cc:
   1988  1.1  mrg 	(test03): Fix initializing the vector vy with the array y of size 4.
   1989  1.1  mrg 
   1990  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   1991  1.1  mrg 
   1992  1.1  mrg 	* include/bits/hashtable_policy.h (_Local_iterator_base): Cast
   1993  1.1  mrg 	value to avoid -Wsign-compare warnings.
   1994  1.1  mrg 	* include/bits/regex.h (sub_match::_M_str): Avoid narrowing
   1995  1.1  mrg 	conversion.
   1996  1.1  mrg 	* include/bits/regex_compiler.tcc (_Compiler::_M_quantifier):
   1997  1.1  mrg 	Initialize variable to avoid -Wmaybe-uninitialized warning.
   1998  1.1  mrg 	* include/bits/shared_ptr_base.h (_Sp_counted_deleter::_Impl):
   1999  1.1  mrg 	Reorder mem-initializer-list to avoid -Wreorder warning.
   2000  1.1  mrg 	* include/bits/stl_tree.h (_Rb_tree_impl): Explicitly
   2001  1.1  mrg 	initialize base class in copy constructor.
   2002  1.1  mrg 	* include/debug/safe_iterator.h (_Safe_iterator): Likewise.
   2003  1.1  mrg 	* include/ext/debug_allocator.h: Reorder mem-initializer-list
   2004  1.1  mrg 	to avoid -Wreorder warning.
   2005  1.1  mrg 	* include/ext/throw_allocator.h (throw_allocator_limit)
   2006  1.1  mrg 	(throw_allocator_random): Add user-declared assignment operators
   2007  1.1  mrg 	to avoid -Wdeprecated-copy warnings.
   2008  1.1  mrg 
   2009  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   2010  1.1  mrg 
   2011  1.1  mrg 	* include/bits/uniform_int_dist.h (uniform_int_distribution):
   2012  1.1  mrg 	Rename _UniformRandomNumberGenerator template parameters to
   2013  1.1  mrg 	_UniformRandomBitGenerator, as per P0346R1.
   2014  1.1  mrg 
   2015  1.1  mrg 2020-10-29  Jonathan Wakely  <jwakely (a] redhat.com>
   2016  1.1  mrg 
   2017  1.1  mrg 	* include/std/sstream (basic_stringbuf(__string_type&&, openmode)):
   2018  1.1  mrg 	Call _M_init_syncbuf to set up get/put areas. Also qualify
   2019  1.1  mrg 	std::move.
   2020  1.1  mrg 
   2021  1.1  mrg 2020-10-28  Jonathan Wakely  <jwakely (a] redhat.com>
   2022  1.1  mrg 
   2023  1.1  mrg 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.29): Remove duplicate
   2024  1.1  mrg 	patterns.
   2025  1.1  mrg 	(CXXABI_1.3.13): Restore missing piece.
   2026  1.1  mrg 
   2027  1.1  mrg 2020-10-28  Thomas Rodgers  <trodgers (a] redhat.com>
   2028  1.1  mrg 
   2029  1.1  mrg 	* acinclude.m4 (glibcxx_SUBDIRS): Add src/c++20.
   2030  1.1  mrg 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.29): New symbols.
   2031  1.1  mrg 	* configure: Regenerate.
   2032  1.1  mrg 	* include/std/sstream:
   2033  1.1  mrg 	(basic_stringbuf::basic_stringbuf(allocator const&)): New constructor.
   2034  1.1  mrg 	(basic_stringbuf::basic_stringbuf(openmode, allocator const&)): Likewise.
   2035  1.1  mrg 	(basic_stringbuf::basic_stringbuf(basic_string&&, openmode)): Likewise.
   2036  1.1  mrg 	(basic_stringbuf::basic_stringbuf(basic_stringbuf&&, allocator const&)):
   2037  1.1  mrg 	Likewise.
   2038  1.1  mrg 	(basic_stringbuf::get_allocator()): New method.
   2039  1.1  mrg 	(basic_stringbuf::view()): Likewise.
   2040  1.1  mrg 	(basic_istringstream::basic_istringstream(basic_string&&, openmode)):
   2041  1.1  mrg 	New constructor.
   2042  1.1  mrg 	(basic_istringstream::basic_istringstream(openmode, allocator const&)):
   2043  1.1  mrg 	Likewise
   2044  1.1  mrg 	(basic_istringstream::view()): New method.
   2045  1.1  mrg 	(basic_ostringstream::basic_ostringstream(basic_string&&, openmode)):
   2046  1.1  mrg 	New constructor.
   2047  1.1  mrg 	(basic_ostringstream::basic_ostringstream(openmode, allocator const&)):
   2048  1.1  mrg 	Likewise
   2049  1.1  mrg 	(basic_ostringstream::view()): New method.
   2050  1.1  mrg 	(basic_stringstream::basic_stringstream(basic_string&&, openmode)):
   2051  1.1  mrg 	New constructor.
   2052  1.1  mrg 	(basic_stringstream::basic_stringstream(openmode, allocator const&)):
   2053  1.1  mrg 	Likewise
   2054  1.1  mrg 	(basic_stringstream::view()): New method.
   2055  1.1  mrg 	* src/Makefile.in: Add c++20 directory.
   2056  1.1  mrg 	* src/Makefile.am: Regenerate.
   2057  1.1  mrg 	* src/c++20/Makefile.am: Add makefile for new sub-directory.
   2058  1.1  mrg 	* src/c++20/Makefile.in: Generate.
   2059  1.1  mrg 	* src/c++20/sstream-inst.cc: New file defining explicit
   2060  1.1  mrg 	instantiations for basic_stringbuf, basic_istringstream,
   2061  1.1  mrg 	basic_ostringstream, and basic_stringstream member functions
   2062  1.1  mrg 	added in C++20.
   2063  1.1  mrg 	* testsuite/27_io/basic_stringbuf/cons/char/2.cc: New test.
   2064  1.1  mrg 	* testsuite/27_io/basic_stringbuf/cons/wchar_t/2.cc: Likewise.
   2065  1.1  mrg 	* testsuite/27_io/basic_stringbuf/view/char/1.cc: Likewise.
   2066  1.1  mrg 	* testsuite/27_io/basic_stringbuf/view/wchar_t/1.cc: Likewise.
   2067  1.1  mrg 	* testsuite/27_io/basic_istringstream/cons/char/1.cc: Likewise.
   2068  1.1  mrg 	* testsuite/27_io/basic_istringstream/cons/wchar_t/1.cc: Likewise.
   2069  1.1  mrg 	* testsuite/27_io/basic_istringstream/view/char/1.cc: Likewise.
   2070  1.1  mrg 	* testsuite/27_io/basic_istringstream/view/wchar_t/1.cc: Likewise.
   2071  1.1  mrg 	* testsuite/27_io/basic_ostringstream/cons/char/1.cc: Likewise.
   2072  1.1  mrg 	* testsuite/27_io/basic_ostringstream/cons/wchar_t/1.cc: Likewise.
   2073  1.1  mrg 	* testsuite/27_io/basic_ostringstream/view/char/1.cc: Likewise.
   2074  1.1  mrg 	* testsuite/27_io/basic_ostringstream/view/wchar_t/1.cc: Likewise.
   2075  1.1  mrg 	* testsuite/27_io/basic_stringstream/cons/char/1.cc: Likewise.
   2076  1.1  mrg 	* testsuite/27_io/basic_stringstream/cons/wchar_t/1.cc: Likewise.
   2077  1.1  mrg 	* testsuite/27_io/basic_stringstream/view/char/1.cc: Likewise.
   2078  1.1  mrg 	* testsuite/27_io/basic_stringstream/view/wchar_t/1.cc: Likewise.
   2079  1.1  mrg 
   2080  1.1  mrg 2020-10-28  Patrick Palka  <ppalka (a] redhat.com>
   2081  1.1  mrg 
   2082  1.1  mrg 	PR libstdc++/97613
   2083  1.1  mrg 	* include/std/chrono (year_month_weekday::operator sys_days):
   2084  1.1  mrg 	Cast the result of index() to int so that the initializer for
   2085  1.1  mrg 	days{} is sign-extended when it's converted to the underlying
   2086  1.1  mrg 	type.
   2087  1.1  mrg 	* testsuite/std/time/year_month_weekday/3.cc: New test.
   2088  1.1  mrg 
   2089  1.1  mrg 2020-10-28  Jonathan Wakely  <jwakely (a] redhat.com>
   2090  1.1  mrg 
   2091  1.1  mrg 	* libsupc++/new_opnt.cc (new): Add comment about forced unwind
   2092  1.1  mrg 	exceptions.
   2093  1.1  mrg 
   2094  1.1  mrg 2020-10-28  Jonathan Wakely  <jwakely (a] redhat.com>
   2095  1.1  mrg 
   2096  1.1  mrg 	PR libstdc++/94268
   2097  1.1  mrg 	* config/os/mingw32-w64/os_defines.h (_GLIBCXX_BUFSIZ):
   2098  1.1  mrg 	Define.
   2099  1.1  mrg 	* config/os/mingw32/os_defines.h (_GLIBCXX_BUFSIZ):
   2100  1.1  mrg 	Define.
   2101  1.1  mrg 	* include/bits/fstream.tcc: Use _GLIBCXX_BUFSIZ instead
   2102  1.1  mrg 	of BUFSIZ.
   2103  1.1  mrg 	* include/ext/stdio_filebuf.h: Likewise.
   2104  1.1  mrg 	* include/std/fstream (_GLIBCXX_BUFSIZ): Define.
   2105  1.1  mrg 
   2106  1.1  mrg 2020-10-28  Jonathan Wakely  <jwakely (a] redhat.com>
   2107  1.1  mrg 
   2108  1.1  mrg 	PR libstdc++/95592
   2109  1.1  mrg 	* include/bits/valarray_after.h (_DEFINE_EXPR_UNARY_OPERATOR)
   2110  1.1  mrg 	(_DEFINE_EXPR_BINARY_OPERATOR, _DEFINE_EXPR_BINARY_FUNCTION):
   2111  1.1  mrg 	Use elaborated-type-specifier and qualified-id to avoid
   2112  1.1  mrg 	ambiguities with QNX system headers.
   2113  1.1  mrg 	* testsuite/26_numerics/valarray/95592.cc: New test.
   2114  1.1  mrg 
   2115  1.1  mrg 2020-10-28  Jonathan Wakely  <jwakely (a] redhat.com>
   2116  1.1  mrg 
   2117  1.1  mrg 	PR libstdc++/95609
   2118  1.1  mrg 	* include/std/span (span): Reorder data members to match common
   2119  1.1  mrg 	implementations of struct iovec.
   2120  1.1  mrg 	* testsuite/23_containers/span/layout_compat.cc: New test.
   2121  1.1  mrg 
   2122  1.1  mrg 2020-10-27  Jonathan Wakely  <jwakely (a] redhat.com>
   2123  1.1  mrg 
   2124  1.1  mrg 	* include/std/functional (std::_Placeholder): Define for C++98
   2125  1.1  mrg 	as well as later standards.
   2126  1.1  mrg 	* include/tr1/functional (std::placeholders::_1 etc): Declare
   2127  1.1  mrg 	for C++98.
   2128  1.1  mrg 	(tr1::_Placeholder): Replace with using-declaration for
   2129  1.1  mrg 	std::_Placeholder.
   2130  1.1  mrg 	(tr1::placeholders::_1 etc.): Replace with using-directive for
   2131  1.1  mrg 	std::placeholders.
   2132  1.1  mrg 
   2133  1.1  mrg 2020-10-27  Jonathan Wakely  <jwakely (a] redhat.com>
   2134  1.1  mrg 
   2135  1.1  mrg 	* include/tr1/ell_integral.tcc (__ellint_rf, __ellint_rd)
   2136  1.1  mrg 	(__ellint_rc, __ellint_rj): Remove unused variables.
   2137  1.1  mrg 	* include/tr1/modified_bessel_func.tcc (__airy): Likewise.
   2138  1.1  mrg 
   2139  1.1  mrg 2020-10-27  Jonathan Wakely  <jwakely (a] redhat.com>
   2140  1.1  mrg 
   2141  1.1  mrg 	* include/bits/locale_conv.h (__str_codecvt_out_all):
   2142  1.1  mrg 	Add cast to compare operands of the same signedness.
   2143  1.1  mrg 	* include/bits/locale_facets_nonio.tcc
   2144  1.1  mrg 	(time_get::_M_extract_wday_or_month): Likewise.
   2145  1.1  mrg 	* include/bits/sstream.tcc (basic_stringbuf::overflow):
   2146  1.1  mrg 	Likewise.
   2147  1.1  mrg 	* include/tr1/legendre_function.tcc (__sph_legendre): Use
   2148  1.1  mrg 	unsigned for loop variable.
   2149  1.1  mrg 
   2150  1.1  mrg 2020-10-27  Jonathan Wakely  <jwakely (a] redhat.com>
   2151  1.1  mrg 
   2152  1.1  mrg 	* include/std/charconv (from_chars): Add noexcept to match
   2153  1.1  mrg 	definitions in src/c++17/floating_from_chars.cc
   2154  1.1  mrg 
   2155  1.1  mrg 2020-10-27  Jonathan Wakely  <jwakely (a] redhat.com>
   2156  1.1  mrg 
   2157  1.1  mrg 	* src/c++17/fs_dir.cc (fs::directory_iterator::operator*):
   2158  1.1  mrg 	Add noexcept. Do not throw on precondition violation.
   2159  1.1  mrg 
   2160  1.1  mrg 2020-10-27  Jonathan Wakely  <jwakely (a] redhat.com>
   2161  1.1  mrg 
   2162  1.1  mrg 	* include/bits/fs_path.h (path::_List::begin, path::_List::end):
   2163  1.1  mrg 	Add noexcept to match definitions in src/c++17/fs_path.cc.
   2164  1.1  mrg 
   2165  1.1  mrg 2020-10-27  Jonathan Wakely  <jwakely (a] redhat.com>
   2166  1.1  mrg 
   2167  1.1  mrg 	* testsuite/experimental/memory_resource/new_delete_resource.cc:
   2168  1.1  mrg 	Add missing <cstdint> header.
   2169  1.1  mrg 	* testsuite/experimental/memory_resource/resource_adaptor.cc:
   2170  1.1  mrg 	Likewise.
   2171  1.1  mrg 
   2172  1.1  mrg 2020-10-26  Jonathan Wakely  <jwakely (a] redhat.com>
   2173  1.1  mrg 
   2174  1.1  mrg 	* include/experimental/executor (strand::_State): Fix thinko.
   2175  1.1  mrg 
   2176  1.1  mrg 2020-10-26  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2177  1.1  mrg 
   2178  1.1  mrg 	* include/std/type_traits (__is_nt_constructible_impl): Remove.
   2179  1.1  mrg 	(__is_nothrow_constructible_impl): Adjust.
   2180  1.1  mrg 	(is_nothrow_default_constructible): Likewise.
   2181  1.1  mrg 	(__is_nt_assignable_impl): Remove.
   2182  1.1  mrg 	(__is_nothrow_assignable_impl): Adjust.
   2183  1.1  mrg 
   2184  1.1  mrg 2020-10-26  Jonathan Wakely  <jwakely (a] redhat.com>
   2185  1.1  mrg 
   2186  1.1  mrg 	PR libstdc++/97570
   2187  1.1  mrg 	* libsupc++/new_opa.cc: Declare size_t in global namespace.
   2188  1.1  mrg 	Remove unused header.
   2189  1.1  mrg 
   2190  1.1  mrg 2020-10-26  Stephan Bergmann  <sbergman (a] redhat.com>
   2191  1.1  mrg 
   2192  1.1  mrg 	* include/bits/shared_ptr_base.h
   2193  1.1  mrg 	(_Sp_counted_base::_M_add_ref_lock_nothrow(): Add noexcept to
   2194  1.1  mrg 	definitions to match declaration.
   2195  1.1  mrg 	(__shared_count(const __weak_count&, nothrow_t)): Add noexcept
   2196  1.1  mrg 	to declaration to match definition.
   2197  1.1  mrg 
   2198  1.1  mrg 2020-10-23  Patrick Palka  <ppalka (a] redhat.com>
   2199  1.1  mrg 
   2200  1.1  mrg 	* include/std/ranges (single_view::single_view): Mark the
   2201  1.1  mrg 	in place constructor explicit as per LWG 3428.
   2202  1.1  mrg 	(take_view): Remove the constraint on the deduction guide's
   2203  1.1  mrg 	template parameter as per LWG 3447.
   2204  1.1  mrg 
   2205  1.1  mrg 2020-10-23  Jonathan Wakely  <jwakely (a] redhat.com>
   2206  1.1  mrg 
   2207  1.1  mrg 	* include/experimental/memory_resource: Include <tuple>.
   2208  1.1  mrg 	(polymorphic_allocator::construct): Qualify forward_as_tuple.
   2209  1.1  mrg 	* include/std/memory_resource: Likewise.
   2210  1.1  mrg 
   2211  1.1  mrg 2020-10-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2212  1.1  mrg 
   2213  1.1  mrg 	* testsuite/30_threads/condition_variable/members/68519.cc:
   2214  1.1  mrg 	Define recent_epoch_float_clock::duration to meet the Cpp17Clock
   2215  1.1  mrg 	requirements.
   2216  1.1  mrg 
   2217  1.1  mrg 2020-10-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2218  1.1  mrg 
   2219  1.1  mrg 	* include/std/shared_mutex: Only include <condition_variable>
   2220  1.1  mrg 	when pthread_rwlock_t and POSIX timers are not available.
   2221  1.1  mrg 	(__cpp_lib_shared_mutex, __cpp_lib_shared_timed_mutex): Change
   2222  1.1  mrg 	value to be type 'long'.
   2223  1.1  mrg 	* include/std/version (__cpp_lib_shared_mutex)
   2224  1.1  mrg 	(__cpp_lib_shared_timed_mutex): Likewise.
   2225  1.1  mrg 
   2226  1.1  mrg 2020-10-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2227  1.1  mrg 
   2228  1.1  mrg 	* include/Makefile.am: Add new header.
   2229  1.1  mrg 	* include/Makefile.in: Regenerate.
   2230  1.1  mrg 	* include/bits/shared_ptr.h: Include <iosfwd>.
   2231  1.1  mrg 	* include/bits/shared_ptr_base.h: Include required headers here
   2232  1.1  mrg 	directly, instead of in <memory>.
   2233  1.1  mrg 	* include/bits/uses_allocator_args.h: New file. Move utility
   2234  1.1  mrg 	functions for uses-allocator construction from <memory> to here.
   2235  1.1  mrg 	Only define the utility functions when concepts are available.
   2236  1.1  mrg 	(__cpp_lib_make_obj_using_allocator): Define non-standard
   2237  1.1  mrg 	feature test macro.
   2238  1.1  mrg 	* include/std/condition_variable: Remove unused headers.
   2239  1.1  mrg 	* include/std/future: Likewise.
   2240  1.1  mrg 	* include/std/memory: Remove headers that are not needed
   2241  1.1  mrg 	directly, and are now inclkuded where they're needed. Include
   2242  1.1  mrg 	new <bits/uses_allocator_args.h> header.
   2243  1.1  mrg 	* include/std/memory_resource: Include only the necessary
   2244  1.1  mrg 	headers. Use new feature test macro to detect support for the
   2245  1.1  mrg 	utility functions.
   2246  1.1  mrg 	* include/std/scoped_allocator: Likewise.
   2247  1.1  mrg 	* include/std/version (__cpp_lib_make_obj_using_allocator):
   2248  1.1  mrg 	Define.
   2249  1.1  mrg 
   2250  1.1  mrg 2020-10-22  Olivier Hainque  <hainque (a] adacore.com>
   2251  1.1  mrg 
   2252  1.1  mrg 	* crossconfig.m4: Turn vxworks matcher into vxworks*.
   2253  1.1  mrg 	* configure.host: Likewise.
   2254  1.1  mrg 	* configure: Regenerate.
   2255  1.1  mrg 
   2256  1.1  mrg 2020-10-21  Jonathan Wakely  <jwakely (a] redhat.com>
   2257  1.1  mrg 
   2258  1.1  mrg 	* include/bits/shared_ptr.h (shared_ptr(const weak_ptr&, nothrow_t)):
   2259  1.1  mrg 	Add noexcept.
   2260  1.1  mrg 	* include/bits/shared_ptr_base.h (_Sp_counted_base::_M_add_ref_lock):
   2261  1.1  mrg 	Remove specializations and just call _M_add_ref_lock_nothrow.
   2262  1.1  mrg 	(__shared_count, __shared_ptr): Use nullptr for null pointer
   2263  1.1  mrg 	constants.
   2264  1.1  mrg 	(__shared_count(const __weak_count&)): Use _M_add_ref_lock_nothrow
   2265  1.1  mrg 	instead of _M_add_ref_lock.
   2266  1.1  mrg 	(__shared_count(const __weak_count&, nothrow_t)): Add noexcept.
   2267  1.1  mrg 	(__shared_ptr::operator bool()): Add noexcept.
   2268  1.1  mrg 	(__shared_ptr(const __weak_ptr&, nothrow_t)): Add noexcept.
   2269  1.1  mrg 
   2270  1.1  mrg 2020-10-21  Jonathan Wakely  <jwakely (a] redhat.com>
   2271  1.1  mrg 
   2272  1.1  mrg 	PR libstdc++/97512
   2273  1.1  mrg 	* include/bits/ranges_util.h (tuple_size<subrange>)
   2274  1.1  mrg 	(tuple_element<I, cv subrange>): Move here from ...
   2275  1.1  mrg 	* include/std/ranges: ... here.
   2276  1.1  mrg 	* testsuite/std/ranges/subrange/97512.cc: New test.
   2277  1.1  mrg 
   2278  1.1  mrg 2020-10-21  Thomas Rodgers  <trodgers (a] redhat.com>
   2279  1.1  mrg 
   2280  1.1  mrg 	* include/pstl/algorithm_impl.h: Update file.
   2281  1.1  mrg 	* include/pstl/execution_impl.h: Likewise.
   2282  1.1  mrg 	* include/pstl/glue_algorithm_impl.h: Likewise.
   2283  1.1  mrg 	* include/pstl/glue_memory_impl.h: Likewise.
   2284  1.1  mrg 	* include/pstl/glue_numeric_impl.h: Likewise.
   2285  1.1  mrg 	* include/pstl/memory_impl.h: Likewise.
   2286  1.1  mrg 	* include/pstl/numeric_impl.h: Likewise.
   2287  1.1  mrg 	* include/pstl/parallel_backend.h: Likewise.
   2288  1.1  mrg 	* include/pstl/parallel_backend_serial.h: Likewise.
   2289  1.1  mrg 	* include/pstl/parallel_backend_tbb.h: Likewise.
   2290  1.1  mrg 	* include/pstl/parallel_backend_utils.h: Likewise.
   2291  1.1  mrg 	* include/pstl/pstl_config.h: Likewise.
   2292  1.1  mrg 	* include/pstl/unseq_backend_simd.h: Likewise.
   2293  1.1  mrg 
   2294  1.1  mrg 2020-10-20  Franois Dumont  <fdumont (a] gcc.gnu.org>
   2295  1.1  mrg 
   2296  1.1  mrg 	* include/bits/hashtable_policy.h
   2297  1.1  mrg 	(_Hash_node_value_base<>): Remove _Hash_node_base inheritance.
   2298  1.1  mrg 	(_Hash_node_code_cache<bool _Cache_hash_code>): New.
   2299  1.1  mrg 	(_Hash_node_value<typename _Value, bool _Cache_hash_code>): New.
   2300  1.1  mrg 	(_Hash_node<>): Inherits _Hash_node_base<> and _Hash_node_value<>.
   2301  1.1  mrg 	(_Map_base<>::__node_type): Remove.
   2302  1.1  mrg 	(_Map_base<>::iterator): Remove.
   2303  1.1  mrg 	(_Insert_base<>::__hash_cached): New.
   2304  1.1  mrg 	(_Insert_base<>::__constant_iterators): New.
   2305  1.1  mrg 	(_Insert_base<>::__hashtable_alloc): New.
   2306  1.1  mrg 	(_Insert_base<>::__node_type): Remove.
   2307  1.1  mrg 	(_Insert_base<>::__node_ptr): New.
   2308  1.1  mrg 	(_Hash_code_base<>): Remove specializations.
   2309  1.1  mrg 	(_Hash_code_base<>::__node_type): Remove.
   2310  1.1  mrg 	(_Hash_code_base<>::_M_bucket_index(const __node_type*, size_t)):
   2311  1.1  mrg 	Replace by...
   2312  1.1  mrg 	(_Hash_code_base<>::_M_bucket_index(const _Hash_node_value<>&, size_t)):
   2313  1.1  mrg 	...this.
   2314  1.1  mrg 	(_Hash_code_base<>::_M_store_code(__node_type*, __hash_code)):
   2315  1.1  mrg 	Replace by...
   2316  1.1  mrg 	(_Hash_code_base<>::_M_store_code(_Hash_node_code_cache<>&, __hash_code)):
   2317  1.1  mrg 	...this.
   2318  1.1  mrg 	(_Hash_code_base<>::_M_copy_code(__node_type*, const __node_type*)):
   2319  1.1  mrg 	Replace by...
   2320  1.1  mrg 	(_Hash_code_base<>::_M_copy_code(_Hash_node_code_cache<>&,
   2321  1.1  mrg 	const _Hash_node_code_base<>&)): ...this.
   2322  1.1  mrg 	(_Hashtable_base<>::__constant_iterators): Remove.
   2323  1.1  mrg 	(_Hashtable_base<>::__unique_keys): Remove.
   2324  1.1  mrg 	(_Hashtable_base<>::__node_type): Remove.
   2325  1.1  mrg 	(_Hashtable_base<>::iterator): Remove.
   2326  1.1  mrg 	(_Hashtable_base<>::const_iterator): Remove.
   2327  1.1  mrg 	(_Hashtable_base<>::local_iterator): Remove.
   2328  1.1  mrg 	(_Hashtable_base<>::const_local_iterator): Remove.
   2329  1.1  mrg 	(_Hashtable_base<>::__ireturn_type): Remove.
   2330  1.1  mrg 	(_Hashtable_base<>::_Equal_hash_code<>::_S_equals): Replace by...
   2331  1.1  mrg 	(_Hashtable_base<>::_S_equals(__hash_code, const _Hash_node_code_hash<>&)):
   2332  1.1  mrg 	...this.
   2333  1.1  mrg 	(_Hashtable_base<>::_Equal_hash_code<>::_S_node_equals): Replace by...
   2334  1.1  mrg 	(_Hashtable_base<>::_S_node_equals(__hash_code,
   2335  1.1  mrg 	const _Hash_node_code_hash<>&)): ...this.
   2336  1.1  mrg 	(_Hashtable_base<>::_Equal_hash_code<>): Remove.
   2337  1.1  mrg 	(_Hashtable_base<>::_M_equals): Adapt.
   2338  1.1  mrg 	(_Hashtable_baxe<>::_M_node_equals): Adapt.
   2339  1.1  mrg 	(_Equality<>::_M_equal): Adapt.
   2340  1.1  mrg 	(_Hashtable_alloc<>::__node_ptr): New.
   2341  1.1  mrg 	(_Hashtable_alloc<>::__bucket_type): Rename into...
   2342  1.1  mrg 	(_Hashtable_alloc<>::__node_base_ptr): ...this.
   2343  1.1  mrg 	(_Hashtable_alloc<>::__bucket_alloc_type): Rename into...
   2344  1.1  mrg 	(_Hashtable_alloc<>::__buckets_alloc_type): ...this.
   2345  1.1  mrg 	(_Hashtable_alloc<>::__bucket_alloc_traits): Rename into...
   2346  1.1  mrg 	(_Hashtable_alloc<>::__buckets_alloc_traits): ...this.
   2347  1.1  mrg 	(_Hashtable_alloc<>::__buckets_ptr): New.
   2348  1.1  mrg 	(_Hashtable_alloc<>::_M_allocate_node): Adapt.
   2349  1.1  mrg 	(_Hashtable_alloc<>::_M_deallocate_node): Adapt.
   2350  1.1  mrg 	(_Hashtable_alloc<>::_M_deallocate_node_ptr): Adapt.
   2351  1.1  mrg 	(_Hashtable_alloc<>::_M_deallocate_nodes): Adapt.
   2352  1.1  mrg 	(_Hashtable_alloc<>::_M_allocate_buckets): Adapt.
   2353  1.1  mrg 	(_Hashtable_alloc<>::_M_deallocate_buckets): Adapt.
   2354  1.1  mrg 	* include/bits/hashtable.h (_Hashtable<>): Adapt.
   2355  1.1  mrg 
   2356  1.1  mrg 2020-10-20  Aldy Hernandez  <aldyh (a] redhat.com>
   2357  1.1  mrg 
   2358  1.1  mrg 	* testsuite/21_strings/basic_string/capacity/1.cc: Pass
   2359  1.1  mrg 	-Wno-stringop-overflow to test.
   2360  1.1  mrg 
   2361  1.1  mrg 2020-10-20  Jonathan Wakely  <jwakely (a] redhat.com>
   2362  1.1  mrg 
   2363  1.1  mrg 	PR libstdc++/95917
   2364  1.1  mrg 	* include/std/coroutine (__noop_coro_frame): Replace with
   2365  1.1  mrg 	noop_coroutine_handle::__frame.
   2366  1.1  mrg 	(__dummy_resume_destroy): Define inline in __frame.
   2367  1.1  mrg 	(__noop_coro_fr): Replace with noop_coroutine_handle::_S_fr
   2368  1.1  mrg 	and define as inline.
   2369  1.1  mrg 	* testsuite/18_support/coroutines/95917.cc: New test.
   2370  1.1  mrg 
   2371  1.1  mrg 2020-10-20  Jonathan Wakely  <jwakely (a] redhat.com>
   2372  1.1  mrg 
   2373  1.1  mrg 	* include/std/coroutine (coroutine_handle<_Promise>): Remove
   2374  1.1  mrg 	base class. Add constructors, conversions, accessors etc. as
   2375  1.1  mrg 	proposed for LWG 3460.
   2376  1.1  mrg 	(coroutine_handle<noop_coroutine_promise>): Likewise.
   2377  1.1  mrg 	* testsuite/18_support/coroutines/lwg3460.cc: New test.
   2378  1.1  mrg 
   2379  1.1  mrg 2020-10-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2380  1.1  mrg 
   2381  1.1  mrg 	* include/bits/unique_ptr.h (make_unique_for_overwrite): Define
   2382  1.1  mrg 	for C++20.
   2383  1.1  mrg 	* testsuite/20_util/unique_ptr/creation/array_neg.cc: Remove
   2384  1.1  mrg 	unused header. Adjust standard reference.
   2385  1.1  mrg 	* testsuite/20_util/unique_ptr/creation/for_overwrite.cc: New test.
   2386  1.1  mrg 	* testsuite/20_util/unique_ptr/creation/for_overwrite__neg.cc: New test.
   2387  1.1  mrg 
   2388  1.1  mrg 2020-10-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2389  1.1  mrg 
   2390  1.1  mrg 	* include/std/tuple (_Head_base<Idx, Head, true>): Use reserved
   2391  1.1  mrg 	form of __no_unique_address__ attribute because
   2392  1.1  mrg 	no_unique_address is not reserved prior to C++20.
   2393  1.1  mrg 
   2394  1.1  mrg 2020-10-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2395  1.1  mrg 
   2396  1.1  mrg 	* include/bits/node_handle.h (_Node_handle_common): Replace
   2397  1.1  mrg 	std::optional with custom type.
   2398  1.1  mrg 	* testsuite/20_util/variant/exception_safety.cc: Add missing
   2399  1.1  mrg 	header include.
   2400  1.1  mrg 
   2401  1.1  mrg 2020-10-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2402  1.1  mrg 
   2403  1.1  mrg 	* include/precompiled/expc++.h: Removed.
   2404  1.1  mrg 
   2405  1.1  mrg 2020-10-17  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2406  1.1  mrg 
   2407  1.1  mrg 	PR libstdc++/97449
   2408  1.1  mrg 	* include/std/variant
   2409  1.1  mrg 	(__gen_vtable_impl<>::_S_apply_single_alt):
   2410  1.1  mrg 	Diagnose visitor return type mismatches here..
   2411  1.1  mrg 	(__gen_vtable_impl</*base case*/>::_S_apply):
   2412  1.1  mrg 	..not here.
   2413  1.1  mrg 
   2414  1.1  mrg 2020-10-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2415  1.1  mrg 
   2416  1.1  mrg 	* include/std/concepts: Fix typos in copyright notice.
   2417  1.1  mrg 	* include/std/ranges: Likewise.
   2418  1.1  mrg 
   2419  1.1  mrg 2020-10-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2420  1.1  mrg 
   2421  1.1  mrg 	PR libstdc++/97415
   2422  1.1  mrg 	* include/std/sstream (basic_stringbuf::str()): Check for
   2423  1.1  mrg 	null egptr() before comparing to non-null pptr().
   2424  1.1  mrg 
   2425  1.1  mrg 2020-10-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2426  1.1  mrg 
   2427  1.1  mrg 	* testsuite/21_strings/basic_string/modifiers/assign/char/move_assign_optim.cc:
   2428  1.1  mrg 	Do not generate debug info.
   2429  1.1  mrg 	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/move_assign_optim.cc:
   2430  1.1  mrg 	Likewise.
   2431  1.1  mrg 
   2432  1.1  mrg 2020-10-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2433  1.1  mrg 
   2434  1.1  mrg 	* include/bits/basic_string.h (basic_string(const Alloc&))
   2435  1.1  mrg 	(basic_string(const basic_string&)
   2436  1.1  mrg 	(basic_string(const CharT*, size_type, const Alloc&))
   2437  1.1  mrg 	(basic_string(const CharT*, const Alloc&))
   2438  1.1  mrg 	(basic_string(size_type, CharT, const Alloc&))
   2439  1.1  mrg 	(basic_string(initializer_list<CharT>, const Alloc&))
   2440  1.1  mrg 	(basic_string(InputIterator, InputIterator, const Alloc&)):
   2441  1.1  mrg 	Define inline in class body.
   2442  1.1  mrg 	* include/bits/basic_string.tcc (basic_string(const Alloc&))
   2443  1.1  mrg 	(basic_string(const basic_string&)
   2444  1.1  mrg 	(basic_string(const CharT*, size_type, const Alloc&))
   2445  1.1  mrg 	(basic_string(const CharT*, const Alloc&))
   2446  1.1  mrg 	(basic_string(size_type, CharT, const Alloc&))
   2447  1.1  mrg 	(basic_string(initializer_list<CharT>, const Alloc&))
   2448  1.1  mrg 	(basic_string(InputIterator, InputIterator, const Alloc&)):
   2449  1.1  mrg 	Move definitions into class body.
   2450  1.1  mrg 
   2451  1.1  mrg 2020-10-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2452  1.1  mrg 
   2453  1.1  mrg 	* testsuite/lib/libstdc++.exp (check_effective_target_cxx11-abi):
   2454  1.1  mrg 	Add comments about which test flags get used by the check.
   2455  1.1  mrg 
   2456  1.1  mrg 2020-10-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2457  1.1  mrg 
   2458  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/char/copy.cc: Make
   2459  1.1  mrg 	comment more precise about what isn't supported by COW strings.
   2460  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
   2461  1.1  mrg 	Likewise.
   2462  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/char/move.cc:
   2463  1.1  mrg 	Likewise.
   2464  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
   2465  1.1  mrg 	Likewise.
   2466  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/char/noexcept.cc:
   2467  1.1  mrg 	Likewise.
   2468  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/char/operator_plus.cc:
   2469  1.1  mrg 	Likewise.
   2470  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/char/swap.cc:
   2471  1.1  mrg 	Likewise.
   2472  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
   2473  1.1  mrg 	Likewise.
   2474  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
   2475  1.1  mrg 	Likewise.
   2476  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
   2477  1.1  mrg 	Likewise.
   2478  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
   2479  1.1  mrg 	Likewise.
   2480  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
   2481  1.1  mrg 	Likewise.
   2482  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/wchar_t/operator_plus.cc:
   2483  1.1  mrg 	Likewise.
   2484  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
   2485  1.1  mrg 	Likewise.
   2486  1.1  mrg 
   2487  1.1  mrg 2020-10-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2488  1.1  mrg 
   2489  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/char/minimal.cc:
   2490  1.1  mrg 	Do not require cxx11-abi effective target.
   2491  1.1  mrg 	* testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
   2492  1.1  mrg 	Likewise.
   2493  1.1  mrg 	* testsuite/27_io/basic_fstream/cons/base.cc: Likewise.
   2494  1.1  mrg 
   2495  1.1  mrg 2020-10-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2496  1.1  mrg 
   2497  1.1  mrg 	* include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI]
   2498  1.1  mrg 	(basic_string(const _CharT*, const _Alloc&)): Constrain to
   2499  1.1  mrg 	require an allocator-like type to fix CTAD ambiguity (LWG 3706).
   2500  1.1  mrg 	* testsuite/21_strings/basic_string/cons/char/deduction.cc:
   2501  1.1  mrg 	Remove dg-skip-if.
   2502  1.1  mrg 	* testsuite/21_strings/basic_string/cons/wchar_t/deduction.cc:
   2503  1.1  mrg 	Likewise.
   2504  1.1  mrg 
   2505  1.1  mrg 2020-10-13  Nuno Lopes  <nuno.lopes (a] ist.utl.pt>
   2506  1.1  mrg 
   2507  1.1  mrg 	* include/bits/stl_algo.h (any_of): Fix incorrect description
   2508  1.1  mrg 	in comment.
   2509  1.1  mrg 
   2510  1.1  mrg 2020-10-13  Jonathan Wakely  <jwakely (a] redhat.com>
   2511  1.1  mrg 
   2512  1.1  mrg 	* doc/xml/manual/evolution.xml: Document some API changes
   2513  1.1  mrg 	and deprecations.
   2514  1.1  mrg 	* doc/xml/manual/intro.xml: Document LWG 2499.
   2515  1.1  mrg 	* doc/xml/manual/status_cxx2020.xml: Update status.
   2516  1.1  mrg 	* doc/html/*: Regenerate.
   2517  1.1  mrg 
   2518  1.1  mrg 2020-10-13  Jonathan Wakely  <jwakely (a] redhat.com>
   2519  1.1  mrg 
   2520  1.1  mrg 	* doc/xml/book.txml: Remove trailing whitespace.
   2521  1.1  mrg 	* doc/xml/chapter.txml: Likewise.
   2522  1.1  mrg 	* doc/xml/class.txml: Likewise.
   2523  1.1  mrg 	* doc/xml/gnu/fdl-1.3.xml: Likewise.
   2524  1.1  mrg 	* doc/xml/gnu/gpl-3.0.xml: Likewise.
   2525  1.1  mrg 	* doc/xml/manual/abi.xml: Likewise.
   2526  1.1  mrg 	* doc/xml/manual/algorithms.xml: Likewise.
   2527  1.1  mrg 	* doc/xml/manual/allocator.xml: Likewise.
   2528  1.1  mrg 	* doc/xml/manual/appendix_contributing.xml: Likewise.
   2529  1.1  mrg 	* doc/xml/manual/appendix_free.xml: Likewise.
   2530  1.1  mrg 	* doc/xml/manual/appendix_porting.xml: Likewise.
   2531  1.1  mrg 	* doc/xml/manual/atomics.xml: Likewise.
   2532  1.1  mrg 	* doc/xml/manual/auto_ptr.xml: Likewise.
   2533  1.1  mrg 	* doc/xml/manual/backwards_compatibility.xml: Likewise.
   2534  1.1  mrg 	* doc/xml/manual/bitmap_allocator.xml: Likewise.
   2535  1.1  mrg 	* doc/xml/manual/build_hacking.xml: Likewise.
   2536  1.1  mrg 	* doc/xml/manual/codecvt.xml: Likewise.
   2537  1.1  mrg 	* doc/xml/manual/concurrency.xml: Likewise.
   2538  1.1  mrg 	* doc/xml/manual/concurrency_extensions.xml: Likewise.
   2539  1.1  mrg 	* doc/xml/manual/configure.xml: Likewise.
   2540  1.1  mrg 	* doc/xml/manual/containers.xml: Likewise.
   2541  1.1  mrg 	* doc/xml/manual/ctype.xml: Likewise.
   2542  1.1  mrg 	* doc/xml/manual/debug.xml: Likewise.
   2543  1.1  mrg 	* doc/xml/manual/debug_mode.xml: Likewise.
   2544  1.1  mrg 	* doc/xml/manual/diagnostics.xml: Likewise.
   2545  1.1  mrg 	* doc/xml/manual/documentation_hacking.xml: Likewise.
   2546  1.1  mrg 	* doc/xml/manual/evolution.xml: Likewise.
   2547  1.1  mrg 	* doc/xml/manual/internals.xml: Likewise.
   2548  1.1  mrg 	* doc/xml/manual/intro.xml: Likewise.
   2549  1.1  mrg 	* doc/xml/manual/io.xml: Likewise.
   2550  1.1  mrg 	* doc/xml/manual/iterators.xml: Likewise.
   2551  1.1  mrg 	* doc/xml/manual/locale.xml: Likewise.
   2552  1.1  mrg 	* doc/xml/manual/localization.xml: Likewise.
   2553  1.1  mrg 	* doc/xml/manual/messages.xml: Likewise.
   2554  1.1  mrg 	* doc/xml/manual/mt_allocator.xml: Likewise.
   2555  1.1  mrg 	* doc/xml/manual/numerics.xml: Likewise.
   2556  1.1  mrg 	* doc/xml/manual/parallel_mode.xml: Likewise.
   2557  1.1  mrg 	* doc/xml/manual/policy_data_structures.xml: Likewise.
   2558  1.1  mrg 	* doc/xml/manual/prerequisites.xml: Likewise.
   2559  1.1  mrg 	* doc/xml/manual/shared_ptr.xml: Likewise.
   2560  1.1  mrg 	* doc/xml/manual/spine.xml: Likewise.
   2561  1.1  mrg 	* doc/xml/manual/status_cxxtr1.xml: Likewise.
   2562  1.1  mrg 	* doc/xml/manual/status_cxxtr24733.xml: Likewise.
   2563  1.1  mrg 	* doc/xml/manual/strings.xml: Likewise.
   2564  1.1  mrg 	* doc/xml/manual/support.xml: Likewise.
   2565  1.1  mrg 	* doc/xml/manual/test.xml: Likewise.
   2566  1.1  mrg 	* doc/xml/manual/test_policy_data_structures.xml: Likewise.
   2567  1.1  mrg 	* doc/xml/manual/using.xml: Likewise.
   2568  1.1  mrg 	* doc/xml/manual/using_exceptions.xml: Likewise.
   2569  1.1  mrg 	* doc/xml/manual/utilities.xml: Likewise.
   2570  1.1  mrg 	* doc/html/*: Regenerate.
   2571  1.1  mrg 
   2572  1.1  mrg 2020-10-12  Patrick Palka  <ppalka (a] redhat.com>
   2573  1.1  mrg 
   2574  1.1  mrg 	* include/std/ranges (take_while_view::begin): Constrain the
   2575  1.1  mrg 	const overload further as per LWG 3450.
   2576  1.1  mrg 	(take_while_view::end): Likewise.
   2577  1.1  mrg 	* testsuite/std/ranges/adaptors/take_while.cc: Add test for LWG
   2578  1.1  mrg 	3450.
   2579  1.1  mrg 
   2580  1.1  mrg 2020-10-12  Patrick Palka  <ppalka (a] redhat.com>
   2581  1.1  mrg 
   2582  1.1  mrg 	PR libstdc++/95322
   2583  1.1  mrg 	* include/std/ranges (take_view::_CI): Define this alias
   2584  1.1  mrg 	template as per LWG 3449 and remove ...
   2585  1.1  mrg 	(take_view::_Sentinel::_CI): ... this type alias.
   2586  1.1  mrg 	(take_view::_Sentinel::operator==): Adjust use of _CI
   2587  1.1  mrg 	accordingly.  Define a second overload that accepts an iterator
   2588  1.1  mrg 	of the opposite constness as per LWG 3449.
   2589  1.1  mrg 	(take_while_view::_Sentinel::operator==): Likewise.
   2590  1.1  mrg 	* testsuite/std/ranges/adaptors/95322.cc: Add tests for LWG 3449.
   2591  1.1  mrg 
   2592  1.1  mrg 2020-10-12  Jonathan Wakely  <jwakely (a] redhat.com>
   2593  1.1  mrg 
   2594  1.1  mrg 	* doc/doxygen/user.cfg.in: Update to Doxygen 1.8.20 format.
   2595  1.1  mrg 
   2596  1.1  mrg 2020-10-12  Jonathan Wakely  <jwakely (a] redhat.com>
   2597  1.1  mrg 
   2598  1.1  mrg 	* doc/doxygen/user.cfg.in (PREDEFINED): Use __cplusplus=201703L
   2599  1.1  mrg 	so that C++17 features are documented.
   2600  1.1  mrg 
   2601  1.1  mrg 2020-10-12  Jonathan Wakely  <jwakely (a] redhat.com>
   2602  1.1  mrg 
   2603  1.1  mrg 	* include/bits/stl_algobase.h (copy, move, copy_backward)
   2604  1.1  mrg 	(move_backward): Fix documentation for returned iterator.
   2605  1.1  mrg 
   2606  1.1  mrg 2020-10-12  Martin Sebor  <msebor (a] redhat.com>
   2607  1.1  mrg 
   2608  1.1  mrg 	PR c++/97201
   2609  1.1  mrg 	* libsupc++/new (operator new): Add attribute alloc_size and malloc.
   2610  1.1  mrg 
   2611  1.1  mrg 2020-10-11  Clement Chigot  <clement.chigot (a] atos.net>
   2612  1.1  mrg 
   2613  1.1  mrg 	* config/os/aix/t-aix: Add complementary mode object file to
   2614  1.1  mrg 	libstdc++fs.a
   2615  1.1  mrg 
   2616  1.1  mrg 2020-10-10  Jonathan Wakely  <jwakely (a] redhat.com>
   2617  1.1  mrg 
   2618  1.1  mrg 	PR libstdc++/97362
   2619  1.1  mrg 	* doc/html/manual/source_code_style.html: Regenerate.
   2620  1.1  mrg 	* doc/xml/manual/appendix_contributing.xml: Add __deref to
   2621  1.1  mrg 	BADNAMES.
   2622  1.1  mrg 	* include/debug/functions.h (_Irreflexive_checker::__deref):
   2623  1.1  mrg 	Rename to __ref.
   2624  1.1  mrg 	* testsuite/17_intro/badnames.cc: Check __deref.
   2625  1.1  mrg 
   2626  1.1  mrg 2020-10-10  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2627  1.1  mrg 
   2628  1.1  mrg 	* include/std/variant (__check_visitor_result):
   2629  1.1  mrg 	Use size_t for indexes.
   2630  1.1  mrg 	(__check_visitor_results): Likewise.
   2631  1.1  mrg 
   2632  1.1  mrg 2020-10-09  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   2633  1.1  mrg 
   2634  1.1  mrg 	PR libstdc++/95904
   2635  1.1  mrg 	* include/std/variant (__deduce_visit_result): Add a nested ::type.
   2636  1.1  mrg 	(__gen_vtable_impl</*base case*/>::_S_apply):
   2637  1.1  mrg 	Check the visitor return type.
   2638  1.1  mrg 	(__same_types): New.
   2639  1.1  mrg 	(__check_visitor_result): Likewise.
   2640  1.1  mrg 	(__check_visitor_results): Likewise.
   2641  1.1  mrg 	(visit(_Visitor&&, _Variants&&...)): Use __check_visitor_results
   2642  1.1  mrg 	in case we're visiting just one variant.
   2643  1.1  mrg 	* testsuite/20_util/variant/visit_neg.cc: Adjust.
   2644  1.1  mrg 
   2645  1.1  mrg 2020-10-09  Jonathan Wakely  <jwakely (a] redhat.com>
   2646  1.1  mrg 
   2647  1.1  mrg 	PR libstdc++/97311
   2648  1.1  mrg 	* include/bits/random.tcc (seed_seq::generate): Use uint32_t for
   2649  1.1  mrg 	calculations. Also split the first loop into three loops to
   2650  1.1  mrg 	avoid branching on k on every iteration, resolving PR 94823.
   2651  1.1  mrg 	* testsuite/26_numerics/random/seed_seq/97311.cc: New test.
   2652  1.1  mrg 	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-erro
   2653  1.1  mrg 	line number.
   2654  1.1  mrg 
   2655  1.1  mrg 2020-10-09  Daniel Lemire  <lemire (a] gmail.com>
   2656  1.1  mrg 
   2657  1.1  mrg 	* include/bits/uniform_int_dist.h (uniform_int_distribution::_S_nd):
   2658  1.1  mrg 	New member function implementing Lemire's "nearly divisionless"
   2659  1.1  mrg 	algorithm.
   2660  1.1  mrg 	(uniform_int_distribution::operator()): Use _S_nd when the range
   2661  1.1  mrg 	of the URBG is the full width of the result type.
   2662  1.1  mrg 
   2663  1.1  mrg 2020-10-09  Jonathan Wakely  <jwakely (a] redhat.com>
   2664  1.1  mrg 
   2665  1.1  mrg 	* testsuite/Makefile.am: Set and export variable separately.
   2666  1.1  mrg 	* testsuite/Makefile.in: Regenerate.
   2667  1.1  mrg 
   2668  1.1  mrg 2020-10-09  Jonathan Wakely  <jwakely (a] redhat.com>
   2669  1.1  mrg 
   2670  1.1  mrg 	* scripts/check_performance: Use gnu++11 instead of gnu++0x.
   2671  1.1  mrg 	* testsuite/Makefile.am (check-performance): Export CXXFLAGS to
   2672  1.1  mrg 	child process.
   2673  1.1  mrg 	* testsuite/Makefile.in: Regenerate.
   2674  1.1  mrg 
   2675  1.1  mrg 2020-10-09  Jonathan Wakely  <jwakely (a] redhat.com>
   2676  1.1  mrg 
   2677  1.1  mrg 	* testsuite/performance/26_numerics/random_dist.cc: New test.
   2678  1.1  mrg 
   2679  1.1  mrg 2020-10-09  Jonathan Wakely  <jwakely (a] redhat.com>
   2680  1.1  mrg 
   2681  1.1  mrg 	* testsuite/util/testsuite_performance.h (report_header): Remove
   2682  1.1  mrg 	unused variable.
   2683  1.1  mrg 
   2684  1.1  mrg 2020-10-08  Patrick Palka  <ppalka (a] redhat.com>
   2685  1.1  mrg 
   2686  1.1  mrg 	PR libstdc++/95788
   2687  1.1  mrg 	* include/bits/ranges_uninitialized.h:
   2688  1.1  mrg 	(__construct_at_fn::operator()): Rewrite in terms of
   2689  1.1  mrg 	std::construct_at.  Declare it conditionally noexcept.  Qualify
   2690  1.1  mrg 	calls to declval in its requires-clause.
   2691  1.1  mrg 	* testsuite/20_util/specialized_algorithms/construct_at/95788.cc:
   2692  1.1  mrg 	New test.
   2693  1.1  mrg 
   2694  1.1  mrg 2020-10-08  Jonathan Wakely  <jwakely (a] redhat.com>
   2695  1.1  mrg 
   2696  1.1  mrg 	PR libstdc++/82584
   2697  1.1  mrg 	* include/bits/random.tcc
   2698  1.1  mrg 	(discrete_distribution::param_type::_M_initialize)
   2699  1.1  mrg 	(piecewise_constant_distribution::param_type::_M_initialize)
   2700  1.1  mrg 	(piecewise_linear_distribution::param_type::_M_initialize):
   2701  1.1  mrg 	Add assertions for positive sums..
   2702  1.1  mrg 	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
   2703  1.1  mrg 	line.
   2704  1.1  mrg 
   2705  1.1  mrg 2020-10-08  Jonathan Wakely  <jwakely (a] redhat.com>
   2706  1.1  mrg 
   2707  1.1  mrg 	* include/bits/ios_base.h (ios_base::failure): Add constructors
   2708  1.1  mrg 	takeing error_code argument. Add code() member function.
   2709  1.1  mrg 	* testsuite/27_io/ios_base/failure/cxx11.cc: Allow test to
   2710  1.1  mrg 	run for the old ABI but do not check for derivation from
   2711  1.1  mrg 	std::system_error.
   2712  1.1  mrg 	* testsuite/27_io/ios_base/failure/error_code.cc: New test.
   2713  1.1  mrg 
   2714  1.1  mrg 2020-10-08  Jonathan Wakely  <jwakely (a] redhat.com>
   2715  1.1  mrg 
   2716  1.1  mrg 	* include/bits/random.h (__detail::_Mod): Revert last change.
   2717  1.1  mrg 	(__detail::__mod): Do not use _Mod for a==0 case.
   2718  1.1  mrg 	* testsuite/26_numerics/random/linear_congruential_engine/operators/call.cc:
   2719  1.1  mrg 	Check other cases with a==0. Also check runtime results.
   2720  1.1  mrg 	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
   2721  1.1  mrg 	line.
   2722  1.1  mrg 
   2723  1.1  mrg 2020-10-07  Jonathan Wakely  <jwakely (a] redhat.com>
   2724  1.1  mrg 
   2725  1.1  mrg 	* include/bits/random.h (__detail::_Mod): Avoid divide by zero.
   2726  1.1  mrg 	* testsuite/26_numerics/random/linear_congruential_engine/operators/call.cc:
   2727  1.1  mrg 	New test.
   2728  1.1  mrg 
   2729  1.1  mrg 2020-10-07  Jonathan Wakely  <jwakely (a] redhat.com>
   2730  1.1  mrg 
   2731  1.1  mrg 	* include/bits/random.h (seed_seq(initializer_list<T>)): Rename
   2732  1.1  mrg 	parameter to use reserved name.
   2733  1.1  mrg 	* include/bits/ranges_algo.h (shift_left, shift_right): Rename
   2734  1.1  mrg 	template parameters to use reserved name.
   2735  1.1  mrg 	* libsupc++/exception_ptr.h (exception_ptr): Likewise for
   2736  1.1  mrg 	parameters and local variables.
   2737  1.1  mrg 	* testsuite/17_intro/names.cc: Check "il". Do not check "d" and
   2738  1.1  mrg 	"y" in C++20 mode.
   2739  1.1  mrg 
   2740  1.1  mrg 2020-10-06  Jonathan Wakely  <jwakely (a] redhat.com>
   2741  1.1  mrg 
   2742  1.1  mrg 	PR libstdc++/90295
   2743  1.1  mrg 	* config/abi/pre/gnu.ver (CXXABI_1.3.13): New symbol version.
   2744  1.1  mrg 	(exception_ptr::_M_addref(), exception_ptr::_M_release()):
   2745  1.1  mrg 	Export symbols.
   2746  1.1  mrg 	* libsupc++/eh_ptr.cc (exception_ptr::exception_ptr()):
   2747  1.1  mrg 	Remove out-of-line definition.
   2748  1.1  mrg 	(exception_ptr::exception_ptr(const exception_ptr&)):
   2749  1.1  mrg 	Likewise.
   2750  1.1  mrg 	(exception_ptr::~exception_ptr()): Likewise.
   2751  1.1  mrg 	(exception_ptr::operator=(const exception_ptr&)):
   2752  1.1  mrg 	Likewise.
   2753  1.1  mrg 	(exception_ptr::swap(exception_ptr&)): Likewise.
   2754  1.1  mrg 	(exception_ptr::_M_addref()): Add branch prediction.
   2755  1.1  mrg 	* libsupc++/exception_ptr.h (exception_ptr::operator bool):
   2756  1.1  mrg 	Add noexcept.
   2757  1.1  mrg 	[!_GLIBCXX_EH_PTR_COMPAT] (operator==, operator!=): Define
   2758  1.1  mrg 	inline as hidden friends. Remove declarations at namespace
   2759  1.1  mrg 	scope.
   2760  1.1  mrg 	(exception_ptr::exception_ptr()): Define inline.
   2761  1.1  mrg 	(exception_ptr::exception_ptr(const exception_ptr&)):
   2762  1.1  mrg 	Likewise.
   2763  1.1  mrg 	(exception_ptr::~exception_ptr()): Likewise.
   2764  1.1  mrg 	(exception_ptr::operator=(const exception_ptr&)):
   2765  1.1  mrg 	Likewise.
   2766  1.1  mrg 	(exception_ptr::swap(exception_ptr&)): Likewise.
   2767  1.1  mrg 	* testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.13.
   2768  1.1  mrg 	* testsuite/18_support/exception_ptr/90295.cc: New test.
   2769  1.1  mrg 
   2770  1.1  mrg 2020-10-06  Jonathan Wakely  <jwakely (a] redhat.com>
   2771  1.1  mrg 
   2772  1.1  mrg 	* include/std/ranges (join_view): Remove deduction guide.
   2773  1.1  mrg 	(views::join): Add explicit template argument list to prevent
   2774  1.1  mrg 	deducing the wrong type.
   2775  1.1  mrg 	* testsuite/std/ranges/adaptors/join.cc: Move test for LWG 3474
   2776  1.1  mrg 	here, from ...
   2777  1.1  mrg 	* testsuite/std/ranges/adaptors/join_lwg3474.cc: Removed.
   2778  1.1  mrg 
   2779  1.1  mrg 2020-10-05  Jonathan Wakely  <jwakely (a] redhat.com>
   2780  1.1  mrg 
   2781  1.1  mrg 	* include/bits/regex.h: Use __int_traits<int> instead of
   2782  1.1  mrg 	std::numeric_limits<int>.
   2783  1.1  mrg 	* include/bits/uniform_int_dist.h: Use __int_traits<T>::__max
   2784  1.1  mrg 	instead of std::numeric_limits<T>::max().
   2785  1.1  mrg 	* include/bits/hashtable_policy.h: Use size_t(-1) instead of
   2786  1.1  mrg 	std::numeric_limits<size_t>::max().
   2787  1.1  mrg 	* include/std/regex: Include <ext/numeric_traits.h>.
   2788  1.1  mrg 	* include/std/string_view: Use typedef for __int_traits<int>.
   2789  1.1  mrg 	* src/c++11/hashtable_c++0x.cc: Use size_t(-1) instead of
   2790  1.1  mrg 	std::numeric_limits<size_t>::max().
   2791  1.1  mrg 	* testsuite/std/ranges/iota/96042.cc: Include <limits>.
   2792  1.1  mrg 	* testsuite/std/ranges/iota/difference_type.cc: Likewise.
   2793  1.1  mrg 	* testsuite/std/ranges/subrange/96042.cc: Likewise.
   2794  1.1  mrg 
   2795  1.1  mrg 2020-10-05  Jonathan Wakely  <jwakely (a] redhat.com>
   2796  1.1  mrg 
   2797  1.1  mrg 	* include/std/numeric: Move all #include directives to the top
   2798  1.1  mrg 	of the header.
   2799  1.1  mrg 	* testsuite/26_numerics/gcd/gcd_neg.cc: Adjust dg-error line
   2800  1.1  mrg 	numbers.
   2801  1.1  mrg 	* testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
   2802  1.1  mrg 
   2803  1.1  mrg 2020-10-05  Jonathan Wakely  <jwakely (a] redhat.com>
   2804  1.1  mrg 
   2805  1.1  mrg 	* config/abi/pre/gnu.ver: Add new symbol.
   2806  1.1  mrg 	* include/bits/functexcept.h (__throw_bad_array_new_length):
   2807  1.1  mrg 	Declare new function.
   2808  1.1  mrg 	* include/ext/malloc_allocator.h (malloc_allocator::allocate):
   2809  1.1  mrg 	Throw bad_array_new_length for impossible sizes (LWG 3190).
   2810  1.1  mrg 	* include/ext/new_allocator.h (new_allocator::allocate):
   2811  1.1  mrg 	Likewise.
   2812  1.1  mrg 	* include/std/memory_resource (polymorphic_allocator::allocate)
   2813  1.1  mrg 	(polymorphic_allocator::allocate_object): Use new function,
   2814  1.1  mrg 	__throw_bad_array_new_length.
   2815  1.1  mrg 	* src/c++11/functexcept.cc (__throw_bad_array_new_length):
   2816  1.1  mrg 	Define.
   2817  1.1  mrg 	* testsuite/20_util/allocator/lwg3190.cc: New test.
   2818  1.1  mrg 
   2819  1.1  mrg 2020-10-05  Mike Crowe  <mac (a] mcrowe.com>
   2820  1.1  mrg 
   2821  1.1  mrg 	PR libstdc++/91486
   2822  1.1  mrg 	* include/bits/atomic_futex.h:
   2823  1.1  mrg 	(__atomic_futex_unsigned::_M_load_when_equal_until): Use target
   2824  1.1  mrg 	clock duration type when rounding.
   2825  1.1  mrg 	* testsuite/30_threads/async/async.cc (test_pr91486_wait_for):
   2826  1.1  mrg 	Rename from test_pr91486.
   2827  1.1  mrg 	(float_steady_clock): New class for test.
   2828  1.1  mrg 	(test_pr91486_wait_until): New test.
   2829  1.1  mrg 
   2830  1.1  mrg 2020-10-05  Mike Crowe  <mac (a] mcrowe.com>
   2831  1.1  mrg 
   2832  1.1  mrg 	* testsuite/20_util/duration_cast/rounding_c++11.cc: Copy
   2833  1.1  mrg 	rounding.cc and alter to support compilation for C++11 and to
   2834  1.1  mrg 	test std::chrono::__detail::ceil.
   2835  1.1  mrg 
   2836  1.1  mrg 2020-10-02  Jonathan Wakely  <jwakely (a] redhat.com>
   2837  1.1  mrg 
   2838  1.1  mrg 	* testsuite/29_atomics/atomic_float/value_init.cc: Use float
   2839  1.1  mrg 	instead of double so that __atomic_load_8 isn't needed.
   2840  1.1  mrg 
   2841  1.1  mrg 2020-10-02  Jonathan Wakely  <jwakely (a] redhat.com>
   2842  1.1  mrg 
   2843  1.1  mrg 	* testsuite/18_support/96817.cc: Use terminate handler that
   2844  1.1  mrg 	calls _Exit(0).
   2845  1.1  mrg 
   2846  1.1  mrg 2020-10-02  Patrick Palka  <ppalka (a] redhat.com>
   2847  1.1  mrg 
   2848  1.1  mrg 	* include/bits/stl_iterator.h (reverse_iterator::iter_move):
   2849  1.1  mrg 	Define for C++20 as per P0896.
   2850  1.1  mrg 	(reverse_iterator::iter_swap): Likewise.
   2851  1.1  mrg 	(move_iterator::operator*): Apply P0896 changes for C++20.
   2852  1.1  mrg 	(move_iterator::operator[]): Likewise.
   2853  1.1  mrg 	* testsuite/24_iterators/reverse_iterator/cust.cc: New test.
   2854  1.1  mrg 
   2855  1.1  mrg 2020-10-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2856  1.1  mrg 
   2857  1.1  mrg 	* config/cpu/arm/cxxabi_tweaks.h (_GLIBCXX_GUARD_TEST_AND_ACQUIRE):
   2858  1.1  mrg 	Do not try to dereference return value of __atomic_load_n.
   2859  1.1  mrg 
   2860  1.1  mrg 2020-09-30  Jonathan Wakely  <jwakely (a] redhat.com>
   2861  1.1  mrg 
   2862  1.1  mrg 	* config/cpu/arm/cxxabi_tweaks.h (_GLIBCXX_GUARD_TEST_AND_ACQUIRE):
   2863  1.1  mrg 	(_GLIBCXX_GUARD_SET_AND_RELEASE): Define for EABI.
   2864  1.1  mrg 
   2865  1.1  mrg 2020-09-30  Jonathan Wakely  <jwakely (a] redhat.com>
   2866  1.1  mrg 
   2867  1.1  mrg 	* include/bits/c++config (_GLIBCXX_HAVE_BUILTIN_IS_SAME):
   2868  1.1  mrg 	Define for GCC 11 or when !__is_identifier(__is_same).
   2869  1.1  mrg 	(_GLIBCXX_BUILTIN_IS_SAME_AS): Remove.
   2870  1.1  mrg 	* include/std/type_traits (is_same, is_same_v): Replace uses
   2871  1.1  mrg 	of _GLIBCXX_BUILTIN_IS_SAME_AS.
   2872  1.1  mrg 
   2873  1.1  mrg 2020-09-28  Patrick Palka  <ppalka (a] redhat.com>
   2874  1.1  mrg 
   2875  1.1  mrg 	* include/std/ranges (filter_view): Declare the data member
   2876  1.1  mrg 	_M_base last instead of first, and adjust constructors' member
   2877  1.1  mrg 	initializer lists accordingly.
   2878  1.1  mrg 	(transform_view): Likewise.
   2879  1.1  mrg 	(take_view): Likewise.
   2880  1.1  mrg 	(take_while_view): Likewise.
   2881  1.1  mrg 	(drop_view): Likewise.
   2882  1.1  mrg 	(drop_while_view): Likewise.
   2883  1.1  mrg 	(join_view): Likewise.
   2884  1.1  mrg 	(split_view): Likewise (and tweak nearby formatting).
   2885  1.1  mrg 	(reverse_view): Likewise.
   2886  1.1  mrg 	* testsuite/std/ranges/adaptors/sizeof.cc: Update expected
   2887  1.1  mrg 	sizes.
   2888  1.1  mrg 
   2889  1.1  mrg 2020-09-28  Patrick Palka  <ppalka (a] redhat.com>
   2890  1.1  mrg 
   2891  1.1  mrg 	* testsuite/std/ranges/adaptors/sizeof.cc: New test.
   2892  1.1  mrg 
   2893  1.1  mrg 2020-09-28  Patrick Palka  <ppalka (a] redhat.com>
   2894  1.1  mrg 
   2895  1.1  mrg 	* include/bits/ranges_util.h (subrange::_M_end): Give it
   2896  1.1  mrg 	[[no_unique_address]].
   2897  1.1  mrg 	* testsuite/std/ranges/subrange/sizeof.cc: New test.
   2898  1.1  mrg 
   2899  1.1  mrg 2020-09-28  Patrick Palka  <ppalka (a] redhat.com>
   2900  1.1  mrg 
   2901  1.1  mrg 	* include/std/ranges (iota_view::_M_bound): Give it
   2902  1.1  mrg 	[[no_unique_address]].
   2903  1.1  mrg 	* testsuite/std/ranges/iota/iota_view.cc: Check that an
   2904  1.1  mrg 	unbounded iota_view has minimal size.
   2905  1.1  mrg 
   2906  1.1  mrg 2020-09-27  Clement Chigot  <clement.chigot (a] atos.net>
   2907  1.1  mrg 
   2908  1.1  mrg 	* config/os/aix/t-aix: Use $(AR) without -X32_64.
   2909  1.1  mrg 
   2910  1.1  mrg 2020-09-26  Jonathan Wakely  <jwakely (a] redhat.com>
   2911  1.1  mrg 
   2912  1.1  mrg 	PR libstdc++/96817
   2913  1.1  mrg 	* include/ext/atomicity.h (__gnu_cxx::__is_single_threaded()):
   2914  1.1  mrg 	New function wrapping __libc_single_threaded if available.
   2915  1.1  mrg 	(__exchange_and_add_dispatch, __atomic_add_dispatch): Use it.
   2916  1.1  mrg 	* libsupc++/guard.cc (__cxa_guard_acquire, __cxa_guard_abort)
   2917  1.1  mrg 	(__cxa_guard_release): Likewise.
   2918  1.1  mrg 	* testsuite/18_support/96817.cc: New test.
   2919  1.1  mrg 
   2920  1.1  mrg 2020-09-25  Jonathan Wakely  <jwakely (a] redhat.com>
   2921  1.1  mrg 
   2922  1.1  mrg 	* libsupc++/Makefile.am: Remove redundant -std=gnu++1z flags.
   2923  1.1  mrg 	* libsupc++/Makefile.in: Regenerate.
   2924  1.1  mrg 
   2925  1.1  mrg 2020-09-24  Antony Polukhin  <antoshkka (a] gmail.com>
   2926  1.1  mrg 
   2927  1.1  mrg 	PR libstdc++/71579
   2928  1.1  mrg 	* include/std/type_traits (invoke_result, is_invocable)
   2929  1.1  mrg 	(is_invocable_r, is_nothrow_invocable, is_nothrow_invocable_r):
   2930  1.1  mrg 	Add static_asserts to make sure that the arguments of the type
   2931  1.1  mrg 	traits are not misused with incomplete types.
   2932  1.1  mrg 	* testsuite/20_util/invoke_result/incomplete_args_neg.cc: New test.
   2933  1.1  mrg 	* testsuite/20_util/is_invocable/incomplete_args_neg.cc: New test.
   2934  1.1  mrg 	* testsuite/20_util/is_invocable/incomplete_neg.cc: New test.
   2935  1.1  mrg 	* testsuite/20_util/is_nothrow_invocable/incomplete_args_neg.cc:
   2936  1.1  mrg 	New test.
   2937  1.1  mrg 	* testsuite/20_util/is_nothrow_invocable/incomplete_neg.cc: Check
   2938  1.1  mrg 	for error on incomplete type usage in trait.
   2939  1.1  mrg 
   2940  1.1  mrg 2020-09-24  Patrick Palka  <ppalka (a] redhat.com>
   2941  1.1  mrg 
   2942  1.1  mrg 	* include/std/ranges (__detail::__boxable): Split out the
   2943  1.1  mrg 	associated constraints of __box into here.
   2944  1.1  mrg 	(__detail::__box): Use the __boxable concept.  Define a leaner
   2945  1.1  mrg 	partial specialization for semiregular types.
   2946  1.1  mrg 	(single_view::_M_value): Give it [[no_unique_address]].
   2947  1.1  mrg 	(filter_view::_M_pred): Likewise.
   2948  1.1  mrg 	(transform_view::_M_fun): Likewise.
   2949  1.1  mrg 	(take_while_view::_M_pred): Likewise.
   2950  1.1  mrg 	(drop_while_view::_M_pred):: Likewise.
   2951  1.1  mrg 	* testsuite/std/ranges/adaptors/detail/semiregular_box.cc: New
   2952  1.1  mrg 	test.
   2953  1.1  mrg 
   2954  1.1  mrg 2020-09-24  Jonathan Wakely  <jwakely (a] redhat.com>
   2955  1.1  mrg 
   2956  1.1  mrg 	* doc/xml/manual/configure.xml: Correct name of option.
   2957  1.1  mrg 	* doc/html/*: Regenerate.
   2958  1.1  mrg 
   2959  1.1  mrg 2020-09-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2960  1.1  mrg 
   2961  1.1  mrg 	PR libstdc++/97167
   2962  1.1  mrg 	* src/c++17/fs_path.cc (path::_Parser::root_path()): Check
   2963  1.1  mrg 	for empty string before inspecting the first character.
   2964  1.1  mrg 	* testsuite/27_io/filesystem/path/append/source.cc: Append
   2965  1.1  mrg 	empty string_view to path.
   2966  1.1  mrg 
   2967  1.1  mrg 2020-09-22  Glen Joseph Fernandes  <glenjofe (a] gmail.com>
   2968  1.1  mrg 
   2969  1.1  mrg 	* include/bits/align.h (align): Fix overflow handling.
   2970  1.1  mrg 	* testsuite/20_util/align/3.cc: New test.
   2971  1.1  mrg 
   2972  1.1  mrg 2020-09-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2973  1.1  mrg 
   2974  1.1  mrg 	* include/Makefile.am: Add new headers and adjust for renamed
   2975  1.1  mrg 	header.
   2976  1.1  mrg 	* include/Makefile.in: Regenerate.
   2977  1.1  mrg 	* include/bits/iterator_concepts.h: Adjust for renamed header.
   2978  1.1  mrg 	* include/bits/range_access.h (ranges::*): Move to new
   2979  1.1  mrg 	<bits/ranges_base.h> header.
   2980  1.1  mrg 	* include/bits/ranges_algobase.h: Include new <bits/ranges_base.h>
   2981  1.1  mrg 	header instead of <ranges>.
   2982  1.1  mrg 	* include/bits/ranges_algo.h: Include new <bits/ranges_util.h>
   2983  1.1  mrg 	header.
   2984  1.1  mrg 	* include/bits/range_cmp.h: Moved to...
   2985  1.1  mrg 	* include/bits/ranges_cmp.h: ...here.
   2986  1.1  mrg 	* include/bits/ranges_base.h: New header.
   2987  1.1  mrg 	* include/bits/ranges_util.h: New header.
   2988  1.1  mrg 	* include/experimental/string_view: Include new
   2989  1.1  mrg 	<bits/ranges_base.h> header.
   2990  1.1  mrg 	* include/std/functional: Adjust for renamed header.
   2991  1.1  mrg 	* include/std/ranges (ranges::view_base, ranges::enable_view)
   2992  1.1  mrg 	(ranges::dangling, ranges::borrowed_iterator_t): Move to new
   2993  1.1  mrg 	<bits/ranges_base.h> header.
   2994  1.1  mrg 	(ranges::view_interface, ranges::subrange)
   2995  1.1  mrg 	(ranges::borrowed_subrange_t): Move to new <bits/ranges_util.h>
   2996  1.1  mrg 	header.
   2997  1.1  mrg 	* include/std/span: Include new <bits/ranges_base.h> header.
   2998  1.1  mrg 	* include/std/string_view: Likewise.
   2999  1.1  mrg 	* testsuite/24_iterators/back_insert_iterator/pr93884.cc: Add
   3000  1.1  mrg 	missing <ranges> header.
   3001  1.1  mrg 	* testsuite/24_iterators/front_insert_iterator/pr93884.cc:
   3002  1.1  mrg 	Likewise.
   3003  1.1  mrg 
   3004  1.1  mrg 2020-09-22  Jonathan Wakely  <jwakely (a] redhat.com>
   3005  1.1  mrg 
   3006  1.1  mrg 	PR libstdc++/96803
   3007  1.1  mrg 	* include/std/tuple
   3008  1.1  mrg 	(_Tuple_impl(allocator_arg_t, Alloc, const _Tuple_impl<U...>&)):
   3009  1.1  mrg 	Use correct value category in __use_alloc call.
   3010  1.1  mrg 	* testsuite/20_util/tuple/cons/96803.cc: Check with constructors
   3011  1.1  mrg 	that require correct value category to be used.
   3012  1.1  mrg 
   3013  1.1  mrg 2020-09-22  Patrick Palka  <ppalka (a] redhat.com>
   3014  1.1  mrg 
   3015  1.1  mrg 	* include/std/span (span::front): Remove static_assert.
   3016  1.1  mrg 	(span::back): Likewise.
   3017  1.1  mrg 	(span::operator[]): Likewise.
   3018  1.1  mrg 	* testsuite/23_containers/span/back_neg.cc: Rewrite to verify
   3019  1.1  mrg 	that we check the preconditions of back() only when it's called.
   3020  1.1  mrg 	* testsuite/23_containers/span/front_neg.cc: Likewise for
   3021  1.1  mrg 	front().
   3022  1.1  mrg 	* testsuite/23_containers/span/index_op_neg.cc: Likewise for
   3023  1.1  mrg 	operator[].
   3024  1.1  mrg 
   3025  1.1  mrg 2020-09-22  Patrick Palka  <ppalka (a] redhat.com>
   3026  1.1  mrg 
   3027  1.1  mrg 	* include/bits/stl_algo.h (__sample): Exit early when the
   3028  1.1  mrg 	input range is empty.
   3029  1.1  mrg 	* testsuite/25_algorithms/sample/3.cc: New test.
   3030  1.1  mrg 
   3031  1.1  mrg 2020-09-22  Patrick Palka  <ppalka (a] redhat.com>
   3032  1.1  mrg 
   3033  1.1  mrg 	* include/bits/stl_algo.h (for_each_n): Mark constexpr for C++20.
   3034  1.1  mrg 	(search): Likewise for the overload that takes a searcher.
   3035  1.1  mrg 	* testsuite/25_algorithms/for_each/constexpr.cc: Test constexpr
   3036  1.1  mrg 	std::for_each_n.
   3037  1.1  mrg 	* testsuite/25_algorithms/search/constexpr.cc: Test constexpr
   3038  1.1  mrg 	std::search overload that takes a searcher.
   3039  1.1  mrg 
   3040  1.1  mrg 2020-09-21  Jonathan Wakely  <jwakely (a] redhat.com>
   3041  1.1  mrg 
   3042  1.1  mrg 	* include/bits/c++config (__replacement_assert): Add noreturn
   3043  1.1  mrg 	attribute.
   3044  1.1  mrg 	(__glibcxx_assert_impl): Use __builtin_expect to hint that the
   3045  1.1  mrg 	assertion is expected to pass.
   3046  1.1  mrg 
   3047  1.1  mrg 2020-09-21  Jonathan Wakely  <jwakely (a] redhat.com>
   3048  1.1  mrg 
   3049  1.1  mrg 	* include/std/ranges (drop_view::begin()): Adjust constraints
   3050  1.1  mrg 	to match the correct condition for O(1) ranges::next (LWG 3482).
   3051  1.1  mrg 	* testsuite/std/ranges/adaptors/drop.cc: Check that iterator is
   3052  1.1  mrg 	cached for non-sized_range.
   3053  1.1  mrg 
   3054  1.1  mrg 2020-09-21  Jonathan Wakely  <jwakely (a] redhat.com>
   3055  1.1  mrg 
   3056  1.1  mrg 	* include/std/ranges (transform_view, elements_view): Relax
   3057  1.1  mrg 	constraints on operator- for iterators, as per LWG 3483.
   3058  1.1  mrg 	* testsuite/std/ranges/adaptors/elements.cc: Check that we
   3059  1.1  mrg 	can take the difference of two iterators from a non-random
   3060  1.1  mrg 	access range.
   3061  1.1  mrg 	* testsuite/std/ranges/adaptors/transform.cc: Likewise.
   3062  1.1  mrg 
   3063  1.1  mrg 2020-09-21  Jonathan Wakely  <jwakely (a] redhat.com>
   3064  1.1  mrg 
   3065  1.1  mrg 	PR libstdc++/97132
   3066  1.1  mrg 	* include/bits/align.h (align) [!_GLIBCXX_USE_C99_STDINT_TR1]:
   3067  1.1  mrg 	Remove unused code.
   3068  1.1  mrg 	(assume_aligned): Do not use __builtin_assume_aligned during
   3069  1.1  mrg 	constant evaluation.
   3070  1.1  mrg 	* testsuite/20_util/assume_aligned/1.cc: Improve test.
   3071  1.1  mrg 	* testsuite/20_util/assume_aligned/97132.cc: New test.
   3072  1.1  mrg 
   3073  1.1  mrg 2020-09-20  Jonathan Wakely  <jwakely (a] redhat.com>
   3074  1.1  mrg 
   3075  1.1  mrg 	PR libstdc++/97101
   3076  1.1  mrg 	* include/std/functional (bind_front): Fix order of parameters
   3077  1.1  mrg 	in is_nothrow_constructible_v specialization.
   3078  1.1  mrg 	* testsuite/20_util/function_objects/bind_front/97101.cc: New test.
   3079  1.1  mrg 
   3080  1.1  mrg 2020-09-11  Thomas Rodgers  <trodgers (a] redhat.com>
   3081  1.1  mrg 
   3082  1.1  mrg 	* include/std/memory: Move #include <bits/align.h> inside C++11
   3083  1.1  mrg 	conditional includes.
   3084  1.1  mrg 
   3085  1.1  mrg 2020-09-11  Thomas Rodgers  <trodgers (a] redhat.com>
   3086  1.1  mrg 
   3087  1.1  mrg 	* include/Makefile.am (bits_headers): Add new header.
   3088  1.1  mrg 	* include/Makefile.in: Regenerate.
   3089  1.1  mrg 	* include/bits/align.h: New file.
   3090  1.1  mrg 	* include/std/memory (align): Move definition to bits/align.h.
   3091  1.1  mrg 	(assume_aligned): Likewise.
   3092  1.1  mrg 
   3093  1.1  mrg 2020-09-11  Jonathan Wakely  <jwakely (a] redhat.com>
   3094  1.1  mrg 
   3095  1.1  mrg 	* include/std/chrono [C++17] (chrono::__detail::ceil): Add
   3096  1.1  mrg 	using declaration to make chrono::ceil available for internal
   3097  1.1  mrg 	use with a consistent name.
   3098  1.1  mrg 	(chrono::__detail::__ceil_impl): New function template.
   3099  1.1  mrg 	(chrono::__detail::ceil): Use __ceil_impl to compare and
   3100  1.1  mrg 	increment the value. Remove SFINAE constraint.
   3101  1.1  mrg 
   3102  1.1  mrg 2020-09-11  Jonathan Wakely  <jwakely (a] redhat.com>
   3103  1.1  mrg 
   3104  1.1  mrg 	* include/bits/regex_error.h (__throw_regex_error): Fix
   3105  1.1  mrg 	parameter declaration and use reserved attribute names.
   3106  1.1  mrg 
   3107  1.1  mrg 2020-09-11  Mike Crowe  <mac (a] mcrowe.com>
   3108  1.1  mrg 
   3109  1.1  mrg 	* include/std/condition_variable (condition_variable::wait_until):
   3110  1.1  mrg 	Convert delta to steady_clock duration before adding to current
   3111  1.1  mrg 	steady_clock time to avoid rounding errors described in PR68519.
   3112  1.1  mrg 	(condition_variable::wait_for): Simplify calculation of absolute
   3113  1.1  mrg 	time by using chrono::__detail::ceil in both overloads.
   3114  1.1  mrg 	* testsuite/30_threads/condition_variable/members/68519.cc:
   3115  1.1  mrg 	(test_wait_for): Renamed from test01. Replace unassigned val
   3116  1.1  mrg 	variable with constant false. Reduce scope of mx and cv
   3117  1.1  mrg 	variables to just test_wait_for function.
   3118  1.1  mrg 	(test_wait_until): Add new test case.
   3119  1.1  mrg 
   3120  1.1  mrg 2020-09-11  Mike Crowe  <mac (a] mcrowe.com>
   3121  1.1  mrg 
   3122  1.1  mrg 	PR libstdc++/91486
   3123  1.1  mrg 	* include/bits/atomic_futex.h
   3124  1.1  mrg 	(__atomic_futex_unsigned::_M_load_when_equal_for)
   3125  1.1  mrg 	(__atomic_futex_unsigned::_M_load_when_equal_until): Use
   3126  1.1  mrg 	__detail::ceil to convert delta to the reference clock
   3127  1.1  mrg 	duration type to avoid resolution problems.
   3128  1.1  mrg 	* include/std/chrono (__detail::ceil): Move implementation
   3129  1.1  mrg 	of std::chrono::ceil into private namespace so that it's
   3130  1.1  mrg 	available to pre-C++17 code.
   3131  1.1  mrg 	* testsuite/30_threads/async/async.cc (test_pr91486):
   3132  1.1  mrg 	Test __atomic_futex_unsigned::_M_load_when_equal_for.
   3133  1.1  mrg 
   3134  1.1  mrg 2020-09-11  Mike Crowe  <mac (a] mcrowe.com>
   3135  1.1  mrg 
   3136  1.1  mrg 	* include/bits/atomic_futex.h
   3137  1.1  mrg 	(__atomic_futex_unsigned::_M_load_when_equal_until): Add
   3138  1.1  mrg 	loop on generic _Clock to check the timeout against _Clock
   3139  1.1  mrg 	again after _M_load_when_equal_until returns indicating a
   3140  1.1  mrg 	timeout.
   3141  1.1  mrg 	* testsuite/30_threads/async/async.cc: Invent slow_clock
   3142  1.1  mrg 	that runs at an eleventh of steady_clock's speed. Use it
   3143  1.1  mrg 	to test the user-supplied-clock variant of
   3144  1.1  mrg 	__atomic_futex_unsigned::_M_load_when_equal_until works
   3145  1.1  mrg 	generally with test03 and loops correctly when the timeout
   3146  1.1  mrg 	time hasn't been reached in test04.
   3147  1.1  mrg 
   3148  1.1  mrg 2020-09-11  Mike Crowe  <mac (a] mcrowe.com>
   3149  1.1  mrg 
   3150  1.1  mrg 	PR libstdc++/93542
   3151  1.1  mrg 	* include/bits/atomic_futex.h (__atomic_futex_unsigned): Change
   3152  1.1  mrg 	__clock_t typedef to use steady_clock so that unknown clocks are
   3153  1.1  mrg 	synced to it rather than system_clock. Change existing __clock_t
   3154  1.1  mrg 	overloads of _M_load_and_text_until_impl and
   3155  1.1  mrg 	_M_load_when_equal_until to use system_clock explicitly. Remove
   3156  1.1  mrg 	comment about DR 887 since these changes address that problem as
   3157  1.1  mrg 	best as we currently able.
   3158  1.1  mrg 
   3159  1.1  mrg 2020-09-11  Mike Crowe  <mac (a] mcrowe.com>
   3160  1.1  mrg 
   3161  1.1  mrg 	PR libstdc++/93542
   3162  1.1  mrg 	* config/abi/pre/gnu.ver: Update for addition of
   3163  1.1  mrg 	__atomic_futex_unsigned_base::_M_futex_wait_until_steady.
   3164  1.1  mrg 	* include/bits/atomic_futex.h (__atomic_futex_unsigned_base):
   3165  1.1  mrg 	Add comments to clarify that _M_futex_wait_until and
   3166  1.1  mrg 	_M_load_and_test_until use CLOCK_REALTIME.
   3167  1.1  mrg 	(__atomic_futex_unsigned_base::_M_futex_wait_until_steady)
   3168  1.1  mrg 	(__atomic_futex_unsigned_base::_M_load_and_text_until_steady):
   3169  1.1  mrg 	New member functions that use CLOCK_MONOTONIC.
   3170  1.1  mrg 	(__atomic_futex_unsigned_base::_M_load_and_test_until_impl)
   3171  1.1  mrg 	(__atomic_futex_unsigned_base::_M_load_when_equal_until): Add
   3172  1.1  mrg 	overloads that accept a steady_clock time_point and use the
   3173  1.1  mrg 	new member functions.
   3174  1.1  mrg 	* src/c++11/futex.cc: Include headers required for
   3175  1.1  mrg 	clock_gettime.
   3176  1.1  mrg 	(futex_clock_monotonic_flag): New constant to tell futex to
   3177  1.1  mrg 	use CLOCK_MONOTONIC to match existing futex_clock_realtime_flag.
   3178  1.1  mrg 	(futex_clock_monotonic_unavailable): New global to store the
   3179  1.1  mrg 	result of trying to use CLOCK_MONOTONIC.
   3180  1.1  mrg 	(__atomic_futex_unsigned_base::_M_futex_wait_until_steady): Add
   3181  1.1  mrg 	new variant of _M_futex_wait_until that uses CLOCK_MONOTONIC to
   3182  1.1  mrg 	support waiting using steady_clock.
   3183  1.1  mrg 
   3184  1.1  mrg 2020-09-11  Mike Crowe  <mac (a] mcrowe.com>
   3185  1.1  mrg 
   3186  1.1  mrg 	* src/c++11/futex.cc: Add new constants for required futex
   3187  1.1  mrg 	flags.  Add futex_clock_realtime_unavailable flag to store
   3188  1.1  mrg 	result of trying to use FUTEX_CLOCK_REALTIME.
   3189  1.1  mrg 	(__atomic_futex_unsigned_base::_M_futex_wait_until): Try to
   3190  1.1  mrg 	use FUTEX_WAIT_BITSET with FUTEX_CLOCK_REALTIME and only
   3191  1.1  mrg 	fall back to using gettimeofday and FUTEX_WAIT if that's not
   3192  1.1  mrg 	supported.
   3193  1.1  mrg 
   3194  1.1  mrg 2020-09-11  Mike Crowe  <mac (a] mcrowe.com>
   3195  1.1  mrg 
   3196  1.1  mrg 	* testsuite/30_threads/async/async.cc (test02): Test steady_clock
   3197  1.1  mrg 	with std::future::wait_until.
   3198  1.1  mrg 	(test03): Add new test templated on clock type waiting for future
   3199  1.1  mrg 	associated with async to resolve.
   3200  1.1  mrg 	(main): Call test03 to test both system_clock and steady_clock.
   3201  1.1  mrg 
   3202  1.1  mrg 2020-09-11  Torbjrn SVENSSON  <torbjorn.svensson (a] st.com>
   3203  1.1  mrg 	    Christophe Lyon  <christophe.lyon (a] linaro.org>
   3204  1.1  mrg 
   3205  1.1  mrg 	* libsupc++/eh_call.cc: Avoid warning with -fno-exceptions.
   3206  1.1  mrg 
   3207  1.1  mrg 2020-09-11  Torbjrn SVENSSON  <torbjorn.svensson (a] st.com>
   3208  1.1  mrg 	    Christophe Lyon  <christophe.lyon (a] linaro.org>
   3209  1.1  mrg 
   3210  1.1  mrg 	* libsupc++/eh_call.cc: Avoid warning with -fno-exceptions.
   3211  1.1  mrg 
   3212  1.1  mrg 2020-09-11  Christophe Lyon  <christophe.lyon (a] linaro.org>
   3213  1.1  mrg 
   3214  1.1  mrg 	* include/bits/regex_error.h: Avoid warning with -fno-exceptions.
   3215  1.1  mrg 
   3216  1.1  mrg 2020-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   3217  1.1  mrg 
   3218  1.1  mrg 	* include/bits/locale_conv.h (__do_str_codecvt, __str_codecvt_in_all):
   3219  1.1  mrg 	Add casts to compare types of the same signedness.
   3220  1.1  mrg 
   3221  1.1  mrg 2020-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   3222  1.1  mrg 
   3223  1.1  mrg 	* include/bits/ranges_algobase.h (__equal_fn): Remove unused
   3224  1.1  mrg 	typedef.
   3225  1.1  mrg 
   3226  1.1  mrg 2020-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   3227  1.1  mrg 
   3228  1.1  mrg 	* include/std/version (__cpp_lib_array_constexpr):
   3229  1.1  mrg 	(__cpp_lib_constexpr_char_traits): Only define C++17 value when
   3230  1.1  mrg 	compiling C++17.
   3231  1.1  mrg 
   3232  1.1  mrg 2020-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   3233  1.1  mrg 
   3234  1.1  mrg 	* include/experimental/bits/shared_ptr.h (shared_ptr(auto_ptr&&))
   3235  1.1  mrg 	(operator=(auto_ptr&&)): Add diagnostic pragmas to suppress
   3236  1.1  mrg 	warnings for uses of std::auto_ptr.
   3237  1.1  mrg 	* include/experimental/type_traits (is_literal_type_v):
   3238  1.1  mrg 	Likewise, for use of std::is_literal_type.
   3239  1.1  mrg 	* include/std/condition_variable (condition_variable_any::_Unlock):
   3240  1.1  mrg 	Likewise, for use of std::uncaught_exception.
   3241  1.1  mrg 
   3242  1.1  mrg 2020-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   3243  1.1  mrg 
   3244  1.1  mrg 	* include/bits/fs_path.h (path::_List::type()): Avoid narrowing
   3245  1.1  mrg 	conversion.
   3246  1.1  mrg 	* include/std/chrono (operator+(const year&, const years&)):
   3247  1.1  mrg 	Likewise.
   3248  1.1  mrg 
   3249  1.1  mrg 2020-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   3250  1.1  mrg 
   3251  1.1  mrg 	* include/bits/codecvt.h (codecvt_byname): Remove names of
   3252  1.1  mrg 	unused parameters.
   3253  1.1  mrg 
   3254  1.1  mrg 2020-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   3255  1.1  mrg 
   3256  1.1  mrg 	* include/bits/locale_facets_nonio.tcc: Adjust whitespace.
   3257  1.1  mrg 
   3258  1.1  mrg 2020-09-10  Krystian Kuniarek  <krystian.kuzniarek (a] gmail.com>
   3259  1.1  mrg 
   3260  1.1  mrg 	* include/c_global/cmath (__lerp): Avoid -Wparentheses warnings.
   3261  1.1  mrg 
   3262  1.1  mrg 2020-09-10  Krystian Kuniarek  <krystian.kuzniarek (a] gmail.com>
   3263  1.1  mrg 
   3264  1.1  mrg 	* include/bits/atomic_base.h: Fix -Wunused-variable
   3265  1.1  mrg 	warnings.
   3266  1.1  mrg 	* include/ext/new_allocator.h: Fix -Wunused-parameter
   3267  1.1  mrg 	warnings.
   3268  1.1  mrg 
   3269  1.1  mrg 2020-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   3270  1.1  mrg 
   3271  1.1  mrg 	* include/bits/stl_iterator.h (counted_iterator): Add assertions
   3272  1.1  mrg 	to check preconditions added by LWG 3472.
   3273  1.1  mrg 
   3274  1.1  mrg 2020-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   3275  1.1  mrg 
   3276  1.1  mrg 	PR libstdc++/94160
   3277  1.1  mrg 	* src/c++17/memory_resource.cc (munge_options): Round
   3278  1.1  mrg 	max_blocks_per_chunk to a multiple of four.
   3279  1.1  mrg 	(__pool_resource::_M_alloc_pools()): Simplify slightly.
   3280  1.1  mrg 	* testsuite/20_util/unsynchronized_pool_resource/allocate.cc:
   3281  1.1  mrg 	Check that valid pointers are returned when small values are
   3282  1.1  mrg 	used for max_blocks_per_chunk.
   3283  1.1  mrg 
   3284  1.1  mrg 2020-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   3285  1.1  mrg 
   3286  1.1  mrg 	PR libstdc++/96942
   3287  1.1  mrg 	* include/std/memory_resource (monotonic_buffer_resource::do_allocate):
   3288  1.1  mrg 	Use __builtin_expect when checking if a new buffer needs to be
   3289  1.1  mrg 	allocated from the upstream resource, and for checks for edge
   3290  1.1  mrg 	cases like zero sized buffers and allocations.
   3291  1.1  mrg 	* src/c++17/memory_resource.cc (aligned_size): New class template.
   3292  1.1  mrg 	(aligned_ceil): New helper function to round up to a given
   3293  1.1  mrg 	alignment.
   3294  1.1  mrg 	(monotonic_buffer_resource::chunk): Replace _M_size and _M_align
   3295  1.1  mrg 	with an aligned_size member. Remove _M_canary member. Change _M_next
   3296  1.1  mrg 	to pointer instead of unaligned buffer.
   3297  1.1  mrg 	(monotonic_buffer_resource::chunk::allocate): Round up to multiple
   3298  1.1  mrg 	of 64 instead of to power of two. Check for size overflow. Remove
   3299  1.1  mrg 	redundant check for minimum required alignment.
   3300  1.1  mrg 	(monotonic_buffer_resource::chunk::release): Adjust for changes
   3301  1.1  mrg 	to data members.
   3302  1.1  mrg 	(monotonic_buffer_resource::_M_new_buffer): Use aligned_ceil.
   3303  1.1  mrg 	(big_block): Replace _M_size and _M_align with aligned_size
   3304  1.1  mrg 	member.
   3305  1.1  mrg 	(big_block::big_block): Check for size overflow.
   3306  1.1  mrg 	(big_block::size, big_block::align): Adjust to use aligned_size.
   3307  1.1  mrg 	(big_block::alloc_size): Use aligned_ceil.
   3308  1.1  mrg 	(munge_options): Use aligned_ceil.
   3309  1.1  mrg 	(__pool_resource::allocate): Use big_block::align for alignment.
   3310  1.1  mrg 	* testsuite/20_util/monotonic_buffer_resource/allocate.cc: Check
   3311  1.1  mrg 	upstream resource gets expected values for impossible sizes.
   3312  1.1  mrg 	* testsuite/20_util/unsynchronized_pool_resource/allocate.cc:
   3313  1.1  mrg 	Likewise. Adjust checks for expected alignment in existing test.
   3314  1.1  mrg 
   3315  1.1  mrg 2020-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3316  1.1  mrg 
   3317  1.1  mrg 	* include/std/chrono (duration::_S_gcd): Use invariant that
   3318  1.1  mrg 	neither value is zero initially.
   3319  1.1  mrg 
   3320  1.1  mrg 2020-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3321  1.1  mrg 
   3322  1.1  mrg 	* include/std/ranges (__box): Simplify constraints as per LWG 3477.
   3323  1.1  mrg 
   3324  1.1  mrg 2020-09-03  Jonathan Wakely  <jwakely (a] redhat.com>
   3325  1.1  mrg 
   3326  1.1  mrg 	PR libstdc++/96592
   3327  1.1  mrg 	* include/std/tuple (_TupleConstraints<true, T...>): Use
   3328  1.1  mrg 	alternative is_constructible instead of std::is_constructible.
   3329  1.1  mrg 	* testsuite/20_util/tuple/cons/96592.cc: New test.
   3330  1.1  mrg 
   3331  1.1  mrg 2020-09-03  Jonathan Wakely  <jwakely (a] redhat.com>
   3332  1.1  mrg 
   3333  1.1  mrg 	* include/std/chrono (duration::_S_gcd): Use iterative algorithm
   3334  1.1  mrg 	for C++14 and later.
   3335  1.1  mrg 	* include/std/numeric (__detail::__gcd): Replace recursive
   3336  1.1  mrg 	Euclidean algorithm with iterative version of binary GCD algorithm.
   3337  1.1  mrg 	* testsuite/26_numerics/gcd/1.cc: Test additional inputs.
   3338  1.1  mrg 	* testsuite/26_numerics/gcd/gcd_neg.cc: Adjust dg-error lines.
   3339  1.1  mrg 	* testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
   3340  1.1  mrg 	* testsuite/experimental/numeric/gcd.cc: Test additional inputs.
   3341  1.1  mrg 	* testsuite/26_numerics/gcd/2.cc: New test.
   3342  1.1  mrg 
   3343  1.1  mrg 2020-09-02  Jonathan Wakely  <jwakely (a] redhat.com>
   3344  1.1  mrg 
   3345  1.1  mrg 	PR libstdc++/92978
   3346  1.1  mrg 	* testsuite/experimental/numeric/92978.cc: Use experimental::lcm
   3347  1.1  mrg 	not std::lcm.
   3348  1.1  mrg 
   3349  1.1  mrg 2020-09-02  Jonathan Wakely  <jwakely (a] redhat.com>
   3350  1.1  mrg 
   3351  1.1  mrg 	PR libstdc++/96851
   3352  1.1  mrg 	* include/bits/cpp_type_traits.h (__is_memcmp_ordered):
   3353  1.1  mrg 	New trait that says if memcmp can be used for ordering.
   3354  1.1  mrg 	(__is_memcmp_ordered_with): Likewise, for two types.
   3355  1.1  mrg 	* include/bits/deque.tcc (__lex_cmp_dit): Use new traits
   3356  1.1  mrg 	instead of __is_byte and __numeric_traits.
   3357  1.1  mrg 	(__lexicographical_compare_aux1): Likewise.
   3358  1.1  mrg 	* include/bits/ranges_algo.h (__lexicographical_compare_fn):
   3359  1.1  mrg 	Likewise.
   3360  1.1  mrg 	* include/bits/stl_algobase.h (__lexicographical_compare_aux1)
   3361  1.1  mrg 	(__is_byte_iter): Likewise.
   3362  1.1  mrg 	* include/std/array (operator<=>): Likewise. Only use memcmp
   3363  1.1  mrg 	when std::is_constant_evaluated() is false.
   3364  1.1  mrg 	* testsuite/23_containers/array/comparison_operators/96851.cc:
   3365  1.1  mrg 	New test.
   3366  1.1  mrg 	* testsuite/23_containers/array/tuple_interface/get_neg.cc:
   3367  1.1  mrg 	Adjust dg-error line numbers.
   3368  1.1  mrg 
   3369  1.1  mrg 2020-09-02  Jonathan Wakely  <jwakely (a] redhat.com>
   3370  1.1  mrg 
   3371  1.1  mrg 	* include/bits/stl_iterator.h: Include <bits/exception_defines.h>
   3372  1.1  mrg 	for definitions of __try, __catch and __throw_exception_again.
   3373  1.1  mrg 	(counted_iterator::operator++(int)): Use __throw_exception_again
   3374  1.1  mrg 	instead of throw.
   3375  1.1  mrg 	* libsupc++/new: Include <bits/exception.h> not <exception>.
   3376  1.1  mrg 	* libsupc++/new_opvnt.cc: Include <bits/exception_defines.h>.
   3377  1.1  mrg 	* testsuite/18_support/destroying_delete.cc: Include
   3378  1.1  mrg 	<type_traits> for std::is_same_v definition.
   3379  1.1  mrg 	* testsuite/20_util/variant/index_type.cc: Qualify size_t.
   3380  1.1  mrg 
   3381  1.1  mrg 2020-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3382  1.1  mrg 
   3383  1.1  mrg 	PR libstdc++/71960
   3384  1.1  mrg 	* include/bits/c++config (__glibcxx_assert_impl): Remove
   3385  1.1  mrg 	do-while so that uses of the macro need to add it.
   3386  1.1  mrg 	(__glibcxx_assert): Rename macro for runtime assertions
   3387  1.1  mrg 	to __glibcxx_assert_2.
   3388  1.1  mrg 	(__glibcxx_assert_1): Define macro for constexpr assertions.
   3389  1.1  mrg 	(__glibcxx_assert): Define macro for constexpr and runtime
   3390  1.1  mrg 	assertions.
   3391  1.1  mrg 	* include/bits/range_access.h (ranges::advance): Remove
   3392  1.1  mrg 	redundant precondition checks during constant evaluation.
   3393  1.1  mrg 	* include/parallel/base.h (_GLIBCXX_PARALLEL_ASSERT): Always
   3394  1.1  mrg 	use do-while in macro expansion.
   3395  1.1  mrg 	* include/std/ranges (iota_view::iota_view(W, B)): Remove
   3396  1.1  mrg 	redundant braces.
   3397  1.1  mrg 
   3398  1.1  mrg 2020-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3399  1.1  mrg 
   3400  1.1  mrg 	* include/std/chrono (duration::_S_gcd(intmax_t, intmax_t)):
   3401  1.1  mrg 	New helper function for finding GCD of two positive intmax_t
   3402  1.1  mrg 	values.
   3403  1.1  mrg 	(duration::__divide): New helper alias for dividing one period
   3404  1.1  mrg 	by another.
   3405  1.1  mrg 	(duration::__is_harmonic): Use __divide not ratio_divide.
   3406  1.1  mrg 	(duration(const duration<R2, P2>&)): Require the duration rep
   3407  1.1  mrg 	types to be convertible.
   3408  1.1  mrg 	* testsuite/20_util/duration/cons/dr2094.cc: New test.
   3409  1.1  mrg 	* testsuite/20_util/duration/requirements/reduced_period.cc:
   3410  1.1  mrg 	Fix definition of unused member functions in test type.
   3411  1.1  mrg 	* testsuite/20_util/duration/requirements/typedefs_neg2.cc:
   3412  1.1  mrg 	Adjust expected errors.
   3413  1.1  mrg 
   3414  1.1  mrg 2020-08-29  Jonathan Wakely  <jwakely (a] redhat.com>
   3415  1.1  mrg 
   3416  1.1  mrg 	* include/std/numeric (__detail::__absu(bool)): Make deleted
   3417  1.1  mrg 	function a function template, so it will be chosen for calls
   3418  1.1  mrg 	with an explicit template argument list.
   3419  1.1  mrg 	* testsuite/26_numerics/gcd/gcd_neg.cc: Add dg-prune-output.
   3420  1.1  mrg 	* testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
   3421  1.1  mrg 
   3422  1.1  mrg 2020-08-28  Jonathan Wakely  <jwakely (a] redhat.com>
   3423  1.1  mrg 
   3424  1.1  mrg 	* include/std/chrono (common_type): Fix partial specializations
   3425  1.1  mrg 	for a single duration type to use the common_type of the rep.
   3426  1.1  mrg 	(duration::operator+, duration::operator-): Fix return types
   3427  1.1  mrg 	to also use the common_type of the rep.
   3428  1.1  mrg 	* testsuite/20_util/duration/requirements/reduced_period.cc:
   3429  1.1  mrg 	Check duration using a rep that has common_type specialized.
   3430  1.1  mrg 
   3431  1.1  mrg 2020-08-28  Jonathan Wakely  <jwakely (a] redhat.com>
   3432  1.1  mrg 
   3433  1.1  mrg 	PR libstdc++/92978
   3434  1.1  mrg 	* include/std/numeric (__abs_integral): Replace with ...
   3435  1.1  mrg 	(__detail::__absu): New function template that returns an
   3436  1.1  mrg 	unsigned type, guaranteeing it can represent the most
   3437  1.1  mrg 	negative signed value.
   3438  1.1  mrg 	(__detail::__gcd, __detail::__lcm): Require arguments to
   3439  1.1  mrg 	be unsigned and therefore already non-negative.
   3440  1.1  mrg 	(gcd, lcm): Convert arguments to absolute value as unsigned
   3441  1.1  mrg 	type before calling __detail::__gcd or __detail::__lcm.
   3442  1.1  mrg 	* include/experimental/numeric (gcd, lcm): Likewise.
   3443  1.1  mrg 	* testsuite/26_numerics/gcd/gcd_neg.cc: Adjust expected
   3444  1.1  mrg 	errors.
   3445  1.1  mrg 	* testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
   3446  1.1  mrg 	* testsuite/26_numerics/gcd/92978.cc: New test.
   3447  1.1  mrg 	* testsuite/26_numerics/lcm/92978.cc: New test.
   3448  1.1  mrg 	* testsuite/experimental/numeric/92978.cc: New test.
   3449  1.1  mrg 
   3450  1.1  mrg 2020-08-27  Jonathan Wakely  <jwakely (a] redhat.com>
   3451  1.1  mrg 
   3452  1.1  mrg 	* include/std/chrono (__duration_common_type): Ensure the
   3453  1.1  mrg 	reduced ratio is used. Remove unused partial specialization
   3454  1.1  mrg 	using __failure_type.
   3455  1.1  mrg 	(common_type): Pass reduced ratios to __duration_common_type.
   3456  1.1  mrg 	Add partial specializations for simple cases involving a single
   3457  1.1  mrg 	duration or time_point type.
   3458  1.1  mrg 	(duration::period): Use reduced ratio.
   3459  1.1  mrg 	(duration::operator+(), duration::operator-()): Return duration
   3460  1.1  mrg 	type using the reduced ratio.
   3461  1.1  mrg 	* testsuite/20_util/duration/requirements/typedefs_neg2.cc:
   3462  1.1  mrg 	Adjust expected errors.
   3463  1.1  mrg 	* testsuite/20_util/duration/requirements/reduced_period.cc: New test.
   3464  1.1  mrg 
   3465  1.1  mrg 2020-08-27  Patrick Palka  <ppalka (a] redhat.com>
   3466  1.1  mrg 
   3467  1.1  mrg 	* include/std/chrono (year_month::operator+): Properly handle a
   3468  1.1  mrg 	month value of 0 by casting the month value to int before
   3469  1.1  mrg 	subtracting 1 from it so that the difference is sign-extended in
   3470  1.1  mrg 	the subsequent addition.
   3471  1.1  mrg 	* testsuite/std/time/year_month/1.cc: Test adding months to a
   3472  1.1  mrg 	year_month whose month component is below or above the
   3473  1.1  mrg 	normalized range of [1,12].
   3474  1.1  mrg 
   3475  1.1  mrg 2020-08-27  Patrick Palka  <ppalka (a] redhat.com>
   3476  1.1  mrg 
   3477  1.1  mrg 	* include/std/chrono
   3478  1.1  mrg 	(__detail::__months_years_conversion_disambiguator): Define.
   3479  1.1  mrg 	(year_month::operator+=): Templatize the 'months'-based overload
   3480  1.1  mrg 	so that the 'years'-based overload is selected in case of
   3481  1.1  mrg 	equally-ranked implicit conversion sequences to both 'months'
   3482  1.1  mrg 	and 'years' from the supplied argument.
   3483  1.1  mrg 	(year_month::operator-=): Likewise.
   3484  1.1  mrg 	(year_month::operator+): Likewise.
   3485  1.1  mrg 	(year_month::operator-): Likewise.
   3486  1.1  mrg 	(year_month_day::operator+=): Likewise.
   3487  1.1  mrg 	(year_month_day::operator-=): Likewise.
   3488  1.1  mrg 	(year_month_day::operator+): Likewise.
   3489  1.1  mrg 	(year_month_day::operator-): Likewise.
   3490  1.1  mrg 	(year_month_day_last::operator+=): Likewise.
   3491  1.1  mrg 	(year_month_day_last::operator-=): Likewise.
   3492  1.1  mrg 	(year_month_day_last::operator+): Likewise
   3493  1.1  mrg 	(year_month_day_last::operator-): Likewise.
   3494  1.1  mrg 	(year_month_day_weekday::operator+=): Likewise
   3495  1.1  mrg 	(year_month_day_weekday::operator-=): Likewise.
   3496  1.1  mrg 	(year_month_day_weekday::operator+): Likewise.
   3497  1.1  mrg 	(year_month_day_weekday::operator-): Likewise.
   3498  1.1  mrg 	(year_month_day_weekday_last::operator+=): Likewise
   3499  1.1  mrg 	(year_month_day_weekday_last::operator-=): Likewise.
   3500  1.1  mrg 	(year_month_day_weekday_last::operator+): Likewise.
   3501  1.1  mrg 	(year_month_day_weekday_last::operator-): Likewise.
   3502  1.1  mrg 	(testsuite/std/time/year_month/2.cc): New test.
   3503  1.1  mrg 	(testsuite/std/time/year_month_day/2.cc): New test.
   3504  1.1  mrg 	(testsuite/std/time/year_month_day_last/2.cc): New test.
   3505  1.1  mrg 	(testsuite/std/time/year_month_weekday/2.cc): New test.
   3506  1.1  mrg 	(testsuite/std/time/year_month_weekday_last/2.cc): New test.
   3507  1.1  mrg 	* testsuite/std/time/year_month/2.cc: New file.
   3508  1.1  mrg 	* testsuite/std/time/year_month_day/2.cc: New file.
   3509  1.1  mrg 	* testsuite/std/time/year_month_day_last/2.cc: New file.
   3510  1.1  mrg 	* testsuite/std/time/year_month_weekday/2.cc: New file.
   3511  1.1  mrg 	* testsuite/std/time/year_month_weekday_last/2.cc: New file.
   3512  1.1  mrg 
   3513  1.1  mrg 2020-08-27  Patrick Palka  <ppalka (a] redhat.com>
   3514  1.1  mrg 
   3515  1.1  mrg 	PR libstdc++/95322
   3516  1.1  mrg 	* include/std/ranges (transform_view::sentinel::__distance_from):
   3517  1.1  mrg 	Give this a deduced return type.
   3518  1.1  mrg 	(transform_view::sentinel::operator-): Adjust the return type so
   3519  1.1  mrg 	that it's based on the constness of the iterator rather than
   3520  1.1  mrg 	that of the sentinel.
   3521  1.1  mrg 	* testsuite/std/ranges/adaptors/95322.cc: Refer to LWG 3488.
   3522  1.1  mrg 
   3523  1.1  mrg 2020-08-27  Patrick Palka  <ppalka (a] redhat.com>
   3524  1.1  mrg 
   3525  1.1  mrg 	* include/std/ranges (elements_view::begin): Adjust constraints.
   3526  1.1  mrg 	(elements_view::end): Likewise.
   3527  1.1  mrg 	(elements_view::_Sentinel::operator==): Templatize to take both
   3528  1.1  mrg 	_Iterator<true> and _Iterator<false>.
   3529  1.1  mrg 	(elements_view::_Sentinel::operator-): Likewise.
   3530  1.1  mrg 	* testsuite/std/ranges/adaptors/elements.cc: Add testcase for
   3531  1.1  mrg 	the example from P1994R1.
   3532  1.1  mrg 	* testsuite/std/ranges/adaptors/lwg3406.cc: New test.
   3533  1.1  mrg 
   3534  1.1  mrg 2020-08-27  Patrick Palka  <ppalka (a] redhat.com>
   3535  1.1  mrg 
   3536  1.1  mrg 	* include/std/ranges (elements_view::end): Replace these two
   3537  1.1  mrg 	overloads with four new overloads.
   3538  1.1  mrg 	(elements_view::_Iterator::operator==): Remove.
   3539  1.1  mrg 	(elements_view::_Iterator::operator-): Likewise.
   3540  1.1  mrg 	(elements_view::_Sentinel): Define.
   3541  1.1  mrg 
   3542  1.1  mrg 2020-08-26  Jonathan Wakely  <jwakely (a] redhat.com>
   3543  1.1  mrg 
   3544  1.1  mrg 	* include/std/tuple (_Tuple_impl): Whitespaces changes for
   3545  1.1  mrg 	consistent indentation. Also use __enable_if_t alias template.
   3546  1.1  mrg 
   3547  1.1  mrg 2020-08-26  Jonathan Wakely  <jwakely (a] redhat.com>
   3548  1.1  mrg 
   3549  1.1  mrg 	PR libstdc++/96803
   3550  1.1  mrg 	* include/std/tuple
   3551  1.1  mrg 	(_Tuple_impl(allocator_arg_t, Alloc, const _Tuple_impl<U...>&)):
   3552  1.1  mrg 	Replace parameter pack with a type parameter and a pack and pass
   3553  1.1  mrg 	the first type to __use_alloc.
   3554  1.1  mrg 	* testsuite/20_util/tuple/cons/96803.cc: New test.
   3555  1.1  mrg 
   3556  1.1  mrg 2020-08-26  Patrick Palka  <ppalka (a] redhat.com>
   3557  1.1  mrg 
   3558  1.1  mrg 	* include/std/chrono (year_month_weekday::operator==): Compare
   3559  1.1  mrg 	weekday_indexed instead of weekday.
   3560  1.1  mrg 	* testsuite/std/time/year_month_weekday/1.cc: Augment testcase.
   3561  1.1  mrg 
   3562  1.1  mrg 2020-08-26  Jonathan Wakely  <jwakely (a] redhat.com>
   3563  1.1  mrg 
   3564  1.1  mrg 	* include/bits/hashtable_policy.h (_Hash_code_base): Change
   3565  1.1  mrg 	index of _Hashtable_ebo_helper base class.
   3566  1.1  mrg 	* testsuite/23_containers/unordered_map/dup_types.cc: New test.
   3567  1.1  mrg 
   3568  1.1  mrg 2020-08-26  Jonathan Wakely  <jwakely (a] redhat.com>
   3569  1.1  mrg 
   3570  1.1  mrg 	PR libstdc++/71960
   3571  1.1  mrg 	* include/experimental/string_view (basic_string_view):
   3572  1.1  mrg 	Enable debug assertions.
   3573  1.1  mrg 	* include/std/string_view (basic_string_view):
   3574  1.1  mrg 	Likewise.
   3575  1.1  mrg 
   3576  1.1  mrg 2020-08-26  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3577  1.1  mrg 
   3578  1.1  mrg 	* include/bits/hashtable_policy.h (_Hashtable<>): Rename _H1 into _Hash
   3579  1.1  mrg 	_H2 into _RangeHash and _Hash into _Unused.
   3580  1.1  mrg 	(_Hastable_base<>): Likewise.
   3581  1.1  mrg 	(_Map_base<>): Likewise.
   3582  1.1  mrg 	(_Insert_base<>): Likewise.
   3583  1.1  mrg 	(_Insert<>): Likewise.
   3584  1.1  mrg 	(_Rehash_base<>): Likewise.
   3585  1.1  mrg 	(_Local_iterator_base<>): Likewise.
   3586  1.1  mrg 	(_Hash_code_base<>): Likewise.
   3587  1.1  mrg 	(_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, _Hash, false>):
   3588  1.1  mrg 	Remove.
   3589  1.1  mrg 	(_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, _Hash, true>):
   3590  1.1  mrg 	Remove.
   3591  1.1  mrg 	(_Hash_code_base<_Key, _Value, _ExtractKey, _Hash, _RangeHas, _Unused,
   3592  1.1  mrg 	bool>): Remove _Hashtable_ebo_helper<2, _RangeHash> base type..
   3593  1.1  mrg 	(_Hash_code_base<>::_M_bucket_index(const _Key&, __hash_code, size_t)):
   3594  1.1  mrg 	Replace by...
   3595  1.1  mrg 	(_Hash_code_base<>::_M_bucket_index(__hash_code, size_t)): ...this.
   3596  1.1  mrg 	(_Local_iterator<>): Remove _H1 and _H2 template parameters.
   3597  1.1  mrg 	(_Local_const_iterator<>): Likewise.
   3598  1.1  mrg 	(_Equality<>): Likewise.
   3599  1.1  mrg 	(_Map_base<>::operator[](const key_type&): Adapt.
   3600  1.1  mrg 	(_Map_base<>::operator[](key_type&&): Adapt.
   3601  1.1  mrg 	(_Identity::operator()): Add noexcept.
   3602  1.1  mrg 	(_Select1st::operator()): Likewise.
   3603  1.1  mrg 	(_Hash_code_base<>): Remove _Hashtable_ebo_helper<0, _ExtractKey> base
   3604  1.1  mrg 	type.
   3605  1.1  mrg 	(_Hash_code_base::_M_extract): Remove.
   3606  1.1  mrg 	* include/bits/hashtable.h (_Hashtable<>): Remove _H1 and _H2 template
   3607  1.1  mrg 	parameters. Remove _ExtractKey from constructors.
   3608  1.1  mrg 	(_Hashtable<>::_M_insert_unique_node(const key_type&, size_t,
   3609  1.1  mrg 	__hash_code, __node_type*, size_t)): Replace by...
   3610  1.1  mrg 	(_Hashtable<>::_M_insert_unique_node(size_t, __hash_code,
   3611  1.1  mrg 	 __node_type*, size_t)): ...this.
   3612  1.1  mrg 	(_Hashtable<>::_M_insert_muti_node(__node_type*, const key_type&,
   3613  1.1  mrg 	__hash_code, __node_type*)): Replace by...
   3614  1.1  mrg 	(_Hashtable<>::_M_insert_multi_node(__node_type*, __hash_code,
   3615  1.1  mrg 	__node_type*)): ...this.
   3616  1.1  mrg 	(_Hashtable<>::__key_extract): Remove.
   3617  1.1  mrg 	* include/bits/node_handle.h: Adapt.
   3618  1.1  mrg 
   3619  1.1  mrg 2020-08-25  Jonathan Wakely  <jwakely (a] redhat.com>
   3620  1.1  mrg 
   3621  1.1  mrg 	* testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Removed.
   3622  1.1  mrg 	* testsuite/21_strings/debug/self_move_assign_neg.cc: Removed.
   3623  1.1  mrg 	* testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc: Removed.
   3624  1.1  mrg 	* testsuite/23_containers/deque/debug/self_move_assign_neg.cc: Removed.
   3625  1.1  mrg 	* testsuite/23_containers/forward_list/debug/iterator_self_move_assign_neg.cc: Removed.
   3626  1.1  mrg 	* testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc: Removed.
   3627  1.1  mrg 	* testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc: Removed.
   3628  1.1  mrg 	* testsuite/23_containers/list/debug/self_move_assign_neg.cc: Removed.
   3629  1.1  mrg 	* testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc: Removed.
   3630  1.1  mrg 	* testsuite/23_containers/map/debug/self_move_assign_neg.cc: Removed.
   3631  1.1  mrg 	* testsuite/23_containers/multimap/debug/iterator_self_move_assign_neg.cc: Removed.
   3632  1.1  mrg 	* testsuite/23_containers/multimap/debug/self_move_assign_neg.cc: Removed.
   3633  1.1  mrg 	* testsuite/23_containers/multiset/debug/iterator_self_move_assign_neg.cc: Removed.
   3634  1.1  mrg 	* testsuite/23_containers/multiset/debug/self_move_assign_neg.cc: Removed.
   3635  1.1  mrg 	* testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc: Removed.
   3636  1.1  mrg 	* testsuite/23_containers/set/debug/self_move_assign_neg.cc: Removed.
   3637  1.1  mrg 	* testsuite/23_containers/unordered_map/debug/iterator_self_move_assign_neg.cc: Removed.
   3638  1.1  mrg 	* testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc: Removed.
   3639  1.1  mrg 	* testsuite/23_containers/unordered_multimap/debug/iterator_self_move_assign_neg.cc:
   3640  1.1  mrg 	Removed.
   3641  1.1  mrg 	* testsuite/23_containers/unordered_multimap/debug/self_move_assign_neg.cc: Removed.
   3642  1.1  mrg 	* testsuite/23_containers/unordered_multiset/debug/iterator_self_move_assign_neg.cc:
   3643  1.1  mrg 	Removed.
   3644  1.1  mrg 	* testsuite/23_containers/unordered_multiset/debug/self_move_assign_neg.cc: Removed.
   3645  1.1  mrg 	* testsuite/23_containers/unordered_set/debug/iterator_self_move_assign_neg.cc: Removed.
   3646  1.1  mrg 	* testsuite/23_containers/unordered_set/debug/self_move_assign_neg.cc: Removed.
   3647  1.1  mrg 	* testsuite/23_containers/vector/debug/iterator_self_move_assign_neg.cc: Removed.
   3648  1.1  mrg 	* testsuite/23_containers/vector/debug/self_move_assign_neg.cc: Removed.
   3649  1.1  mrg 
   3650  1.1  mrg 2020-08-25  Patrick Palka  <ppalka (a] redhat.com>
   3651  1.1  mrg 
   3652  1.1  mrg 	* include/std/chrono (year_month_weekday::ok): Fix assert.
   3653  1.1  mrg 
   3654  1.1  mrg 2020-08-25  Jonathan Wakely  <jwakely (a] redhat.com>
   3655  1.1  mrg 
   3656  1.1  mrg 	* include/std/future (future, shared_future. promise): Add
   3657  1.1  mrg 	is_destructible assertion (LWG 3466). Adjust string-literal for
   3658  1.1  mrg 	!is_array and !is_function assertions.
   3659  1.1  mrg 	* testsuite/30_threads/future/requirements/lwg3458.cc: Check
   3660  1.1  mrg 	types with no accessible destructor. Adjust expected errors.
   3661  1.1  mrg 	* testsuite/30_threads/promise/requirements/lwg3466.cc:
   3662  1.1  mrg 	Likewise.
   3663  1.1  mrg 	* testsuite/30_threads/shared_future/requirements/lwg3458.cc:
   3664  1.1  mrg 	Likewise.
   3665  1.1  mrg 
   3666  1.1  mrg 2020-08-25  Patrick Palka  <ppalka (a] redhat.com>
   3667  1.1  mrg 	    Ed Smith-Rowland  <3dw4rd (a] verizon.net>
   3668  1.1  mrg 	    Jonathan Wakely  <jwakely (a] redhat.com>
   3669  1.1  mrg 
   3670  1.1  mrg 	* include/std/chrono (time_point::operator++)
   3671  1.1  mrg 	(time_point::operator--): Define.
   3672  1.1  mrg 	(utc_clock, tai_clock, gps_clock): Forward declare.
   3673  1.1  mrg 	(utc_time, utc_seconds, tai_time, tai_seconds, gps_time)
   3674  1.1  mrg 	(gps_seconds): Define.
   3675  1.1  mrg 	(is_clock<utc_clock>, is_clock<tai_clock>, is_clock<gps_clock>)
   3676  1.1  mrg 	(is_clock_v<utc_clock>, is_clock_v<tai_clock>)
   3677  1.1  mrg 	(is_clock_v<gps_clock>): Define these specializations.
   3678  1.1  mrg 	(leap_second_info): Define.
   3679  1.1  mrg 	(day, month, year, weekday, weekday_indexed)
   3680  1.1  mrg 	(weekday_last, month_day, month_day_last, month_weekday)
   3681  1.1  mrg 	(month_weekday_last, year_month, year_month_day)
   3682  1.1  mrg 	(year_month_day_last, year_month_weekday, year_month_weekday_last):
   3683  1.1  mrg 	Declare and later define.
   3684  1.1  mrg 	(last_spec, last, __detail::__days_per_month)
   3685  1.1  mrg 	(__detail::__days_per_month, __detail::__last_day): Define.
   3686  1.1  mrg 	(January, February, March, April, May, June, July, August)
   3687  1.1  mrg 	(September, October, November, December, Sunday, Monday, Tuesday)
   3688  1.1  mrg 	(Wednesday, Thursday, Friday, Saturday): Define.
   3689  1.1  mrg 	(weekday::operator[]): Define out-of-line.
   3690  1.1  mrg 	(year_month_day::_S_from_days, year_month_day::M_days_since_epoch):
   3691  1.1  mrg 	Likewise.
   3692  1.1  mrg 	(year_month_day::year_month_day, year_month_day::ok): Likewise.
   3693  1.1  mrg 	(__detail::__pow10, hh_mm_ss): Define.
   3694  1.1  mrg 	(literals::chrono_literals::operator""d)
   3695  1.1  mrg 	(literals::chrono_literals::operator""y): Define.
   3696  1.1  mrg 	(is_am, is_pm, make12, make24): Define.
   3697  1.1  mrg 	* testsuite/20_util/time_point/4.cc: New test.
   3698  1.1  mrg 	* testsuite/std/time/day/1.cc: New test.
   3699  1.1  mrg 	* testsuite/std/time/hh_mm_ss/1.cc: New test.
   3700  1.1  mrg 	* testsuite/std/time/is_am/1.cc: New test.
   3701  1.1  mrg 	* testsuite/std/time/is_pm/1.cc: New test.
   3702  1.1  mrg 	* testsuite/std/time/make12/1.cc: New test.
   3703  1.1  mrg 	* testsuite/std/time/make24/1.cc: New test.
   3704  1.1  mrg 	* testsuite/std/time/month/1.cc: New test.
   3705  1.1  mrg 	* testsuite/std/time/month_day/1.cc: New test.
   3706  1.1  mrg 	* testsuite/std/time/month_day_last/1.cc: New test.
   3707  1.1  mrg 	* testsuite/std/time/month_weekday/1.cc: New test.
   3708  1.1  mrg 	* testsuite/std/time/month_weekday_last/1.cc: New test.
   3709  1.1  mrg 	* testsuite/std/time/weekday/1.cc: New test.
   3710  1.1  mrg 	* testsuite/std/time/weekday_indexed/1.cc: New test.
   3711  1.1  mrg 	* testsuite/std/time/weekday_last/1.cc: New test.
   3712  1.1  mrg 	* testsuite/std/time/year/1.cc: New test.
   3713  1.1  mrg 	* testsuite/std/time/year_month/1.cc: New test.
   3714  1.1  mrg 	* testsuite/std/time/year_month_day/1.cc: New test.
   3715  1.1  mrg 	* testsuite/std/time/year_month_day_last/1.cc: New test.
   3716  1.1  mrg 	* testsuite/std/time/year_month_weekday/1.cc: New test.
   3717  1.1  mrg 	* testsuite/std/time/year_month_weekday_last/1.cc: New test.
   3718  1.1  mrg 
   3719  1.1  mrg 2020-08-24  Jonathan Wakely  <jwakely (a] redhat.com>
   3720  1.1  mrg 
   3721  1.1  mrg 	* include/std/ranges (join_view): Add deduction guide (LWG 3474).
   3722  1.1  mrg 	* testsuite/std/ranges/adaptors/join_lwg3474.cc: New test.
   3723  1.1  mrg 
   3724  1.1  mrg 2020-08-24  Jonathan Wakely  <jwakely (a] redhat.com>
   3725  1.1  mrg 
   3726  1.1  mrg 	* include/bits/iterator_concepts.h (indirectly_readable): Add
   3727  1.1  mrg 	partial specializations to resolve ambiguities (LWG 3446).
   3728  1.1  mrg 	* testsuite/24_iterators/associated_types/readable.traits.cc:
   3729  1.1  mrg 	Check types with both value_type and element_type.
   3730  1.1  mrg 
   3731  1.1  mrg 2020-08-24  Jonathan Wakely  <jwakely (a] redhat.com>
   3732  1.1  mrg 
   3733  1.1  mrg 	* include/std/ranges (ranges::iota_view::size()): Perform all
   3734  1.1  mrg 	calculations in the right unsigned types.
   3735  1.1  mrg 	* testsuite/std/ranges/iota/size.cc: New test.
   3736  1.1  mrg 
   3737  1.1  mrg 2020-08-24  Jonathan Wakely  <jwakely (a] redhat.com>
   3738  1.1  mrg 
   3739  1.1  mrg 	PR libstdc++/96766
   3740  1.1  mrg 	* include/std/variant (_Variant_storage): Replace implicit
   3741  1.1  mrg 	conversions from size_t to __index_type with explicit casts.
   3742  1.1  mrg 
   3743  1.1  mrg 2020-08-24  Jonathan Wakely  <jwakely (a] redhat.com>
   3744  1.1  mrg 
   3745  1.1  mrg 	* testsuite/30_threads/packaged_task/cons/alloc.cc: Run for
   3746  1.1  mrg 	C++11 and skip for C++17 or later.
   3747  1.1  mrg 
   3748  1.1  mrg 2020-08-24  Corentin Gay  <gay (a] adacore.com>
   3749  1.1  mrg 
   3750  1.1  mrg 	* testsuite/20_util/shared_ptr/atomic/3.cc: Do not require POSIX
   3751  1.1  mrg 	threads and add -pthread only on targets supporting them.
   3752  1.1  mrg 	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
   3753  1.1  mrg 	Likewise.
   3754  1.1  mrg 	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
   3755  1.1  mrg 	Likewise.
   3756  1.1  mrg 	* testsuite/30_threads/async/42819.cc: Likewise.
   3757  1.1  mrg 	* testsuite/30_threads/async/49668.cc: Likewise.
   3758  1.1  mrg 	* testsuite/30_threads/async/54297.cc: Likewise.
   3759  1.1  mrg 	* testsuite/30_threads/async/any.cc: Likewise.
   3760  1.1  mrg 	* testsuite/30_threads/async/async.cc: Likewise.
   3761  1.1  mrg 	* testsuite/30_threads/async/except.cc: Likewise.
   3762  1.1  mrg 	* testsuite/30_threads/async/launch.cc: Likewise.
   3763  1.1  mrg 	* testsuite/30_threads/async/lwg2021.cc: Likewise.
   3764  1.1  mrg 	* testsuite/30_threads/async/sync.cc: Likewise. : Likewise.
   3765  1.1  mrg 	* testsuite/30_threads/call_once/39909.cc: Likewise.
   3766  1.1  mrg 	* testsuite/30_threads/call_once/49668.cc: Likewise.
   3767  1.1  mrg 	* testsuite/30_threads/call_once/60497.cc: Likewise.
   3768  1.1  mrg 	* testsuite/30_threads/call_once/call_once1.cc: Likewise.
   3769  1.1  mrg 	* testsuite/30_threads/call_once/dr2442.cc: Likewise.
   3770  1.1  mrg 	* testsuite/30_threads/condition_variable/54185.cc: Likewise.
   3771  1.1  mrg 	* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
   3772  1.1  mrg 	* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
   3773  1.1  mrg 	* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
   3774  1.1  mrg 	* testsuite/30_threads/condition_variable/members/3.cc: Likewise.
   3775  1.1  mrg 	* testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
   3776  1.1  mrg 	* testsuite/30_threads/condition_variable/members/68519.cc: Likewise.
   3777  1.1  mrg 	* testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
   3778  1.1  mrg 	Likewise.
   3779  1.1  mrg 	* testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
   3780  1.1  mrg 	* testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
   3781  1.1  mrg 	* testsuite/30_threads/condition_variable_any/cond.cc: Likewise.
   3782  1.1  mrg 	* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
   3783  1.1  mrg 	* testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
   3784  1.1  mrg 	* testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
   3785  1.1  mrg 	* testsuite/30_threads/future/cons/move.cc: Likewise.
   3786  1.1  mrg 	* testsuite/30_threads/future/members/45133.cc: Likewise.
   3787  1.1  mrg 	* testsuite/30_threads/future/members/get.cc: Likewise.
   3788  1.1  mrg 	* testsuite/30_threads/future/members/get2.cc: Likewise.
   3789  1.1  mrg 	* testsuite/30_threads/future/members/share.cc: Likewise.
   3790  1.1  mrg 	* testsuite/30_threads/future/members/valid.cc: Likewise.
   3791  1.1  mrg 	* testsuite/30_threads/future/members/wait.cc: Likewise.
   3792  1.1  mrg 	* testsuite/30_threads/future/members/wait_for.cc: Likewise.
   3793  1.1  mrg 	* testsuite/30_threads/future/members/wait_until.cc: Likewise.
   3794  1.1  mrg 	* testsuite/30_threads/lock/1.cc: Likewise.
   3795  1.1  mrg 	* testsuite/30_threads/lock/2.cc: Likewise.
   3796  1.1  mrg 	* testsuite/30_threads/lock/3.cc: Likewise.
   3797  1.1  mrg 	* testsuite/30_threads/lock/4.cc: Likewise.
   3798  1.1  mrg 	* testsuite/30_threads/mutex/cons/1.cc: Likewise.
   3799  1.1  mrg 	* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
   3800  1.1  mrg 	* testsuite/30_threads/mutex/lock/1.cc: Likewise.
   3801  1.1  mrg 	* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
   3802  1.1  mrg 	* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
   3803  1.1  mrg 	* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
   3804  1.1  mrg 	* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
   3805  1.1  mrg 	* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
   3806  1.1  mrg 	* testsuite/30_threads/mutex/unlock/2.cc: Likewise.
   3807  1.1  mrg 	* testsuite/30_threads/packaged_task/49668.cc: Likewise.
   3808  1.1  mrg 	* testsuite/30_threads/packaged_task/60564.cc: Likewise.
   3809  1.1  mrg 	* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
   3810  1.1  mrg 	* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
   3811  1.1  mrg 	* testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
   3812  1.1  mrg 	* testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
   3813  1.1  mrg 	* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
   3814  1.1  mrg 	* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
   3815  1.1  mrg 	* testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
   3816  1.1  mrg 	* testsuite/30_threads/packaged_task/members/at_thread_exit.cc:
   3817  1.1  mrg 	Likewise.
   3818  1.1  mrg 	* testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
   3819  1.1  mrg 	* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
   3820  1.1  mrg 	* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
   3821  1.1  mrg 	* testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
   3822  1.1  mrg 	* testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
   3823  1.1  mrg 	* testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
   3824  1.1  mrg 	* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
   3825  1.1  mrg 	* testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
   3826  1.1  mrg 	* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
   3827  1.1  mrg 	* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
   3828  1.1  mrg 	* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
   3829  1.1  mrg 	* testsuite/30_threads/promise/60966.cc: Likewise.
   3830  1.1  mrg 	* testsuite/30_threads/promise/cons/1.cc: Likewise.
   3831  1.1  mrg 	* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
   3832  1.1  mrg 	* testsuite/30_threads/promise/cons/move.cc: Likewise.
   3833  1.1  mrg 	* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
   3834  1.1  mrg 	* testsuite/30_threads/promise/members/at_thread_exit.cc: Likewise.
   3835  1.1  mrg 	* testsuite/30_threads/promise/members/at_thread_exit2.cc: Likewise.
   3836  1.1  mrg 	* testsuite/30_threads/promise/members/get_future.cc: Likewise.
   3837  1.1  mrg 	* testsuite/30_threads/promise/members/get_future2.cc: Likewise.
   3838  1.1  mrg 	* testsuite/30_threads/promise/members/set_exception.cc: Likewise.
   3839  1.1  mrg 	* testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
   3840  1.1  mrg 	* testsuite/30_threads/promise/members/set_value.cc: Likewise.
   3841  1.1  mrg 	* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
   3842  1.1  mrg 	* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
   3843  1.1  mrg 	* testsuite/30_threads/promise/members/swap.cc: Likewise.
   3844  1.1  mrg 	* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
   3845  1.1  mrg 	* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
   3846  1.1  mrg 	Likewise.
   3847  1.1  mrg 	* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
   3848  1.1  mrg 	* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
   3849  1.1  mrg 	* testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
   3850  1.1  mrg 	Likewise.
   3851  1.1  mrg 	* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
   3852  1.1  mrg 	* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
   3853  1.1  mrg 	* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
   3854  1.1  mrg 	* testsuite/30_threads/recursive_mutex/unlock/2.cc: Likewise.
   3855  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
   3856  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
   3857  1.1  mrg 	Likewise.
   3858  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
   3859  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
   3860  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
   3861  1.1  mrg 	Likewise.
   3862  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
   3863  1.1  mrg 	Likewise.
   3864  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
   3865  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
   3866  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
   3867  1.1  mrg 	Likewise.
   3868  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
   3869  1.1  mrg 	Likewise.
   3870  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
   3871  1.1  mrg 	Likewise.
   3872  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
   3873  1.1  mrg 	Likewise.
   3874  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
   3875  1.1  mrg 	Likewise.
   3876  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
   3877  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/unlock/2.cc: Likewise.
   3878  1.1  mrg 	* testsuite/30_threads/shared_future/cons/move.cc: Likewise.
   3879  1.1  mrg 	* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
   3880  1.1  mrg 	* testsuite/30_threads/shared_future/members/get.cc: Likewise.
   3881  1.1  mrg 	* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
   3882  1.1  mrg 	* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
   3883  1.1  mrg 	* testsuite/30_threads/shared_future/members/wait.cc: Likewise.
   3884  1.1  mrg 	* testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
   3885  1.1  mrg 	* testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
   3886  1.1  mrg 	* testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
   3887  1.1  mrg 	* testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
   3888  1.1  mrg 	* testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
   3889  1.1  mrg 	* testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
   3890  1.1  mrg 	* testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
   3891  1.1  mrg 	* testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
   3892  1.1  mrg 	* testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
   3893  1.1  mrg 	* testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
   3894  1.1  mrg 	* testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
   3895  1.1  mrg 	* testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
   3896  1.1  mrg 	* testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
   3897  1.1  mrg 	* testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
   3898  1.1  mrg 	* testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
   3899  1.1  mrg 	* testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
   3900  1.1  mrg 	* testsuite/30_threads/shared_mutex/unlock/1.cc: Likewise.
   3901  1.1  mrg 	* testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
   3902  1.1  mrg 	* testsuite/30_threads/shared_timed_mutex/try_lock/1.cc: Likewise.
   3903  1.1  mrg 	* testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
   3904  1.1  mrg 	* testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: Likewise.
   3905  1.1  mrg 	* testsuite/30_threads/shared_timed_mutex/unlock/1.cc: Likewise.
   3906  1.1  mrg 	* testsuite/30_threads/this_thread/1.cc: Likewise.
   3907  1.1  mrg 	* testsuite/30_threads/this_thread/sleep_for-mt.cc: Likewise.
   3908  1.1  mrg 	* testsuite/30_threads/this_thread/sleep_until-mt.cc: Likewise.
   3909  1.1  mrg 	* testsuite/30_threads/thread/cons/1.cc: Likewise.
   3910  1.1  mrg 	* testsuite/30_threads/thread/cons/2.cc: Likewise.
   3911  1.1  mrg 	* testsuite/30_threads/thread/cons/3.cc: Likewise.
   3912  1.1  mrg 	* testsuite/30_threads/thread/cons/4.cc: Likewise.
   3913  1.1  mrg 	* testsuite/30_threads/thread/cons/49668.cc: Likewise.
   3914  1.1  mrg 	* testsuite/30_threads/thread/cons/5.cc: Likewise.
   3915  1.1  mrg 	* testsuite/30_threads/thread/cons/6.cc: Likewise.
   3916  1.1  mrg 	* testsuite/30_threads/thread/cons/7.cc: Likewise.
   3917  1.1  mrg 	* testsuite/30_threads/thread/cons/8.cc: Likewise.
   3918  1.1  mrg 	* testsuite/30_threads/thread/cons/9.cc: Likewise.
   3919  1.1  mrg 	* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
   3920  1.1  mrg 	* testsuite/30_threads/thread/cons/terminate.cc: Likewise.
   3921  1.1  mrg 	* testsuite/30_threads/thread/members/1.cc: Likewise.
   3922  1.1  mrg 	* testsuite/30_threads/thread/members/2.cc: Likewise.
   3923  1.1  mrg 	* testsuite/30_threads/thread/members/3.cc: Likewise.
   3924  1.1  mrg 	* testsuite/30_threads/thread/members/4.cc: Likewise.
   3925  1.1  mrg 	* testsuite/30_threads/thread/members/5.cc: Likewise.
   3926  1.1  mrg 	* testsuite/30_threads/thread/members/hardware_concurrency.cc:
   3927  1.1  mrg 	Likewise.
   3928  1.1  mrg 	* testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise.
   3929  1.1  mrg 	* testsuite/30_threads/thread/swap/1.cc: Likewise.
   3930  1.1  mrg 	* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
   3931  1.1  mrg 	* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
   3932  1.1  mrg 	Likewise.
   3933  1.1  mrg 	* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
   3934  1.1  mrg 	* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
   3935  1.1  mrg 	* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
   3936  1.1  mrg 	Likewise.
   3937  1.1  mrg 	* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
   3938  1.1  mrg 	* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
   3939  1.1  mrg 	* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
   3940  1.1  mrg 	* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
   3941  1.1  mrg 	* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
   3942  1.1  mrg 	* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
   3943  1.1  mrg 	* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
   3944  1.1  mrg 	* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
   3945  1.1  mrg 	* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
   3946  1.1  mrg 	* testsuite/30_threads/timed_mutex/unlock/2.cc: Likewise.
   3947  1.1  mrg 	* testsuite/30_threads/try_lock/1.cc: Likewise.
   3948  1.1  mrg 	* testsuite/30_threads/try_lock/2.cc: Likewise.
   3949  1.1  mrg 	* testsuite/30_threads/try_lock/3.cc: Likewise.
   3950  1.1  mrg 	* testsuite/30_threads/try_lock/4.cc: Likewise.
   3951  1.1  mrg 	* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
   3952  1.1  mrg 	* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
   3953  1.1  mrg 	* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
   3954  1.1  mrg 	* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
   3955  1.1  mrg 	* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
   3956  1.1  mrg 	* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
   3957  1.1  mrg 	* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
   3958  1.1  mrg 	* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
   3959  1.1  mrg 	* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
   3960  1.1  mrg 	* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
   3961  1.1  mrg 	* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
   3962  1.1  mrg 
   3963  1.1  mrg 2020-08-21  Jonathan Wakely  <jwakely (a] redhat.com>
   3964  1.1  mrg 
   3965  1.1  mrg 	PR libstdc++/96736
   3966  1.1  mrg 	* testsuite/17_intro/headers/c++1998/all_attributes.cc: Do not
   3967  1.1  mrg 	test "cold" on darwin.
   3968  1.1  mrg 	* testsuite/17_intro/headers/c++2011/all_attributes.cc:
   3969  1.1  mrg 	Likewise.
   3970  1.1  mrg 	* testsuite/17_intro/headers/c++2014/all_attributes.cc:
   3971  1.1  mrg 	Likewise.
   3972  1.1  mrg 	* testsuite/17_intro/headers/c++2017/all_attributes.cc:
   3973  1.1  mrg 	Likewise.
   3974  1.1  mrg 	* testsuite/17_intro/headers/c++2020/all_attributes.cc:
   3975  1.1  mrg 	Likewise.
   3976  1.1  mrg 
   3977  1.1  mrg 2020-08-21  Jonathan Wakely  <jwakely (a] redhat.com>
   3978  1.1  mrg 
   3979  1.1  mrg 	PR libstdc++/96718
   3980  1.1  mrg 	* testsuite/25_algorithms/pstl/feature_test-2.cc: Require
   3981  1.1  mrg 	tbb-backend effective target.
   3982  1.1  mrg 	* testsuite/25_algorithms/pstl/feature_test-3.cc: Likewise.
   3983  1.1  mrg 	* testsuite/25_algorithms/pstl/feature_test-5.cc: Likewise.
   3984  1.1  mrg 	* testsuite/25_algorithms/pstl/feature_test.cc: Likewise.
   3985  1.1  mrg 
   3986  1.1  mrg 2020-08-20  Jonathan Wakely  <jwakely (a] redhat.com>
   3987  1.1  mrg 
   3988  1.1  mrg 	* include/bits/iterator_concepts.h [__STRICT_ANSI__]
   3989  1.1  mrg 	(incrementable_traits<__int128>): Define specialization.
   3990  1.1  mrg 	(incrementable_traits<unsigned __int128>): Likewise.
   3991  1.1  mrg 	* testsuite/std/ranges/iota/96042.cc: Test iota_view with
   3992  1.1  mrg 	__int128.
   3993  1.1  mrg 
   3994  1.1  mrg 2020-08-19  Jonathan Wakely  <jwakely (a] redhat.com>
   3995  1.1  mrg 	    Patrick Palka  <ppalka (a] redhat.com>
   3996  1.1  mrg 
   3997  1.1  mrg 	PR libstdc++/96042
   3998  1.1  mrg 	* include/bits/range_access.h (__detail::__to_unsigned_like):
   3999  1.1  mrg 	Do not use make_unsigned_t<T> in the return type, as it can
   4000  1.1  mrg 	result in an error before the integral<T> constraint is checked.
   4001  1.1  mrg 	[__STRICT_ANSI__]: Add overloads for 128-bit integer types.
   4002  1.1  mrg 	(__detail::__make_unsigned_like_t): Define as the return type
   4003  1.1  mrg 	of __to_unsigned_like.
   4004  1.1  mrg 	* testsuite/std/ranges/subrange/96042.cc: New test.
   4005  1.1  mrg 
   4006  1.1  mrg 2020-08-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4007  1.1  mrg 
   4008  1.1  mrg 	* include/bits/stl_tree.h (operator!=, operator>, operator<=)
   4009  1.1  mrg 	(operator>=): Remove deprecated functions.
   4010  1.1  mrg 
   4011  1.1  mrg 2020-08-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4012  1.1  mrg 
   4013  1.1  mrg 	PR libstdc++/96042
   4014  1.1  mrg 	* include/ext/numeric_traits.h (__is_integer_nonstrict): New
   4015  1.1  mrg 	trait which is true for 128-bit integers even in strict modes.
   4016  1.1  mrg 	(__numeric_traits_integer, __numeric_traits): Use
   4017  1.1  mrg 	__is_integer_nonstrict instead of __is_integer.
   4018  1.1  mrg 	* include/std/limits [__STRICT_ANSI__ && __SIZEOF_INT128__]
   4019  1.1  mrg 	(numeric_limits<__int128>, (numeric_limits<unsigned __int128>):
   4020  1.1  mrg 	Define.
   4021  1.1  mrg 	* testsuite/std/ranges/iota/96042.cc: New test.
   4022  1.1  mrg 
   4023  1.1  mrg 2020-08-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4024  1.1  mrg 
   4025  1.1  mrg 	* include/bits/c++config (_GLIBCXX_DEPRECATED_SUGGEST)
   4026  1.1  mrg 	(_GLIBCXX11_DEPRECATED, _GLIBCXX11_DEPRECATED_SUGGEST)
   4027  1.1  mrg 	(_GLIBCXX17_DEPRECATED_SUGGEST, _GLIBCXX20_DEPRECATED_SUGGEST):
   4028  1.1  mrg 	Add new macros to comment.
   4029  1.1  mrg 
   4030  1.1  mrg 2020-08-19  Patrick Palka  <ppalka (a] redhat.com>
   4031  1.1  mrg 
   4032  1.1  mrg 	* include/Makefile.am (bits_headers): Add new header
   4033  1.1  mrg 	<bits/max_size_type.h>.
   4034  1.1  mrg 	* include/Makefile.in: Regenerate.
   4035  1.1  mrg 	* include/bits/iterator_concepts.h
   4036  1.1  mrg 	(ranges::__detail::__max_diff_type): Remove definition, replace
   4037  1.1  mrg 	with forward declaration of class __max_diff_type.
   4038  1.1  mrg 	(__detail::__max_size_type): Remove definition, replace with
   4039  1.1  mrg 	forward declaration of class __max_size_type.
   4040  1.1  mrg 	(__detail::__is_unsigned_int128, __is_signed_int128)
   4041  1.1  mrg 	(__is_int128): New concepts.
   4042  1.1  mrg 	(__detail::__is_integer_like): Accept __int128 and unsigned
   4043  1.1  mrg 	__int128.
   4044  1.1  mrg 	(__detail::__is_signed_integer_like): Accept __int128.
   4045  1.1  mrg 	* include/bits/max_size_type.h: New header.
   4046  1.1  mrg 	* include/bits/range_access.h: Include <bits/max_size_type.h>.
   4047  1.1  mrg 	(__detail::__to_unsigned_like): Two new overloads.
   4048  1.1  mrg 	* testsuite/std/ranges/iota/difference_type.cc: New test.
   4049  1.1  mrg 	* testsuite/std/ranges/iota/max_size_type.cc: New test.
   4050  1.1  mrg 
   4051  1.1  mrg 2020-08-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4052  1.1  mrg 
   4053  1.1  mrg 	* include/bits/c++config (_GLIBCXX_DEPRECATED): Define for all
   4054  1.1  mrg 	standard modes.
   4055  1.1  mrg 	(_GLIBCXX_DEPRECATED_SUGGEST): New macro for "use 'foo' instead"
   4056  1.1  mrg 	message in deprecated warnings.
   4057  1.1  mrg 	(_GLIBCXX11_DEPRECATED, _GLIBCXX11_DEPRECATED_SUGGEST): New
   4058  1.1  mrg 	macros for marking features deprecated in C++11.
   4059  1.1  mrg 	(_GLIBCXX17_DEPRECATED_SUGGEST, _GLIBCXX20_DEPRECATED_SUGGEST):
   4060  1.1  mrg 	New macros.
   4061  1.1  mrg 	* include/backward/auto_ptr.h (auto_ptr_ref, auto_ptr<void>):
   4062  1.1  mrg 	Use _GLIBCXX11_DEPRECATED instead of _GLIBCXX_DEPRECATED.
   4063  1.1  mrg 	(auto_ptr): Use _GLIBCXX11_DEPRECATED_SUGGEST.
   4064  1.1  mrg 	* include/backward/binders.h (binder1st, binder2nd): Likewise.
   4065  1.1  mrg 	* include/bits/ios_base.h (io_state, open_mode, seek_dir)
   4066  1.1  mrg 	(streampos, streamoff): Use _GLIBCXX_DEPRECATED_SUGGEST.
   4067  1.1  mrg 	* include/std/streambuf (stossc): Replace C++11 attribute
   4068  1.1  mrg 	with _GLIBCXX_DEPRECATED_SUGGEST.
   4069  1.1  mrg 	* include/std/type_traits (__is_nullptr_t): Use
   4070  1.1  mrg 	_GLIBCXX_DEPRECATED_SUGGEST instead of _GLIBCXX_DEPRECATED.
   4071  1.1  mrg 	* testsuite/27_io/types/1.cc: Check for deprecated warnings.
   4072  1.1  mrg 	Also check for io_state, open_mode and seek_dir typedefs.
   4073  1.1  mrg 
   4074  1.1  mrg 2020-08-19  Antony Polukhin  <antoshkka (a] gmail.com>
   4075  1.1  mrg 
   4076  1.1  mrg 	PR libstdc++/71579
   4077  1.1  mrg 	* include/std/type_traits (invoke_result, is_nothrow_invocable_r)
   4078  1.1  mrg 	Add static_asserts to make sure that the argument of the type
   4079  1.1  mrg 	trait is not misused with incomplete types.
   4080  1.1  mrg 	(is_swappable_with, is_nothrow_swappable_with): Add static_asserts
   4081  1.1  mrg 	to make sure that the first and second arguments of the type trait
   4082  1.1  mrg 	are not misused with incomplete types.
   4083  1.1  mrg 	* testsuite/20_util/invoke_result/incomplete_neg.cc: New test.
   4084  1.1  mrg 	* testsuite/20_util/is_nothrow_invocable/incomplete_neg.cc: New test.
   4085  1.1  mrg 	* testsuite/20_util/is_nothrow_swappable/incomplete_neg.cc: New test.
   4086  1.1  mrg 	* testsuite/20_util/is_nothrow_swappable_with/incomplete_neg.cc: New
   4087  1.1  mrg 	test.
   4088  1.1  mrg 	* testsuite/20_util/is_swappable_with/incomplete_neg.cc: New test.
   4089  1.1  mrg 
   4090  1.1  mrg 2020-08-18  David Edelsohn  <dje.gcc (a] gmail.com>
   4091  1.1  mrg 	    Clement Chigot  <clement.chigot (a] atos.net>
   4092  1.1  mrg 
   4093  1.1  mrg 	* config/os/aix/t-aix: Add complementary mode object files to
   4094  1.1  mrg 	libsupc++.a
   4095  1.1  mrg 
   4096  1.1  mrg 2020-08-18  Jonathan Wakely  <jwakely (a] redhat.com>
   4097  1.1  mrg 
   4098  1.1  mrg 	* testsuite/17_intro/headers/c++1998/all_attributes.cc: Check
   4099  1.1  mrg 	"cold" isn't used in the library. Also check <cxxabi.h>.
   4100  1.1  mrg 	* testsuite/17_intro/headers/c++2011/all_attributes.cc:
   4101  1.1  mrg 	Likewise.
   4102  1.1  mrg 	* testsuite/17_intro/headers/c++2014/all_attributes.cc:
   4103  1.1  mrg 	Likewise.
   4104  1.1  mrg 	* testsuite/17_intro/headers/c++2017/all_attributes.cc:
   4105  1.1  mrg 	Likewise.
   4106  1.1  mrg 	* testsuite/17_intro/headers/c++2020/all_attributes.cc:
   4107  1.1  mrg 	Likewise.
   4108  1.1  mrg 
   4109  1.1  mrg 2020-08-18  Jonathan Wakely  <jwakely (a] redhat.com>
   4110  1.1  mrg 
   4111  1.1  mrg 	PR libstdc++/69724
   4112  1.1  mrg 	* include/std/future (__future_base::_S_make_deferred_state)
   4113  1.1  mrg 	(__future_base::_S_make_async_state): Remove.
   4114  1.1  mrg 	(__future_base::_Deferred_state): Change constructor to accept a
   4115  1.1  mrg 	parameter pack of arguments and forward them to the call
   4116  1.1  mrg 	wrapper.
   4117  1.1  mrg 	(__future_base::_Async_state_impl): Likewise. Replace lambda
   4118  1.1  mrg 	expression with a named member function.
   4119  1.1  mrg 	(async): Construct state object directly from the arguments,
   4120  1.1  mrg 	instead of using thread::__make_invoker, _S_make_deferred_state
   4121  1.1  mrg 	and _S_make_async_state. Move shared state into the returned
   4122  1.1  mrg 	future.
   4123  1.1  mrg 	* include/std/thread (thread::_Call_wrapper): New alias
   4124  1.1  mrg 	template for use by constructor and std::async.
   4125  1.1  mrg 	(thread::thread(Callable&&, Args&&...)): Create state object
   4126  1.1  mrg 	directly instead of using _S_make_state.
   4127  1.1  mrg 	(thread::__make_invoker, thread::__decayed_tuple)
   4128  1.1  mrg 	(thread::_S_make_state): Remove.
   4129  1.1  mrg 	* testsuite/30_threads/async/69724.cc: New test.
   4130  1.1  mrg 
   4131  1.1  mrg 2020-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   4132  1.1  mrg 
   4133  1.1  mrg 	PR libstdc++/55713
   4134  1.1  mrg 	PR libstdc++/71096
   4135  1.1  mrg 	PR libstdc++/93147
   4136  1.1  mrg 	* include/std/tuple [__has_cpp_attribute(no_unique_address)]
   4137  1.1  mrg 	(_Head_base<Idx, Head, true>): New definition of the partial
   4138  1.1  mrg 	specialization, using [[no_unique_address]] instead of
   4139  1.1  mrg 	inheritance.
   4140  1.1  mrg 	* testsuite/libstdc++-prettyprinters/48362.cc: Adjust expected
   4141  1.1  mrg 	output.
   4142  1.1  mrg 	* testsuite/20_util/tuple/comparison_operators/93147.cc: New test.
   4143  1.1  mrg 	* testsuite/20_util/tuple/creation_functions/55713.cc: New test.
   4144  1.1  mrg 	* testsuite/20_util/tuple/element_access/71096.cc: New test.
   4145  1.1  mrg 
   4146  1.1  mrg 2020-08-14  Lewis Hyatt  <lhyatt (a] gmail.com>
   4147  1.1  mrg 
   4148  1.1  mrg 	* testsuite/lib/libstdc++.exp: Use the new option
   4149  1.1  mrg 	-fdiagnostics-plain-output.
   4150  1.1  mrg 
   4151  1.1  mrg 2020-08-13  Jonathan Wakely  <jwakely (a] redhat.com>
   4152  1.1  mrg 
   4153  1.1  mrg 	* acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Warn if the c_std
   4154  1.1  mrg 	option is used and fail unless --enable-cheaders-obsolete is
   4155  1.1  mrg 	also used.
   4156  1.1  mrg 	* configure: Regenerate.
   4157  1.1  mrg 
   4158  1.1  mrg 2020-08-12  Jonathan Wakely  <jwakely (a] redhat.com>
   4159  1.1  mrg 
   4160  1.1  mrg 	PR libstdc++/85828
   4161  1.1  mrg 	* include/bits/basic_string.h (operator=(basic_string&&)): Check
   4162  1.1  mrg 	for self-move before copying with char_traits::copy.
   4163  1.1  mrg 	* include/bits/hashtable.h (operator=(_Hashtable&&)): Check for
   4164  1.1  mrg 	self-move.
   4165  1.1  mrg 	* include/bits/stl_deque.h (_M_move_assign1(deque&&, false_type)):
   4166  1.1  mrg 	Check for equal allocators.
   4167  1.1  mrg 	* include/bits/stl_list.h (_M_move_assign(list&&, true_type)):
   4168  1.1  mrg 	Call clear() instead of _M_clear().
   4169  1.1  mrg 	* include/debug/formatter.h (__msg_self_move_assign): Change
   4170  1.1  mrg 	comment.
   4171  1.1  mrg 	* include/debug/macros.h (__glibcxx_check_self_move_assign):
   4172  1.1  mrg 	(_GLIBCXX_DEBUG_VERIFY): Remove.
   4173  1.1  mrg 	* include/debug/safe_container.h (operator=(_Safe_container&&)):
   4174  1.1  mrg 	Remove assertion check for safe move and make it well-defined.
   4175  1.1  mrg 	* include/debug/safe_iterator.h (operator=(_Safe_iterator&&)):
   4176  1.1  mrg 	Remove assertion check for self-move.
   4177  1.1  mrg 	* include/debug/safe_local_iterator.h
   4178  1.1  mrg 	(operator=(_Safe_local_iterator&&)): Likewise.
   4179  1.1  mrg 	* testsuite/21_strings/basic_string/cons/char/self_move.cc: New test.
   4180  1.1  mrg 	* testsuite/23_containers/deque/cons/self_move.cc: New test.
   4181  1.1  mrg 	* testsuite/23_containers/forward_list/cons/self_move.cc: New test.
   4182  1.1  mrg 	* testsuite/23_containers/list/cons/self_move.cc: New test.
   4183  1.1  mrg 	* testsuite/23_containers/set/cons/self_move.cc: New test.
   4184  1.1  mrg 	* testsuite/23_containers/unordered_set/cons/self_move.cc: New test.
   4185  1.1  mrg 	* testsuite/23_containers/vector/cons/self_move.cc: New test.
   4186  1.1  mrg 
   4187  1.1  mrg 2020-08-11  Franois Dumont  <fdumont (a] gcc.gnu.org>
   4188  1.1  mrg 
   4189  1.1  mrg 	PR libstdc++/91620
   4190  1.1  mrg 	* include/bits/forward_list.tcc (forward_list<>::remove): Collect nodes
   4191  1.1  mrg 	to destroy in an intermediate forward_list.
   4192  1.1  mrg 	(forward_list<>::remove_if, forward_list<>::unique): Likewise.
   4193  1.1  mrg 	* include/bits/list.tcc (list<>::remove, list<>::unique): Likewise.
   4194  1.1  mrg 	(list<>::remove_if): Likewise.
   4195  1.1  mrg 	* include/debug/forward_list (forward_list<>::_M_erase_after): Remove.
   4196  1.1  mrg 	(forward_list<>::erase_after): Adapt.
   4197  1.1  mrg 	(forward_list<>::remove, forward_list<>::remove_if): Collect nodes to
   4198  1.1  mrg 	destroy in an intermediate forward_list.
   4199  1.1  mrg 	(forward_list<>::unique): Likewise.
   4200  1.1  mrg 	* include/debug/list (list<>::remove, list<>::unique): Likewise.
   4201  1.1  mrg 	(list<>::remove_if): Likewise.
   4202  1.1  mrg 	* testsuite/23_containers/forward_list/operations/91620.cc: New test.
   4203  1.1  mrg 	* testsuite/23_containers/list/operations/91620.cc: New test.
   4204  1.1  mrg 
   4205  1.1  mrg 2020-08-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4206  1.1  mrg 
   4207  1.1  mrg 	* testsuite/30_threads/thread/cons/84535.cc: Use a custom
   4208  1.1  mrg 	namespace.
   4209  1.1  mrg 	* testsuite/30_threads/thread/cons/lwg2097.cc: Likewise.
   4210  1.1  mrg 
   4211  1.1  mrg 2020-08-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4212  1.1  mrg 
   4213  1.1  mrg 	PR libstdc++/89760
   4214  1.1  mrg 	* include/experimental/executor [!_GLIBCXX_HAS_GTHREADS]:
   4215  1.1  mrg 	(execution_context::mutex_type): Define dummy mutex type.
   4216  1.1  mrg 	(system_context): Use execution_context::mutex_type.
   4217  1.1  mrg 	(system_context) [!_GLIBCXX_HAS_GTHREADS]: Define dummy
   4218  1.1  mrg 	thread and condition variable types.
   4219  1.1  mrg 	[!_GLIBCXX_HAS_GTHREADS] (system_context::_M_run()): Do not
   4220  1.1  mrg 	define.
   4221  1.1  mrg 	(system_context::_M_post) [!_GLIBCXX_HAS_GTHREADS]: Throw
   4222  1.1  mrg 	an exception when threads aren't available.
   4223  1.1  mrg 	(strand::running_in_this_thread()): Defer to _M_state.
   4224  1.1  mrg 	(strand::_State::running_in_this_thread()): New function.
   4225  1.1  mrg 	(use_future_t): Do not depend on _GLIBCXX_USE_C99_STDINT_TR1.
   4226  1.1  mrg 	* include/experimental/io_context (io_context): Use the
   4227  1.1  mrg 	execution_context::mutex_type alias. Replace stack of thread
   4228  1.1  mrg 	IDs with counter.
   4229  1.1  mrg 	* testsuite/experimental/net/execution_context/use_service.cc:
   4230  1.1  mrg 	Enable test for non-pthread targets.
   4231  1.1  mrg 
   4232  1.1  mrg 2020-08-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4233  1.1  mrg 
   4234  1.1  mrg 	* include/experimental/executor (system_context::a__tag): Make
   4235  1.1  mrg 	default constructor explicit.
   4236  1.1  mrg 
   4237  1.1  mrg 2020-08-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4238  1.1  mrg 
   4239  1.1  mrg 	* include/experimental/executor (system_context::_M_run()):
   4240  1.1  mrg 	Fix predicate.
   4241  1.1  mrg 	* testsuite/experimental/net/system_context/1.cc: New test.
   4242  1.1  mrg 
   4243  1.1  mrg 2020-08-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4244  1.1  mrg 
   4245  1.1  mrg 	* include/std/stop_token: Check _GLIBCXX_HAS_GTHREADS using
   4246  1.1  mrg 	#ifdef instead of #if.
   4247  1.1  mrg 	(stop_token::_S_yield()): Check _GLIBCXX_HAS_GTHREADS before
   4248  1.1  mrg 	using __gthread_yield.
   4249  1.1  mrg 
   4250  1.1  mrg 2020-08-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4251  1.1  mrg 
   4252  1.1  mrg 	* include/std/thread [!_GLIBCXX_HAS_GTHREADS] (this_thread::yield)
   4253  1.1  mrg 	(this_thread::sleep_until): Define.
   4254  1.1  mrg 	[!_GLIBCXX_HAS_GTHREADS] (this_thread::sleep_for): Define. Replace
   4255  1.1  mrg 	use of __gthread_time_t typedef with timespec.
   4256  1.1  mrg 	* src/c++11/thread.cc [!_GLIBCXX_HAS_GTHREADS] (__sleep_for):
   4257  1.1  mrg 	Likewise.
   4258  1.1  mrg 	* testsuite/30_threads/this_thread/2.cc: Moved to...
   4259  1.1  mrg 	* testsuite/30_threads/this_thread/yield.cc: ...here.
   4260  1.1  mrg 	* testsuite/30_threads/this_thread/3.cc: Moved to...
   4261  1.1  mrg 	* testsuite/30_threads/this_thread/sleep_for-mt.cc: ...here.
   4262  1.1  mrg 	* testsuite/30_threads/this_thread/4.cc: Moved to...
   4263  1.1  mrg 	* testsuite/30_threads/this_thread/sleep_until-mt.cc: ...here.
   4264  1.1  mrg 	* testsuite/30_threads/this_thread/58038.cc: Add
   4265  1.1  mrg 	dg-require-sleep.
   4266  1.1  mrg 	* testsuite/30_threads/this_thread/60421.cc: Likewise.
   4267  1.1  mrg 	* testsuite/30_threads/this_thread/sleep_for.cc: New test.
   4268  1.1  mrg 	* testsuite/30_threads/this_thread/sleep_until.cc: New test.
   4269  1.1  mrg 
   4270  1.1  mrg 2020-08-10  Jonathan Wakely  <jwakely (a] redhat.com>
   4271  1.1  mrg 
   4272  1.1  mrg 	PR libstdc++/94681
   4273  1.1  mrg 	* src/c++17/fs_ops.cc (read_symlink): Use posix::lstat instead
   4274  1.1  mrg 	of calling ::lstat directly.
   4275  1.1  mrg 	* src/filesystem/ops.cc (read_symlink): Likewise.
   4276  1.1  mrg 
   4277  1.1  mrg 2020-08-10  Jonathan Wakely  <jwakely (a] redhat.com>
   4278  1.1  mrg 
   4279  1.1  mrg 	* python/libstdcxx/v6/printers.py (UniquePointerPrinter.__init__):
   4280  1.1  mrg 	Use gdb.Type.strip_typedefs().
   4281  1.1  mrg 	* testsuite/libstdc++-prettyprinters/compat.cc: Use a typedef in
   4282  1.1  mrg 	the emulated old type.
   4283  1.1  mrg 
   4284  1.1  mrg 2020-08-10  Jonathan Wakely  <jwakely (a] redhat.com>
   4285  1.1  mrg 
   4286  1.1  mrg 	PR libstdc++/94681
   4287  1.1  mrg 	* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Do not depend on
   4288  1.1  mrg 	$enable_libstdcxx_filesystem_ts.
   4289  1.1  mrg 	* configure: Regenerate.
   4290  1.1  mrg 
   4291  1.1  mrg 2020-08-10  Jonathan Wakely  <jwakely (a] redhat.com>
   4292  1.1  mrg 
   4293  1.1  mrg 	PR libstdc++/93904
   4294  1.1  mrg 	* include/bits/stl_iterator.h (inserter): Do not deduce
   4295  1.1  mrg 	iterator type (LWG 561).
   4296  1.1  mrg 	* testsuite/24_iterators/insert_iterator/dr561.cc: New test.
   4297  1.1  mrg 
   4298  1.1  mrg 2020-08-10  Jonathan Wakely  <jwakely (a] redhat.com>
   4299  1.1  mrg 
   4300  1.1  mrg 	* include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI=0]
   4301  1.1  mrg 	(basic_string::reserve()): Do nothing if exceptions are not
   4302  1.1  mrg 	enabled.
   4303  1.1  mrg 
   4304  1.1  mrg 2020-08-10  Jonathan Wakely  <jwakely (a] redhat.com>
   4305  1.1  mrg 
   4306  1.1  mrg 	PR libstdc++/95749
   4307  1.1  mrg 	* src/filesystem/ops-common.h [_GLIBCXX_FILESYSTEM_IS_WINDOWS]
   4308  1.1  mrg 	(stat_type): Change to __stat64.
   4309  1.1  mrg 	(stat): Use _wstat64.
   4310  1.1  mrg 
   4311  1.1  mrg 2020-08-07  Jonathan Wakely  <jwakely (a] redhat.com>
   4312  1.1  mrg 
   4313  1.1  mrg 	PR libstdc++/96303
   4314  1.1  mrg 	* include/debug/bitset (bitset::operator==): Call _M_base() on
   4315  1.1  mrg 	right operand.
   4316  1.1  mrg 	(bitset::operator!=): Likewise, but don't define it at all when
   4317  1.1  mrg 	default comparisons are supported by the compiler.
   4318  1.1  mrg 	* testsuite/23_containers/bitset/operations/96303.cc: New test.
   4319  1.1  mrg 
   4320  1.1  mrg 2020-08-07  Jonathan Wakely  <jwakely (a] redhat.com>
   4321  1.1  mrg 
   4322  1.1  mrg 	* testsuite/18_support/comparisons/algorithms/partial_order.cc:
   4323  1.1  mrg 	Replace VERIFY with static_assert where the compiler now
   4324  1.1  mrg 	allows it.
   4325  1.1  mrg 	* testsuite/18_support/comparisons/algorithms/weak_order.cc:
   4326  1.1  mrg 	Likewise.
   4327  1.1  mrg 
   4328  1.1  mrg 2020-08-07  Jonathan Wakely  <jwakely (a] redhat.com>
   4329  1.1  mrg 
   4330  1.1  mrg 	* config/abi/pre/gnu.ver: Fix wildcards for wstring symbols.
   4331  1.1  mrg 
   4332  1.1  mrg 2020-08-06  Andrew Luo  <andrewluotechnologies (a] outlook.com>
   4333  1.1  mrg 	    Jonathan Wakely  <jwakely (a] redhat.com>
   4334  1.1  mrg 
   4335  1.1  mrg 	* config/abi/pre/gnu.ver (GLIBCXX_3.4): Use less greedy
   4336  1.1  mrg 	patterns for basic_string members.
   4337  1.1  mrg 	(GLIBCXX_3.4.29): Export new basic_string::reserve symbols.
   4338  1.1  mrg 	* doc/xml/manual/status_cxx2020.xml: Update P0966 status.
   4339  1.1  mrg 	* include/bits/basic_string.h (shrink_to_fit()): Call reserve().
   4340  1.1  mrg 	(reserve(size_type)): Remove default argument.
   4341  1.1  mrg 	(reserve()): Declare new overload.
   4342  1.1  mrg 	[!_GLIBCXX_USE_CXX11_ABI] (shrink_to_fit, reserve): Likewise.
   4343  1.1  mrg 	* include/bits/basic_string.tcc (reserve(size_type)): Remove
   4344  1.1  mrg 	support for shrinking capacity.
   4345  1.1  mrg 	(reserve()): Perform shrink-to-fit operation.
   4346  1.1  mrg 	[!_GLIBCXX_USE_CXX11_ABI] (reserve): Likewise.
   4347  1.1  mrg 	* testsuite/21_strings/basic_string/capacity/1.cc: Adjust to
   4348  1.1  mrg 	reflect new behavior.
   4349  1.1  mrg 	* testsuite/21_strings/basic_string/capacity/char/1.cc:
   4350  1.1  mrg 	Likewise.
   4351  1.1  mrg 	* testsuite/21_strings/basic_string/capacity/char/18654.cc:
   4352  1.1  mrg 	Likewise.
   4353  1.1  mrg 	* testsuite/21_strings/basic_string/capacity/char/2.cc:
   4354  1.1  mrg 	Likewise.
   4355  1.1  mrg 	* testsuite/21_strings/basic_string/capacity/wchar_t/1.cc:
   4356  1.1  mrg 	Likewise.
   4357  1.1  mrg 	* testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc:
   4358  1.1  mrg 	Likewise.
   4359  1.1  mrg 	* testsuite/21_strings/basic_string/capacity/wchar_t/2.cc:
   4360  1.1  mrg 	Likewise.
   4361  1.1  mrg 
   4362  1.1  mrg 2020-08-06  Jonathan Wakely  <jwakely (a] redhat.com>
   4363  1.1  mrg 
   4364  1.1  mrg 	* include/bits/basic_string.tcc
   4365  1.1  mrg 	(operator>>(basic_istream&, basic_string&)): Do not set eofbit
   4366  1.1  mrg 	if extraction stopped after in.width() characters.
   4367  1.1  mrg 	* src/c++98/istream-string.cc (operator>>(istream&, string&)):
   4368  1.1  mrg 	Likewise.
   4369  1.1  mrg 	* include/bits/istream.tcc (__istream_extract): Do not set
   4370  1.1  mrg 	eofbit if extraction stopped after n-1 characters.
   4371  1.1  mrg 	* src/c++98/istream.cc (__istream_extract): Likewise.
   4372  1.1  mrg 	* testsuite/21_strings/basic_string/inserters_extractors/char/13.cc: New test.
   4373  1.1  mrg 	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/13.cc: New test.
   4374  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/char/5.cc: New test.
   4375  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/wchar_t/5.cc: New test.
   4376  1.1  mrg 
   4377  1.1  mrg 2020-08-06  Jonathan Wakely  <jwakely (a] redhat.com>
   4378  1.1  mrg 
   4379  1.1  mrg 	PR libstdc++/96484
   4380  1.1  mrg 	* src/c++17/fs_ops.cc (fs::read_symlink): Return an error
   4381  1.1  mrg 	immediately for non-symlinks.
   4382  1.1  mrg 	* src/filesystem/ops.cc (fs::read_symlink): Likewise.
   4383  1.1  mrg 
   4384  1.1  mrg 2020-08-06  Jonathan Wakely  <jwakely (a] redhat.com>
   4385  1.1  mrg 
   4386  1.1  mrg 	* include/std/istream (operator>>(istream&, char*)): Add
   4387  1.1  mrg 	attributes to get warnings for pointers that are null or known
   4388  1.1  mrg 	to point to the end of a buffer. Request upper bound from
   4389  1.1  mrg 	__builtin_object_size check and handle zero-sized buffer case.
   4390  1.1  mrg 	(operator>>(istream&, signed char))
   4391  1.1  mrg 	(operator>>(istream&, unsigned char*)): Add attributes.
   4392  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/char/overflow.cc:
   4393  1.1  mrg 	Check extracting into the middle of a buffer.
   4394  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/wchar_t/overflow.cc: New test.
   4395  1.1  mrg 
   4396  1.1  mrg 2020-08-05  Jonathan Wakely  <jwakely (a] redhat.com>
   4397  1.1  mrg 
   4398  1.1  mrg 	* include/std/atomic (atomic<T>::store): Reformat.
   4399  1.1  mrg 
   4400  1.1  mrg 2020-08-05  Jonathan Wakely  <jwakely (a] redhat.com>
   4401  1.1  mrg 
   4402  1.1  mrg 	* doc/xml/manual/status_cxx2017.xml: Replace oneAPI DPC++ link
   4403  1.1  mrg 	with LLVM repo for PSTL.
   4404  1.1  mrg 	* doc/html/manual/status.html: Regenerate.
   4405  1.1  mrg 
   4406  1.1  mrg 2020-08-05  Jonathan Wakely  <jwakely (a] redhat.com>
   4407  1.1  mrg 
   4408  1.1  mrg 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.29): Export new symbols.
   4409  1.1  mrg 	* include/bits/istream.tcc (__istream_extract): New function
   4410  1.1  mrg 	template implementing both of operator>>(istream&, char*) and
   4411  1.1  mrg 	operator>>(istream&, char(&)[N]). Add explicit instantiation
   4412  1.1  mrg 	declaration for it. Remove explicit instantiation declarations
   4413  1.1  mrg 	for old function templates.
   4414  1.1  mrg 	* include/std/istream (__istream_extract): Declare.
   4415  1.1  mrg 	(operator>>(basic_istream<C,T>&, C*)): Define inline and simply
   4416  1.1  mrg 	call __istream_extract.
   4417  1.1  mrg 	(operator>>(basic_istream<char,T>&, signed char*)): Likewise.
   4418  1.1  mrg 	(operator>>(basic_istream<char,T>&, unsigned char*)): Likewise.
   4419  1.1  mrg 	(operator>>(basic_istream<C,T>&, C(7)[N])): Define for LWG 2499.
   4420  1.1  mrg 	(operator>>(basic_istream<char,T>&, signed char(&)[N])):
   4421  1.1  mrg 	Likewise.
   4422  1.1  mrg 	(operator>>(basic_istream<char,T>&, unsigned char(&)[N])):
   4423  1.1  mrg 	Likewise.
   4424  1.1  mrg 	* include/std/streambuf (basic_streambuf): Declare char overload
   4425  1.1  mrg 	of __istream_extract as a friend.
   4426  1.1  mrg 	* src/c++11/istream-inst.cc: Add explicit instantiation
   4427  1.1  mrg 	definition for wchar_t overload of __istream_extract. Remove
   4428  1.1  mrg 	explicit instantiation definitions of old operator>> overloads
   4429  1.1  mrg 	for versioned-namespace build.
   4430  1.1  mrg 	* src/c++98/istream.cc (operator>>(istream&, char*)): Replace
   4431  1.1  mrg 	with __istream_extract(istream&, char*, streamsize).
   4432  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/char/3.cc:
   4433  1.1  mrg 	Do not use variable-length array.
   4434  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/char/4.cc:
   4435  1.1  mrg 	Do not run test for C++20.
   4436  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
   4437  1.1  mrg 	Do not test writing to pointers for C++20.
   4438  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/char/9826.cc:
   4439  1.1  mrg 	Use array instead of pointer.
   4440  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/wchar_t/3.cc:
   4441  1.1  mrg 	Do not use variable-length array.
   4442  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc:
   4443  1.1  mrg 	Do not run test for C++20.
   4444  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/wchar_t/9555-ic.cc:
   4445  1.1  mrg 	Do not test writing to pointers for C++20.
   4446  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/char/lwg2499.cc:
   4447  1.1  mrg 	New test.
   4448  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/char/lwg2499_neg.cc:
   4449  1.1  mrg 	New test.
   4450  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/char/overflow.cc:
   4451  1.1  mrg 	New test.
   4452  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/wchar_t/lwg2499.cc:
   4453  1.1  mrg 	New test.
   4454  1.1  mrg 	* testsuite/27_io/basic_istream/extractors_character/wchar_t/lwg2499_neg.cc:
   4455  1.1  mrg 	New test.
   4456  1.1  mrg 
   4457  1.1  mrg 2020-08-01  Gerald Pfeifer  <gerald (a] pfeifer.com>
   4458  1.1  mrg 
   4459  1.1  mrg 	* doc/xml/manual/using_exceptions.xml: Move www.stroustrup.com to
   4460  1.1  mrg 	https.
   4461  1.1  mrg 	* doc/html/manual/using_exceptions.html: Regenerate.
   4462  1.1  mrg 
   4463  1.1  mrg 2020-07-31  Gerald Pfeifer  <gerald (a] pfeifer.com>
   4464  1.1  mrg 
   4465  1.1  mrg 	* doc/xml/manual/status_cxx2017.xml: ParallelSTL is now part
   4466  1.1  mrg 	of oneAPI DPC++ Library on Github.
   4467  1.1  mrg 	* doc/html/manual/status.html: Regenerate.
   4468  1.1  mrg 
   4469  1.1  mrg 2020-07-31  Franois Dumont  <fdumont (a] gcc.gnu.org>
   4470  1.1  mrg 
   4471  1.1  mrg 	* include/bits/stl_bvector.h
   4472  1.1  mrg 	[_GLIBCXX_INLINE_VERSION](_Bvector_impl_data::_M_start): Define as
   4473  1.1  mrg 	_Bit_type*.
   4474  1.1  mrg 	(_Bvector_impl_data(const _Bvector_impl_data&)): Default.
   4475  1.1  mrg 	(_Bvector_impl_data(_Bvector_impl_data&&)): Delegate to latter.
   4476  1.1  mrg 	(_Bvector_impl_data::operator=(const _Bvector_impl_data&)): Default.
   4477  1.1  mrg 	(_Bvector_impl_data::_M_move_data(_Bvector_impl_data&&)): Use latter.
   4478  1.1  mrg 	(_Bvector_impl_data::_M_reset()): Likewise.
   4479  1.1  mrg 	(_Bvector_impl_data::_M_swap_data): New.
   4480  1.1  mrg 	(_Bvector_impl::_Bvector_impl(_Bvector_impl&&)): Implement explicitely.
   4481  1.1  mrg 	(_Bvector_impl::_Bvector_impl(_Bit_alloc_type&&, _Bvector_impl&&)): New.
   4482  1.1  mrg 	(_Bvector_base::_Bvector_base(_Bvector_base&&, const allocator_type&)):
   4483  1.1  mrg 	New, use latter.
   4484  1.1  mrg 	(vector::vector(vector&&, const allocator_type&, true_type)): New, use
   4485  1.1  mrg 	latter.
   4486  1.1  mrg 	(vector::vector(vector&&, const allocator_type&, false_type)): New.
   4487  1.1  mrg 	(vector::vector(vector&&, const allocator_type&)): Use latters.
   4488  1.1  mrg 	(vector::vector(const vector&, const allocator_type&)): Adapt.
   4489  1.1  mrg 	[__cplusplus >= 201103](vector::vector(_InputIt, _InputIt,
   4490  1.1  mrg 	const allocator_type&)): Use _M_initialize_range.
   4491  1.1  mrg 	(vector::operator[](size_type)): Use iterator operator[].
   4492  1.1  mrg 	(vector::operator[](size_type) const): Use const_iterator operator[].
   4493  1.1  mrg 	(vector::swap(vector&)): Add assertions on allocators. Use _M_swap_data.
   4494  1.1  mrg 	[__cplusplus >= 201103](vector::insert(const_iterator, _InputIt,
   4495  1.1  mrg 	_InputIt)): Use _M_insert_range.
   4496  1.1  mrg 	(vector::_M_initialize(size_type)): Adapt.
   4497  1.1  mrg 	[__cplusplus >= 201103](vector::_M_initialize_dispatch): Remove.
   4498  1.1  mrg 	[__cplusplus >= 201103](vector::_M_insert_dispatch): Remove.
   4499  1.1  mrg 	* python/libstdcxx/v6/printers.py (StdVectorPrinter._iterator): Stop
   4500  1.1  mrg 	using start _M_offset.
   4501  1.1  mrg 	(StdVectorPrinter.to_string): Likewise.
   4502  1.1  mrg 	* testsuite/23_containers/vector/bool/allocator/swap.cc: Adapt.
   4503  1.1  mrg 	* testsuite/23_containers/vector/bool/cons/noexcept_move_construct.cc:
   4504  1.1  mrg 	Add check.
   4505  1.1  mrg 
   4506  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4507  1.1  mrg 
   4508  1.1  mrg 	* testsuite/27_io/basic_istream/ignore/char/94749.cc: Use 0
   4509  1.1  mrg 	instead of nullptr.
   4510  1.1  mrg 	* testsuite/27_io/basic_istream/ignore/wchar_t/94749.cc:
   4511  1.1  mrg 	Likewise.
   4512  1.1  mrg 
   4513  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4514  1.1  mrg 
   4515  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_fill_n/sizes.cc:
   4516  1.1  mrg 	Move struct to namespace scope.
   4517  1.1  mrg 
   4518  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4519  1.1  mrg 
   4520  1.1  mrg 	* testsuite/26_numerics/numbers/float128.cc: Check
   4521  1.1  mrg 	__STRICT_ANSI__ before using __float128.
   4522  1.1  mrg 	* testsuite/std/concepts/concepts.lang/concept.arithmetic/floating_point.cc:
   4523  1.1  mrg 	Likewise.
   4524  1.1  mrg 
   4525  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4526  1.1  mrg 
   4527  1.1  mrg 	* testsuite/18_support/set_terminate.cc: Require C++11 or
   4528  1.1  mrg 	higher.
   4529  1.1  mrg 	* testsuite/28_regex/simple_c++11.cc: Likewise.
   4530  1.1  mrg 	* testsuite/tr1/headers/c++200x/complex.cc: Likewise.
   4531  1.1  mrg 	* testsuite/24_iterators/headers/iterator/synopsis.cc:
   4532  1.1  mrg 	Require C++14 or lower.
   4533  1.1  mrg 
   4534  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4535  1.1  mrg 
   4536  1.1  mrg 	* testsuite/23_containers/span/back_assert_neg.cc: Split c++2a
   4537  1.1  mrg 	effective-target from xfail selector.
   4538  1.1  mrg 	* testsuite/23_containers/span/first_2_assert_neg.cc: Likewise.
   4539  1.1  mrg 	* testsuite/23_containers/span/first_assert_neg.cc: Likewise.
   4540  1.1  mrg 	* testsuite/23_containers/span/front_assert_neg.cc: Likewise.
   4541  1.1  mrg 	* testsuite/23_containers/span/index_op_assert_neg.cc: Likewise.
   4542  1.1  mrg 	* testsuite/23_containers/span/last_2_assert_neg.cc: Likewise.
   4543  1.1  mrg 	* testsuite/23_containers/span/last_assert_neg.cc: Likewise.
   4544  1.1  mrg 	* testsuite/23_containers/span/subspan_2_assert_neg.cc:
   4545  1.1  mrg 	Likewise.
   4546  1.1  mrg 	* testsuite/23_containers/span/subspan_3_assert_neg.cc:
   4547  1.1  mrg 	Likewise.
   4548  1.1  mrg 	* testsuite/23_containers/span/subspan_4_assert_neg.cc:
   4549  1.1  mrg 	Likewise.
   4550  1.1  mrg 	* testsuite/23_containers/span/subspan_5_assert_neg.cc:
   4551  1.1  mrg 	Likewise.
   4552  1.1  mrg 	* testsuite/23_containers/span/subspan_6_assert_neg.cc:
   4553  1.1  mrg 	Likewise.
   4554  1.1  mrg 	* testsuite/23_containers/span/subspan_assert_neg.cc: Likewise.
   4555  1.1  mrg 
   4556  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4557  1.1  mrg 
   4558  1.1  mrg 	* testsuite/20_util/reference_wrapper/83427.cc: Adjust
   4559  1.1  mrg 	effective-target to specific language mode only.
   4560  1.1  mrg 	* testsuite/24_iterators/headers/iterator/range_access_c++11.cc:
   4561  1.1  mrg 	Likewise.
   4562  1.1  mrg 	* testsuite/24_iterators/headers/iterator/range_access_c++14.cc:
   4563  1.1  mrg 	Likewise.
   4564  1.1  mrg 	* testsuite/24_iterators/headers/iterator/synopsis_c++11.cc:
   4565  1.1  mrg 	Likewise.
   4566  1.1  mrg 	* testsuite/24_iterators/headers/iterator/synopsis_c++14.cc:
   4567  1.1  mrg 	Likewise.
   4568  1.1  mrg 	* testsuite/26_numerics/valarray/69116.cc:
   4569  1.1  mrg 	Likewise.
   4570  1.1  mrg 	* testsuite/30_threads/headers/condition_variable/std_c++0x_neg.cc:
   4571  1.1  mrg 	Remove whitespace at end of file.
   4572  1.1  mrg 	* testsuite/30_threads/headers/future/std_c++0x_neg.cc:
   4573  1.1  mrg 	Likewise.
   4574  1.1  mrg 
   4575  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4576  1.1  mrg 
   4577  1.1  mrg 	* testsuite/17_intro/headers/c++2017/all_attributes.cc: Add
   4578  1.1  mrg 	c++17 effective-target.
   4579  1.1  mrg 	* testsuite/17_intro/headers/c++2017/all_no_exceptions.cc:
   4580  1.1  mrg 	Likewise.
   4581  1.1  mrg 	* testsuite/17_intro/headers/c++2017/all_no_rtti.cc: Likewise.
   4582  1.1  mrg 	* testsuite/17_intro/headers/c++2017/all_pedantic_errors.cc:
   4583  1.1  mrg 	Likewise.
   4584  1.1  mrg 	* testsuite/17_intro/headers/c++2017/operator_names.cc:
   4585  1.1  mrg 	Likewise.
   4586  1.1  mrg 	* testsuite/17_intro/headers/c++2017/stdc++.cc: Likewise.
   4587  1.1  mrg 	* testsuite/17_intro/headers/c++2017/stdc++_multiple_inclusion.cc:
   4588  1.1  mrg 	Likewise.
   4589  1.1  mrg 	* testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
   4590  1.1  mrg 	Likewise.
   4591  1.1  mrg 	* testsuite/19_diagnostics/error_code/is_error_code_v.cc:
   4592  1.1  mrg 	Likewise.
   4593  1.1  mrg 	* testsuite/20_util/any/assign/1.cc: Likewise.
   4594  1.1  mrg 	* testsuite/20_util/any/assign/2.cc: Likewise.
   4595  1.1  mrg 	* testsuite/20_util/any/assign/emplace.cc: Likewise.
   4596  1.1  mrg 	* testsuite/20_util/any/assign/exception.cc: Likewise.
   4597  1.1  mrg 	* testsuite/20_util/any/assign/self.cc: Likewise.
   4598  1.1  mrg 	* testsuite/20_util/any/cons/1.cc: Likewise.
   4599  1.1  mrg 	* testsuite/20_util/any/cons/2.cc: Likewise.
   4600  1.1  mrg 	* testsuite/20_util/any/cons/aligned.cc: Likewise.
   4601  1.1  mrg 	* testsuite/20_util/any/cons/explicit.cc: Likewise.
   4602  1.1  mrg 	* testsuite/20_util/any/cons/in_place.cc: Likewise.
   4603  1.1  mrg 	* testsuite/20_util/any/cons/nontrivial.cc: Likewise.
   4604  1.1  mrg 	* testsuite/20_util/any/make_any.cc: Likewise.
   4605  1.1  mrg 	* testsuite/20_util/any/misc/any_cast.cc: Likewise.
   4606  1.1  mrg 	* testsuite/20_util/any/misc/any_cast_no_rtti.cc: Likewise.
   4607  1.1  mrg 	* testsuite/20_util/any/misc/swap.cc: Likewise.
   4608  1.1  mrg 	* testsuite/20_util/any/modifiers/1.cc: Likewise.
   4609  1.1  mrg 	* testsuite/20_util/any/observers/type.cc: Likewise.
   4610  1.1  mrg 	* testsuite/20_util/any/requirements.cc: Likewise.
   4611  1.1  mrg 	* testsuite/20_util/any/typedefs.cc: Likewise.
   4612  1.1  mrg 	* testsuite/20_util/as_const/1.cc: Likewise.
   4613  1.1  mrg 	* testsuite/20_util/as_const/rvalue_neg.cc: Likewise.
   4614  1.1  mrg 	* testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
   4615  1.1  mrg 	* testsuite/20_util/bool_constant/requirements.cc: Likewise.
   4616  1.1  mrg 	* testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
   4617  1.1  mrg 	Likewise.
   4618  1.1  mrg 	* testsuite/20_util/duration_cast/rounding.cc: Likewise.
   4619  1.1  mrg 	* testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
   4620  1.1  mrg 	Likewise.
   4621  1.1  mrg 	* testsuite/20_util/function_objects/invoke/59768.cc: Likewise.
   4622  1.1  mrg 	* testsuite/20_util/function_objects/not_fn/1.cc: Likewise.
   4623  1.1  mrg 	* testsuite/20_util/function_objects/searchers.cc: Likewise.
   4624  1.1  mrg 	* testsuite/20_util/in_place/requirements.cc: Likewise.
   4625  1.1  mrg 	* testsuite/20_util/is_invocable/requirements/explicit_instantiation.cc:
   4626  1.1  mrg 	Likewise.
   4627  1.1  mrg 	* testsuite/20_util/is_invocable/requirements/typedefs.cc:
   4628  1.1  mrg 	Likewise.
   4629  1.1  mrg 	* testsuite/20_util/is_invocable/value.cc: Likewise.
   4630  1.1  mrg 	* testsuite/20_util/is_nothrow_invocable/requirements/explicit_instantiation.cc:
   4631  1.1  mrg 	Likewise.
   4632  1.1  mrg 	* testsuite/20_util/is_nothrow_invocable/requirements/typedefs.cc:
   4633  1.1  mrg 	Likewise.
   4634  1.1  mrg 	* testsuite/20_util/is_nothrow_swappable/requirements/explicit_instantiation.cc:
   4635  1.1  mrg 	Likewise.
   4636  1.1  mrg 	* testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
   4637  1.1  mrg 	Likewise.
   4638  1.1  mrg 	* testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
   4639  1.1  mrg 	* testsuite/20_util/is_nothrow_swappable_with/requirements/explicit_instantiation.cc:
   4640  1.1  mrg 	Likewise.
   4641  1.1  mrg 	* testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
   4642  1.1  mrg 	Likewise.
   4643  1.1  mrg 	* testsuite/20_util/is_nothrow_swappable_with/value.cc:
   4644  1.1  mrg 	Likewise.
   4645  1.1  mrg 	* testsuite/20_util/is_swappable/requirements/explicit_instantiation.cc:
   4646  1.1  mrg 	Likewise.
   4647  1.1  mrg 	* testsuite/20_util/is_swappable/requirements/typedefs.cc:
   4648  1.1  mrg 	Likewise.
   4649  1.1  mrg 	* testsuite/20_util/is_swappable/value.cc: Likewise.
   4650  1.1  mrg 	* testsuite/20_util/is_swappable_with/requirements/explicit_instantiation.cc:
   4651  1.1  mrg 	Likewise.
   4652  1.1  mrg 	* testsuite/20_util/is_swappable_with/requirements/typedefs.cc:
   4653  1.1  mrg 	Likewise.
   4654  1.1  mrg 	* testsuite/20_util/is_swappable_with/value.cc: Likewise.
   4655  1.1  mrg 	* testsuite/20_util/logical_traits/requirements/explicit_instantiation.cc:
   4656  1.1  mrg 	Likewise.
   4657  1.1  mrg 	* testsuite/20_util/logical_traits/requirements/typedefs.cc:
   4658  1.1  mrg 	Likewise.
   4659  1.1  mrg 	* testsuite/20_util/logical_traits/value.cc: Likewise.
   4660  1.1  mrg 	* testsuite/20_util/optional/constexpr/make_optional.cc: Likewise.
   4661  1.1  mrg 	* testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
   4662  1.1  mrg 	* testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
   4663  1.1  mrg 	* testsuite/20_util/optional/hash.cc: Likewise.
   4664  1.1  mrg 	* testsuite/20_util/pair/swap_cxx17.cc: Likewise.
   4665  1.1  mrg 	* testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise.
   4666  1.1  mrg 	* testsuite/20_util/shared_ptr/requirements/weak_type.cc:
   4667  1.1  mrg 	Likewise.
   4668  1.1  mrg 	* testsuite/20_util/specialized_algorithms/memory_management_tools/1.cc:
   4669  1.1  mrg 	Likewise.
   4670  1.1  mrg 	* testsuite/20_util/tuple/apply/1.cc: Likewise.
   4671  1.1  mrg 	* testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise.
   4672  1.1  mrg 	* testsuite/20_util/tuple/swap_cxx17.cc: Likewise.
   4673  1.1  mrg 	* testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
   4674  1.1  mrg 	* testsuite/20_util/unique_ptr/specialized_algorithms/swap_cxx17.cc:
   4675  1.1  mrg 	Likewise.
   4676  1.1  mrg 	* testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
   4677  1.1  mrg 	Likewise.
   4678  1.1  mrg 	* testsuite/20_util/variant/any.cc: Likewise.
   4679  1.1  mrg 	* testsuite/20_util/variant/compile.cc: Likewise.
   4680  1.1  mrg 	* testsuite/20_util/variant/hash.cc: Likewise.
   4681  1.1  mrg 	* testsuite/20_util/variant/index_type.cc: Likewise.
   4682  1.1  mrg 	* testsuite/20_util/variant/run.cc: Likewise.
   4683  1.1  mrg 	* testsuite/20_util/void_t/1.cc: Likewise.
   4684  1.1  mrg 	* testsuite/21_strings/basic_string/79162.cc: Likewise.
   4685  1.1  mrg 	* testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
   4686  1.1  mrg 	* testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
   4687  1.1  mrg 	* testsuite/21_strings/basic_string/lwg2758.cc: Likewise.
   4688  1.1  mrg 	* testsuite/21_strings/basic_string/lwg2946.cc: Likewise.
   4689  1.1  mrg 	* testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
   4690  1.1  mrg 	Likewise.
   4691  1.1  mrg 	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
   4692  1.1  mrg 	Likewise.
   4693  1.1  mrg 	* testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
   4694  1.1  mrg 	Likewise.
   4695  1.1  mrg 	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
   4696  1.1  mrg 	Likewise.
   4697  1.1  mrg 	* testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
   4698  1.1  mrg 	Likewise.
   4699  1.1  mrg 	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
   4700  1.1  mrg 	Likewise.
   4701  1.1  mrg 	* testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
   4702  1.1  mrg 	Likewise.
   4703  1.1  mrg 	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
   4704  1.1  mrg 	Likewise.
   4705  1.1  mrg 	* testsuite/21_strings/basic_string/operations/compare/char/2.cc:
   4706  1.1  mrg 	Likewise.
   4707  1.1  mrg 	* testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
   4708  1.1  mrg 	Likewise.
   4709  1.1  mrg 	* testsuite/21_strings/basic_string/operations/data/char/2.cc:
   4710  1.1  mrg 	Likewise.
   4711  1.1  mrg 	* testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc:
   4712  1.1  mrg 	Likewise.
   4713  1.1  mrg 	* testsuite/21_strings/basic_string/operations/find/char/5.cc:
   4714  1.1  mrg 	Likewise.
   4715  1.1  mrg 	* testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
   4716  1.1  mrg 	Likewise.
   4717  1.1  mrg 	* testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
   4718  1.1  mrg 	* testsuite/21_strings/basic_string/operators/wchar_t/5.cc:
   4719  1.1  mrg 	Likewise.
   4720  1.1  mrg 	* testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
   4721  1.1  mrg 	* testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
   4722  1.1  mrg 	* testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
   4723  1.1  mrg 	* testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
   4724  1.1  mrg 	* testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc:
   4725  1.1  mrg 	Likewise.
   4726  1.1  mrg 	* testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc:
   4727  1.1  mrg 	Likewise.
   4728  1.1  mrg 	* testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc:
   4729  1.1  mrg 	Likewise.
   4730  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/char/1.cc:
   4731  1.1  mrg 	Likewise.
   4732  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/char/2.cc:
   4733  1.1  mrg 	Likewise.
   4734  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
   4735  1.1  mrg 	Likewise.
   4736  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/char/front_back.cc:
   4737  1.1  mrg 	Likewise.
   4738  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc:
   4739  1.1  mrg 	Likewise.
   4740  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc:
   4741  1.1  mrg 	Likewise.
   4742  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc:
   4743  1.1  mrg 	Likewise.
   4744  1.1  mrg 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc:
   4745  1.1  mrg 	Likewise.
   4746  1.1  mrg 	* testsuite/21_strings/basic_string_view/include.cc: Likewise.
   4747  1.1  mrg 	* testsuite/21_strings/basic_string_view/inserters/char/1.cc:
   4748  1.1  mrg 	Likewise.
   4749  1.1  mrg 	* testsuite/21_strings/basic_string_view/inserters/char/2.cc:
   4750  1.1  mrg 	Likewise.
   4751  1.1  mrg 	* testsuite/21_strings/basic_string_view/inserters/char/3.cc:
   4752  1.1  mrg 	Likewise.
   4753  1.1  mrg 	* testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
   4754  1.1  mrg 	Likewise.
   4755  1.1  mrg 	* testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
   4756  1.1  mrg 	Likewise.
   4757  1.1  mrg 	* testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
   4758  1.1  mrg 	Likewise.
   4759  1.1  mrg 	* testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
   4760  1.1  mrg 	Likewise.
   4761  1.1  mrg 	* testsuite/21_strings/basic_string_view/literals/types-char8_t.cc:
   4762  1.1  mrg 	Likewise.
   4763  1.1  mrg 	* testsuite/21_strings/basic_string_view/literals/types.cc:
   4764  1.1  mrg 	Likewise.
   4765  1.1  mrg 	* testsuite/21_strings/basic_string_view/literals/values-char8_t.cc:
   4766  1.1  mrg 	Likewise.
   4767  1.1  mrg 	* testsuite/21_strings/basic_string_view/literals/values.cc:
   4768  1.1  mrg 	Likewise.
   4769  1.1  mrg 	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc:
   4770  1.1  mrg 	Likewise.
   4771  1.1  mrg 	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc:
   4772  1.1  mrg 	Likewise.
   4773  1.1  mrg 	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc:
   4774  1.1  mrg 	Likewise.
   4775  1.1  mrg 	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc:
   4776  1.1  mrg 	Likewise.
   4777  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
   4778  1.1  mrg 	Likewise.
   4779  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc:
   4780  1.1  mrg 	Likewise.
   4781  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc:
   4782  1.1  mrg 	Likewise.
   4783  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc:
   4784  1.1  mrg 	Likewise.
   4785  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
   4786  1.1  mrg 	Likewise.
   4787  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
   4788  1.1  mrg 	Likewise.
   4789  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
   4790  1.1  mrg 	Likewise.
   4791  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
   4792  1.1  mrg 	Likewise.
   4793  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
   4794  1.1  mrg 	Likewise.
   4795  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
   4796  1.1  mrg 	Likewise.
   4797  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
   4798  1.1  mrg 	Likewise.
   4799  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
   4800  1.1  mrg 	Likewise.
   4801  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc:
   4802  1.1  mrg 	Likewise.
   4803  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc:
   4804  1.1  mrg 	Likewise.
   4805  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc:
   4806  1.1  mrg 	Likewise.
   4807  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc:
   4808  1.1  mrg 	Likewise.
   4809  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc:
   4810  1.1  mrg 	Likewise.
   4811  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
   4812  1.1  mrg 	Likewise.
   4813  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc:
   4814  1.1  mrg 	Likewise.
   4815  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc:
   4816  1.1  mrg 	Likewise.
   4817  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc:
   4818  1.1  mrg 	Likewise.
   4819  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc:
   4820  1.1  mrg 	Likewise.
   4821  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc:
   4822  1.1  mrg 	Likewise.
   4823  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/substr/char/1.cc:
   4824  1.1  mrg 	Likewise.
   4825  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc:
   4826  1.1  mrg 	Likewise.
   4827  1.1  mrg 	* testsuite/21_strings/basic_string_view/range_access/char/1.cc:
   4828  1.1  mrg 	Likewise.
   4829  1.1  mrg 	* testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
   4830  1.1  mrg 	Likewise.
   4831  1.1  mrg 	* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc:
   4832  1.1  mrg 	Likewise.
   4833  1.1  mrg 	* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc:
   4834  1.1  mrg 	Likewise.
   4835  1.1  mrg 	* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc:
   4836  1.1  mrg 	Likewise.
   4837  1.1  mrg 	* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc:
   4838  1.1  mrg 	Likewise.
   4839  1.1  mrg 	* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char8_t/1.cc:
   4840  1.1  mrg 	Likewise.
   4841  1.1  mrg 	* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc:
   4842  1.1  mrg 	Likewise.
   4843  1.1  mrg 	* testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
   4844  1.1  mrg 	Likewise.
   4845  1.1  mrg 	* testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
   4846  1.1  mrg 	* testsuite/21_strings/basic_string_view/types/1.cc: Likewise.
   4847  1.1  mrg 	* testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc:
   4848  1.1  mrg 	Likewise.
   4849  1.1  mrg 	* testsuite/23_containers/map/modifiers/extract.cc: Likewise.
   4850  1.1  mrg 	* testsuite/23_containers/map/modifiers/insert_or_assign/1.cc:
   4851  1.1  mrg 	Likewise.
   4852  1.1  mrg 	* testsuite/23_containers/map/modifiers/merge.cc: Likewise.
   4853  1.1  mrg 	* testsuite/23_containers/map/modifiers/try_emplace/1.cc: Likewise.
   4854  1.1  mrg 	* testsuite/23_containers/multimap/modifiers/extract.cc: Likewise.
   4855  1.1  mrg 	* testsuite/23_containers/multimap/modifiers/merge.cc: Likewise.
   4856  1.1  mrg 	* testsuite/23_containers/multiset/modifiers/extract.cc: Likewise.
   4857  1.1  mrg 	* testsuite/23_containers/multiset/modifiers/merge.cc: Likewise.
   4858  1.1  mrg 	* testsuite/23_containers/set/modifiers/extract.cc: Likewise.
   4859  1.1  mrg 	* testsuite/23_containers/set/modifiers/merge.cc: Likewise.
   4860  1.1  mrg 	* testsuite/23_containers/unordered_map/modifiers/extract.cc:
   4861  1.1  mrg 	Likewise.
   4862  1.1  mrg 	* testsuite/23_containers/unordered_map/modifiers/insert_or_assign.cc:
   4863  1.1  mrg 	Likewise.
   4864  1.1  mrg 	* testsuite/23_containers/unordered_map/modifiers/merge.cc:
   4865  1.1  mrg 	Likewise.
   4866  1.1  mrg 	* testsuite/23_containers/unordered_map/modifiers/try_emplace.cc:
   4867  1.1  mrg 	Likewise.
   4868  1.1  mrg 	* testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
   4869  1.1  mrg 	Likewise.
   4870  1.1  mrg 	* testsuite/23_containers/unordered_multimap/modifiers/merge.cc:
   4871  1.1  mrg 	Likewise.
   4872  1.1  mrg 	* testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
   4873  1.1  mrg 	Likewise.
   4874  1.1  mrg 	* testsuite/23_containers/unordered_multiset/modifiers/merge.cc:
   4875  1.1  mrg 	Likewise.
   4876  1.1  mrg 	* testsuite/23_containers/unordered_set/modifiers/extract.cc:
   4877  1.1  mrg 	Likewise.
   4878  1.1  mrg 	* testsuite/23_containers/unordered_set/modifiers/merge.cc:
   4879  1.1  mrg 	Likewise.
   4880  1.1  mrg 	* testsuite/24_iterators/headers/iterator/range_access_c++17.cc:
   4881  1.1  mrg 	Likewise.
   4882  1.1  mrg 	* testsuite/24_iterators/headers/iterator/synopsis_c++17.cc:
   4883  1.1  mrg 	Likewise.
   4884  1.1  mrg 	* testsuite/25_algorithms/clamp/1.cc: Likewise.
   4885  1.1  mrg 	* testsuite/25_algorithms/clamp/2.cc: Likewise.
   4886  1.1  mrg 	* testsuite/25_algorithms/clamp/constexpr.cc: Likewise.
   4887  1.1  mrg 	* testsuite/25_algorithms/clamp/requirements/explicit_instantiation/1.cc:
   4888  1.1  mrg 	Likewise.
   4889  1.1  mrg 	* testsuite/25_algorithms/clamp/requirements/explicit_instantiation/pod.cc:
   4890  1.1  mrg 	Likewise.
   4891  1.1  mrg 	* testsuite/26_numerics/headers/cmath/functions_std_c++17.cc:
   4892  1.1  mrg 	Likewise.
   4893  1.1  mrg 	* testsuite/26_numerics/headers/cmath/special_functions_global.cc:
   4894  1.1  mrg 	Likewise.
   4895  1.1  mrg 	* testsuite/27_io/basic_ostream/inserters_other/char/lwg2221.cc:
   4896  1.1  mrg 	Likewise.
   4897  1.1  mrg 	* testsuite/29_atomics/atomic/is_always_lock_free.cc: Likewise.
   4898  1.1  mrg 	* testsuite/29_atomics/atomic_integral/is_always_lock_free.cc:
   4899  1.1  mrg 	Likewise.
   4900  1.1  mrg 	* testsuite/30_threads/shared_lock/70766.cc: Likewise.
   4901  1.1  mrg 	* testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
   4902  1.1  mrg 	* testsuite/30_threads/shared_mutex/cons/assign_neg.cc:
   4903  1.1  mrg 	Likewise.
   4904  1.1  mrg 	* testsuite/30_threads/shared_mutex/cons/copy_neg.cc:
   4905  1.1  mrg 	Likewise.
   4906  1.1  mrg 	* testsuite/30_threads/shared_mutex/requirements/standard_layout.cc:
   4907  1.1  mrg 	Likewise.
   4908  1.1  mrg 	* testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
   4909  1.1  mrg 	* testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
   4910  1.1  mrg 	* testsuite/30_threads/shared_mutex/unlock/1.cc: Likewise.
   4911  1.1  mrg 
   4912  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4913  1.1  mrg 
   4914  1.1  mrg 	PR libstdc++/96382
   4915  1.1  mrg 	* include/bits/stl_iterator.h (reverse_iterator): Friend
   4916  1.1  mrg 	declaration should not depend on __cplusplus.
   4917  1.1  mrg 
   4918  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4919  1.1  mrg 
   4920  1.1  mrg 	* testsuite/experimental/filesystem/filesystem_error/cons.cc:
   4921  1.1  mrg 	Remove -std=gnu++17 option.
   4922  1.1  mrg 
   4923  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4924  1.1  mrg 
   4925  1.1  mrg 	* testsuite/20_util/is_aggregate/value.cc: Adjust for changes to
   4926  1.1  mrg 	definition of aggregates in C++20.
   4927  1.1  mrg 	* testsuite/20_util/optional/requirements.cc: Adjust for
   4928  1.1  mrg 	defaulted comparisons in C++20.
   4929  1.1  mrg 
   4930  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4931  1.1  mrg 
   4932  1.1  mrg 	* testsuite/20_util/tuple/78939.cc: Suppress warnings about
   4933  1.1  mrg 	deprecation of volatile-qualified structured bindings in C++20.
   4934  1.1  mrg 	* testsuite/20_util/variable_templates_for_traits.cc: Likewise
   4935  1.1  mrg 	for deprecation of is_pod in C++20
   4936  1.1  mrg 
   4937  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4938  1.1  mrg 
   4939  1.1  mrg 	* testsuite/20_util/time_point_cast/rounding.cc: Remove
   4940  1.1  mrg 	duplicate dg-do directive and add c++17 effective target.
   4941  1.1  mrg 
   4942  1.1  mrg 2020-07-31  Jonathan Wakely  <jwakely (a] redhat.com>
   4943  1.1  mrg 
   4944  1.1  mrg 	* src/c++17/floating_from_chars.cc (from_chars_impl): Use
   4945  1.1  mrg 	LC_ALL_MASK not LC_ALL.
   4946  1.1  mrg 
   4947  1.1  mrg 2020-07-31  Richard Biener  <rguenther (a] suse.de>
   4948  1.1  mrg 
   4949  1.1  mrg 	PR debug/96383
   4950  1.1  mrg 	* testsuite/20_util/assume_aligned/3.cc: Use -g0.
   4951  1.1  mrg 
   4952  1.1  mrg 2020-07-30  Jonathan Wakely  <jwakely (a] redhat.com>
   4953  1.1  mrg 
   4954  1.1  mrg 	* include/bits/basic_string.h (size_type, difference_type):
   4955  1.1  mrg 	Use allocator_traits to obtain the allocator's size_type and
   4956  1.1  mrg 	difference_type.
   4957  1.1  mrg 
   4958  1.1  mrg 2020-07-30  Jonathan Wakely  <jwakely (a] redhat.com>
   4959  1.1  mrg 
   4960  1.1  mrg 	PR libstdc++/96279
   4961  1.1  mrg 	* src/c++17/floating_from_chars.cc (from_chars_impl): Use
   4962  1.1  mrg 	isinf unqualified.
   4963  1.1  mrg 	[!_GLIBCXX_USE_C99_STDLIB]: Use strtod for float and long
   4964  1.1  mrg 	double.
   4965  1.1  mrg 
   4966  1.1  mrg 2020-07-30  Jonathan Wakely  <jwakely (a] redhat.com>
   4967  1.1  mrg 
   4968  1.1  mrg 	* testsuite/23_containers/unordered_multiset/cons/noexcept_default_construct.cc:
   4969  1.1  mrg 	Use allocator with the correct value type.
   4970  1.1  mrg 	* testsuite/23_containers/unordered_set/cons/noexcept_default_construct.cc:
   4971  1.1  mrg 	Likewise.
   4972  1.1  mrg 
   4973  1.1  mrg 2020-07-30  Jonathan Wakely  <jwakely (a] redhat.com>
   4974  1.1  mrg 
   4975  1.1  mrg 	* testsuite/20_util/from_chars/4.cc: Pass non-const iterator
   4976  1.1  mrg 	to string::insert.
   4977  1.1  mrg 
   4978  1.1  mrg 2020-07-30  Jonathan Wakely  <jwakely (a] redhat.com>
   4979  1.1  mrg 
   4980  1.1  mrg 	* include/bits/iterator_concepts.h (__detail::__cv_bool): New
   4981  1.1  mrg 	helper concept.
   4982  1.1  mrg 	(__detail::__integral_nonbool): Likewise.
   4983  1.1  mrg 	(__detail::__is_integer_like): Use __integral_nonbool.
   4984  1.1  mrg 	* testsuite/std/ranges/access/lwg3467.cc: New test.
   4985  1.1  mrg 
   4986  1.1  mrg 2020-07-30  Jonathan Wakely  <jwakely (a] redhat.com>
   4987  1.1  mrg 
   4988  1.1  mrg 	* testsuite/20_util/from_chars/4.cc: Use dg-add-options ieee.
   4989  1.1  mrg 	* testsuite/29_atomics/atomic_float/1.cc: Likewise.
   4990  1.1  mrg 
   4991  1.1  mrg 2020-07-30  Jonathan Wakely  <jwakely (a] redhat.com>
   4992  1.1  mrg 
   4993  1.1  mrg 	* testsuite/23_containers/vector/bool/72847.cc: Use the
   4994  1.1  mrg 	exceptions_enabled effective-target keyword instead of
   4995  1.1  mrg 	checking for an explicit -fno-exceptions option.
   4996  1.1  mrg 	* testsuite/util/testsuite_abi.cc (examine_symbol): Remove
   4997  1.1  mrg 	redundant try-catch.
   4998  1.1  mrg 	* testsuite/util/testsuite_allocator.h [!__cpp_exceptions]:
   4999  1.1  mrg 	Do not define check_allocate_max_size and memory_resource.
   5000  1.1  mrg 	* testsuite/util/testsuite_containers.h: Replace comment with
   5001  1.1  mrg 	#error if wrong standard dialect used.
   5002  1.1  mrg 	* testsuite/util/testsuite_shared.cc: Likewise.
   5003  1.1  mrg 
   5004  1.1  mrg 2020-07-29  Franois Dumont  <fdumont (a] gcc.gnu.org>
   5005  1.1  mrg 
   5006  1.1  mrg 	* include/bits/hashtable_policy.h (_Node_iterator_base()): New.
   5007  1.1  mrg 	(operator==(const _Node_iterator_base&, const _Node_iterator_base&)):
   5008  1.1  mrg 	Make hidden friend.
   5009  1.1  mrg 	(operator!=(const _Node_iterator_base&, const _Node_iterator_base&)):
   5010  1.1  mrg 	Make hidden friend.
   5011  1.1  mrg 	(_Local_iterator_base<>): Inherits _Node_iterator_base.
   5012  1.1  mrg 	(_Local_iterator_base<>::_M_cur): Remove.
   5013  1.1  mrg 	(_Local_iterator_base<>::_M_curr()): Remove.
   5014  1.1  mrg 	(operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
   5015  1.1  mrg 	Remove.
   5016  1.1  mrg 	(operator!=(const _Local_iterator_base&, const _Local_iterator_base&)):
   5017  1.1  mrg 	Remove.
   5018  1.1  mrg 	* include/debug/unordered_map (unordered_map<>::_M_invalidate): Adapt.
   5019  1.1  mrg 	(unordered_multimap<>::_M_invalidate): Adapt.
   5020  1.1  mrg 	* include/debug/unordered_set (unordered_set<>::_M_invalidate): Adapt.
   5021  1.1  mrg 	(unordered_multiset<>::_M_invalidate): Adapt.
   5022  1.1  mrg 
   5023  1.1  mrg 2020-07-29  David Edelsohn  <dje.gcc (a] gmail.com>
   5024  1.1  mrg 	    Jonathan Wakely  <jwakely (a] redhat.com>
   5025  1.1  mrg 	    Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   5026  1.1  mrg 
   5027  1.1  mrg 	* testsuite/lib/dg-options.exp (add_options_for_libatomic): Add
   5028  1.1  mrg 	target powerpc-ibm-aix* and powerpc*-*-darwin*.
   5029  1.1  mrg 	* testsuite/29_atomics/atomic_float/value_init.cc: Add options
   5030  1.1  mrg 	for libatomic.
   5031  1.1  mrg 
   5032  1.1  mrg 2020-07-29  Franois Dumont  <fdumont (a] gcc.gnu.org>
   5033  1.1  mrg 
   5034  1.1  mrg 	* include/bits/hashtable.h
   5035  1.1  mrg 	(_Hashtable(_Hashtable&& __ht, __node_alloc_type&& __a, true_type)):
   5036  1.1  mrg 	Add noexcept qualification.
   5037  1.1  mrg 	(_Hashtable(_Hashtable&&)): Fix noexcept qualification.
   5038  1.1  mrg 	(_Hashtable(_Hashtable&&, const allocator_type&)): Add noexcept
   5039  1.1  mrg 	qualification.
   5040  1.1  mrg 	* include/bits/unordered_map.h
   5041  1.1  mrg 	(unordered_map(unordered_map&&, const allocator_type&)): Add noexcept
   5042  1.1  mrg 	qualification.
   5043  1.1  mrg 	(unordered_multimap(unordered_multimap&&, const allocator_type&)):
   5044  1.1  mrg 	Likewise.
   5045  1.1  mrg 	* include/bits/unordered_set.h
   5046  1.1  mrg 	(unordered_set(unordered_set&&, const allocator_type&)): Likewise.
   5047  1.1  mrg 	(unordered_multiset(unordered_multiset&&, const allocator_type&)):
   5048  1.1  mrg 	Likewise.
   5049  1.1  mrg 	* include/debug/unordered_map
   5050  1.1  mrg 	(unordered_map(unordered_map&&, const allocator_type&)): Likewise.
   5051  1.1  mrg 	(unordered_multimap(unordered_multimap&&, const allocator_type&)):
   5052  1.1  mrg 	Likewise.
   5053  1.1  mrg 	* include/debug/unordered_set
   5054  1.1  mrg 	(unordered_set(unordered_set&&, const allocator_type&)): Likewise.
   5055  1.1  mrg 	(unordered_multiset(unordered_multiset&&, const allocator_type&)):
   5056  1.1  mrg 	Likewise.
   5057  1.1  mrg 	* testsuite/23_containers/unordered_map/allocator/default_init.cc:
   5058  1.1  mrg 	New test.
   5059  1.1  mrg 	* testsuite/23_containers/unordered_map/cons/noexcept_default_construct.cc:
   5060  1.1  mrg 	New test.
   5061  1.1  mrg 	* testsuite/23_containers/unordered_map/cons/noexcept_move_construct.cc:
   5062  1.1  mrg 	New test.
   5063  1.1  mrg 	* testsuite/23_containers/unordered_map/modifiers/move_assign.cc:
   5064  1.1  mrg 	New test.
   5065  1.1  mrg 	* testsuite/23_containers/unordered_multimap/cons/noexcept_default_construct.cc:
   5066  1.1  mrg 	New test.
   5067  1.1  mrg 	* testsuite/23_containers/unordered_multimap/cons/noexcept_move_construct.cc:
   5068  1.1  mrg 	New test.
   5069  1.1  mrg 	* testsuite/23_containers/unordered_multiset/cons/noexcept_default_construct.cc:
   5070  1.1  mrg 	New test.
   5071  1.1  mrg 	* testsuite/23_containers/unordered_multiset/cons/noexcept_move_construct.cc:
   5072  1.1  mrg 	New test.
   5073  1.1  mrg 	* testsuite/23_containers/unordered_set/allocator/default_init.cc:
   5074  1.1  mrg 	New test.
   5075  1.1  mrg 	* testsuite/23_containers/unordered_set/cons/noexcept_default_construct.cc:
   5076  1.1  mrg 	New test.
   5077  1.1  mrg 	* testsuite/23_containers/unordered_set/cons/noexcept_move_construct.cc:
   5078  1.1  mrg 	New test.
   5079  1.1  mrg 
   5080  1.1  mrg 2020-07-28  Franois Dumont  <fdumont (a] gcc.gnu.org>
   5081  1.1  mrg 
   5082  1.1  mrg 	* include/bits/hashtable.h
   5083  1.1  mrg 	(_Hashtable<>(_InputIterator, _InputIterator, size_t, const _H1&,
   5084  1.1  mrg 	const _H2&, const _Hash&, const _Equal&, const _ExtractKey&,
   5085  1.1  mrg 	const allocator_type&, true_type)): New.
   5086  1.1  mrg 	(_Hashtable<>(_InputIterator, _InputIterator, size_t, const _H1&,
   5087  1.1  mrg 	const _H2&, const _Hash&, const _Equal&, const _ExtractKey&,
   5088  1.1  mrg 	const allocator_type&, false_type)): New.
   5089  1.1  mrg 	(_Hashtable<>(_InputIterator, _InputIterator, size_t, const _H1&,
   5090  1.1  mrg 	const _H2&, const _Hash&, const _Equal&, const _ExtractKey&,
   5091  1.1  mrg 	const allocator_type&)): Delegate to latters.
   5092  1.1  mrg 	(operator=(initializer_list<value_type>)): Rehash if too small.
   5093  1.1  mrg 	(_M_insert(_Arg&&, const _NodeGenerator&, true_type)): Remove
   5094  1.1  mrg 	size_t len parameter.
   5095  1.1  mrg 	* include/bits/hashtable_policy.h (_Insert_base<>::_M_insert_range):
   5096  1.1  mrg 	Do not try to get input range distance.
   5097  1.1  mrg 	* testsuite/23_containers/unordered_set/cons/bucket_hint.cc: New test.
   5098  1.1  mrg 	* testsuite/23_containers/unordered_set/modifiers/insert.cc: New test.
   5099  1.1  mrg 
   5100  1.1  mrg 2020-07-27  Franois Dumont  <fdumont (a] gcc.gnu.org>
   5101  1.1  mrg 
   5102  1.1  mrg 	* include/bits/hashtable_policy.h (_Map_base<>::at): Use
   5103  1.1  mrg 	_Hashtable<>::find.
   5104  1.1  mrg 	(_Hashtable_base<>::_Equal_hash_code<>::_S_node_equals):New.
   5105  1.1  mrg 	(_Hashtable_base<>::_M_node_equals): New, use latter.
   5106  1.1  mrg 	(_Equality<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash,
   5107  1.1  mrg 	_RehashPolicy, false>::_M_equal): Adapt to use latter.
   5108  1.1  mrg 	* include/bits/hashtable.h (_Hashtable<>::_M_update_bbegin): New.
   5109  1.1  mrg 	(_Hashtable<>::_M_assign): Use latter.
   5110  1.1  mrg 	(_Hashtable<>::_M_move_assign): Likewise.
   5111  1.1  mrg 	(_Hashtable<>(_Hashtable<>&&)): Likewise.
   5112  1.1  mrg 	(_Hashtable<>(_Hashtable<>&&, const allocator_type&)): Likewise.
   5113  1.1  mrg 	(_Hashtable<>::swap): Likewise.
   5114  1.1  mrg 	(_Hashtable<>::find): Build iterator directly from _M_find_node result.
   5115  1.1  mrg 	(_Hashtable<>::count): Use _Hashtable<>::find.
   5116  1.1  mrg 	(_Hashtable<>::equal_range): Likewise.
   5117  1.1  mrg 	(_Hashtable<>::_M_erase(false_type, const key_type&)): Use
   5118  1.1  mrg 	_M_node_equals.
   5119  1.1  mrg 
   5120  1.1  mrg 2020-07-27  Jonathan Wakely  <jwakely (a] redhat.com>
   5121  1.1  mrg 
   5122  1.1  mrg 	* src/c++17/floating_from_chars.cc (from_chars_impl): Ensure
   5123  1.1  mrg 	that FE_NEAREST is used.
   5124  1.1  mrg 	* testsuite/20_util/from_chars/4.cc: Do not use if constexpr in
   5125  1.1  mrg 	a { target c++14 } test.
   5126  1.1  mrg 	[!_GLIBCXX_HAVE_USELOCALE]: Disable all tests.
   5127  1.1  mrg 	* testsuite/20_util/from_chars/5.cc [!_GLIBCXX_HAVE_USELOCALE]:
   5128  1.1  mrg 	Likewise.
   5129  1.1  mrg 	* testsuite/20_util/from_chars/6.cc: New test.
   5130  1.1  mrg 
   5131  1.1  mrg 2020-07-22  Jonathan Wakely  <jwakely (a] redhat.com>
   5132  1.1  mrg 
   5133  1.1  mrg 	* include/std/future (future, shared_future, promise): Add
   5134  1.1  mrg 	static assertions to the primary template to reject array and
   5135  1.1  mrg 	function types.
   5136  1.1  mrg 	* testsuite/30_threads/future/requirements/lwg3458.cc: New test.
   5137  1.1  mrg 	* testsuite/30_threads/promise/requirements/lwg3466.cc: New test.
   5138  1.1  mrg 	* testsuite/30_threads/shared_future/requirements/lwg3458.cc: New test.
   5139  1.1  mrg 
   5140  1.1  mrg 2020-07-22  Jonathan Wakely  <jwakely (a] redhat.com>
   5141  1.1  mrg 
   5142  1.1  mrg 	* include/bits/stl_iterator.h (reverse_iterator): Constrain
   5143  1.1  mrg 	converting constructor and converting assignment operator.
   5144  1.1  mrg 	Access source iterator's data member directly instead of
   5145  1.1  mrg 	calling base().
   5146  1.1  mrg 	(move_iterator): Likewise.
   5147  1.1  mrg 	* testsuite/24_iterators/move_iterator/dr3435.cc: New test.
   5148  1.1  mrg 	* testsuite/24_iterators/reverse_iterator/dr3435.cc: New test.
   5149  1.1  mrg 
   5150  1.1  mrg 2020-07-20  Jonathan Wakely  <jwakely (a] redhat.com>
   5151  1.1  mrg 
   5152  1.1  mrg 	* acinclude.m4 (libtool_VERSION): Bump version.
   5153  1.1  mrg 	* config.h.in: Regenerate.
   5154  1.1  mrg 	* config/abi/pre/gnu.ver: Add GLIBCXX_3.4.29 version and new
   5155  1.1  mrg 	exports.
   5156  1.1  mrg 	* config/os/gnu-linux/ldbl-extra.ver: Add _GLIBCXX_LDBL_3.4.29
   5157  1.1  mrg 	version and new export.
   5158  1.1  mrg 	* configure: Regenerate.
   5159  1.1  mrg 	* configure.ac: Check for <xlocale.h> and uselocale.
   5160  1.1  mrg 	* crossconfig.m4: Add macro or checks for uselocale.
   5161  1.1  mrg 	* include/std/charconv (from_chars): Declare overloads for
   5162  1.1  mrg 	float, double, and long double.
   5163  1.1  mrg 	* src/c++17/Makefile.am: Add new file.
   5164  1.1  mrg 	* src/c++17/Makefile.in: Regenerate.
   5165  1.1  mrg 	* src/c++17/floating_from_chars.cc: New file.
   5166  1.1  mrg 	(from_chars): Define for float, double, and long double.
   5167  1.1  mrg 	* testsuite/20_util/from_chars/1_c++20_neg.cc: Prune extra
   5168  1.1  mrg 	diagnostics caused by new overloads.
   5169  1.1  mrg 	* testsuite/20_util/from_chars/1_neg.cc: Likewise.
   5170  1.1  mrg 	* testsuite/20_util/from_chars/2.cc: Check leading '+'.
   5171  1.1  mrg 	* testsuite/20_util/from_chars/4.cc: New test.
   5172  1.1  mrg 	* testsuite/20_util/from_chars/5.cc: New test.
   5173  1.1  mrg 	* testsuite/util/testsuite_abi.cc: Add new symbol versions.
   5174  1.1  mrg 
   5175  1.1  mrg 2020-07-20  Jonathan Wakely  <jwakely (a] redhat.com>
   5176  1.1  mrg 
   5177  1.1  mrg 	* include/bits/istream.tcc
   5178  1.1  mrg 	(basic_istream::get(__streambuf_type&, char_type): Use unsigned
   5179  1.1  mrg 	long long for counter and check if it would overflow _M_gcount.
   5180  1.1  mrg 	* testsuite/27_io/basic_istream/get/char/lwg3464.cc: New test.
   5181  1.1  mrg 	* testsuite/27_io/basic_istream/get/wchar_t/lwg3464.cc: New test.
   5182  1.1  mrg 
   5183  1.1  mrg 2020-07-17  Iain Sandoe  <iain (a] sandoe.co.uk>
   5184  1.1  mrg 
   5185  1.1  mrg 	* include/std/coroutine: Mark the methods of the
   5186  1.1  mrg 	trivial awaitables as constexpr.
   5187  1.1  mrg 
   5188  1.1  mrg 2020-07-14  David Edelsohn  <dje.gcc (a] gmail.com>
   5189  1.1  mrg 
   5190  1.1  mrg 	* config/os/aix/t-aix: Set BITS from compiler cpp macro.
   5191  1.1  mrg 
   5192  1.1  mrg 2020-07-13  Jonathan Wakely  <jwakely (a] redhat.com>
   5193  1.1  mrg 
   5194  1.1  mrg 	PR libstdc++/94749
   5195  1.1  mrg 	PR libstdc++/96161
   5196  1.1  mrg 	* include/bits/istream.tcc (basic_istream::ignore(streamsize))
   5197  1.1  mrg 	[n == max]: Check overflow conditions on _M_gcount. Rely on
   5198  1.1  mrg 	the fact that either EOF or the delimiter was reached.
   5199  1.1  mrg 	[n < max]: Check _M_gcount < n before checking for EOF or
   5200  1.1  mrg 	delimiter.
   5201  1.1  mrg 	(basic_istream::ignore(streamsize, char_type): Likewise.
   5202  1.1  mrg 	* src/c++98/compatibility.cc (istream::ignore(streamsize))
   5203  1.1  mrg 	(wistream::ignore(streamsize)): Likewise.
   5204  1.1  mrg 	* src/c++98/istream.cc (istream::ignore(streamsize, char_type))
   5205  1.1  mrg 	(wistream::ignore(streamsize, char_type)): Likewise.
   5206  1.1  mrg 	* testsuite/27_io/basic_istream/ignore/char/94749.cc: Check that
   5207  1.1  mrg 	delimiter is discarded if the number of characters ignored
   5208  1.1  mrg 	doesn't fit in streamsize.
   5209  1.1  mrg 	* testsuite/27_io/basic_istream/ignore/wchar_t/94749.cc:
   5210  1.1  mrg 	Likewise.
   5211  1.1  mrg 	* testsuite/27_io/basic_istream/ignore/char/96161.cc: New test.
   5212  1.1  mrg 	* testsuite/27_io/basic_istream/ignore/wchar_t/96161.cc: New test.
   5213  1.1  mrg 
   5214  1.1  mrg 2020-07-08  Franois Dumont  <fdumont (a] gcc.gnu.org>
   5215  1.1  mrg 
   5216  1.1  mrg 	* include/bits/stl_tree.h (_Rb_tree_impl(_Rb_tree_impl&&)): Add noexcept
   5217  1.1  mrg 	qualification based only on _Compare one.
   5218  1.1  mrg 	* testsuite/23_containers/map/cons/noexcept_move_construct.cc: Add
   5219  1.1  mrg 	static asserts.
   5220  1.1  mrg 	* testsuite/23_containers/multimap/cons/noexcept_move_construct.cc:
   5221  1.1  mrg 	Likewise.
   5222  1.1  mrg 	* testsuite/23_containers/multiset/cons/noexcept_move_construct.cc:
   5223  1.1  mrg 	Likewise.
   5224  1.1  mrg 	* testsuite/23_containers/set/cons/noexcept_move_construct.cc: Likewise.
   5225  1.1  mrg 
   5226  1.1  mrg 2020-07-07  Jonathan Wakely  <jwakely (a] redhat.com>
   5227  1.1  mrg 
   5228  1.1  mrg 	* include/std/limits: Whitespace changes.
   5229  1.1  mrg 
   5230  1.1  mrg 2020-07-07  Jonathan Wakely  <jwakely (a] redhat.com>
   5231  1.1  mrg 
   5232  1.1  mrg 	* include/Makefile.am: Remove bits/int_limits.h.
   5233  1.1  mrg 	* include/Makefile.in: Regenerate.
   5234  1.1  mrg 	* include/bits/int_limits.h: Removed.
   5235  1.1  mrg 	* include/bits/parse_numbers.h (_Select_int_base): Replace
   5236  1.1  mrg 	__int_limits with __int_traits.
   5237  1.1  mrg 	* include/bits/range_access.h (_SSize::operator()): Likewise.
   5238  1.1  mrg 	* include/ext/numeric_traits.h (__numeric_traits_integer): Add
   5239  1.1  mrg 	static assertion.
   5240  1.1  mrg 	(__int_traits): New alias template.
   5241  1.1  mrg 	* include/std/bit (__rotl, __rotr, __countl_zero, __countl_one)
   5242  1.1  mrg 	(__countr_zero, __countr_one, __popcount, __bit_ceil)
   5243  1.1  mrg 	(__bit_floor, __bit_width) Replace __int_limits with
   5244  1.1  mrg 	__int_traits.
   5245  1.1  mrg 	* include/std/charconv (__to_chars_8, __from_chars_binary)
   5246  1.1  mrg 	(__from_chars_alpha_to_num, from_chars): Likewise.
   5247  1.1  mrg 	* include/std/memory_resource (polymorphic_allocator::allocate)
   5248  1.1  mrg 	(polymorphic_allocator::allocate_object): Likewise.
   5249  1.1  mrg 	* include/std/string_view (basic_string_view::_S_compare):
   5250  1.1  mrg 	Likewise.
   5251  1.1  mrg 	* include/std/utility (cmp_equal, cmp_less, in_range): Likewise.
   5252  1.1  mrg 
   5253  1.1  mrg 2020-07-07  Jonathan Wakely  <jwakely (a] redhat.com>
   5254  1.1  mrg 
   5255  1.1  mrg 	* include/std/limits: Whitespace changes.
   5256  1.1  mrg 
   5257  1.1  mrg 2020-07-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5258  1.1  mrg 
   5259  1.1  mrg 	* include/std/optional (_Optional_payload_base, _Optional_base)
   5260  1.1  mrg 	(optional, __optional_hash_call_base): Adjust whitespace and
   5261  1.1  mrg 	other formatting. Remove redundant && tokens on template
   5262  1.1  mrg 	arguments to type traits.
   5263  1.1  mrg 
   5264  1.1  mrg 2020-07-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5265  1.1  mrg 
   5266  1.1  mrg 	* include/std/optional (make_optional): Add enable_if
   5267  1.1  mrg 	constraints and noexcept-specifier to each overload.
   5268  1.1  mrg 	* testsuite/20_util/optional/make_optional-2.cc: New test.
   5269  1.1  mrg 
   5270  1.1  mrg 2020-07-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5271  1.1  mrg 
   5272  1.1  mrg 	PR libstdc++/96036
   5273  1.1  mrg 	* include/std/optional (optional): Add noexcept-specifier to
   5274  1.1  mrg 	every constructor, assignment operator, emplace function and
   5275  1.1  mrg 	dereference operator.
   5276  1.1  mrg 	* testsuite/20_util/optional/assignment/noexcept.cc: New test.
   5277  1.1  mrg 	* testsuite/20_util/optional/cons/noexcept.cc: New test.
   5278  1.1  mrg 
   5279  1.1  mrg 2020-07-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5280  1.1  mrg 
   5281  1.1  mrg 	PR libstdc++/96063
   5282  1.1  mrg 	* include/bits/fs_dir.h: Use consistent tag in class-head.
   5283  1.1  mrg 	* include/bits/localefwd.h: Likewise.
   5284  1.1  mrg 	* include/bits/regex.h: Likewise.
   5285  1.1  mrg 	* include/bits/stl_map.h: Likewise.
   5286  1.1  mrg 	* include/bits/stl_multimap.h: Likewise.
   5287  1.1  mrg 	* include/bits/stl_multiset.h: Likewise.
   5288  1.1  mrg 	* include/bits/stl_set.h: Likewise.
   5289  1.1  mrg 	* include/std/complex: Likewise.
   5290  1.1  mrg 	* include/std/functional: Likewise.
   5291  1.1  mrg 	* include/std/future: Likewise.
   5292  1.1  mrg 	* include/std/system_error: Likewise.
   5293  1.1  mrg 	* include/std/thread: Likewise.
   5294  1.1  mrg 	* include/std/tuple: Likewise.
   5295  1.1  mrg 	* include/std/type_traits: Likewise.
   5296  1.1  mrg 	* include/std/valarray: Likewise.
   5297  1.1  mrg 
   5298  1.1  mrg 2020-07-02  Jonathan Wakely  <jwakely (a] redhat.com>
   5299  1.1  mrg 
   5300  1.1  mrg 	* testsuite/27_io/basic_ios/conv/voidptr.cc: Add c++98_only
   5301  1.1  mrg 	target selector.
   5302  1.1  mrg 
   5303  1.1  mrg 2020-07-02  Jonathan Wakely  <jwakely (a] redhat.com>
   5304  1.1  mrg 
   5305  1.1  mrg 	* testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc: Add
   5306  1.1  mrg 	c++98_only target selector.
   5307  1.1  mrg 	* testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc:
   5308  1.1  mrg 	Likewise.
   5309  1.1  mrg 	* testsuite/18_support/headers/cstdint/std_c++0x_neg.cc:
   5310  1.1  mrg 	Likewise.
   5311  1.1  mrg 	* testsuite/18_support/headers/new/synopsis_cxx98.cc: Likewise.
   5312  1.1  mrg 	* testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc:
   5313  1.1  mrg 	Likewise.
   5314  1.1  mrg 	* testsuite/20_util/headers/type_traits/std_c++0x_neg.cc:
   5315  1.1  mrg 	Likewise.
   5316  1.1  mrg 	* testsuite/23_containers/headers/array/std_c++0x_neg.cc:
   5317  1.1  mrg 	Likewise.
   5318  1.1  mrg 	* testsuite/23_containers/headers/tuple/std_c++0x_neg.cc:
   5319  1.1  mrg 	Likewise.
   5320  1.1  mrg 	* testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc:
   5321  1.1  mrg 	Likewise.
   5322  1.1  mrg 	* testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc:
   5323  1.1  mrg 	Likewise.
   5324  1.1  mrg 	* testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc:
   5325  1.1  mrg 	Likewise.
   5326  1.1  mrg 	* testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc:
   5327  1.1  mrg 	Likewise.
   5328  1.1  mrg 	* testsuite/26_numerics/headers/cmath/c99_classification_macros_c++98.cc:
   5329  1.1  mrg 	Likewise.
   5330  1.1  mrg 	* testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc:
   5331  1.1  mrg 	Likewise.
   5332  1.1  mrg 	* testsuite/26_numerics/headers/random/std_c++0x_neg.cc:
   5333  1.1  mrg 	Likewise.
   5334  1.1  mrg 	* testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Likewise.
   5335  1.1  mrg 	* testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Likewise.
   5336  1.1  mrg 	* testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc:
   5337  1.1  mrg 	Likewise.
   5338  1.1  mrg 	* testsuite/30_threads/headers/condition_variable/std_c++0x_neg.cc:
   5339  1.1  mrg 	Likewise.
   5340  1.1  mrg 	* testsuite/30_threads/headers/future/std_c++0x_neg.cc:
   5341  1.1  mrg 	Likewise.
   5342  1.1  mrg 	* testsuite/30_threads/headers/mutex/std_c++0x_neg.cc: Likewise.
   5343  1.1  mrg 	* testsuite/30_threads/headers/thread/std_c++0x_neg.cc:
   5344  1.1  mrg 	Likewise.
   5345  1.1  mrg 
   5346  1.1  mrg 2020-07-02  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   5347  1.1  mrg 
   5348  1.1  mrg 	PR libstdc++/91807
   5349  1.1  mrg 	* include/std/variant
   5350  1.1  mrg 	(_Copy_assign_base::operator=(const _Copy_assign_base&):
   5351  1.1  mrg 	Do the move-assignment from a temporary so that the temporary
   5352  1.1  mrg 	is constructed with an explicit index.
   5353  1.1  mrg 	* testsuite/20_util/variant/91807.cc: New.
   5354  1.1  mrg 
   5355  1.1  mrg 2020-07-02  Jonathan Wakely  <jwakely.gcc (a] gmail.com>
   5356  1.1  mrg 
   5357  1.1  mrg 	PR libstdc++/91153
   5358  1.1  mrg 	PR target/93224
   5359  1.1  mrg 	* testsuite/29_atomics/atomic_float/1.cc: Use different values
   5360  1.1  mrg 	for tests.
   5361  1.1  mrg 	* testsuite/29_atomics/atomic_ref/float.cc: Likewise.
   5362  1.1  mrg 
   5363  1.1  mrg 2020-07-01  Jonathan Wakely  <jwakely (a] redhat.com>
   5364  1.1  mrg 
   5365  1.1  mrg 	PR libstdc++/94627
   5366  1.1  mrg 	* include/bits/regex.h (operator==, operator!=): Remove noexcept
   5367  1.1  mrg 	equality comparisons for match_results.
   5368  1.1  mrg 	* testsuite/28_regex/match_results/94627.cc: New test.
   5369  1.1  mrg 
   5370  1.1  mrg 2020-07-01  Martin Sebor  <msebor (a] redhat.com>
   5371  1.1  mrg 
   5372  1.1  mrg 	* testsuite/21_strings/basic_string_view/cons/char/nonnull.cc: Adjust
   5373  1.1  mrg 	text of expected warning.
   5374  1.1  mrg 	* testsuite/21_strings/basic_string_view/cons/wchar_t/nonnull.cc: Same.
   5375  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/compare/char/nonnull.cc: Same.
   5376  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/find/char/nonnull.cc: Same.
   5377  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/rfind/char/nonnull.cc: Same.
   5378  1.1  mrg 
   5379  1.1  mrg 2020-06-29  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   5380  1.1  mrg 
   5381  1.1  mrg 	Revert:
   5382  1.1  mrg 	2020-06-28  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   5383  1.1  mrg 
   5384  1.1  mrg 	* include/bits/basic_string.h (string(_CharT*, const _Alloc&)):
   5385  1.1  mrg 	Add a __nonnull__ attribute.
   5386  1.1  mrg 	* testsuite/21_strings/basic_string/cons/char/nonnull.cc: New.
   5387  1.1  mrg 	* testsuite/21_strings/basic_string/cons/wchar_t/nonnull.cc: Likewise.
   5388  1.1  mrg 
   5389  1.1  mrg 2020-06-28  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   5390  1.1  mrg 
   5391  1.1  mrg 	* include/bits/basic_string.h (string(_CharT*, const _Alloc&)):
   5392  1.1  mrg 	Add a __nonnull__ attribute.
   5393  1.1  mrg 	* testsuite/21_strings/basic_string/cons/char/nonnull.cc: New.
   5394  1.1  mrg 	* testsuite/21_strings/basic_string/cons/wchar_t/nonnull.cc: Likewise.
   5395  1.1  mrg 
   5396  1.1  mrg 2020-06-28  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   5397  1.1  mrg 
   5398  1.1  mrg 	PR libstdc++/95915
   5399  1.1  mrg 	* include/std/type_traits (is_literal_type, is_literal_type_v):
   5400  1.1  mrg 	Deprecate in C++17.
   5401  1.1  mrg 	* include/std/variant (_Uninitialized):
   5402  1.1  mrg 	Adjust the condition and the comment.
   5403  1.1  mrg 	* testsuite/20_util/is_literal_type/deprecated-1z.cc: New.
   5404  1.1  mrg 	* testsuite/20_util/is_literal_type/requirements/explicit_instantiation.cc:
   5405  1.1  mrg 	Adjust.
   5406  1.1  mrg 	* testsuite/20_util/is_literal_type/requirements/typedefs.cc: Likewise.
   5407  1.1  mrg 	* testsuite/20_util/is_literal_type/value.cc: Likewise.
   5408  1.1  mrg 	* testsuite/20_util/optional/constexpr/nullopt.cc:
   5409  1.1  mrg 	Use __is_literal_type directly.
   5410  1.1  mrg 	* testsuite/20_util/optional/nullopt.cc: Likewise.
   5411  1.1  mrg 	* testsuite/20_util/variable_templates_for_traits.cc: Adjust.
   5412  1.1  mrg 	* testsuite/20_util/variant/95915.cc: New.
   5413  1.1  mrg 	* testsuite/20_util/variant/compile.cc: Add new test.
   5414  1.1  mrg 	* testsuite/experimental/optional/constexpr/nullopt.cc:
   5415  1.1  mrg 	Use __is_literal_type directly.
   5416  1.1  mrg 	* testsuite/experimental/optional/nullopt.cc: Likewise.
   5417  1.1  mrg 	* testsuite/experimental/type_traits/value.cc: Adjust.
   5418  1.1  mrg 	* testsuite/util/testsuite_common_types.h:
   5419  1.1  mrg 	Use __is_literal_type directly.
   5420  1.1  mrg 
   5421  1.1  mrg 2020-06-24  Jonathan Wakely  <jwakely (a] redhat.com>
   5422  1.1  mrg 
   5423  1.1  mrg 	* include/std/charconv (__from_chars_binary): Ignore leading zeros.
   5424  1.1  mrg 	* testsuite/20_util/from_chars/1.cc: Check "0x1" for all bases,
   5425  1.1  mrg 	not just 10 and 16.
   5426  1.1  mrg 	* testsuite/20_util/from_chars/3.cc: New test.
   5427  1.1  mrg 
   5428  1.1  mrg 2020-06-24  Jonathan Wakely  <jwakely (a] redhat.com>
   5429  1.1  mrg 
   5430  1.1  mrg 	* include/bits/stl_algobase.h (__find_if): Add FALLTHRU markers.
   5431  1.1  mrg 	* include/std/charconv (__detail::__to_chars): Avoid
   5432  1.1  mrg 	-Wsign-compare warning.
   5433  1.1  mrg 
   5434  1.1  mrg 2020-06-24  Jonathan Wakely  <jwakely (a] redhat.com>
   5435  1.1  mrg 
   5436  1.1  mrg 	PR libstdc++/95851
   5437  1.1  mrg 	* include/std/charconv (__to_chars_i): Check for zero-sized
   5438  1.1  mrg 	buffer unconditionally.
   5439  1.1  mrg 	* testsuite/20_util/to_chars/95851.cc: New test.
   5440  1.1  mrg 
   5441  1.1  mrg 2020-06-23  Jonathan Wakely  <jwakely (a] redhat.com>
   5442  1.1  mrg 
   5443  1.1  mrg 	* testsuite/20_util/from_chars/1_c++20_neg.cc: Check enumeration
   5444  1.1  mrg 	type.
   5445  1.1  mrg 	* testsuite/20_util/from_chars/1_neg.cc: Likewise. Move dg-error
   5446  1.1  mrg 	directives outside preprocessor condition.
   5447  1.1  mrg 
   5448  1.1  mrg 2020-06-23  Jonathan Wakely  <jwakely (a] redhat.com>
   5449  1.1  mrg 
   5450  1.1  mrg 	PR libstdc++/95832
   5451  1.1  mrg 	* include/std/variant (__detail::__variant::_Build_FUN): Remove
   5452  1.1  mrg 	partial specialization to prevent narrowing conversions to bool.
   5453  1.1  mrg 	* testsuite/20_util/variant/compile.cc: Test non-narrowing
   5454  1.1  mrg 	conversions to bool.
   5455  1.1  mrg 	* testsuite/20_util/variant/run.cc: Likewise.
   5456  1.1  mrg 
   5457  1.1  mrg 2020-06-23  Jonathan Wakely  <jwakely (a] redhat.com>
   5458  1.1  mrg 
   5459  1.1  mrg 	* doc/Makefile.in: Regenerate.
   5460  1.1  mrg 	* include/Makefile.in: Regenerate.
   5461  1.1  mrg 	* libsupc++/Makefile.in: Regenerate.
   5462  1.1  mrg 	* po/Makefile.in: Regenerate.
   5463  1.1  mrg 	* python/Makefile.in: Regenerate.
   5464  1.1  mrg 	* src/Makefile.in: Regenerate.
   5465  1.1  mrg 	* src/c++11/Makefile.in: Regenerate.
   5466  1.1  mrg 	* src/c++17/Makefile.in: Regenerate.
   5467  1.1  mrg 	* src/c++98/Makefile.in: Regenerate.
   5468  1.1  mrg 	* src/filesystem/Makefile.in: Regenerate.
   5469  1.1  mrg 	* testsuite/Makefile.in: Regenerate.
   5470  1.1  mrg 
   5471  1.1  mrg 2020-06-22  David Edelsohn  <dje.gcc (a] gmail.com>
   5472  1.1  mrg 
   5473  1.1  mrg 	* Makefile.am: Use -include.
   5474  1.1  mrg 	* Makefile.in: Regenerate.
   5475  1.1  mrg 
   5476  1.1  mrg 2020-06-21  David Edelsohn  <dje.gcc (a] gmail.com>
   5477  1.1  mrg 
   5478  1.1  mrg 	* Makefile.am (tmake_file): Build and install AIX-style FAT libraries.
   5479  1.1  mrg 	* Makefile.in: Regenerate.
   5480  1.1  mrg 	* configure.ac (tmake_file): Substitute.
   5481  1.1  mrg 	* configure: Regenerate.
   5482  1.1  mrg 	* configure.host (aix*): Define tmake_file.
   5483  1.1  mrg 	* config/os/aix/t-aix: New file.
   5484  1.1  mrg 
   5485  1.1  mrg 2020-06-20  Jason Merrill  <jason (a] redhat.com>
   5486  1.1  mrg 
   5487  1.1  mrg 	* testsuite/24_iterators/move_iterator/rel_ops_c++20.cc:
   5488  1.1  mrg 	Remove greedy_ops tests.
   5489  1.1  mrg 	* testsuite/24_iterators/reverse_iterator/rel_ops_c++20.cc:
   5490  1.1  mrg 	Remove greedy_ops tests.
   5491  1.1  mrg 
   5492  1.1  mrg 2020-06-19  Jonathan Wakely  <jwakely (a] redhat.com>
   5493  1.1  mrg 
   5494  1.1  mrg 	PR libstdc++/95765
   5495  1.1  mrg 	* include/bits/stl_algobase.h (__size_to_integer(float))
   5496  1.1  mrg 	(__size_to_integer(double), __size_to_integer(long double))
   5497  1.1  mrg 	(__size_to_integer(__float128)): Cast return type explicitly.
   5498  1.1  mrg 	* include/bits/stl_uninitialized.h (__uninitialized_default_1<true>):
   5499  1.1  mrg 	Remove unused typedef.
   5500  1.1  mrg 
   5501  1.1  mrg 2020-06-19  Jonathan Wakely  <jwakely (a] redhat.com>
   5502  1.1  mrg 
   5503  1.1  mrg 	* include/bits/stl_pair.h (_Index_tuple): Remove redundant
   5504  1.1  mrg 	namespace qualification.
   5505  1.1  mrg 	(pair::pair(tuple<>&, tuple<>&, _Index_tuple, _Index_tuple)):
   5506  1.1  mrg 	Likewise.
   5507  1.1  mrg 	* include/std/tuple (_Head_base, _Tuple_impl, tuple_size)
   5508  1.1  mrg 	(tuple_element, __get_helper, get, __make_tuple_impl)
   5509  1.1  mrg 	(__make_1st_indices, __tuple_concater)
   5510  1.1  mrg 	(pair::pair(tuple<>&, tuple<>&, _Index_tuple, _Index_tuple)):
   5511  1.1  mrg 	Likewise.
   5512  1.1  mrg 	* include/std/utility (tuple_element, __is_tuple_like_impl)
   5513  1.1  mrg 	(tuple_size, __pair_get, get): Likewise.
   5514  1.1  mrg 
   5515  1.1  mrg 2020-06-19  Jonathan Wakely  <jwakely (a] redhat.com>
   5516  1.1  mrg 
   5517  1.1  mrg 	* include/bits/std_function.h (function): Define all member
   5518  1.1  mrg 	functions inline.
   5519  1.1  mrg 
   5520  1.1  mrg 2020-06-19  Marc Glisse  <marc.glisse (a] inria.fr>
   5521  1.1  mrg 
   5522  1.1  mrg 	* include/bits/stl_algo.h (__includes): Simplify the code.
   5523  1.1  mrg 
   5524  1.1  mrg 2020-06-19  Marc Glisse  <marc.glisse (a] inria.fr>
   5525  1.1  mrg 
   5526  1.1  mrg 	* include/std/optional (optional()): Explicitly define it.
   5527  1.1  mrg 
   5528  1.1  mrg 2020-06-17  Jonathan Wakely  <jwakely (a] redhat.com>
   5529  1.1  mrg 
   5530  1.1  mrg 	PR libstdc++/94540
   5531  1.1  mrg 	* include/bits/stl_uninitialized.h (__uninitialized_default_1<true>):
   5532  1.1  mrg 	Construct the first value at *__first instead of on the stack.
   5533  1.1  mrg 	(__uninitialized_default_n_1<true>): Likewise.
   5534  1.1  mrg 	Improve comments on several of the non-standard algorithms.
   5535  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_default/94540.cc:
   5536  1.1  mrg 	New test.
   5537  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_default_n/94540.cc:
   5538  1.1  mrg 	New test.
   5539  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_value_construct/94540.cc:
   5540  1.1  mrg 	New test.
   5541  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/94540.cc:
   5542  1.1  mrg 	New test.
   5543  1.1  mrg 	* testsuite/23_containers/vector/cons/94540.cc: New test.
   5544  1.1  mrg 
   5545  1.1  mrg 2020-06-17  Jonathan Wakely  <jwakely (a] redhat.com>
   5546  1.1  mrg 
   5547  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_default_n/sizes.cc:
   5548  1.1  mrg 	Replace Value type with int so trivial code path is used.
   5549  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/sizes.cc:
   5550  1.1  mrg 	Likewise.
   5551  1.1  mrg 
   5552  1.1  mrg 2020-06-17  Jonathan Wakely  <jwakely (a] redhat.com>
   5553  1.1  mrg 
   5554  1.1  mrg 	* include/bits/stl_uninitialized.h (uninitialized_fill_n): Only
   5555  1.1  mrg 	use std::fill_n when the size is an integral type.
   5556  1.1  mrg 	(__uninitialized_default_n): Likewise.
   5557  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_default_n/sizes.cc:
   5558  1.1  mrg 	New test.
   5559  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_fill_n/sizes.cc:
   5560  1.1  mrg 	New test.
   5561  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/sizes.cc:
   5562  1.1  mrg 	New test.
   5563  1.1  mrg 
   5564  1.1  mrg 2020-06-16  Jonathan Wakely  <jwakely (a] redhat.com>
   5565  1.1  mrg 
   5566  1.1  mrg 	PR libstdc++/95282
   5567  1.1  mrg 	* include/bits/atomic_base.h (__atomic_impl::load): Use the _Val
   5568  1.1  mrg 	alias instead of deducing _Tp as an unqualified type.
   5569  1.1  mrg 	(__atomic_impl::exchange): Use the _Val alias to remove volatile
   5570  1.1  mrg 	from the reinterpret_cast result type.
   5571  1.1  mrg 
   5572  1.1  mrg 2020-06-16  Jonathan Wakely  <jwakely (a] redhat.com>
   5573  1.1  mrg 
   5574  1.1  mrg 	* include/std/atomic (atomic): Add static assertions.
   5575  1.1  mrg 	* testsuite/29_atomics/atomic/requirements/types_neg.cc: New test.
   5576  1.1  mrg 
   5577  1.1  mrg 2020-06-16  Patrick Palka  <ppalka (a] redhat.com>
   5578  1.1  mrg 
   5579  1.1  mrg 	PR libstdc++/94003
   5580  1.1  mrg 	* testsuite/20_util/is_constructible/94003.cc: New test.
   5581  1.1  mrg 
   5582  1.1  mrg 2020-06-15  Jonathan Wakely  <jwakely (a] redhat.com>
   5583  1.1  mrg 
   5584  1.1  mrg 	* include/bits/char_traits.h (__cpp_lib_constexpr_char_traits):
   5585  1.1  mrg 	Update value for C++20.
   5586  1.1  mrg 	* include/std/version (__cpp_lib_constexpr_char_traits): Likewise.
   5587  1.1  mrg 	* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
   5588  1.1  mrg 	Update expected value.
   5589  1.1  mrg 	* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
   5590  1.1  mrg 	Likewise.
   5591  1.1  mrg 
   5592  1.1  mrg 2020-06-15  Paul Keir  <paul.keir (a] uws.ac.uk>
   5593  1.1  mrg 
   5594  1.1  mrg 	* include/bits/char_traits.h (char_traits::move): constexpr move with
   5595  1.1  mrg 	overlap was using copy_backward incorrectly.
   5596  1.1  mrg 	* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
   5597  1.1  mrg 	New test.
   5598  1.1  mrg 
   5599  1.1  mrg 2020-06-12  Jonathan Wakely  <jwakely (a] redhat.com>
   5600  1.1  mrg 
   5601  1.1  mrg 	* testsuite/29_atomics/atomic_flag/clear/1.cc: Also test clear()
   5602  1.1  mrg 	when the value is currently set.
   5603  1.1  mrg 	* testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc:
   5604  1.1  mrg 	Actually check the return value.
   5605  1.1  mrg 	* testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc:
   5606  1.1  mrg 	Likewise.
   5607  1.1  mrg 
   5608  1.1  mrg 2020-06-12  Jonathan Wakely  <jwakely (a] redhat.com>
   5609  1.1  mrg 
   5610  1.1  mrg 	* include/bits/atomic_base.h (atomic_flag::test): Add missing
   5611  1.1  mrg 	const qualifiers.
   5612  1.1  mrg 	* testsuite/29_atomics/atomic_flag/test/explicit.cc: Add
   5613  1.1  mrg 	dg-options and verify results of test function.
   5614  1.1  mrg 	* testsuite/29_atomics/atomic_flag/test/implicit.cc: Likewise.
   5615  1.1  mrg 
   5616  1.1  mrg 2020-06-11  Jonathan Wakely  <jwakely (a] redhat.com>
   5617  1.1  mrg 
   5618  1.1  mrg 	PR libstdc++/94749
   5619  1.1  mrg 	* include/bits/istream.tcc (basic_istream::ignore(streamsize, CharT)):
   5620  1.1  mrg 	Only discard an extra character if we didn't already reach the
   5621  1.1  mrg 	maximum number.
   5622  1.1  mrg 	* src/c++98/istream.cc (istream::ignore(streamsiz, char))
   5623  1.1  mrg 	(wistream::ignore(streamsize, wchar_t)): Likewise.
   5624  1.1  mrg 	* testsuite/27_io/basic_istream/ignore/char/94749.cc: New test.
   5625  1.1  mrg 	* testsuite/27_io/basic_istream/ignore/wchar_t/94749.cc: New test.
   5626  1.1  mrg 
   5627  1.1  mrg 2020-06-10  Patrick Palka  <ppalka (a] redhat.com>
   5628  1.1  mrg 
   5629  1.1  mrg 	PR libstdc++/95578
   5630  1.1  mrg 	* include/bits/ranges_algo.h (__lexicographical_compare_fn):
   5631  1.1  mrg 	Also check that the iterator and sentinel have the same type before
   5632  1.1  mrg 	applying the unwrapping optimization for __normal_iterator.
   5633  1.1  mrg 	Split the check into two, one for the first iterator/sentinel
   5634  1.1  mrg 	pair and another for second iterator/sentinel pair.  Remove uses
   5635  1.1  mrg 	of __niter_base, and remove uses of std::move on a
   5636  1.1  mrg 	__normal_iterator.
   5637  1.1  mrg 	* include/bits/ranges_algobase.h (__equal_fn): Likewise.
   5638  1.1  mrg 	(__copy_or_move): Likewise.  Perform similar adjustments for
   5639  1.1  mrg 	the reverse_iterator and move_iterator optimizations.  Inline
   5640  1.1  mrg 	the checks into the if-constexprs, and use using-declarations to
   5641  1.1  mrg 	make them less visually noisy.  Remove uses of __niter_wrap.
   5642  1.1  mrg 	(__copy_or_move_backward): Likewise.
   5643  1.1  mrg 	* testsuite/25_algorithms/copy/95578.cc: New test.
   5644  1.1  mrg 	* testsuite/25_algorithms/copy_backward/95578.cc: New test.
   5645  1.1  mrg 	* testsuite/25_algorithms/equal/95578.cc: New test.
   5646  1.1  mrg 	* testsuite/25_algorithms/lexicographical_compare/95578.cc: New test.
   5647  1.1  mrg 	* testsuite/25_algorithms/move/95578.cc: New test.
   5648  1.1  mrg 	* testsuite/25_algorithms/move_backward/95578.cc: New test.
   5649  1.1  mrg 
   5650  1.1  mrg 2020-06-10  Franois Dumont  <fdumont (a] gcc.gnu.org>
   5651  1.1  mrg 	    Jonathan Wakely  <jwakely (a] redhat.com>
   5652  1.1  mrg 
   5653  1.1  mrg 	* include/bits/deque.tcc (__lex_cmp_dit): New.
   5654  1.1  mrg 	(__lexicographical_compare_aux1): Define overloads for deque
   5655  1.1  mrg 	iterators.
   5656  1.1  mrg 	* include/bits/stl_algobase.h (__lexicographical_compare::__3way):
   5657  1.1  mrg 	New static member function.
   5658  1.1  mrg 	(__lexicographical_compare<true>::__3way): Likewise.
   5659  1.1  mrg 	(__lexicographical_compare<true>::__lc): Use __3way.
   5660  1.1  mrg 	(__lexicographical_compare_aux): Rename to
   5661  1.1  mrg 	__lexicographical_compare_aux1 and declare overloads for deque
   5662  1.1  mrg 	iterators.
   5663  1.1  mrg 	(__lexicographical_compare_aux): Define new forwarding function
   5664  1.1  mrg 	that calls __lexicographical_compare_aux1 and declare new overloads
   5665  1.1  mrg 	for safe iterators.
   5666  1.1  mrg 	(lexicographical_compare): Do not use __niter_base on
   5667  1.1  mrg 	parameters.
   5668  1.1  mrg 	* include/debug/safe_iterator.tcc
   5669  1.1  mrg 	(__lexicographical_compare_aux): Define overloads for safe
   5670  1.1  mrg 	iterators.
   5671  1.1  mrg 	* testsuite/25_algorithms/lexicographical_compare/1.cc: Add
   5672  1.1  mrg 	checks with random access iterators.
   5673  1.1  mrg 	* testsuite/25_algorithms/lexicographical_compare/deque_iterators/1.cc:
   5674  1.1  mrg 	New test.
   5675  1.1  mrg 
   5676  1.1  mrg 2020-06-09  Jonathan Wakely  <jwakely (a] redhat.com>
   5677  1.1  mrg 
   5678  1.1  mrg 	* include/bits/stl_iterator.h (move_iterator::operator=): Define.
   5679  1.1  mrg 	* testsuite/24_iterators/move_iterator/dr3265.cc: New test.
   5680  1.1  mrg 
   5681  1.1  mrg 2020-06-09  Jonathan Wakely  <jwakely (a] redhat.com>
   5682  1.1  mrg 
   5683  1.1  mrg 	* include/std/optional (bad_optional_access): Define default
   5684  1.1  mrg 	constructor and destructor as defaulted.
   5685  1.1  mrg 	* testsuite/20_util/optional/bad_access.cc: New test.
   5686  1.1  mrg 
   5687  1.1  mrg 2020-06-08  Jonathan Wakely  <jwakely (a] redhat.com>
   5688  1.1  mrg 
   5689  1.1  mrg 	* testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error
   5690  1.1  mrg 	line number.
   5691  1.1  mrg 	* testsuite/20_util/default_delete/void_neg.cc: Likewise.
   5692  1.1  mrg 
   5693  1.1  mrg 2020-06-08  Jonathan Wakely  <jwakely (a] redhat.com>
   5694  1.1  mrg 
   5695  1.1  mrg 	* include/bits/unique_ptr.h (operator<<): Define for C++20.
   5696  1.1  mrg 	* testsuite/20_util/unique_ptr/io/lwg2948.cc: New test.
   5697  1.1  mrg 
   5698  1.1  mrg 2020-06-04  Jonathan Wakely  <jwakely (a] redhat.com>
   5699  1.1  mrg 
   5700  1.1  mrg 	* include/bits/iterator_concepts.h (__detail::__ptr, __detail::__ref)
   5701  1.1  mrg 	(__detail::__cat, __detail::__diff): Move to class scope in the
   5702  1.1  mrg 	relevant __iterator_traits specializations.
   5703  1.1  mrg 	(__iterator_traits<>): Use nested class templates instead of ones from
   5704  1.1  mrg 	namespace __detail.
   5705  1.1  mrg 	* include/bits/stl_iterator.h (__detail::__common_iter_ptr): Move to
   5706  1.1  mrg 	class scope in iterator_traits<common_iterator<I, S>>.
   5707  1.1  mrg 	(iterator_traits<common_iterator<I, S>>): Use nested class template
   5708  1.1  mrg 	instead of __detail::__common_iter_ptr.
   5709  1.1  mrg 
   5710  1.1  mrg 2020-06-04  Franois Dumont  <fdumont (a] gcc.gnu.org>
   5711  1.1  mrg 
   5712  1.1  mrg 	* include/bits/stl_algo.h (__copy_n_a): Move to ...
   5713  1.1  mrg 	* include/bits/stl_algobase.h (__copy_n_a): ...here. Add __strict
   5714  1.1  mrg 	parameter.
   5715  1.1  mrg 	(__copy_n_a(istreambuf_iterator<>, _Size, _Deque_iterator<>, bool)):
   5716  1.1  mrg 	Declare.
   5717  1.1  mrg 	(__niter_base(const _Safe_iterator<_Ite, _Seq,
   5718  1.1  mrg 	random_access_iterator_tag>&)): Declare.
   5719  1.1  mrg 	(__copy_move_a2(istreambuf_iterator<>, istreambuf_iterator<>,
   5720  1.1  mrg 	_Deque_iterator<>)): Declare.
   5721  1.1  mrg 	* include/bits/deque.tcc
   5722  1.1  mrg 	(__copy_move_a2(istreambuf_iterator<>, istreambuf_iterator<>,
   5723  1.1  mrg 	_Deque_iterator<>)): New.
   5724  1.1  mrg 	(__copy_n_a(istreambuf_iterator<>, _Size, _Deque_iterator<>, bool)):
   5725  1.1  mrg 	New.
   5726  1.1  mrg 	* include/bits/streambuf_iterator.h
   5727  1.1  mrg 	(__copy_n_a(istreambuf_iterator<>, _Size, _CharT*, bool)): Adapt.
   5728  1.1  mrg 	* include/debug/safe_iterator.tcc (__niter_base): New.
   5729  1.1  mrg 	* testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc
   5730  1.1  mrg 	(test03): New.
   5731  1.1  mrg 	* testsuite/25_algorithms/copy/streambuf_iterators/char/debug/deque_neg.cc:
   5732  1.1  mrg 	New test.
   5733  1.1  mrg 	* testsuite/25_algorithms/copy_n/debug/istreambuf_ite_deque_neg.cc:
   5734  1.1  mrg 	New test.
   5735  1.1  mrg 	* testsuite/25_algorithms/copy_n/istreambuf_iterator/2.cc: New test.
   5736  1.1  mrg 	* testsuite/25_algorithms/copy_n/istreambuf_iterator/deque.cc:
   5737  1.1  mrg 	New test.
   5738  1.1  mrg 
   5739  1.1  mrg 2020-06-04  Jonathan Wakely  <jwakely (a] redhat.com>
   5740  1.1  mrg 
   5741  1.1  mrg 	* include/bits/ranges_algobase.h (__copy_n_fn): Only call
   5742  1.1  mrg 	ranges::copy for positive values.
   5743  1.1  mrg 	* include/bits/stl_algo.h (copy_n): Convert Size argument to an
   5744  1.1  mrg 	integral type and only call __copy_n for positive values.
   5745  1.1  mrg 	* testsuite/util/testsuite_iterators.h
   5746  1.1  mrg 	(random_access_iterator_wrapper::operator+=): Fix range check for
   5747  1.1  mrg 	negative values.
   5748  1.1  mrg 	(output_container, input_container, forward_container)
   5749  1.1  mrg 	(bidirectional_container, random_access_container): New alias
   5750  1.1  mrg 	templates.
   5751  1.1  mrg 	* testsuite/25_algorithms/copy_n/5.cc: New test.
   5752  1.1  mrg 
   5753  1.1  mrg 2020-06-02  Jonathan Wakely  <jwakely (a] redhat.com>
   5754  1.1  mrg 
   5755  1.1  mrg 	PR libstdc++/90102
   5756  1.1  mrg 	* include/debug/deque (deque(const _Base&)): Replace parameter
   5757  1.1  mrg 	with a struct that wraps a const _Base&.
   5758  1.1  mrg 	* include/debug/forward_list (forward_list(_Base_ref)): New
   5759  1.1  mrg 	constructor.
   5760  1.1  mrg 	* include/debug/list (list(const _Base&)): Replace parameter
   5761  1.1  mrg 	with a struct that wraps a const _Base&.
   5762  1.1  mrg 	* include/debug/map.h (map(const _Base&)): Likewise.
   5763  1.1  mrg 	* include/debug/multimap.h (multimap(const _Base&)): Likewise.
   5764  1.1  mrg 	* include/debug/multiset.h (multiset(const _Base&)): Likewise.
   5765  1.1  mrg 	* include/debug/set.h (set(const _Base&)): Likewise.
   5766  1.1  mrg 	* include/debug/unordered_map (unordered_map(const _Base&))
   5767  1.1  mrg 	(unordered_multimap(const _Base&)): Likewise.
   5768  1.1  mrg 	* include/debug/unordered_set (unordered_set(const _Base&))
   5769  1.1  mrg 	(unordered_multiset(const _Base&)): Likewise.
   5770  1.1  mrg 	* testsuite/23_containers/vector/cons/destructible_debug_neg.cc:
   5771  1.1  mrg 	Adjust dg-error line number.
   5772  1.1  mrg 	* include/debug/vector (vector(const _Base&)): Likewise.
   5773  1.1  mrg 	* testsuite/23_containers/deque/debug/90102.cc: New test.
   5774  1.1  mrg 	* testsuite/23_containers/forward_list/debug/90102.cc: New test.
   5775  1.1  mrg 	* testsuite/23_containers/list/debug/90102.cc: New test.
   5776  1.1  mrg 	* testsuite/23_containers/map/debug/90102.cc: New test.
   5777  1.1  mrg 	* testsuite/23_containers/multimap/debug/90102.cc: New test.
   5778  1.1  mrg 	* testsuite/23_containers/multiset/debug/90102.cc: New test.
   5779  1.1  mrg 	* testsuite/23_containers/set/debug/90102.cc: New test.
   5780  1.1  mrg 	* testsuite/23_containers/unordered_map/debug/90102.cc: New test.
   5781  1.1  mrg 	* testsuite/23_containers/unordered_multimap/debug/90102.cc: New test.
   5782  1.1  mrg 	* testsuite/23_containers/unordered_multiset/debug/90102.cc: New test.
   5783  1.1  mrg 	* testsuite/23_containers/unordered_set/debug/90102.cc: New test.
   5784  1.1  mrg 	* testsuite/23_containers/vector/debug/90102.cc: New test.
   5785  1.1  mrg 
   5786  1.1  mrg 2020-06-01  Jonathan Wakely  <jwakely (a] redhat.com>
   5787  1.1  mrg 
   5788  1.1  mrg 	PR libstdc++/95392
   5789  1.1  mrg 	* include/bits/fs_path.h (path::_S_to_string): Move to
   5790  1.1  mrg 	namespace-scope and rename to ...
   5791  1.1  mrg 	(__detail::__string_from_range): ... this.
   5792  1.1  mrg 	[WINDOWS] (__detail::__wstr_from_utf8): New function template to
   5793  1.1  mrg 	convert a char sequence containing UTF-8 to wstring.
   5794  1.1  mrg 	(path::_S_convert(Iter, Iter)): Adjust call to _S_to_string.
   5795  1.1  mrg 	(path::_S_convert_loc(Iter, Iter, const locale&)): Likewise.
   5796  1.1  mrg 	(u8path(InputIterator, InputIterator)) [WINDOWS]: Use
   5797  1.1  mrg 	__string_from_range to obtain a contiguous range and
   5798  1.1  mrg 	__wstr_from_utf8 to obtain a wide string.
   5799  1.1  mrg 	(u8path(const Source&)) [WINDOWS]: Use __effective_range to
   5800  1.1  mrg 	obtain a contiguous range and __wstr_from_utf8 to obtain a wide
   5801  1.1  mrg 	string.
   5802  1.1  mrg 	(path::_S_convert(const _EcharT*, const _EcharT)) [WINDOWS]:
   5803  1.1  mrg 	Use __wstr_from_utf8.
   5804  1.1  mrg 
   5805  1.1  mrg 2020-06-01  Jonathan Wakely  <jwakely (a] redhat.com>
   5806  1.1  mrg 
   5807  1.1  mrg 	* testsuite/util/testsuite_iterators.h:
   5808  1.1  mrg 	(input_iterator_wrapper::operator++(int)): Return proxy object.
   5809  1.1  mrg 
   5810  1.1  mrg 2020-06-01  Jonathan Wakely  <jwakely (a] redhat.com>
   5811  1.1  mrg 
   5812  1.1  mrg 	* doc/xml/manual/evolution.xml: Document deprecation of
   5813  1.1  mrg 	__is_nullptr_t and removal of std::allocator members.
   5814  1.1  mrg 	* doc/html/manual/api.html: Regenerate.
   5815  1.1  mrg 
   5816  1.1  mrg 2020-06-01  Jonathan Wakely  <jwakely (a] redhat.com>
   5817  1.1  mrg 
   5818  1.1  mrg 	* doc/xml/manual/containers.xml: Replace <xref> with <link>.
   5819  1.1  mrg 	* doc/xml/manual/evolution.xml: Likewise.
   5820  1.1  mrg 	* doc/html/manual/api.html: Regenerate.
   5821  1.1  mrg 	* doc/html/manual/containers.html: Regenerate.
   5822  1.1  mrg 
   5823  1.1  mrg 2020-06-01  Gerald Pfeifer  <gerald (a] pfeifer.com>
   5824  1.1  mrg 
   5825  1.1  mrg 	* doc/xml/faq.xml: Adjust Valgrind reference and remove another.
   5826  1.1  mrg 	* doc/html/faq.html: Regenerate.
   5827  1.1  mrg 
   5828  1.1  mrg 2020-06-01  Gerald Pfeifer  <gerald (a] pfeifer.com>
   5829  1.1  mrg 
   5830  1.1  mrg 	* doc/xml/manual/policy_data_structures_biblio.xml: Remove
   5831  1.1  mrg 	stray change.
   5832  1.1  mrg 
   5833  1.1  mrg 2020-06-01  Gerald Pfeifer  <gerald (a] pfeifer.com>
   5834  1.1  mrg 
   5835  1.1  mrg 	* doc/xml/manual/policy_data_structures_biblio.xml: Switch
   5836  1.1  mrg 	www.cs.princeton.edu to https.
   5837  1.1  mrg 	* doc/html/manual/policy_data_structures.html: Regenerate.
   5838  1.1  mrg 
   5839  1.1  mrg 2020-05-31  Douglas B Rupp  <douglas.b.rupp (a] gmail.com>
   5840  1.1  mrg 
   5841  1.1  mrg 	* crossconfig.m4 (<*-vxworks>): Check for more math decls.
   5842  1.1  mrg 	* configure: Rebuild.
   5843  1.1  mrg 
   5844  1.1  mrg 2020-05-29  H.J. Lu  <hjl.tools (a] gmail.com>
   5845  1.1  mrg 
   5846  1.1  mrg 	PR bootstrap/95413
   5847  1.1  mrg 	* configure: Regenerated.
   5848  1.1  mrg 
   5849  1.1  mrg 2020-05-29  Franois Dumont  <fdumont (a] gcc.gnu.org>
   5850  1.1  mrg 
   5851  1.1  mrg 	PR libstdc++/95079
   5852  1.1  mrg 	* include/bits/hashtable_policy.h (_Insert_base<>::try_emplace): New.
   5853  1.1  mrg 	* include/bits/unordered_map.h (unordered_map<>::try_emplace): Adapt.
   5854  1.1  mrg 	(unordered_map<>::insert_or_assign): Adapt.
   5855  1.1  mrg 
   5856  1.1  mrg 2020-05-27  Jonathan Wakely  <jwakely (a] redhat.com>
   5857  1.1  mrg 
   5858  1.1  mrg 	PR libstdc++/95282
   5859  1.1  mrg 	* include/bits/atomic_base.h (__atomic_impl::load): Add
   5860  1.1  mrg 	cv-qualifiers to parameter so that _Tp is deduced as the
   5861  1.1  mrg 	unqualified type.
   5862  1.1  mrg 	* testsuite/29_atomics/atomic_float/95282.cc: New test.
   5863  1.1  mrg 
   5864  1.1  mrg 2020-05-27  Jonathan Wakely  <jwakely (a] redhat.com>
   5865  1.1  mrg 
   5866  1.1  mrg 	PR libstdc++/95322
   5867  1.1  mrg 	* include/std/ranges (transform_view::_Sentinel): Allow hidden
   5868  1.1  mrg 	friends to work with _Iterator<true> and _Iterator<false>.
   5869  1.1  mrg 	(join_view::_Sentinel): Likewise.
   5870  1.1  mrg 	* testsuite/std/ranges/adaptors/95322.cc: New test.
   5871  1.1  mrg 
   5872  1.1  mrg 2020-05-27  Jonathan Wakely  <jwakely (a] redhat.com>
   5873  1.1  mrg 
   5874  1.1  mrg 	PR libstdc++/94354
   5875  1.1  mrg 	* include/bits/stl_iterator.h (reverse_iterator): Fix comparison
   5876  1.1  mrg 	operators to use the correct operations on the underlying
   5877  1.1  mrg 	iterators.
   5878  1.1  mrg 	* testsuite/24_iterators/reverse_iterator/rel_ops.cc: New test.
   5879  1.1  mrg 
   5880  1.1  mrg 2020-05-27  Jonathan Wakely  <jwakely (a] redhat.com>
   5881  1.1  mrg 
   5882  1.1  mrg 	* testsuite/18_support/comparisons/categories/zero_neg.cc: New test.
   5883  1.1  mrg 
   5884  1.1  mrg 2020-05-26  Patrick Palka  <ppalka (a] redhat.com>
   5885  1.1  mrg 
   5886  1.1  mrg 	PR libstdc++/95322
   5887  1.1  mrg 	* include/bits/stl_iterator.h (__detail::_Common_iter_proxy):
   5888  1.1  mrg 	Remove and instead define it ...
   5889  1.1  mrg 	(common_iterator::_Proxy): ... here.
   5890  1.1  mrg 	(common_iterator::operator->): Use it.
   5891  1.1  mrg 	* testsuite/24_iterators/common_iterator/2.cc: New test.
   5892  1.1  mrg 	* testsuite/std/ranges/adaptors/95322.cc: New test.
   5893  1.1  mrg 
   5894  1.1  mrg 2020-05-23  Patrick Palka  <ppalka (a] redhat.com>
   5895  1.1  mrg 
   5896  1.1  mrg 	PR libstdc++/93978
   5897  1.1  mrg 	* testsuite/std/ranges/adaptors/93978.cc: Add -Wall to
   5898  1.1  mrg 	dg-additional-options.  Avoid unused-but-set-variable warning.
   5899  1.1  mrg 
   5900  1.1  mrg 2020-05-23  Jonathan Wakely  <jwakely (a] redhat.com>
   5901  1.1  mrg 
   5902  1.1  mrg 	PR libstdc++/95289
   5903  1.1  mrg 	* include/debug/helper_functions.h (__get_distance): Only declare
   5904  1.1  mrg 	as a constexpr function for C++14 and up.
   5905  1.1  mrg 	* testsuite/25_algorithms/copy/debug/95289.cc: New test.
   5906  1.1  mrg 
   5907  1.1  mrg 	* include/bits/fs_path.h (__detail::_S_range_begin)
   5908  1.1  mrg 	(__detail::_S_range_end, path::_S_string_from_iter): Replace with
   5909  1.1  mrg 	overloaded function template __detail::__effective_range.
   5910  1.1  mrg 	(__detail::__effective_range): New overloaded function template to
   5911  1.1  mrg 	create a basic_string or basic_string_view for an effective range.
   5912  1.1  mrg 	(__detail::__value_type_is_char): Use __detail::__effective_range.
   5913  1.1  mrg 	Do not use remove_const on value type.
   5914  1.1  mrg 	(__detail::__value_type_is_char_or_char8_t): Likewise.
   5915  1.1  mrg 	(path::path(const Source&, format))
   5916  1.1  mrg 	(path::path(const Source&, const locale&))
   5917  1.1  mrg 	(path::operator/=(const Source&), path::append(const Source&))
   5918  1.1  mrg 	(path::concat(const Source&)): Use __detail::__effective_range.
   5919  1.1  mrg 	(path::_S_to_string(InputIterator, InputIterator)): New function
   5920  1.1  mrg 	template to create a string view if possible, or string otherwise.
   5921  1.1  mrg 	(path::_S_convert): Add overloads that convert a string returned
   5922  1.1  mrg 	by __detail::__effective_range. Use if-constexpr to inline conversion
   5923  1.1  mrg 	logic from all overloads of _Cvt::_S_convert.
   5924  1.1  mrg 	(path::_S_convert_loc): Add overload that converts a string. Use
   5925  1.1  mrg 	_S_to_string to avoid allocation when possible.
   5926  1.1  mrg 	(path::_Cvt): Remove.
   5927  1.1  mrg 	(path::operator+=(CharT)): Remove indirection through path::concat.
   5928  1.1  mrg 	* include/experimental/bits/fs_path.h (path::_S_convert_loc): Add
   5929  1.1  mrg 	overload for non-const pointers, to avoid constructing a std::string.
   5930  1.1  mrg 	* src/c++17/fs_path.cc (path::_S_convert_loc): Replace conditional
   5931  1.1  mrg 	compilation with call to _S_convert.
   5932  1.1  mrg 
   5933  1.1  mrg 	* include/bits/fs_path.h (__detail::_S_range_begin)
   5934  1.1  mrg 	(__detail::_S_range_end): Remove unintentional static specifiers.
   5935  1.1  mrg 	* include/experimental/bits/fs_path.h (__detail::_S_range_begin)
   5936  1.1  mrg 	(__detail::_S_range_end): Likewise.
   5937  1.1  mrg 
   5938  1.1  mrg 	* include/bits/fs_path.h (filesystem::__detail::__is_encoded_char):
   5939  1.1  mrg 	Replace alias template with variable template. Don't remove const.
   5940  1.1  mrg 	(filesystem::__detail::__is_path_src): Replace overloaded function
   5941  1.1  mrg 	template with variable template and specializations.
   5942  1.1  mrg 	(filesystem::__detail::__is_path_iter_src): Replace alias template
   5943  1.1  mrg 	with class template.
   5944  1.1  mrg 	(filesystem::__detail::_Path): Use __is_path_src. Remove support for
   5945  1.1  mrg 	iterator pairs.
   5946  1.1  mrg 	(filesystem::__detail::_Path2): New alias template for checking
   5947  1.1  mrg 	InputIterator requirements.
   5948  1.1  mrg 	(filesystem::__detail::__constructible_from): Remove.
   5949  1.1  mrg 	(filesystem::path): Replace _Path<Iter, Iter> with _Path2<Iter>.
   5950  1.1  mrg 	* testsuite/27_io/filesystem/path/construct/80762.cc: Check with two
   5951  1.1  mrg 	constructor arguments of void and void* types.
   5952  1.1  mrg 
   5953  1.1  mrg 2020-05-21  Matthias Kretz  <kretz (a] kde.org>
   5954  1.1  mrg 
   5955  1.1  mrg 	* testsuite/Makefile.am: Remove dup target_triplet and set tool,
   5956  1.1  mrg 	allowing runtest to work without arguments.
   5957  1.1  mrg 	* testsuite/Makefile.in: Regenerate.
   5958  1.1  mrg 
   5959  1.1  mrg 2020-05-21  Jonathan Wakely  <jwakely (a] redhat.com>
   5960  1.1  mrg 
   5961  1.1  mrg 	PR libstdc++/93983
   5962  1.1  mrg 	* include/bits/iterator_concepts.h (__detail::__cpp17_iterator):
   5963  1.1  mrg 	Reorder constraints to avoid recursion when constructors use
   5964  1.1  mrg 	iterator_traits (LWG 3420).
   5965  1.1  mrg 	* testsuite/24_iterators/customization_points/lwg3420.cc: New test.
   5966  1.1  mrg 
   5967  1.1  mrg 	* include/experimental/socket (basic_socket::is_open()
   5968  1.1  mrg 	(basic_socket_acceptor::is_open()): Use _GLIBCXX_NODISCARD macro.
   5969  1.1  mrg 
   5970  1.1  mrg 	* include/experimental/bits/net.h (__endpoint, __protocol)
   5971  1.1  mrg 	(__acceptable_protocol, __inet_protocol): New concepts.
   5972  1.1  mrg 	(__detail::__is_endpoint): Move trait from <experimental/socket>.
   5973  1.1  mrg 	(__is_protocol, __is_acceptable_protocol, __is_inet_protocol): New
   5974  1.1  mrg 	traits.
   5975  1.1  mrg 	(__endpoint, __protocol, __acceptable_protocol): New variable
   5976  1.1  mrg 	templates.
   5977  1.1  mrg 	* include/experimental/socket (__is_endpoint): Move to net.h header.
   5978  1.1  mrg 	(basic_socket, basic_socket_acceptor): Check requirements.
   5979  1.1  mrg 
   5980  1.1  mrg 	* include/experimental/executor (use_future_t::use_future_t()): Fix
   5981  1.1  mrg 	incorrect noexcept-specifier.
   5982  1.1  mrg 	* include/experimental/internet (basic_resolver_results): Adjust
   5983  1.1  mrg 	whitespace.
   5984  1.1  mrg 	* include/experimental/socket (__basic_socket_impl::release): Add
   5985  1.1  mrg 	member function.
   5986  1.1  mrg 	(basic_socket(io_context&, const endpoint_type&)): Fix argument to
   5987  1.1  mrg 	target constructor.
   5988  1.1  mrg 	(basic_socket::release(), basic_socket::release(error_code&)): Add
   5989  1.1  mrg 	missing member functions.
   5990  1.1  mrg 	(basic_socket::is_open()): Add nodiscard attribute.
   5991  1.1  mrg 	(basic_socket::close(error_code&)): Pass argument to base function.
   5992  1.1  mrg 	(basic_socket_acceptor::release())
   5993  1.1  mrg 	(basic_socket_acceptor::release(error_code&)): Add missing member
   5994  1.1  mrg 	functions.
   5995  1.1  mrg 	(basic_socket_acceptor::is_open()): Add nodiscard attribute.
   5996  1.1  mrg 	(basic_socket_streambuf::error()): Add noexcept.
   5997  1.1  mrg 	(basic_socket_iostream::error()): Likewise.
   5998  1.1  mrg 	* testsuite/experimental/net/socket/basic_socket.cc: New test.
   5999  1.1  mrg 
   6000  1.1  mrg 	* include/experimental/buffer: Replace typedefs with
   6001  1.1  mrg 	alias-declarations.
   6002  1.1  mrg 	* include/experimental/executor: Likewise.
   6003  1.1  mrg 	* include/experimental/internet: Likewise.
   6004  1.1  mrg 	* include/experimental/socket: Likewise.
   6005  1.1  mrg 	* include/experimental/timer: Likewise.
   6006  1.1  mrg 
   6007  1.1  mrg 2020-05-19  Jonathan Wakely  <jwakely (a] redhat.com>
   6008  1.1  mrg 
   6009  1.1  mrg 	PR libstdc++/94087
   6010  1.1  mrg 	* src/c++11/random.cc (__x86_rdseed): Allow fallback function to be
   6011  1.1  mrg 	passed in.
   6012  1.1  mrg 	(__x86_rdseed_rdrand): New function that uses rdseed with rdrand
   6013  1.1  mrg 	fallback.
   6014  1.1  mrg 	(random_device::_M_init): Use __x86_rdseed_rdrand when both
   6015  1.1  mrg 	instructions are available.
   6016  1.1  mrg 	* testsuite/26_numerics/random/random_device/94087.cc: New test.
   6017  1.1  mrg 
   6018  1.1  mrg 2020-05-19  Patrick Palka  <ppalka (a] redhat.com>
   6019  1.1  mrg 
   6020  1.1  mrg 	PR c++/66439
   6021  1.1  mrg 	* testsuite/20_util/pair/astuple/get_neg.cc: Prune "type/value
   6022  1.1  mrg 	mismatch" messages.
   6023  1.1  mrg 	* testsuite/20_util/tuple/element_access/get_neg.cc: Likewise.
   6024  1.1  mrg 
   6025  1.1  mrg 2020-05-15  H.J. Lu  <hongjiu.lu (a] intel.com>
   6026  1.1  mrg 
   6027  1.1  mrg 	PR bootstrap/95147
   6028  1.1  mrg 	* configure: Regenerated.
   6029  1.1  mrg 
   6030  1.1  mrg 2020-05-14  H.J. Lu  <hongjiu.lu (a] intel.com>
   6031  1.1  mrg 
   6032  1.1  mrg 	* configure: Regenerated.
   6033  1.1  mrg 
   6034  1.1  mrg 2020-05-13  Alexandre Oliva <oliva (a] adacore.com>
   6035  1.1  mrg 
   6036  1.1  mrg 	PR libstdc++/77691
   6037  1.1  mrg 	* include/experimental/memory_resource
   6038  1.1  mrg 	(__resource_adaptor_imp::do_allocate): Handle max_align_t on
   6039  1.1  mrg 	x86-vxworks as on x86-solaris.
   6040  1.1  mrg 	(__resource_adaptor_imp::do_deallocate): Likewise.
   6041  1.1  mrg 	* testsuite/experimental/memory_resource/new_delete_resource.cc:
   6042  1.1  mrg 	Drop xfail.
   6043  1.1  mrg 	(BAD_MAX_ALIGN_T): Define on x86-vxworks as on x86-solaris.
   6044  1.1  mrg 	(test03): Drop max-align test for char-aligned alloc.
   6045  1.1  mrg 
   6046  1.1  mrg 2020-05-08  Ulrich Drepper  <drepper (a] redhat.com>
   6047  1.1  mrg 
   6048  1.1  mrg 	* include/bits/atomic_base.h (atomic_flag): Implement test member
   6049  1.1  mrg 	function.
   6050  1.1  mrg 	* include/std/version: Define __cpp_lib_atomic_flag_test.
   6051  1.1  mrg 	* testsuite/29_atomics/atomic_flag/test/explicit.cc: New file.
   6052  1.1  mrg 	* testsuite/29_atomics/atomic_flag/test/implicit.cc: New file.
   6053  1.1  mrg 
   6054  1.1  mrg 2020-05-07  Jonathan Wakely  <jwakely (a] redhat.com>
   6055  1.1  mrg 
   6056  1.1  mrg 	PR libstdc++/94971 (partial)
   6057  1.1  mrg 	* include/bits/ranges_algo.h (ranges::__sample_fn): Qualify
   6058  1.1  mrg 	std::sample using macro to work in parallel mode.
   6059  1.1  mrg 	(__sort_fn): Likewise for std::sort.
   6060  1.1  mrg 	(ranges::__nth_element_fn): Likewise for std::nth_element.
   6061  1.1  mrg 	* include/bits/stl_algobase.h (lexicographical_compare_three_way):
   6062  1.1  mrg 	Likewise for std::__min_cmp.
   6063  1.1  mrg 	* include/parallel/algobase.h (lexicographical_compare_three_way):
   6064  1.1  mrg 	Add to namespace std::__parallel.
   6065  1.1  mrg 
   6066  1.1  mrg 	PR c/92472
   6067  1.1  mrg 	* include/parallel/multiway_merge.h (_GuardedIterator::operator*)
   6068  1.1  mrg 	(_GuardedIterator::operator _RAIter, _UnguardedIterator::operator*)
   6069  1.1  mrg 	(_UnguardedIterator::operator _RAIter): Add const qualifier.
   6070  1.1  mrg 	(operator<(_GuardedIterator&, _GuardedIterator&)
   6071  1.1  mrg 	(operator<=(_GuardedIterator&, _GuardedIterator&)
   6072  1.1  mrg 	(operator<(_UnguardedIterator&, _UnguardedIterator&)
   6073  1.1  mrg 	(operator<=(_UnguardedIterator&, _UnguardedIterator&): Change
   6074  1.1  mrg 	parameters to const references.
   6075  1.1  mrg 
   6076  1.1  mrg 2020-05-07  Eric Botcazou  <ebotcazou (a] adacore.com>
   6077  1.1  mrg 
   6078  1.1  mrg 	* config/abi/post/sparc64-linux-gnu/baseline_symbols.txt: Update.
   6079  1.1  mrg 	* config/abi/post/sparc64-linux-gnu/32/baseline_symbols.txt: Likewise.
   6080  1.1  mrg 
   6081  1.1  mrg 2020-05-06  Franois Dumont  <fdumont (a] gcc.gnu.org>
   6082  1.1  mrg 
   6083  1.1  mrg 	* include/bits/stl_algobase.h (struct _Bit_iterator): New declaration.
   6084  1.1  mrg 	(std::__fill_a1(_Bit_iterator, _Bit_iterator, const bool&)): Likewise.
   6085  1.1  mrg 	* include/bits/stl_bvector.h (__fill_bvector): Move outside
   6086  1.1  mrg 	_GLIBCXX_STD_C namespace.
   6087  1.1  mrg 	(fill(_Bit_iterator, _Bit_iterator, const bool&)): Likewise and rename
   6088  1.1  mrg 	into...
   6089  1.1  mrg 	(__fill_a1): ...this.
   6090  1.1  mrg 	* testsuite/25_algorithms/fill/bvector/1.cc: New.
   6091  1.1  mrg 
   6092  1.1  mrg 2020-05-06  H.J. Lu  <hongjiu.lu (a] intel.com>
   6093  1.1  mrg 
   6094  1.1  mrg 	* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
   6095  1.1  mrg 
   6096  1.1  mrg 2020-05-06  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   6097  1.1  mrg 
   6098  1.1  mrg 	* config/abi/post/i386-solaris/baseline_symbols.txt: Regenerate.
   6099  1.1  mrg 	* config/abi/post/i386-solaris/amd64/baseline_symbols.txt:
   6100  1.1  mrg 	Likewise.
   6101  1.1  mrg 	* config/abi/post/sparc-solaris/baseline_symbols.txt: Likewise.
   6102  1.1  mrg 	* config/abi/post/sparc-solaris/sparcv9/baseline_symbols.txt:
   6103  1.1  mrg 	Likewise.
   6104  1.1  mrg 
   6105  1.1  mrg 2020-05-06  Martin Liska  <mliska (a] suse.cz>
   6106  1.1  mrg 
   6107  1.1  mrg 	Revert:
   6108  1.1  mrg 	2020-05-05  Martin Liska  <mliska (a] suse.cz>
   6109  1.1  mrg 	PR c/92472
   6110  1.1  mrg 	* include/parallel/multiway_merge.h:
   6111  1.1  mrg 	Use const for _Compare template argument.
   6112  1.1  mrg 
   6113  1.1  mrg 2020-05-06  Jonathan Wakely  <jwakely (a] redhat.com>
   6114  1.1  mrg 
   6115  1.1  mrg 	* doc/xml/manual/abi.xml (abi.versioning.history): Document library
   6116  1.1  mrg 	versions for GCC 9.[123] and 10.1 releases.
   6117  1.1  mrg 	* doc/html/*: Regenerate.
   6118  1.1  mrg 
   6119  1.1  mrg 2020-05-06  Jakub Jelinek  <jakub (a] redhat.com>
   6120  1.1  mrg 
   6121  1.1  mrg 	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
   6122  1.1  mrg 	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
   6123  1.1  mrg 	* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
   6124  1.1  mrg 	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
   6125  1.1  mrg 	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
   6126  1.1  mrg 	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
   6127  1.1  mrg 	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
   6128  1.1  mrg 
   6129  1.1  mrg 2020-05-05  Martin Liska  <mliska (a] suse.cz>
   6130  1.1  mrg 
   6131  1.1  mrg 	PR c/92472
   6132  1.1  mrg 	* include/parallel/multiway_merge.h:
   6133  1.1  mrg 	Use const for _Compare template argument.
   6134  1.1  mrg 
   6135  1.1  mrg 2020-05-04  Fangrui Song  <maskray (a] google.com>
   6136  1.1  mrg 
   6137  1.1  mrg 	* libsupc++/cxxabi.h (__cxa_finalize): Fix return type.
   6138  1.1  mrg 
   6139  1.1  mrg 2020-05-04  Jonathan Wakely  <jwakely (a] redhat.com>
   6140  1.1  mrg 
   6141  1.1  mrg 	* doc/xml/faq.xml: Use working link for SGI STL FAQ.
   6142  1.1  mrg 	* doc/html/*: Regenerate.
   6143  1.1  mrg 
   6144  1.1  mrg 	PR libstdc++/94906
   6145  1.1  mrg 	* src/c++17/memory_resource.cc
   6146  1.1  mrg 	(monotonic_buffer_resource::_Chunk::release): Use size_t for shift
   6147  1.1  mrg 	operands.
   6148  1.1  mrg 
   6149  1.1  mrg 2020-05-04  Nathan Sidwell  <nathan (a] acm.org>
   6150  1.1  mrg 
   6151  1.1  mrg 	PR libstdc++/94747
   6152  1.1  mrg 	* libsupc++/dyncast.cc (__dynamic_cast): Cast offsetof to
   6153  1.1  mrg 	ptrdiff_t before negation, to show intent more clearly.
   6154  1.1  mrg 
   6155  1.1  mrg 2020-05-04  Jonathan Wakely  <jwakely (a] redhat.com>
   6156  1.1  mrg 
   6157  1.1  mrg 	PR libstdc++/94936
   6158  1.1  mrg 	* src/c++17/memory_resource.cc (synchronized_pool_resource::_TPools):
   6159  1.1  mrg 	Add comment about single-threaded behaviour.
   6160  1.1  mrg 	(synchronized_pool_resource::_TPools::move_nonempty_chunks()): Hoist
   6161  1.1  mrg 	class member access out of loop.
   6162  1.1  mrg 	(synchronized_pool_resource::synchronized_pool_resource())
   6163  1.1  mrg 	(synchronized_pool_resource::~synchronized_pool_resource())
   6164  1.1  mrg 	(synchronized_pool_resource::release()): Check __gthread_active_p
   6165  1.1  mrg 	before creating and/or deleting the thread-specific data key.
   6166  1.1  mrg 	(synchronized_pool_resource::_M_thread_specific_pools()): Adjust
   6167  1.1  mrg 	assertions.
   6168  1.1  mrg 	(synchronized_pool_resource::do_allocate(size_t, size_t)): Add fast
   6169  1.1  mrg 	path for single-threaded case.
   6170  1.1  mrg 	(synchronized_pool_resource::do_deallocate(void*, size_t, size_t)):
   6171  1.1  mrg 	Likewise. Return if unable to find a pool that owns the allocation.
   6172  1.1  mrg 	* testsuite/20_util/synchronized_pool_resource/allocate_single.cc:
   6173  1.1  mrg 	New test.
   6174  1.1  mrg 	* testsuite/20_util/synchronized_pool_resource/cons_single.cc: New
   6175  1.1  mrg 	test.
   6176  1.1  mrg 	* testsuite/20_util/synchronized_pool_resource/release_single.cc: New
   6177  1.1  mrg 	test.
   6178  1.1  mrg 
   6179  1.1  mrg 2020-05-03  Jonathan Wakely  <jwakely (a] redhat.com>
   6180  1.1  mrg 
   6181  1.1  mrg 	PR libstdc++/94933
   6182  1.1  mrg 	* include/bits/stl_algobase.h (__fill_a1): Make overload for byte types
   6183  1.1  mrg 	usable in constant expressions.
   6184  1.1  mrg 	* testsuite/25_algorithms/fill_n/constexpr.cc: Test with bytes and
   6185  1.1  mrg 	non-scalars.
   6186  1.1  mrg 
   6187  1.1  mrg 2020-05-01  Jonathan Wakely  <jwakely (a] redhat.com>
   6188  1.1  mrg 
   6189  1.1  mrg 	PR libstdc++/94901
   6190  1.1  mrg 	* testsuite/17_intro/badnames.cc: Test values between _E9 and _E24 too.
   6191  1.1  mrg 
   6192  1.1  mrg 2020-05-01  Jonathan Wakely  <jwakely (a] redhat.com>
   6193  1.1  mrg 	    Patrick Palka  <ppalka (a] redhat.com>
   6194  1.1  mrg 
   6195  1.1  mrg 	PR libstdc++/92894
   6196  1.1  mrg 	* include/bits/iterator_concepts.h (ranges::__cust_imove::_IMove):
   6197  1.1  mrg 	Add trait to determine return type and an alias for it.
   6198  1.1  mrg 	(ranges::__cust_imove::_IMove::operator()): Use __result instead of
   6199  1.1  mrg 	deduced return type.
   6200  1.1  mrg 	(iter_rvalue_reference_t): Use _IMove::__type instead of checking
   6201  1.1  mrg 	the result of ranges::iter_move.
   6202  1.1  mrg 	(__detail::__indirectly_readable_impl): Use iter_rvalue_reference_t
   6203  1.1  mrg 	instead of checking the result of ranges::iter_move.
   6204  1.1  mrg 	* testsuite/24_iterators/customization_points/92894.cc: New test.
   6205  1.1  mrg 	* testsuite/24_iterators/indirect_callable/92894.cc: New test.
   6206  1.1  mrg 
   6207  1.1  mrg 2020-05-01  Jonathan Wakely  <jwakely (a] redhat.com>
   6208  1.1  mrg 
   6209  1.1  mrg 	PR libstdc++/94901
   6210  1.1  mrg 	* include/std/type_traits (__is_complete_or_unbounded): Replace
   6211  1.1  mrg 	BADNAME _T with _Tp.
   6212  1.1  mrg 	* testsuite/17_intro/badnames.cc: New test.
   6213  1.1  mrg 
   6214  1.1  mrg 2020-04-30  Jonathan Wakely  <jwakely (a] redhat.com>
   6215  1.1  mrg 
   6216  1.1  mrg 	PR libstdc++/89510
   6217  1.1  mrg 	* include/bits/alloc_traits.h (allocator_traits::_S_construct)
   6218  1.1  mrg 	(allocator_traits::_S_destroy)
   6219  1.1  mrg 	(allocator_traits<allocator<T>>::construct): Use traits in
   6220  1.1  mrg 	noexcept-specifiers.
   6221  1.1  mrg 	* include/bits/allocator.h (allocator<void>::construct)
   6222  1.1  mrg 	(allocator<void>::destroy): Likewise.
   6223  1.1  mrg 	* include/ext/malloc_allocator.h (malloc_allocator::construct)
   6224  1.1  mrg 	(malloc_allocator::destroy): Likewise.
   6225  1.1  mrg 	* include/ext/new_allocator.h (new_allocator::construct)
   6226  1.1  mrg 	(new_allocator::destroy): Likewise.
   6227  1.1  mrg 	* testsuite/20_util/allocator/89510.cc: New test.
   6228  1.1  mrg 	* testsuite/ext/malloc_allocator/89510.cc: New test.
   6229  1.1  mrg 	* testsuite/ext/new_allocator/89510.cc: New test.
   6230  1.1  mrg 
   6231  1.1  mrg 2020-04-29  Jonathan Wakely  <jwakely (a] redhat.com>
   6232  1.1  mrg 
   6233  1.1  mrg 	PR libstdc++/94854
   6234  1.1  mrg 	* include/bits/basic_string.tcc: Update comment about explicit
   6235  1.1  mrg 	instantiations.
   6236  1.1  mrg 
   6237  1.1  mrg 2020-04-28  Jonathan Wakely  <jwakely (a] redhat.com>
   6238  1.1  mrg 
   6239  1.1  mrg 	PR libstdc++/91480
   6240  1.1  mrg 	* include/bits/allocator.h (__cpp_lib_allocator_is_always_equal):
   6241  1.1  mrg 	Remove non-standard macro.
   6242  1.1  mrg 	* include/bits/stl_iterator.h (__cpp_lib_constexpr_iterator): Define
   6243  1.1  mrg 	to indicate P1032R1 support.
   6244  1.1  mrg 	* include/bits/stl_pair.h (__cpp_lib_constexpr_utility): Likewise.
   6245  1.1  mrg 	* include/std/string_view (__cpp_lib_constexpr_string_view): Likewise.
   6246  1.1  mrg 	* include/std/tuple (__cpp_lib_constexpr_tuple): Likewise.
   6247  1.1  mrg 	* include/std/version (__cpp_lib_allocator_is_always_equal): Remove.
   6248  1.1  mrg 	(__cpp_lib_constexpr_iterator, __cpp_lib_constexpr_string_view)
   6249  1.1  mrg 	(__cpp_lib_constexpr_tuple, __cpp_lib_constexpr_utility): Define.
   6250  1.1  mrg 	* testsuite/20_util/function_objects/constexpr_searcher.cc: Check
   6251  1.1  mrg 	feature test macro.
   6252  1.1  mrg 	* testsuite/20_util/tuple/cons/constexpr_allocator_arg_t.cc: Likewise.
   6253  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/copy/char/
   6254  1.1  mrg 	constexpr.cc: Likewise.
   6255  1.1  mrg 	* testsuite/24_iterators/insert_iterator/constexpr.cc: Likewise.
   6256  1.1  mrg 
   6257  1.1  mrg 	PR libstdc++/94831
   6258  1.1  mrg 	* include/bits/alloc_traits.h (_S_construct): Restore placement
   6259  1.1  mrg 	new-expression for C++11/14/17 and call std::construct_at directly
   6260  1.1  mrg 	for C++20.
   6261  1.1  mrg 	* include/bits/stl_construct.h (_Construct): Revert to non-constexpr
   6262  1.1  mrg 	function returning void.
   6263  1.1  mrg 	* testsuite/20_util/specialized_algorithms/
   6264  1.1  mrg 	uninitialized_value_construct/94831.cc: New test.
   6265  1.1  mrg 	* testsuite/23_containers/vector/cons/94831.cc: New test.
   6266  1.1  mrg 
   6267  1.1  mrg 2020-04-28  Patrick Palka  <ppalka (a] redhat.com>
   6268  1.1  mrg 
   6269  1.1  mrg 	LWG 3433 subrange::advance(n) has UB when n < 0
   6270  1.1  mrg 	* include/std/ranges (subrange::prev): Fix typo.
   6271  1.1  mrg 	(subrange::advance): Handle a negative argument as per the proposed
   6272  1.1  mrg 	resolution of LWG 3433.
   6273  1.1  mrg 	* testsuite/std/ranges/subrange/lwg3433.cc: New test.
   6274  1.1  mrg 
   6275  1.1  mrg 2020-04-28  Jonathan Wakely  <jwakely (a] redhat.com>
   6276  1.1  mrg 	    Iain Sandoe  <iain (a] sandoe.co.uk>
   6277  1.1  mrg 
   6278  1.1  mrg 	PR c++/94759
   6279  1.1  mrg 	* include/std/coroutine: Implement handing for non-
   6280  1.1  mrg 	class coroutine return types.
   6281  1.1  mrg 
   6282  1.1  mrg 2020-04-24  Jonathan Wakely  <jwakely (a] redhat.com>
   6283  1.1  mrg 
   6284  1.1  mrg 	* include/experimental/executor (service_already_exists): Make default
   6285  1.1  mrg 	constructor public (LWG 3414).
   6286  1.1  mrg 	* testsuite/experimental/net/execution_context/make_service.cc: Check
   6287  1.1  mrg 	the service_already_exists can be default constructed.
   6288  1.1  mrg 
   6289  1.1  mrg 2020-04-24  Kamlesh Kumar  <kamleshbhalui (a] gmail.com>
   6290  1.1  mrg 	    Jonathan Wakely  <jwakely (a] redhat.com>
   6291  1.1  mrg 
   6292  1.1  mrg 	PR libstdc++/90415
   6293  1.1  mrg 	PR libstdc++/92156
   6294  1.1  mrg 	* include/std/any (any): Rename template parameters for consistency
   6295  1.1  mrg 	with the standard.
   6296  1.1  mrg 	(any::_Decay): Rename to _Decay_if_not_any.
   6297  1.1  mrg 	(any::any(T&&):: Remove is_constructible from constraints. Remove
   6298  1.1  mrg 	non-standard overload.
   6299  1.1  mrg 	(any::any(in_place_type_t<T>, Args&&...))
   6300  1.1  mrg 	(any::any(in_place_type_t<T>, initializer_list<U>, Args&&...))
   6301  1.1  mrg 	(any::emplace(Args&&...))
   6302  1.1  mrg 	(any::emplace(initializer_list<U>, Args&&...)):
   6303  1.1  mrg 	Use decay_t instead of _Decay.
   6304  1.1  mrg 	* testsuite/20_util/any/cons/90415.cc: New test.
   6305  1.1  mrg 	* testsuite/20_util/any/cons/92156.cc: New Test.
   6306  1.1  mrg 	* testsuite/20_util/any/misc/any_cast_neg.cc: Make dg-error directives
   6307  1.1  mrg 	more robust.
   6308  1.1  mrg 	* testsuite/20_util/any/modifiers/92156.cc: New test.
   6309  1.1  mrg 
   6310  1.1  mrg 2020-04-23  Jonathan Wakely  <jwakely (a] redhat.com>
   6311  1.1  mrg 
   6312  1.1  mrg 	* doc/xml/manual/status_cxx2020.xml: Update C++20 status table.
   6313  1.1  mrg 	* doc/html/*: Regenerate.
   6314  1.1  mrg 
   6315  1.1  mrg 	* include/bits/stl_iterator.h (__cpp_lib_array_constexpr): Revert
   6316  1.1  mrg 	value for C++17 to 201803L because P0858R0 is supported for C++17.
   6317  1.1  mrg 	* include/std/version (__cpp_lib_array_constexpr): Likewise.
   6318  1.1  mrg 	* testsuite/23_containers/array/element_access/constexpr_c++17.cc:
   6319  1.1  mrg 	Check for value corresponding to P0031R0 features being tested.
   6320  1.1  mrg 	* testsuite/23_containers/array/requirements/constexpr_iter.cc:
   6321  1.1  mrg 	Check for value corresponding to P0858R0 features being tested.
   6322  1.1  mrg 
   6323  1.1  mrg 	* include/std/version (__cpp_lib_three_way_comparison): Define for
   6324  1.1  mrg 	freestanding builds.
   6325  1.1  mrg 
   6326  1.1  mrg 2020-04-23  Thomas Rodgers  <rodgert (a] appliantology.com>
   6327  1.1  mrg 
   6328  1.1  mrg 	* include/experimental/net/executor (system_context): Mark
   6329  1.1  mrg 	system_context::system_context() = delete.
   6330  1.1  mrg 	* testsuite/experimental/net/executor/1.cc: Add new
   6331  1.1  mrg 	test to check system_context is not default constructible.
   6332  1.1  mrg 
   6333  1.1  mrg 2020-04-23  Iain Sandoe  <iain (a] sandoe.co.uk>
   6334  1.1  mrg 
   6335  1.1  mrg 	* include/std/coroutine: Update the inline namespace to __n4861.
   6336  1.1  mrg 	Add the __cpp_lib_coroutine define, set to 201902L.
   6337  1.1  mrg 	* include/std/version: Add __cpp_lib_coroutine, set to 201902L.
   6338  1.1  mrg 
   6339  1.1  mrg 2020-04-22  Jonathan Wakely  <jwakely (a] redhat.com>
   6340  1.1  mrg 
   6341  1.1  mrg 	* include/std/execution (__cpp_lib_execution): Define to indicate
   6342  1.1  mrg 	support for P0024R2 and P1001R2.
   6343  1.1  mrg 	* include/std/version (__cpp_lib_execution): Define.
   6344  1.1  mrg 	* testsuite/25_algorithms/pstl/feature_test.cc: Only test macro
   6345  1.1  mrg 	defined by <algorithm>, move other tests to new tests ...
   6346  1.1  mrg 	* testsuite/25_algorithms/pstl/feature_test-2.cc: New test.
   6347  1.1  mrg 	* testsuite/25_algorithms/pstl/feature_test-3.cc: New test.
   6348  1.1  mrg 	* testsuite/25_algorithms/pstl/feature_test-4.cc: New test.
   6349  1.1  mrg 	* testsuite/25_algorithms/pstl/feature_test-5.cc: New test.
   6350  1.1  mrg 
   6351  1.1  mrg 	* include/bits/stl_iterator.h (__cpp_lib_array_constexpr): Define
   6352  1.1  mrg 	different values for C++17 and C++20, to indicate different feature
   6353  1.1  mrg 	sets. Update value for C++20 to indicate P1032R1 support.
   6354  1.1  mrg 	* include/std/version (__cpp_lib_array_constexpr): Likewise.
   6355  1.1  mrg 	* testsuite/23_containers/array/comparison_operators/constexpr.cc:
   6356  1.1  mrg 	Check feature test macro.
   6357  1.1  mrg 	* testsuite/23_containers/array/element_access/constexpr_c++17.cc:
   6358  1.1  mrg 	New test.
   6359  1.1  mrg 	* testsuite/23_containers/array/requirements/constexpr_fill.cc: Check
   6360  1.1  mrg 	feature test macro.
   6361  1.1  mrg 	* testsuite/23_containers/array/requirements/constexpr_iter.cc: Test
   6362  1.1  mrg 	in C++17 mode and check feature test macro.
   6363  1.1  mrg 
   6364  1.1  mrg 	* include/std/utility (__cpp_lib_constexpr_algorithms): Do not define
   6365  1.1  mrg 	here.
   6366  1.1  mrg 	* testsuite/20_util/exchange/constexpr.cc: Do not expect macro to be
   6367  1.1  mrg 	defined by <utility>.
   6368  1.1  mrg 
   6369  1.1  mrg 	* include/std/functional (__cpp_lib_concepts): Update macro value to
   6370  1.1  mrg 	indicate P1964R2 support.
   6371  1.1  mrg 	* include/std/version (__cpp_lib_concepts): Likewise.
   6372  1.1  mrg 	* testsuite/std/concepts/1.cc: Adjust expected value.
   6373  1.1  mrg 	* testsuite/std/concepts/2.cc: Likewise.
   6374  1.1  mrg 
   6375  1.1  mrg 	* include/std/functional (__cpp_lib_constexpr_invoke): Rename to
   6376  1.1  mrg 	__cpp_lib_constexpr_functional.
   6377  1.1  mrg 	* include/std/version (__cpp_lib_constexpr_invoke): Likewise.
   6378  1.1  mrg 	* testsuite/20_util/function_objects/invoke/constexpr.cc: Adjust.
   6379  1.1  mrg 
   6380  1.1  mrg 	* include/bits/ptr_traits.h (__cpp_lib_constexpr_memory): Define to
   6381  1.1  mrg 	indicate P1006R1 support.
   6382  1.1  mrg 	(__cpp_lib_to_address): Define to indicate P0653R2 support.
   6383  1.1  mrg 	* include/bits/range_access.h (__cpp_lib_ssize): Define to indicate
   6384  1.1  mrg 	P1227R2 support.
   6385  1.1  mrg 	* include/bits/ranges_algo.h (__cpp_lib_shift): Define to indicate
   6386  1.1  mrg 	P0769R2 support.
   6387  1.1  mrg 	* include/std/atomic (__cpp_lib_atomic_float): Define to indicate
   6388  1.1  mrg 	P0020R6 support.
   6389  1.1  mrg 	* include/std/memory (__cpp_lib_assume_aligned): Define to indicate
   6390  1.1  mrg 	P1007R3 support.
   6391  1.1  mrg 	* include/std/memory_resource (__cpp_lib_polymorphic_allocator):
   6392  1.1  mrg 	Define to indicate P0339R6 support.
   6393  1.1  mrg 	* include/std/string_view (__cpp_lib_starts_ends_with): Define to
   6394  1.1  mrg 	indicate P0457R2 support.
   6395  1.1  mrg 	* include/std/type_traits (__cpp_lib_is_nothrow_convertible): Define
   6396  1.1  mrg 	to indicate P0758R1 support.
   6397  1.1  mrg 	(__cpp_lib_remove_cvref): Define to indicate P0550R2 support.
   6398  1.1  mrg 	(__cpp_lib_type_identity): Define to indicate P0887R1 support.
   6399  1.1  mrg 	* include/std/version (__cpp_lib_atomic_float)
   6400  1.1  mrg 	(__cpp_lib_is_nothrow_convertible, __cpp_lib_remove_cvref)
   6401  1.1  mrg 	(__cpp_lib_type_identity, __cpp_lib_assume_aligned)
   6402  1.1  mrg 	(__cpp_lib_constexpr_memory, __cpp_lib_polymorphic_allocator)
   6403  1.1  mrg 	(__cpp_lib_shift, __cpp_lib_ssize, __cpp_lib_starts_ends_with)
   6404  1.1  mrg 	(__cpp_lib_to_address): Define.
   6405  1.1  mrg 	* testsuite/20_util/to_address/1_neg.cc: Adjust dg-error line number.
   6406  1.1  mrg 
   6407  1.1  mrg 	* include/bits/stl_map.h (__cpp_lib_map_insertion): Remove old
   6408  1.1  mrg 	macro.
   6409  1.1  mrg 	* include/bits/unordered_map.h (__cpp_lib_unordered_map_insertion):
   6410  1.1  mrg 	Likewise.
   6411  1.1  mrg 	* include/std/version (__cpp_lib_map_insertion)
   6412  1.1  mrg 	(__cpp_lib_unordered_map_insertion): Remove.
   6413  1.1  mrg 
   6414  1.1  mrg 	* include/std/condition_variable (__cpp_lib_jthread): Remove
   6415  1.1  mrg 	redundant definition.
   6416  1.1  mrg 	* include/std/stop_token (__cpp_lib_jthread): Update macro value to
   6417  1.1  mrg 	indicate P1869R1 support.
   6418  1.1  mrg 	* include/std/version (__cpp_lib_jthread): Update value.
   6419  1.1  mrg 	* testsuite/30_threads/condition_variable_any/stop_token/1.cc: Check
   6420  1.1  mrg 	for updated macro value.
   6421  1.1  mrg 	* testsuite/30_threads/condition_variable_any/stop_token/2.cc:
   6422  1.1  mrg 	Likewise.
   6423  1.1  mrg 	* testsuite/30_threads/jthread/1.cc: Likewise.
   6424  1.1  mrg 	* testsuite/30_threads/jthread/2.cc: Likewise.
   6425  1.1  mrg 	* testsuite/30_threads/stop_token/1.cc: Likewise.
   6426  1.1  mrg 	* testsuite/30_threads/stop_token/2.cc: Likewise.
   6427  1.1  mrg 
   6428  1.1  mrg 	* testsuite/21_strings/basic_string/erasure.cc: Check for
   6429  1.1  mrg 	__cpp_lib_erase_if macro.
   6430  1.1  mrg 	* testsuite/23_containers/deque/erasure.cc: Add header name to #error
   6431  1.1  mrg 	messages.
   6432  1.1  mrg 	* testsuite/23_containers/forward_list/erasure.cc: Likewise.
   6433  1.1  mrg 	* testsuite/23_containers/list/erasure.cc: Likewise.
   6434  1.1  mrg 	* testsuite/23_containers/map/erasure.cc: Likewise.
   6435  1.1  mrg 	* testsuite/23_containers/set/erasure.cc: Likewise.
   6436  1.1  mrg 	* testsuite/23_containers/unordered_map/erasure.cc: Likewise.
   6437  1.1  mrg 	* testsuite/23_containers/unordered_set/erasure.cc: Likewise.
   6438  1.1  mrg 	* testsuite/23_containers/vector/erasure.cc: Likewise.
   6439  1.1  mrg 
   6440  1.1  mrg 2020-04-21  Jonathan Wakely  <jwakely (a] redhat.com>
   6441  1.1  mrg 
   6442  1.1  mrg 	* include/bits/stl_iterator.h (__normal_iterator): Use synth-three-way
   6443  1.1  mrg 	to define operator<=>.
   6444  1.1  mrg 	* testsuite/24_iterators/normal_iterator/cmp_c++20.cc: New test.
   6445  1.1  mrg 
   6446  1.1  mrg 	* doc/Makefile.am (xml_sources_manual): Add missing XML files.
   6447  1.1  mrg 	* doc/Makefile.in: Regenerate.
   6448  1.1  mrg 	* doc/xml/manual/status_cxx1998.xml: Refer to "this section" instead
   6449  1.1  mrg 	of "this page".
   6450  1.1  mrg 	* doc/xml/manual/status_cxx2011.xml: Formatting and other corrections
   6451  1.1  mrg 	to the C++11 status table.
   6452  1.1  mrg 	* doc/xml/manual/status_cxx2014.xml: Replace list of C++14 feature
   6453  1.1  mrg 	proposals with table matching contents of the C++14 standard.
   6454  1.1  mrg 	* doc/xml/manual/status_cxx2017.xml: Add table matching contents of
   6455  1.1  mrg 	the C++17 standard.
   6456  1.1  mrg 	* doc/html/*: Regenerate.
   6457  1.1  mrg 
   6458  1.1  mrg 	PR c++/94149
   6459  1.1  mrg 	* include/std/type_traits (__is_nt_constructible_impl): Add partial
   6460  1.1  mrg 	specializations for bounded arrays with non-empty initializers.
   6461  1.1  mrg 	* testsuite/20_util/is_nothrow_constructible/value_c++20.cc: New test.
   6462  1.1  mrg 
   6463  1.1  mrg 2020-04-20  Thomas Rodgers  <trodgers (a] redhat.com>
   6464  1.1  mrg 
   6465  1.1  mrg 	* testsuite/lib/libstdc++.exp: Add additional_flags=
   6466  1.1  mrg 	-DTBB_SUPRESS_DEPRECATED_MESSAGES=1 to suppress warnings when
   6467  1.1  mrg 	compiling with a newer Thread Building Blocks.
   6468  1.1  mrg 
   6469  1.1  mrg 2020-04-20  Jonathan Wakely  <jwakely (a] redhat.com>
   6470  1.1  mrg 
   6471  1.1  mrg 	* testsuite/24_iterators/istreambuf_iterator/sentinel.cc: New test.
   6472  1.1  mrg 
   6473  1.1  mrg 	* testsuite/20_util/is_constructible/51185.cc: Make test class a
   6474  1.1  mrg 	non-aggregate so that the test verifies the same thing in all -std
   6475  1.1  mrg 	modes.
   6476  1.1  mrg 	* testsuite/20_util/is_constructible/value-2.cc: Adjust expected
   6477  1.1  mrg 	results for some types when paren-init for aggregates is supported.
   6478  1.1  mrg 
   6479  1.1  mrg 	* include/std/version (__cpp_lib_three_way_comparison): Update value.
   6480  1.1  mrg 	* libsupc++/compare (__cpp_lib_three_way_comparison): Likewise.
   6481  1.1  mrg 	(__detail::__synth3way): Add noexcept-specifier.
   6482  1.1  mrg 
   6483  1.1  mrg 	* include/bits/stl_map.h (map): Define operator<=> and remove
   6484  1.1  mrg 	operator< for C++20.
   6485  1.1  mrg 	* include/bits/stl_multimap.h (multimap): Likewise.
   6486  1.1  mrg 	* include/bits/stl_multiset.h (multiset): Likewise.
   6487  1.1  mrg 	* include/bits/stl_set.h (set): Likewise.
   6488  1.1  mrg 	* include/bits/stl_tree.h (_Rb_tree): Likewise.
   6489  1.1  mrg 	(_Rb_tree_iterator, _Rb_tree_const_iterator): Remove redundant
   6490  1.1  mrg 	operator!= for C++20.
   6491  1.1  mrg 	* include/debug/map.h (__gnu_debug::map): Define operator<=> for C++20.
   6492  1.1  mrg 	* include/debug/multimap.h (__gnu_debug::multimap): Likewise.
   6493  1.1  mrg 	* include/debug/multiset.h (__gnu_debug::multiset): Likewise.
   6494  1.1  mrg 	* include/debug/set.h (__gnu_debug::set): Likewise.
   6495  1.1  mrg 	* testsuite/23_containers/map/operators/cmp_c++20.cc: New test.
   6496  1.1  mrg 	* testsuite/23_containers/multimap/operators/cmp_c++20.cc: New test.
   6497  1.1  mrg 	* testsuite/23_containers/multiset/operators/cmp_c++20.cc: New test.
   6498  1.1  mrg 	* testsuite/23_containers/set/operators/cmp_c++20.cc: New test.
   6499  1.1  mrg 
   6500  1.1  mrg 2020-04-20  Matthias Kretz  <kretz (a] kde.org>
   6501  1.1  mrg 
   6502  1.1  mrg 	* testsuite/lib/libstdc++.exp: Avoid illegal argument to verbose.
   6503  1.1  mrg 
   6504  1.1  mrg 2020-04-19  Jonathan Wakely  <jwakely (a] redhat.com>
   6505  1.1  mrg 
   6506  1.1  mrg 	* include/bits/stl_queue.h (queue): Define operator<=> for C++20.
   6507  1.1  mrg 	* include/bits/stl_stack.h (stack): Likewise.
   6508  1.1  mrg 	* testsuite/23_containers/queue/cmp_c++20.cc: New test.
   6509  1.1  mrg 	* testsuite/23_containers/stack/cmp_c++20.cc: New test.
   6510  1.1  mrg 
   6511  1.1  mrg 	* include/bits/unordered_map.h (unordered_map, unordered_multimap):
   6512  1.1  mrg 	Remove redundant operator!= for C++20.
   6513  1.1  mrg 	* include/bits/unordered_set.h (unordered_set, unordered_multiset):
   6514  1.1  mrg 	Likewise.
   6515  1.1  mrg 	* include/debug/unordered_map (unordered_map, unordered_multimap):
   6516  1.1  mrg 	Likewise.
   6517  1.1  mrg 	* include/debug/unordered_set (unordered_set, unordered_multiset):
   6518  1.1  mrg 	Likewise.
   6519  1.1  mrg 
   6520  1.1  mrg 	PR other/94629
   6521  1.1  mrg 	* include/debug/formatter.h (_Error_formatter::_Parameter): Fix
   6522  1.1  mrg 	redundant assignment in constructor.
   6523  1.1  mrg 
   6524  1.1  mrg 2020-04-18  Jonathan Wakely  <jwakely (a] redhat.com>
   6525  1.1  mrg 
   6526  1.1  mrg 	* include/std/chrono (duration, time_point): Define operator<=> and
   6527  1.1  mrg 	remove redundant operator!= for C++20.
   6528  1.1  mrg 	* testsuite/20_util/duration/comparison_operators/three_way.cc: New
   6529  1.1  mrg 	test.
   6530  1.1  mrg 	* testsuite/20_util/time_point/comparison_operators/three_way.cc: New
   6531  1.1  mrg 	test.
   6532  1.1  mrg 
   6533  1.1  mrg 	* testsuite/util/native_type/native_priority_queue.hpp: Use
   6534  1.1  mrg 	allocator_traits to rebind allocator.
   6535  1.1  mrg 
   6536  1.1  mrg 2020-04-17  Jonathan Wakely  <jwakely (a] redhat.com>
   6537  1.1  mrg 
   6538  1.1  mrg 	* include/bits/forward_list.h (forward_list): Define operator<=> and
   6539  1.1  mrg 	remove redundant comparison operators for C++20.
   6540  1.1  mrg 	* include/bits/stl_bvector.h (vector<bool, Alloc>): Likewise.
   6541  1.1  mrg 	* include/bits/stl_deque.h (deque): Likewise.
   6542  1.1  mrg 	* include/bits/stl_iterator.h (__normal_iterator): Likewise.
   6543  1.1  mrg 	* include/bits/stl_list.h (list): Likewise.
   6544  1.1  mrg 	* include/bits/stl_vector.h (vector): Likewise.
   6545  1.1  mrg 	* include/debug/deque (__gnu_debug::deque): Likewise.
   6546  1.1  mrg 	* include/debug/forward_list (__gnu_debug::forward_list): Likewise.
   6547  1.1  mrg 	* include/debug/list (__gnu_debug::list): Likewise.
   6548  1.1  mrg 	* include/debug/safe_iterator.h (__gnu_debug::_Safe_iterator):
   6549  1.1  mrg 	Likewise.
   6550  1.1  mrg 	* include/debug/vector (__gnu_debug::vector): Likewise.
   6551  1.1  mrg 	* include/ext/pointer.h (__gnu_cxx::_Pointer_adapter): Define
   6552  1.1  mrg 	operator<=> for C++20.
   6553  1.1  mrg 	* testsuite/23_containers/deque/operators/cmp_c++20.cc: New test.
   6554  1.1  mrg 	* testsuite/23_containers/forward_list/cmp_c++20.cc: New test.
   6555  1.1  mrg 	* testsuite/23_containers/list/cmp_c++20.cc: New test.
   6556  1.1  mrg 	* testsuite/23_containers/vector/bool/cmp_c++20.cc: New test.
   6557  1.1  mrg 	* testsuite/23_containers/vector/cmp_c++20.cc: New test.
   6558  1.1  mrg 
   6559  1.1  mrg 	* include/bits/basic_string.h (basic_string): Define operator<=> and
   6560  1.1  mrg 	remove redundant comparison operators for C++20.
   6561  1.1  mrg 	* include/bits/char_traits.h (__gnu_cxx::char_traits, char_traits):
   6562  1.1  mrg 	Add comparison_category members.
   6563  1.1  mrg 	(__detail::__char_traits_cmp_cat): New helper to get comparison
   6564  1.1  mrg 	category from char traits class.
   6565  1.1  mrg 	* include/bits/regex.h (regex_traits::_RegexMask::operator!=): Do not
   6566  1.1  mrg 	define for C++20.
   6567  1.1  mrg 	(sub_match): Define operator<=> and remove redundant comparison
   6568  1.1  mrg 	operators for C++20.
   6569  1.1  mrg 	(match_results): Remove redundant operator!= for C++20.
   6570  1.1  mrg 	* include/std/string_view (basic_string_view): Define operator<=> and
   6571  1.1  mrg 	remove redundant comparison operators for C++20.
   6572  1.1  mrg 	* testsuite/21_strings/basic_string/operators/char/cmp_c++20.cc: New
   6573  1.1  mrg 	test.
   6574  1.1  mrg 	* testsuite/21_strings/basic_string/operators/wchar_t/cmp_c++20.cc:
   6575  1.1  mrg 	New test.
   6576  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/copy/char/
   6577  1.1  mrg 	constexpr.cc: Initialize variable.
   6578  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/
   6579  1.1  mrg 	constexpr.cc: Likewise.
   6580  1.1  mrg 	* testsuite/21_strings/basic_string_view/operators/char/2.cc: Add
   6581  1.1  mrg 	dg-do directive and remove comments showing incorrect signatures.
   6582  1.1  mrg 	* testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
   6583  1.1  mrg 	Likewise.
   6584  1.1  mrg 	* testsuite/21_strings/basic_string_view/operators/char/cmp_c++20.cc:
   6585  1.1  mrg 	New test.
   6586  1.1  mrg 	* testsuite/21_strings/basic_string_view/operators/wchar_t/cmp_c++20.cc:
   6587  1.1  mrg 	New test.
   6588  1.1  mrg 	* testsuite/28_regex/sub_match/compare_c++20.cc: New test.
   6589  1.1  mrg 
   6590  1.1  mrg 2020-04-16  Jonathan Wakely  <jwakely (a] redhat.com>
   6591  1.1  mrg 
   6592  1.1  mrg 	* testsuite/20_util/unsynchronized_pool_resource/allocate.cc: Remove
   6593  1.1  mrg 	name of unused parameter.
   6594  1.1  mrg 
   6595  1.1  mrg 2020-04-15  Jonathan Wakely  <jwakely (a] redhat.com>
   6596  1.1  mrg 
   6597  1.1  mrg 	* include/bits/fs_dir.h (file_status): Define operator== for C++20.
   6598  1.1  mrg 	(directory_entry): Define operator<=> and remove redundant comparison
   6599  1.1  mrg 	operators for C++20.
   6600  1.1  mrg 	* include/bits/fs_fwd.h (space_info): Define operator== for C++20.
   6601  1.1  mrg 	* include/bits/fs_path.h (path): Define operator<=> and remove
   6602  1.1  mrg 	redundant comparison operators for C++20.
   6603  1.1  mrg 	* testsuite/27_io/filesystem/path/compare/compare.cc: Fix comment.
   6604  1.1  mrg 	* testsuite/27_io/filesystem/path/compare/lwg2936.cc: Likewise.
   6605  1.1  mrg 	* testsuite/27_io/filesystem/path/compare/path.cc: Likewise.
   6606  1.1  mrg 	* testsuite/27_io/filesystem/path/compare/strings.cc: Likewise.
   6607  1.1  mrg 
   6608  1.1  mrg 	* include/bits/allocator.h (operator!=): Do not define for C++20.
   6609  1.1  mrg 	* include/bits/locale_classes.h (operator!=): Likewise.
   6610  1.1  mrg 	* include/bits/std_function.h (operator==(nullptr_t, const function&))
   6611  1.1  mrg 	(operator!=(const function&, nullptr_t))
   6612  1.1  mrg 	(operator!=(nullptr_t, const function&)): Likewise.
   6613  1.1  mrg 	* include/ext/bitmap_allocator.h (operator!=): Likewise.
   6614  1.1  mrg 	* include/ext/debug_allocator.h (operator!=): Likewise.
   6615  1.1  mrg 	* include/ext/extptr_allocator.h (operator!=): Likewise.
   6616  1.1  mrg 	* include/ext/malloc_allocator.h (operator!=): Likewise.
   6617  1.1  mrg 	* include/ext/mt_allocator.h (operator!=): Likewise.
   6618  1.1  mrg 	* include/ext/new_allocator.h (operator!=): Likewise.
   6619  1.1  mrg 	* include/ext/pool_allocator.h (operator!=): Likewise.
   6620  1.1  mrg 	* include/ext/throw_allocator.h (operator!=): Likewise.
   6621  1.1  mrg 	* include/std/bitset (bitset::operator!=): Likewise.
   6622  1.1  mrg 	* include/std/memory_resource (operator!=): Likewise.
   6623  1.1  mrg 	* include/std/scoped_allocator (operator!=): Likewise.
   6624  1.1  mrg 
   6625  1.1  mrg 	* include/std/typeindex (operator<=>): Define for C++20.
   6626  1.1  mrg 	* testsuite/20_util/typeindex/comparison_operators_c++20.cc: New test.
   6627  1.1  mrg 
   6628  1.1  mrg 2020-04-14  Jonathan Wakely  <jwakely (a] redhat.com>
   6629  1.1  mrg 
   6630  1.1  mrg 	* libsupc++/compare (compare_three_way): Fix constraint so that
   6631  1.1  mrg 	BUILTIN-PTR-THREE-WAY does not require three_way_comparable_with.
   6632  1.1  mrg 	* testsuite/18_support/comparisons/object/builtin-ptr-three-way.cc:
   6633  1.1  mrg 	New test.
   6634  1.1  mrg 
   6635  1.1  mrg 	PR libstdc++/94562
   6636  1.1  mrg 	* include/bits/shared_ptr.h (operator<=>): Define for C++20.
   6637  1.1  mrg 	* include/bits/shared_ptr_base.h (operator<=>): Likewise.
   6638  1.1  mrg 	* include/bits/unique_ptr.h (operator<=>): Add inline specifier.
   6639  1.1  mrg 	* testsuite/20_util/shared_ptr/comparison/cmp_c++20.cc: New test.
   6640  1.1  mrg 	* testsuite/20_util/shared_ptr/comparison/less.cc: Do not expect
   6641  1.1  mrg 	std::less<A*> to be used when comparing std::shared_ptr<A> objects in
   6642  1.1  mrg 	C++20.
   6643  1.1  mrg 
   6644  1.1  mrg 	PR libstdc++/94565
   6645  1.1  mrg 	* libsupc++/compare (__unspec): Add noexcept-specifier to constructor.
   6646  1.1  mrg 	* testsuite/18_support/comparisons/categories/94565.cc: New test.
   6647  1.1  mrg 
   6648  1.1  mrg 2020-04-13  Iain Sandoe  <iain (a] sandoe.co.uk>
   6649  1.1  mrg 
   6650  1.1  mrg 	* include/std/coroutine: Update coroutines builtin define,
   6651  1.1  mrg 	per n4861.
   6652  1.1  mrg 
   6653  1.1  mrg 2020-04-09  Jonathan Wakely  <jwakely (a] redhat.com>
   6654  1.1  mrg 
   6655  1.1  mrg 	* libsupc++/compare (compare_three_way): Fix noexcept-specifier.
   6656  1.1  mrg 	(strong_order, weak_order, partial_order): Replace uses of <=> with
   6657  1.1  mrg 	compare_three_way function object (LWG 3324).
   6658  1.1  mrg 	* testsuite/18_support/comparisons/algorithms/partial_order.cc: Add
   6659  1.1  mrg 	equality operator so that X satisfies three_way_comparable.
   6660  1.1  mrg 	* testsuite/18_support/comparisons/algorithms/strong_order.cc:
   6661  1.1  mrg 	Likewise.
   6662  1.1  mrg 	* testsuite/18_support/comparisons/algorithms/weak_order.cc: Likewise.
   6663  1.1  mrg 
   6664  1.1  mrg 	* include/bits/unique_ptr.h (operator<=>): Define for C++20.
   6665  1.1  mrg 	* testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line.
   6666  1.1  mrg 	* testsuite/20_util/default_delete/void_neg.cc: Likewise.
   6667  1.1  mrg 	* testsuite/20_util/unique_ptr/comparison/compare.cc: New test.
   6668  1.1  mrg 	* testsuite/20_util/unique_ptr/comparison/compare_c++20.cc: New test.
   6669  1.1  mrg 
   6670  1.1  mrg 2020-04-08  Jonathan Wakely  <jwakely (a] redhat.com>
   6671  1.1  mrg 
   6672  1.1  mrg 	* include/bits/slice_array.h (operator==(const slice&, const slice&)):
   6673  1.1  mrg 	Define for C++20.
   6674  1.1  mrg 	* include/std/complex (operator==(const T&, const complex<T>&))
   6675  1.1  mrg 	(operator!=(const complex<T>&, const complex<T>&))
   6676  1.1  mrg 	(operator!=(const complex<T>&, const T&))
   6677  1.1  mrg 	(operator!=(const T&, const complex<T>&)): Do not declare for C++20.
   6678  1.1  mrg 	* testsuite/26_numerics/slice/compare.cc: New test.
   6679  1.1  mrg 
   6680  1.1  mrg 	* include/std/charconv (to_chars_result, from_chars_result): Add
   6681  1.1  mrg 	defaulted equality comparisons for C++20.
   6682  1.1  mrg 	* testsuite/20_util/from_chars/compare.cc: New test.
   6683  1.1  mrg 	* testsuite/20_util/to_chars/compare.cc: New test.
   6684  1.1  mrg 
   6685  1.1  mrg 2020-04-07  Jonathan Wakely  <jwakely (a] redhat.com>
   6686  1.1  mrg 
   6687  1.1  mrg 	PR libstdc++/94520
   6688  1.1  mrg 	* include/std/charconv (__integer_to_chars_result_type)
   6689  1.1  mrg 	(__integer_from_chars_result_type): Use __or_ instead of __or_v_ to
   6690  1.1  mrg 	allow use in C++14.
   6691  1.1  mrg 	* testsuite/20_util/from_chars/1.cc: Run test as C++14 and replace
   6692  1.1  mrg 	use of std::string_view with std::string.
   6693  1.1  mrg 	* testsuite/20_util/from_chars/2.cc: Likewise.
   6694  1.1  mrg 	* testsuite/20_util/to_chars/1.cc: Likewise.
   6695  1.1  mrg 	* testsuite/20_util/to_chars/2.cc: Likewise.
   6696  1.1  mrg 
   6697  1.1  mrg 2020-04-06  Jonathan Wakely  <jwakely (a] redhat.com>
   6698  1.1  mrg 
   6699  1.1  mrg 	PR libstdc++/94498
   6700  1.1  mrg 	* include/bits/char_traits.h (__gnu_cxx::char_traits::move): Make it
   6701  1.1  mrg 	usable in constant expressions for C++20.
   6702  1.1  mrg 	(__gnu_cxx::char_traits::copy, __gnu_cxx::char_traits::assign): Add
   6703  1.1  mrg 	_GLIBCXX20_CONSTEXPR.
   6704  1.1  mrg 	(std::char_traits<char>, std::char_traits<wchar_t>)
   6705  1.1  mrg 	(std::char_traits<char8_t>): Make move, copy and assign usable in
   6706  1.1  mrg 	constant expressions for C++20.
   6707  1.1  mrg 	(std::char_traits<char16_t>, std::char_traits<char32_t>): Make move
   6708  1.1  mrg 	and copy usable in constant expressions for C++20.
   6709  1.1  mrg 	* include/std/string_view (basic_string_view::copy): Add
   6710  1.1  mrg 	_GLIBCXX20_CONSTEXPR.
   6711  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/copy/char/
   6712  1.1  mrg 	constexpr.cc: New test.
   6713  1.1  mrg 	* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/
   6714  1.1  mrg 	constexpr.cc: New test.
   6715  1.1  mrg 
   6716  1.1  mrg 2020-04-05  Gerald Pfeifer  <gerald (a] pfeifer.com>
   6717  1.1  mrg 
   6718  1.1  mrg 	* doc/xml/manual/appendix_contributing.xml: Refer to Git
   6719  1.1  mrg 	documentation instead of Subversion.  Switch to https.
   6720  1.1  mrg 	* doc/html/manual/appendix_contributing.html: Regenerate.
   6721  1.1  mrg 
   6722  1.1  mrg 2020-04-03  Jonathan Wakely  <jwakely (a] redhat.com>
   6723  1.1  mrg 
   6724  1.1  mrg 	PR libstdc++/93960
   6725  1.1  mrg 	* include/bits/ptr_traits.h (__to_address): Add special case for debug
   6726  1.1  mrg 	iterators, to avoid dereferenceable check.
   6727  1.1  mrg 	* testsuite/20_util/to_address/1_neg.cc: Adjust dg-error line number.
   6728  1.1  mrg 	* testsuite/20_util/to_address/debug.cc: New test.
   6729  1.1  mrg 
   6730  1.1  mrg 2020-04-01  Andrea Corallo  <andrea.corallo (a] arm.com>
   6731  1.1  mrg 
   6732  1.1  mrg 	* testsuite/experimental/net/execution_context/use_service.cc:
   6733  1.1  mrg 	Require pthread and gthreads.
   6734  1.1  mrg 
   6735  1.1  mrg 2020-04-01  Gerald Pfeifer  <gerald (a] pfeifer.com>
   6736  1.1  mrg 
   6737  1.1  mrg 	* doc/xml/manual/appendix_free.xml: Move "free books" list from
   6738  1.1  mrg 	fsf.org to gnu.org.
   6739  1.1  mrg 	* doc/html/manual/appendix_free.html: Regenerate.
   6740  1.1  mrg 
   6741  1.1  mrg 2020-03-31  Ville Voutilainen  <ville.voutilainen (a] gmail.com>
   6742  1.1  mrg 
   6743  1.1  mrg 	Library-side tests for parenthesized aggregate init
   6744  1.1  mrg 
   6745  1.1  mrg 	PR c++/92878
   6746  1.1  mrg 	PR c++/92947
   6747  1.1  mrg 
   6748  1.1  mrg 	* testsuite/20_util/allocator_traits/members/92878_92947.cc: New.
   6749  1.1  mrg 	* testsuite/20_util/any/assign/92878_92947.cc: Likewise.
   6750  1.1  mrg 	* testsuite/20_util/any/cons/92878_92947.cc: Likewise.
   6751  1.1  mrg 	* testsuite/20_util/is_constructible/92878_92947.cc: Likewise.
   6752  1.1  mrg 	* testsuite/20_util/optional/assignment/92878_92947.cc: Likewise.
   6753  1.1  mrg 	* testsuite/20_util/optional/cons/92878_92947.cc: Likewise.
   6754  1.1  mrg 	* testsuite/20_util/pair/cons/92878_92947.cc: Likewise.
   6755  1.1  mrg 	* testsuite/20_util/shared_ptr/creation/92878_92947.cc: Likewise.
   6756  1.1  mrg 	* testsuite/20_util/specialized_algorithms/construct_at/92878_92947.cc:
   6757  1.1  mrg 	Likewise.
   6758  1.1  mrg 	* testsuite/20_util/unique_ptr/creation/92878_92947.cc: Likewise.
   6759  1.1  mrg 	* testsuite/20_util/uses_allocator/92878_92947.cc: Likewise.
   6760  1.1  mrg 	* testsuite/20_util/variant/92878_92947.cc: Likewise.
   6761  1.1  mrg 	* testsuite/23_containers/deque/modifiers/emplace/92878_92947.cc:
   6762  1.1  mrg 	Likewise.
   6763  1.1  mrg 	* testsuite/23_containers/forward_list/modifiers/92878_92947.cc:
   6764  1.1  mrg 	Likewise.
   6765  1.1  mrg 	* testsuite/23_containers/list/modifiers/emplace/92878_92947.cc:
   6766  1.1  mrg 	Likewise.
   6767  1.1  mrg 	* testsuite/23_containers/map/modifiers/emplace/92878_92947.cc:
   6768  1.1  mrg 	Likewise.
   6769  1.1  mrg 	* testsuite/23_containers/multimap/modifiers/emplace/92878_92947.cc:
   6770  1.1  mrg 	Likewise.
   6771  1.1  mrg 	* testsuite/23_containers/multiset/modifiers/emplace/92878_92947.cc:
   6772  1.1  mrg 	Likewise.
   6773  1.1  mrg 	* testsuite/23_containers/priority_queue/92878_92947.cc: Likewise.
   6774  1.1  mrg 	* testsuite/23_containers/queue/92878_92947.cc: Likewise.
   6775  1.1  mrg 	* testsuite/23_containers/set/modifiers/emplace/92878_92947.cc:
   6776  1.1  mrg 	Likewise.
   6777  1.1  mrg 	* testsuite/23_containers/stack/92878_92947.cc: Likewise.
   6778  1.1  mrg 	* testsuite/23_containers/unordered_map/modifiers/92878_92947.cc:
   6779  1.1  mrg 	Likewise.
   6780  1.1  mrg 	* testsuite/23_containers/unordered_multimap/modifiers/92878_92947.cc:
   6781  1.1  mrg 	Likewise.
   6782  1.1  mrg 	* testsuite/23_containers/unordered_multiset/modifiers/92878_92947.cc:
   6783  1.1  mrg 	Likewise.
   6784  1.1  mrg 	* testsuite/23_containers/unordered_set/modifiers/92878_92947.cc:
   6785  1.1  mrg 	Likewise.
   6786  1.1  mrg 	* testsuite/23_containers/vector/modifiers/emplace/92878_92947.cc:
   6787  1.1  mrg 	Likewise.
   6788  1.1  mrg 
   6789  1.1  mrg 2020-03-28  Jonathan Wakely  <jwakely (a] redhat.com>
   6790  1.1  mrg 
   6791  1.1  mrg 	* testsuite/20_util/is_constructible/value-2.cc: Fix test to account
   6792  1.1  mrg 	for changes due to parenthesized aggregate-initialization in C++20.
   6793  1.1  mrg 	* testsuite/20_util/time_point/cons/81468.cc: Fix test to not clash
   6794  1.1  mrg 	with std::chrono::sys_time in C++20.
   6795  1.1  mrg 
   6796  1.1  mrg 	* include/bits/stl_iterator.h (reverse_iterator): Use requires-clause
   6797  1.1  mrg 	to constrain C++20 versions of comparison operators. Fix backwards
   6798  1.1  mrg 	logic of relational operators.
   6799  1.1  mrg 	(move_iterator): Use requires-clause to constrain comparison operators
   6800  1.1  mrg 	in C++20. Do not declare non-standard same-type overloads for C++20.
   6801  1.1  mrg 	* testsuite/24_iterators/move_iterator/rel_ops_c++20.cc: Check result
   6802  1.1  mrg 	of comparisons and check using greedy_ops type.
   6803  1.1  mrg 	* testsuite/24_iterators/reverse_iterator/rel_ops_c++20.cc: Likewise.
   6804  1.1  mrg 	* testsuite/24_iterators/move_iterator/greedy_ops.cc: Remove redundant
   6805  1.1  mrg 	main function from compile-only test.
   6806  1.1  mrg 	* testsuite/24_iterators/reverse_iterator/greedy_ops.cc: Likewise.
   6807  1.1  mrg 
   6808  1.1  mrg 2020-03-27  Jonathan Wakely  <jwakely (a] redhat.com>
   6809  1.1  mrg 
   6810  1.1  mrg 	* include/bits/range_cmp.h (__cpp_lib_ranges): Define.
   6811  1.1  mrg 	* include/bits/stl_iterator.h: Check value of __cpp_concepts so that
   6812  1.1  mrg 	C++20 concepts are required.
   6813  1.1  mrg 	* include/bits/stl_iterator_base_types.h: Likewise.
   6814  1.1  mrg 	* include/std/concepts: Likewise.
   6815  1.1  mrg 	* include/std/version: Likewise.
   6816  1.1  mrg 	* testsuite/std/ranges/headers/ranges/synopsis.cc: Check feature test
   6817  1.1  mrg 	macro.
   6818  1.1  mrg 
   6819  1.1  mrg 	* include/bits/stl_iterator.h (reverse_iterator::iterator_concept)
   6820  1.1  mrg 	(reverse_iterator::iterator_category): Define for C++20.
   6821  1.1  mrg 	(reverse_iterator): Define comparison operators correctly for C++20.
   6822  1.1  mrg 	(__normal_iterator): Add constraints to comparison operators for C++20.
   6823  1.1  mrg 	(move_iterator::operator++(int)) [__cpp_lib_concepts]: Define new
   6824  1.1  mrg 	overload for input iterators.
   6825  1.1  mrg 	(move_iterator): Add constraints to comparison operators for C++20.
   6826  1.1  mrg 	Define operator<=> for C++20.
   6827  1.1  mrg 	* testsuite/24_iterators/move_iterator/input_iterator.cc: New test.
   6828  1.1  mrg 	* testsuite/24_iterators/move_iterator/move_only.cc: New test.
   6829  1.1  mrg 	* testsuite/24_iterators/move_iterator/rel_ops_c++20.cc: New test.
   6830  1.1  mrg 	* testsuite/24_iterators/reverse_iterator/rel_ops_c++20.cc: New test.
   6831  1.1  mrg 
   6832  1.1  mrg 	* include/bits/iterator_concepts.h (__detail::__decay_copy)
   6833  1.1  mrg 	(__detail::__member_begin, __detail::__adl_begin): Move here from
   6834  1.1  mrg 	<bits/range_access.h>.
   6835  1.1  mrg 	(__detail::__ranges_begin, __detail::__range_iter_t): Define.
   6836  1.1  mrg 	* bits/range_access.h (__cust_access::__decay_copy)
   6837  1.1  mrg 	(__cust_access::__member_begin, __cust_access::__adl_begin): Move to
   6838  1.1  mrg 	<bits/iterator_concepts.h>.
   6839  1.1  mrg 	(ranges::iterator_t): Use __detail::__range_iter_t.
   6840  1.1  mrg 	* include/bits/stl_iterator.h (back_insert_iterator): Simplify
   6841  1.1  mrg 	conditional compilation. Add _GLIBCXX20_CONSTEXPR to all members.
   6842  1.1  mrg 	(front_insert_iterator): Likewise.
   6843  1.1  mrg 	(insert_iterator): Implement changes from P0896R4 for C++20.
   6844  1.1  mrg 	* testsuite/24_iterators/back_insert_iterator/constexpr.cc: New test.
   6845  1.1  mrg 	* testsuite/24_iterators/front_insert_iterator/constexpr.cc: New test.
   6846  1.1  mrg 	* testsuite/24_iterators/headers/iterator/synopsis_c++17.cc: Adjust
   6847  1.1  mrg 	for inclusion in synopsis_c++20.cc which expects different signatures
   6848  1.1  mrg 	for some function templates.
   6849  1.1  mrg 	* testsuite/24_iterators/insert_iterator/constexpr.cc: New test.
   6850  1.1  mrg 
   6851  1.1  mrg 	* include/std/type_traits (__is_array_convertible): Move definition
   6852  1.1  mrg 	to immediately after is_convertible.
   6853  1.1  mrg 
   6854  1.1  mrg 2020-03-26  Jonathan Wakely  <jwakely (a] redhat.com>
   6855  1.1  mrg 
   6856  1.1  mrg 	* include/std/chrono (chrono::days, chrono::weeks, chrono::years)
   6857  1.1  mrg 	(chrono::months, chrono::sys_days, chrono::local_t)
   6858  1.1  mrg 	(chrono::local_time, chrono::local_seconds, chrono::local_days):
   6859  1.1  mrg 	Define for C++20.
   6860  1.1  mrg 	(chrono::time_point): Add missing static assert.
   6861  1.1  mrg 	* testsuite/20_util/time_point/requirements/duration_neg.cc: New test.
   6862  1.1  mrg 	* testsuite/std/time/clock/file/overview.cc: New test.
   6863  1.1  mrg 	* testsuite/std/time/clock/file/members.cc: New test.
   6864  1.1  mrg 	* testsuite/std/time/syn_c++20.cc: New test.
   6865  1.1  mrg 
   6866  1.1  mrg 2020-03-25  Mike Crowe  <mac (a] mcrowe.com>
   6867  1.1  mrg 
   6868  1.1  mrg 	* testsuite/30_threads/shared_timed_mutex/try_lock_until/1.cc: New
   6869  1.1  mrg 	test.
   6870  1.1  mrg 	* testsuite/30_threads/shared_timed_mutex/try_lock_until/2.cc: New
   6871  1.1  mrg 	test.
   6872  1.1  mrg 
   6873  1.1  mrg 2020-03-25  Jonathan Wakely  <jwakely (a] redhat.com>
   6874  1.1  mrg 
   6875  1.1  mrg 	* include/bits/fs_fwd.h (filesystem::__file_clock): Move to ...
   6876  1.1  mrg 	* include/std/chrono (filesystem::__file_clock): Here.
   6877  1.1  mrg 	(filesystem::__file_clock::from_sys, filesystem::__file_clock::to_sys):
   6878  1.1  mrg 	Define public member functions for C++20.
   6879  1.1  mrg 	(is_clock, is_clock_v): Define traits for C++20.
   6880  1.1  mrg 	* include/std/condition_variable (condition_variable::wait_until): Add
   6881  1.1  mrg 	check for valid clock.
   6882  1.1  mrg 	* include/std/future (_State_baseV2::wait_until): Likewise.
   6883  1.1  mrg 	* include/std/mutex (__timed_mutex_impl::_M_try_lock_until): Likewise.
   6884  1.1  mrg 	* include/std/shared_mutex (shared_timed_mutex::try_lock_shared_until):
   6885  1.1  mrg 	Likewise.
   6886  1.1  mrg 	* include/std/thread (this_thread::sleep_until): Likewise.
   6887  1.1  mrg 	* testsuite/30_threads/condition_variable/members/2.cc: Qualify
   6888  1.1  mrg 	slow_clock with new namespace.
   6889  1.1  mrg 	* testsuite/30_threads/condition_variable/members/clock_neg.cc: New
   6890  1.1  mrg 	test.
   6891  1.1  mrg 	* testsuite/30_threads/condition_variable_any/members/clock_neg.cc:
   6892  1.1  mrg 	New test.
   6893  1.1  mrg 	* testsuite/30_threads/future/members/clock_neg.cc: New test.
   6894  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/3.cc:
   6895  1.1  mrg 	Qualify slow_clock with new namespace.
   6896  1.1  mrg 	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/
   6897  1.1  mrg 	clock_neg.cc: New test.
   6898  1.1  mrg 	* testsuite/30_threads/shared_future/members/clock_neg.cc: New
   6899  1.1  mrg 	test.
   6900  1.1  mrg 	* testsuite/30_threads/shared_lock/locking/clock_neg.cc: New test.
   6901  1.1  mrg 	* testsuite/30_threads/shared_timed_mutex/try_lock_until/clock_neg.cc:
   6902  1.1  mrg 	New test.
   6903  1.1  mrg 	* testsuite/30_threads/timed_mutex/try_lock_until/3.cc: Qualify
   6904  1.1  mrg 	slow_clock with new namespace.
   6905  1.1  mrg 	* testsuite/30_threads/timed_mutex/try_lock_until/4.cc: Likewise.
   6906  1.1  mrg 	* testsuite/30_threads/timed_mutex/try_lock_until/clock_neg.cc: New
   6907  1.1  mrg 	test.
   6908  1.1  mrg 	* testsuite/30_threads/unique_lock/locking/clock_neg.cc: New test.
   6909  1.1  mrg 	* testsuite/std/time/traits/is_clock.cc: New test.
   6910  1.1  mrg 	* testsuite/util/slow_clock.h (slow_clock): Move to __gnu_test
   6911  1.1  mrg 	namespace.
   6912  1.1  mrg 
   6913  1.1  mrg 2020-03-21  Jonathan Wakely  <jwakely (a] redhat.com>
   6914  1.1  mrg 
   6915  1.1  mrg 	PR libstdc++/93245
   6916  1.1  mrg 	* include/experimental/bits/fs_path.h (path::generic_string<C,T,A>()):
   6917  1.1  mrg 	* testsuite/experimental/filesystem/path/generic/generic_string.cc:
   6918  1.1  mrg 	Improve test coverage.
   6919  1.1  mrg 
   6920  1.1  mrg 	PR libstdc++/94242
   6921  1.1  mrg 	* include/bits/fs_path.h (path::_S_str_convert): Replace first
   6922  1.1  mrg 	parameter with basic_string_view so that strings with different
   6923  1.1  mrg 	allocators can be accepted.
   6924  1.1  mrg 	(path::generic_string<C,T,A>()): Use basic_string object that uses the
   6925  1.1  mrg 	right allocator type.
   6926  1.1  mrg 	* testsuite/27_io/filesystem/path/generic/94242.cc: New test.
   6927  1.1  mrg 	* testsuite/27_io/filesystem/path/generic/generic_string.cc: Improve
   6928  1.1  mrg 	test coverage.
   6929  1.1  mrg 
   6930  1.1  mrg 2020-03-18  Jonathan Wakely  <jwakely (a] redhat.com>
   6931  1.1  mrg 
   6932  1.1  mrg 	PR libstdc++/94033
   6933  1.1  mrg 	* include/std/type_traits (__is_nt_default_constructible_atom): Remove.
   6934  1.1  mrg 	(__is_nt_default_constructible_impl): Remove.
   6935  1.1  mrg 	(__is_nothrow_default_constructible_impl): Remove.
   6936  1.1  mrg 	(__is_nt_constructible_impl): Add bool template parameter. Adjust
   6937  1.1  mrg 	partial specializations.
   6938  1.1  mrg 	(__is_nothrow_constructible_impl): Replace class template with alias
   6939  1.1  mrg 	template.
   6940  1.1  mrg 	(is_nothrow_default_constructible): Derive from alias template
   6941  1.1  mrg 	__is_nothrow_constructible_impl instead of
   6942  1.1  mrg 	__is_nothrow_default_constructible_impl.
   6943  1.1  mrg 	* testsuite/20_util/is_nothrow_constructible/94003.cc: New test.
   6944  1.1  mrg 
   6945  1.1  mrg 	* include/std/stop_token (stop_token::_Stop_state_ref): Define
   6946  1.1  mrg 	comparison operators explicitly if the compiler won't synthesize them.
   6947  1.1  mrg 
   6948  1.1  mrg 	* include/bits/stl_algobase.h (__lexicographical_compare_aux): Check
   6949  1.1  mrg 	__cpp_lib_concepts before using iter_reference_t.
   6950  1.1  mrg 	* include/bits/stream_iterator.h (istream_iterator): Check
   6951  1.1  mrg 	__cpp_lib_concepts before using default_sentinel_t.
   6952  1.1  mrg 	* include/bits/streambuf_iterator.h (istreambuf_iterator): Likewise.
   6953  1.1  mrg 
   6954  1.1  mrg 	PR libstdc++/94203
   6955  1.1  mrg 	* include/experimental/executor (executor::executor(Executor)): Call
   6956  1.1  mrg 	make_shared directly instead of _M_create. Create _Tgt1 object.
   6957  1.1  mrg 	(executor::executor(allocator_arg_t, const ProtoAlloc&, Executor)):
   6958  1.1  mrg 	Call allocate_shared directly instead of _M_create. Create _Tgt2
   6959  1.1  mrg 	object.
   6960  1.1  mrg 	(executor::target_type): Add cast needed for new _Tgt interface.
   6961  1.1  mrg 	(executor::target): Define when RTTI is disabled. Use _Tgt::_M_func.
   6962  1.1  mrg 	(executor::_Tgt): Define the same interface whether RTTI is enabled or
   6963  1.1  mrg 	not.
   6964  1.1  mrg 	(executor::_Tgt::target_type, executor::_Tgt::target): Do not use
   6965  1.1  mrg 	std::type_info in the interface.
   6966  1.1  mrg 	(executor::_Tgt::_M_func): Add data member.
   6967  1.1  mrg 	(executor::_TgtImpl): Replace with _Tgt1 and _Tgt2 class templates.
   6968  1.1  mrg 	(executor::_Tgt1::_S_func): Define function to access target without
   6969  1.1  mrg 	depending on RTTI.
   6970  1.1  mrg 	(executor::_M_create): Remove.
   6971  1.1  mrg 	(operator==, operator!=): Simplify comparisons for executor.
   6972  1.1  mrg 	* include/experimental/socket (is_error_code_enum<socket_errc>):
   6973  1.1  mrg 	Define specialization before use.
   6974  1.1  mrg 	* testsuite/experimental/net/executor/1.cc: New test.
   6975  1.1  mrg 
   6976  1.1  mrg 2020-03-16  Jonathan Wakely  <jwakely (a] redhat.com>
   6977  1.1  mrg 
   6978  1.1  mrg 	PR libstdc++/94199
   6979  1.1  mrg 	* include/experimental/executor (service_already_exists): Add default
   6980  1.1  mrg 	constructor. Declare make_service to be a friend.
   6981  1.1  mrg 	* testsuite/experimental/net/execution_context/make_service.cc: New
   6982  1.1  mrg 	test.
   6983  1.1  mrg 
   6984  1.1  mrg 2020-03-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6985  1.1  mrg 
   6986  1.1  mrg 	* testsuite/tr1/8_c_compatibility/cstdlib/functions.cc: Do not pass
   6987  1.1  mrg 	a null pointer to functions with nonnull(1) attribute.
   6988  1.1  mrg 
   6989  1.1  mrg 2020-03-11  Patrick Palka  <ppalka (a] redhat.com>
   6990  1.1  mrg 
   6991  1.1  mrg 	* include/std/ranges (split_view::_OuterIter::_OuterIter): Typo fix,
   6992  1.1  mrg 	'address' -> 'std::__addressof'.
   6993  1.1  mrg 	* testsuite/std/ranges/adaptors/split.cc: Test taking the split_view of
   6994  1.1  mrg 	a non-forward input_range.
   6995  1.1  mrg 	* testsuite/util/testsuite_iterators.h (output_iterator_wrapper): Make
   6996  1.1  mrg 	default constructor protected instead of deleted, like with
   6997  1.1  mrg 	input_iterator_wrapper.
   6998  1.1  mrg 	(test_range::iterator): Add comment explaining that this type is used
   6999  1.1  mrg 	only when the underlying wrapper is input_iterator_wrapper or
   7000  1.1  mrg 	output_iterator_wrapper.  Remove delegating defaulted constructor so
   7001  1.1  mrg 	that the inherited default constructor is used instead.
   7002  1.1  mrg 
   7003  1.1  mrg 	LWG 3286 ranges::size is not required to be valid after a call to
   7004  1.1  mrg 	ranges::begin on an input range
   7005  1.1  mrg 	* include/std/ranges (subrange::subrange): Split single-argument
   7006  1.1  mrg 	constructor into two, one constrained by _S_store_size and another by
   7007  1.1  mrg 	!_S_store_size.
   7008  1.1  mrg 	(take_view::begin): Call size() before calling ranges::begin(_M_base).
   7009  1.1  mrg 	* testsuite/std/ranges/adaptors/lwg3286.cc: New test.
   7010  1.1  mrg 	* testsuite/std/ranges/subrange/lwg3286.cc: New test.
   7011  1.1  mrg 
   7012  1.1  mrg 2020-03-10  Jonathan Wakely  <jwakely (a] redhat.com>
   7013  1.1  mrg 
   7014  1.1  mrg 	* include/std/ranges (split_view::_OuterIter::__at_end): Use __current
   7015  1.1  mrg 	instead of _M_current.
   7016  1.1  mrg 	(split_view::_OuterIter::operator++): Likewise.
   7017  1.1  mrg 
   7018  1.1  mrg 	* include/std/ranges (transform_view::_Iterator::__iter_move): Remove.
   7019  1.1  mrg 	(transform_view::_Iterator::operator*): Add noexcept-specifier.
   7020  1.1  mrg 	(transform_view::_Iterator::iter_move): Inline __iter_move body here.
   7021  1.1  mrg 	(split_view::_OuterIter::__current): Add noexcept.
   7022  1.1  mrg 	(split_view::_InnerIter::__iter_swap): Remove.
   7023  1.1  mrg 	(split_view::_InnerIter::__iter_move): Remove.
   7024  1.1  mrg 	(split_view::_InnerIter::_M_i_current): New accessors.
   7025  1.1  mrg 	(split_view::_InnerIter::__at_end): Use _M_i_current().
   7026  1.1  mrg 	(split_view::_InnerIter::operator*): Likewise.
   7027  1.1  mrg 	(split_view::_InnerIter::operator++): Likewise.
   7028  1.1  mrg 	(iter_move(const _InnerIter&)): Likewise.
   7029  1.1  mrg 	(iter_swap(const _InnerIter&, const _InnerIter&)): Likewise.
   7030  1.1  mrg 	* testsuite/std/ranges/adaptors/split.cc: Check noexcept-specifier
   7031  1.1  mrg 	for iter_move and iter_swap on split_view's inner iterator.
   7032  1.1  mrg 
   7033  1.1  mrg 	PR c++/94117
   7034  1.1  mrg 	* include/std/ranges (ranges::transform_view::_Iterator::iter_move):
   7035  1.1  mrg 	Change expression in noexcept-specifier to match function body.
   7036  1.1  mrg 
   7037  1.1  mrg 	* testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Add
   7038  1.1  mrg 	comment explaining multiple dg-do directives.
   7039  1.1  mrg 	* testsuite/24_iterators/ostream_iterator/1.cc: Fix do-do directive
   7040  1.1  mrg 	so test is run as well as compiled.
   7041  1.1  mrg 
   7042  1.1  mrg 2020-03-09  Jonathan Wakely  <jwakely (a] redhat.com>
   7043  1.1  mrg 
   7044  1.1  mrg 	PR libstdc++/94063
   7045  1.1  mrg 	* src/c++17/fs_path.cc (path::operator+=(const path&)): Add kluge to
   7046  1.1  mrg 	handle concatenations that change the type of the first component.
   7047  1.1  mrg 	(path::operator+=(basic_string_view<value_type>)): Likewise.
   7048  1.1  mrg 	* testsuite/27_io/filesystem/path/concat/94063.cc: New test.
   7049  1.1  mrg 
   7050  1.1  mrg 2020-03-06  Patrick Palka  <ppalka (a] redhat.com>
   7051  1.1  mrg 
   7052  1.1  mrg 	* include/std/ranges (join_view::_Sentinel<_Const>): Befriend
   7053  1.1  mrg 	join_view::_Sentinel<!_Const>.
   7054  1.1  mrg 	* testsuite/std/ranges/adaptors/join.cc: Augment test.
   7055  1.1  mrg 
   7056  1.1  mrg 	PR libstdc++/93978
   7057  1.1  mrg 	* include/bits/range_access.h (__cust_access::_Empty::operator()):
   7058  1.1  mrg 	Declare return type to be bool instead of auto.
   7059  1.1  mrg 	* testsuite/std/ranges/adaptors/93978.cc: New test.
   7060  1.1  mrg 
   7061  1.1  mrg 2020-03-06  Jonathan Wakely  <jwakely (a] redhat.com>
   7062  1.1  mrg 
   7063  1.1  mrg 	PR libstdc++/94069
   7064  1.1  mrg 	* include/std/shared_mutex [!PTHREAD_RWLOCK_INITIALIZER]
   7065  1.1  mrg 	(__shared_mutex_pthread::__shared_mutex_pthread()): Remove incorrect
   7066  1.1  mrg 	second argument to __glibcxx_rwlock_init.
   7067  1.1  mrg 	* testsuite/30_threads/shared_timed_mutex/94069.cc: New test.
   7068  1.1  mrg 
   7069  1.1  mrg 	PR libstdc++/93244
   7070  1.1  mrg 	* testsuite/27_io/filesystem/path/generic/generic_string.cc: Adjust
   7071  1.1  mrg 	test to not fail due to PR 94063.
   7072  1.1  mrg 	* testsuite/27_io/filesystem/path/generic/utf.cc: Likewise.
   7073  1.1  mrg 	* testsuite/27_io/filesystem/path/generic/wchar_t.cc: Likewise.
   7074  1.1  mrg 
   7075  1.1  mrg 2020-03-06  Andreas Krebbel  <krebbel (a] linux.ibm.com>
   7076  1.1  mrg 
   7077  1.1  mrg 	* src/c++11/system_error.cc: Omit the ENOTSUP case statement if it
   7078  1.1  mrg 	would match ENOSYS.
   7079  1.1  mrg 
   7080  1.1  mrg 2020-03-05  Jonathan Wakely  <jwakely (a] redhat.com>
   7081  1.1  mrg 
   7082  1.1  mrg 	* testsuite/27_io/filesystem/operations/all.cc: Mark unused variable.
   7083  1.1  mrg 	* testsuite/27_io/filesystem/operations/copy.cc: Fix typo.
   7084  1.1  mrg 	* testsuite/experimental/filesystem/operations/copy.cc: Likewise.
   7085  1.1  mrg 	* testsuite/27_io/filesystem/operations/file_size.cc: Use correct type
   7086  1.1  mrg 	for return value, and in comparison.
   7087  1.1  mrg 	* testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
   7088  1.1  mrg 
   7089  1.1  mrg 	PR libstdc++/94051
   7090  1.1  mrg 	* include/std/string_view: Include <bits/ostream_insert.h>.
   7091  1.1  mrg 	* testsuite/21_strings/basic_string_view/inserters/94051.cc: New test.
   7092  1.1  mrg 
   7093  1.1  mrg 2020-03-04  Jonathan Wakely  <jwakely (a] redhat.com>
   7094  1.1  mrg 
   7095  1.1  mrg 	* include/bits/cpp_type_traits.h (__memcpyable): Fix comment.
   7096  1.1  mrg 
   7097  1.1  mrg 2020-03-04  Patrick Palka  <ppalka (a] redhat.com>
   7098  1.1  mrg 
   7099  1.1  mrg 	PR libstdc++/94017
   7100  1.1  mrg 	* include/bits/ranges_algobase.h (__fill_n_fn::operator()): Refine
   7101  1.1  mrg 	condition for when to use memset, making sure to additionally check that
   7102  1.1  mrg 	the output pointer's value type is a non-volatile byte type.  Instead of
   7103  1.1  mrg 	requiring that the fill type is a byte type, just require that it's an
   7104  1.1  mrg 	integral type.
   7105  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_fill/94017.cc:
   7106  1.1  mrg 	New test.
   7107  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_fill_n/94017.cc:
   7108  1.1  mrg 	New test.
   7109  1.1  mrg 	* testsuite/25_algorithms/fill/94013.cc: Uncomment part of test that was
   7110  1.1  mrg 	blocked by PR 94017.
   7111  1.1  mrg 	* testsuite/25_algorithms/fill/94017.cc: New test.
   7112  1.1  mrg 	* testsuite/25_algorithms/fill_n/94017.cc: New test.
   7113  1.1  mrg 
   7114  1.1  mrg 	LWG 3355 The memory algorithms should support move-only input iterators
   7115  1.1  mrg 	introduced by P1207
   7116  1.1  mrg 	* include/bits/ranges_uninitialized.h
   7117  1.1  mrg 	(__uninitialized_copy_fn::operator()): Use std::move to avoid attempting
   7118  1.1  mrg 	to copy __ifirst, which could be a move-only input iterator.  Use
   7119  1.1  mrg 	operator- instead of ranges::distance to compute distance from a sized
   7120  1.1  mrg 	sentinel.
   7121  1.1  mrg 	(__uninitialized_copy_n_fn::operator()): Likewise.
   7122  1.1  mrg 	(__uninitialized_move_fn::operator()): Likewise.
   7123  1.1  mrg 	(__uninitialized_move_n_fn::operator()): Likewise.
   7124  1.1  mrg 	(__uninitialized_destroy_fn::operator()): Use std::move to avoid
   7125  1.1  mrg 	attempting to copy __first.
   7126  1.1  mrg 	(__uninitialized_destroy_n_fn::operator()): Likewise.
   7127  1.1  mrg 	* testsuite/20_util/specialized_algorithms/destroy/constrained.cc:
   7128  1.1  mrg 	Augment test.
   7129  1.1  mrg 	* .../specialized_algorithms/uninitialized_copy/constrained.cc:
   7130  1.1  mrg 	Likewise.
   7131  1.1  mrg 	* .../specialized_algorithms/uninitialized_move/constrained.cc:
   7132  1.1  mrg 	Likewise.
   7133  1.1  mrg 
   7134  1.1  mrg 	* testsuite/util/testsuite_iterators.h (test_range::get_iterator): Make
   7135  1.1  mrg 	protected instead of private.
   7136  1.1  mrg 	(test_sized_range_sized_sent): New.
   7137  1.1  mrg 
   7138  1.1  mrg 	* testsuite/util/testsuite_iterators.h (input_iterator_wrapper_nocopy):
   7139  1.1  mrg 	New testsuite iterator.
   7140  1.1  mrg 	* testsuite/24_iterators/counted_iterator/lwg3389.cc: use it.
   7141  1.1  mrg 	* testsuite/24_iterators/move_iterator/lwg3390.cc: Likewise.
   7142  1.1  mrg 
   7143  1.1  mrg 	* include/bits/ranges_uninitialized.h
   7144  1.1  mrg 	(uninitialized_copy_fn::operator()): Pass a reference type as the first
   7145  1.1  mrg 	argument to is_nothrow_assignable_v.
   7146  1.1  mrg 	(uninitialized_copy_fn::operator()): Likewise.
   7147  1.1  mrg 	(uninitialized_move_fn::operator()): Likewise.  Return an in_out_result
   7148  1.1  mrg 	with the input iterator stripped of its move_iterator.
   7149  1.1  mrg 	(uninitialized_move_n_fn::operator()): Likewise.
   7150  1.1  mrg 	(uninitialized_fill_fn::operator()): Pass a reference type as the first
   7151  1.1  mrg 	argument to is_nothrow_assignable_v.
   7152  1.1  mrg 	(uninitialized_fill_n_fn::operator()): Likewise.
   7153  1.1  mrg 
   7154  1.1  mrg 2020-03-03  Jonathan Wakely  <jwakely (a] redhat.com>
   7155  1.1  mrg 
   7156  1.1  mrg 	PR libstdc++/94013
   7157  1.1  mrg 	* include/bits/cpp_type_traits.h (__memcpyable, __memcmpable): New
   7158  1.1  mrg 	traits to control when to use memmove and memcmp optimizations.
   7159  1.1  mrg 	(__is_nonvolatile_trivially_copyable): New helper trait.
   7160  1.1  mrg 	* include/bits/ranges_algo.h (__lexicographical_compare_fn): Do not
   7161  1.1  mrg 	use memcmp optimization with volatile data.
   7162  1.1  mrg 	* include/bits/ranges_algobase.h (__equal_fn): Use __memcmpable.
   7163  1.1  mrg 	(__copy_or_move, __copy_or_move_backward): Use __memcpyable.
   7164  1.1  mrg 	* include/bits/stl_algobase.h (__copy_move_a2): Use __memcpyable.
   7165  1.1  mrg 	(__copy_move_backward_a2): Likewise.
   7166  1.1  mrg 	(__equal_aux1): Use __memcmpable.
   7167  1.1  mrg 	(__lexicographical_compare_aux): Do not use memcmp optimization with
   7168  1.1  mrg 	volatile data.
   7169  1.1  mrg 	* testsuite/25_algorithms/copy/94013.cc: New test.
   7170  1.1  mrg 	* testsuite/25_algorithms/copy_backward/94013.cc: New test.
   7171  1.1  mrg 	* testsuite/25_algorithms/equal/94013.cc: New test.
   7172  1.1  mrg 	* testsuite/25_algorithms/fill/94013.cc: New test.
   7173  1.1  mrg 	* testsuite/25_algorithms/lexicographical_compare/94013.cc: New test.
   7174  1.1  mrg 	* testsuite/25_algorithms/move/94013.cc: New test.
   7175  1.1  mrg 	* testsuite/25_algorithms/move_backward/94013.cc: New test.
   7176  1.1  mrg 
   7177  1.1  mrg 	* include/bits/stl_algobase.h (lexicographical_compare_three_way):
   7178  1.1  mrg 	Avoid redundant iterator comparisons (LWG 3410).
   7179  1.1  mrg 
   7180  1.1  mrg 2020-03-02  Jonathan Wakely  <jwakely (a] redhat.com>
   7181  1.1  mrg 
   7182  1.1  mrg 	PR libstdc++/93972
   7183  1.1  mrg 	* include/bits/stl_algobase.h (__memcmp): Allow pointer types to
   7184  1.1  mrg 	differ.
   7185  1.1  mrg 	* testsuite/25_algorithms/lexicographical_compare/uchar.cc: New test.
   7186  1.1  mrg 
   7187  1.1  mrg 	* include/std/ranges (__detail::__maybe_empty_t): Rename to
   7188  1.1  mrg 	__maybe_present_t.
   7189  1.1  mrg 	(__adaptor::_RangeAdaptor, join_view, split_view): Use new name.
   7190  1.1  mrg 
   7191  1.1  mrg 	* include/bits/ranges_algo.h (shift_right): Add 'typename' to
   7192  1.1  mrg 	dependent type.
   7193  1.1  mrg 
   7194  1.1  mrg 2020-03-01  H.J. Lu  <hongjiu.lu (a] intel.com>
   7195  1.1  mrg 
   7196  1.1  mrg 	* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
   7197  1.1  mrg 
   7198  1.1  mrg 2020-02-29  John David Anglin  <danglin (a] gcc.gnu.org>
   7199  1.1  mrg 
   7200  1.1  mrg 	* testsuite/17_intro/headers/c++1998/charset.cc: Skip on *-*-hpux*.
   7201  1.1  mrg 	* testsuite/17_intro/headers/c++2011/charset.cc: Likewise.
   7202  1.1  mrg 	* testsuite/17_intro/headers/c++2014/charset.cc: Likewise.
   7203  1.1  mrg 	* testsuite/17_intro/headers/c++2017/charset.cc: Likewise.
   7204  1.1  mrg 	* testsuite/17_intro/headers/c++2020/charset.cc: Likewise.
   7205  1.1  mrg 
   7206  1.1  mrg 	* testsuite/30_threads/condition_variable_any/stop_token/wait_on.cc:
   7207  1.1  mrg 	Add libatomic option.
   7208  1.1  mrg 	* testsuite/30_threads/jthread/jthread.cc: Likewise.
   7209  1.1  mrg 
   7210  1.1  mrg 2020-02-29  Franois Dumont  <fdumont (a] gcc.gnu.org>
   7211  1.1  mrg 
   7212  1.1  mrg 	* include/bits/stl_algo.h
   7213  1.1  mrg 	(__find_if, __count_if, __is_permutation, std::is_permutation): Move...
   7214  1.1  mrg 	* include/bits/stl_algobase.h: ...here.
   7215  1.1  mrg 	* include/bits/hashtable_policy.h: Remove <bits/stl_algo.h> include.
   7216  1.1  mrg 
   7217  1.1  mrg 2020-02-29  John David Anglin  <danglin (a] gcc.gnu.org>
   7218  1.1  mrg 
   7219  1.1  mrg 	* testsuite/30_threads/stop_token/stop_callback.cc: Add libatomic
   7220  1.1  mrg 	option.
   7221  1.1  mrg 	* testsuite/30_threads/stop_token/stop_callback/deadlock-mt.cc:
   7222  1.1  mrg 	Likewise.
   7223  1.1  mrg 	* testsuite/30_threads/stop_token/stop_callback/deadlock.cc: Likewise.
   7224  1.1  mrg 	* testsuite/30_threads/stop_token/stop_callback/destroy.cc: Likewise.
   7225  1.1  mrg 	* testsuite/30_threads/stop_token/stop_callback/invoke.cc: Likewise.
   7226  1.1  mrg 	* testsuite/30_threads/stop_token/stop_source.cc: Likewise.
   7227  1.1  mrg 	* testsuite/30_threads/stop_token/stop_source/assign.cc: Likewise.
   7228  1.1  mrg 	* testsuite/30_threads/stop_token/stop_token.cc: Likewise.
   7229  1.1  mrg 	* testsuite/30_threads/stop_token/stop_token/stop_possible.cc:
   7230  1.1  mrg 	Likewise.
   7231  1.1  mrg 
   7232  1.1  mrg 	PR libstdc++/92906
   7233  1.1  mrg 	* config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
   7234  1.1  mrg 
   7235  1.1  mrg 2020-02-28  Patrick Palka  <ppalka (a] redhat.com>
   7236  1.1  mrg 
   7237  1.1  mrg 	PR libstdc++/93972
   7238  1.1  mrg 	* include/bits/ranges_algo.h (__lexicographical_compare_fn::operator()):
   7239  1.1  mrg 	Fix condition for when to use memcmp, making it consistent with the
   7240  1.1  mrg 	corresponding condition used in std::lexicographical_compare.
   7241  1.1  mrg 	* testsuite/25_algorithms/lexicographical_compare/93972.cc: New test.
   7242  1.1  mrg 
   7243  1.1  mrg 	* testsuite/26_numerics/headers/numeric/synopsis.cc: Add signatures for
   7244  1.1  mrg 	functions introduced in C++11, C++17 and C++2a.  Add 'constexpr' to
   7245  1.1  mrg 	existing signatures for C++2a.
   7246  1.1  mrg 
   7247  1.1  mrg 2020-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   7248  1.1  mrg 
   7249  1.1  mrg 	* testsuite/24_iterators/range_operations/advance_debug_neg.cc: Run
   7250  1.1  mrg 	test instead of just compiling it.
   7251  1.1  mrg 
   7252  1.1  mrg 2020-02-28  Patrick Palka  <ppalka (a] redhat.com>
   7253  1.1  mrg 
   7254  1.1  mrg 	* include/std/ranges (reverse_view::_S_needs_cached_begin): Set to false
   7255  1.1  mrg 	whenever the underlying range models common_range.
   7256  1.1  mrg 
   7257  1.1  mrg 	* include/std/ranges (__detail::_CachedPosition): New struct.
   7258  1.1  mrg 	(views::filter_view::_S_needs_cached_begin): New member variable.
   7259  1.1  mrg 	(views::filter_view::_M_cached_begin): New member variable.
   7260  1.1  mrg 	(views::filter_view::begin): Use _M_cached_begin to cache its
   7261  1.1  mrg 	result.
   7262  1.1  mrg 	(views::drop_view::_S_needs_cached_begin): New static member variable.
   7263  1.1  mrg 	(views::drop_view::_M_cached_begin): New member variable.
   7264  1.1  mrg 	(views::drop_view::begin): Use _M_cached_begin to cache its result
   7265  1.1  mrg 	when _S_needs_cached_begin.
   7266  1.1  mrg 	(views::drop_while_view::_M_cached_begin): New member variable.
   7267  1.1  mrg 	(views::drop_while_view::begin): Use _M_cached_begin to cache its
   7268  1.1  mrg 	result.
   7269  1.1  mrg 	(views::reverse_view::_S_needs_cached_begin): New static member
   7270  1.1  mrg 	variable.
   7271  1.1  mrg 	(views::reverse_view::_M_cached_begin): New member variable.
   7272  1.1  mrg 	(views::reverse_view::begin): Use _M_cached_begin to cache its result
   7273  1.1  mrg 	when _S_needs_cached_begin.
   7274  1.1  mrg 	* testsuite/std/ranges/adaptors/drop.cc: Augment test to check that
   7275  1.1  mrg 	drop_view::begin caches its result.
   7276  1.1  mrg 	* testsuite/std/ranges/adaptors/drop_while.cc: Augment test to check
   7277  1.1  mrg 	that drop_while_view::begin caches its result.
   7278  1.1  mrg 	* testsuite/std/ranges/adaptors/filter.cc: Augment test to check that
   7279  1.1  mrg 	filter_view::begin caches its result.
   7280  1.1  mrg 	* testsuite/std/ranges/adaptors/reverse.cc: Augment test to check that
   7281  1.1  mrg 	reverse_view::begin caches its result.
   7282  1.1  mrg 
   7283  1.1  mrg 2020-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   7284  1.1  mrg 
   7285  1.1  mrg 	* testsuite/27_io/filesystem/operations/last_write_time.cc: Fixes for
   7286  1.1  mrg 	filesystems that silently truncate timestamps.
   7287  1.1  mrg 	* testsuite/experimental/filesystem/operations/last_write_time.cc:
   7288  1.1  mrg 	Likewise.
   7289  1.1  mrg 
   7290  1.1  mrg 	* testsuite/21_strings/basic_string/cons/char/1.cc: Disable
   7291  1.1  mrg 	-Wstringop-overflow warnings.
   7292  1.1  mrg 
   7293  1.1  mrg 2020-02-27  Jonathan Wakely  <jwakely (a] redhat.com>
   7294  1.1  mrg 
   7295  1.1  mrg 	* testsuite/lib/libstdc++.exp (v3_target_compile): Add
   7296  1.1  mrg 	-fdiagnostics-urls=never to options.
   7297  1.1  mrg 
   7298  1.1  mrg 2020-02-27  Patrick Palka  <ppalka (a] redhat.com>
   7299  1.1  mrg 
   7300  1.1  mrg 	* include/std/ranges (transform_view::_Iterator<_Const>): Befriend
   7301  1.1  mrg 	_Iterator<!_Const>.
   7302  1.1  mrg 	(transform_view::_Sentinel<_Const>): Befriend _Sentinel<!_Const>.
   7303  1.1  mrg 	(take_view::_Sentinel<_Const>): Likewise.
   7304  1.1  mrg 	(take_while_view::_Sentinel<_Const>): Likewise.
   7305  1.1  mrg 	(split_view::_OuterIter<_Const>): Befriend _OuterIter<!_Const>.
   7306  1.1  mrg 	* testsuite/std/ranges/adaptors/split.cc: Augment test.
   7307  1.1  mrg 	* testsuite/std/ranges/adaptors/take.cc: Augment test.
   7308  1.1  mrg 	* testsuite/std/ranges/adaptors/take_while.cc: Augment test.
   7309  1.1  mrg 	* testsuite/std/ranges/adaptors/transform.cc: Augment test.
   7310  1.1  mrg 
   7311  1.1  mrg 	* testsuite/25_algorithms/copy/constrained.cc: Don't assume that the
   7312  1.1  mrg 	base() of a vector<>::iterator is a pointer.
   7313  1.1  mrg 	* testsuite/25_algorithms/copy_backward/constrained.cc: Likewise.
   7314  1.1  mrg 	* testsuite/25_algorithms/move/constrained.cc: Likewise.
   7315  1.1  mrg 	* testsuite/25_algorithms/move_backward/constrained.cc: Likewise.
   7316  1.1  mrg 	* testsuite/25_algorithms/inplace_merge/constrained.cc: Use foo.data()
   7317  1.1  mrg 	instead of &foo[0].
   7318  1.1  mrg 	* testsuite/25_algorithms/partial_sort/constrained.cc: Likewise.
   7319  1.1  mrg 	* testsuite/25_algorithms/partial_sort_copy/constrained.cc: Likewise.
   7320  1.1  mrg 	* testsuite/25_algorithms/shuffle/constrained.cc: Likewise.
   7321  1.1  mrg 	* testsuite/25_algorithms/sort/constrained.cc: Likewise.
   7322  1.1  mrg 	* testsuite/25_algorithms/stable_sort/constrained.cc: Likewise.
   7323  1.1  mrg 
   7324  1.1  mrg 2020-02-27  Jonathan Wakely  <jwakely (a] redhat.com>
   7325  1.1  mrg 
   7326  1.1  mrg 	* include/debug/array (operator<=>): Define for C++20.
   7327  1.1  mrg 	* testsuite/23_containers/array/tuple_interface/get_debug_neg.cc:
   7328  1.1  mrg 	Adjust dg-error line numbers.
   7329  1.1  mrg 	* testsuite/23_containers/array/tuple_interface/
   7330  1.1  mrg 	tuple_element_debug_neg.cc: Likewise.
   7331  1.1  mrg 
   7332  1.1  mrg 	* testsuite/23_containers/span/back_assert_neg.cc: Add #undef before
   7333  1.1  mrg 	defining _GLIBCXX_ASSERTIONS.
   7334  1.1  mrg 	* testsuite/23_containers/span/first_2_assert_neg.cc: Likewise.
   7335  1.1  mrg 	* testsuite/23_containers/span/first_assert_neg.cc: Likewise.
   7336  1.1  mrg 	* testsuite/23_containers/span/front_assert_neg.cc: Likewise.
   7337  1.1  mrg 	* testsuite/23_containers/span/index_op_assert_neg.cc: Likewise.
   7338  1.1  mrg 	* testsuite/23_containers/span/last_2_assert_neg.cc: Likewise.
   7339  1.1  mrg 	* testsuite/23_containers/span/last_assert_neg.cc: Likewise.
   7340  1.1  mrg 	* testsuite/23_containers/span/subspan_2_assert_neg.cc: Likewise.
   7341  1.1  mrg 	* testsuite/23_containers/span/subspan_3_assert_neg.cc: Likewise.
   7342  1.1  mrg 	* testsuite/23_containers/span/subspan_4_assert_neg.cc: Likewise.
   7343  1.1  mrg 	* testsuite/23_containers/span/subspan_5_assert_neg.cc: Likewise.
   7344  1.1  mrg 	* testsuite/23_containers/span/subspan_6_assert_neg.cc: Likewise.
   7345  1.1  mrg 	* testsuite/23_containers/span/subspan_assert_neg.cc: Likewise.
   7346  1.1  mrg 
   7347  1.1  mrg 	* include/debug/string (__gnu_debug::basic_string::insert): Fix for
   7348  1.1  mrg 	C++98 where the member function of the base class returns void.
   7349  1.1  mrg 
   7350  1.1  mrg 	* testsuite/util/testsuite_iterators.h (forward_iterator_wrapper): Add
   7351  1.1  mrg 	equality comparisons that support value-initialized iterators.
   7352  1.1  mrg 
   7353  1.1  mrg 	* include/bits/boost_concept_check.h (__function_requires): Add
   7354  1.1  mrg 	_GLIBCXX14_CONSTEXPR.
   7355  1.1  mrg 	* testsuite/25_algorithms/min/concept_checks.cc: New test.
   7356  1.1  mrg 
   7357  1.1  mrg 2020-02-26  Patrick Palka  <ppalka (a] redhat.com>
   7358  1.1  mrg 
   7359  1.1  mrg 	PR libstdc++/93936
   7360  1.1  mrg 	* include/std/ranges (split_view::_InnerIter::operator==): Compare
   7361  1.1  mrg 	the operands' _M_i rather than their _M_i.current().
   7362  1.1  mrg 	* testsuite/std/ranges/adaptors/split.cc: Augment test.
   7363  1.1  mrg 
   7364  1.1  mrg 	P1645R1 constexpr for <numeric> algorithms
   7365  1.1  mrg 	* include/bits/stl_numeric.h (iota, accumulate, inner_product,
   7366  1.1  mrg 	partial_sum, adjacent_difference): Make conditionally constexpr for
   7367  1.1  mrg 	C++20.
   7368  1.1  mrg 	* include/std/numeric (__cpp_lib_constexpr_numeric): Define this feature
   7369  1.1  mrg 	test macro.
   7370  1.1  mrg 	(reduce, transform_reduce, exclusive_scan, inclusive_scan,
   7371  1.1  mrg 	transform_exclusive_scan, transform_inclusive_scan): Make conditionally
   7372  1.1  mrg 	constexpr for C++20.
   7373  1.1  mrg 	* include/std/version (__cpp_lib_constexpr_numeric): Define.
   7374  1.1  mrg 	* testsuite/26_numerics/accumulate/constexpr.cc: New test.
   7375  1.1  mrg 	* testsuite/26_numerics/adjacent_difference/constexpr.cc: Likewise.
   7376  1.1  mrg 	* testsuite/26_numerics/exclusive_scan/constexpr.cc: Likewise.
   7377  1.1  mrg 	* testsuite/26_numerics/inclusive_scan/constexpr.cc: Likewise.
   7378  1.1  mrg 	* testsuite/26_numerics/inner_product/constexpr.cc: Likewise.
   7379  1.1  mrg 	* testsuite/26_numerics/iota/constexpr.cc: Likewise.
   7380  1.1  mrg 	* testsuite/26_numerics/partial_sum/constexpr.cc: Likewise.
   7381  1.1  mrg 	* testsuite/26_numerics/reduce/constexpr.cc: Likewise.
   7382  1.1  mrg 	* testsuite/26_numerics/transform_exclusive_scan/constexpr.cc: Likewise.
   7383  1.1  mrg 	* testsuite/26_numerics/transform_inclusive_scan/constexpr.cc: Likewise.
   7384  1.1  mrg 	* testsuite/26_numerics/transform_reduce/constexpr.cc: Likewise.
   7385  1.1  mrg 
   7386  1.1  mrg 2020-02-26  Jonathan Wakely  <jwakely (a] redhat.com>
   7387  1.1  mrg 
   7388  1.1  mrg 	* include/bits/ranges_algo.h (__lexicographical_compare_fn): Declare
   7389  1.1  mrg 	variables in smaller scope and avoid calling ranges::distance when we
   7390  1.1  mrg 	know they are pointers. Remove statically-unreachable use of
   7391  1.1  mrg 	__builtin_unreachable().
   7392  1.1  mrg 	* include/bits/stl_algobase.h (__lexicographical_compare::__lc):
   7393  1.1  mrg 	Define inline.
   7394  1.1  mrg 
   7395  1.1  mrg 	* include/std/ranges (__detail::__maybe_empty_t): Define new helper
   7396  1.1  mrg 	alias.
   7397  1.1  mrg 	(__detail::__maybe_const_t): Likewise.
   7398  1.1  mrg 	(__adaptor::_RangeAdaptor): Use __maybe_empty_t.
   7399  1.1  mrg 	(transform_view, take_view, take_while_view, elements_view): Use
   7400  1.1  mrg 	__maybe_const_t.
   7401  1.1  mrg 	(join_view, split_view): Use both.
   7402  1.1  mrg 
   7403  1.1  mrg 2020-02-25  Patrick Palka  <ppalka (a] redhat.com>
   7404  1.1  mrg 
   7405  1.1  mrg 	LWG 3397 basic_istream_view::iterator should not provide
   7406  1.1  mrg 	iterator_category
   7407  1.1  mrg 	* include/std/ranges (basic_istream_view:_Iterator::iterator_category):
   7408  1.1  mrg 	Rename to ...
   7409  1.1  mrg 	(basic_istream_view:_Iterator::iterator_concept): ... this.
   7410  1.1  mrg 	* testsuite/std/ranges/istream_view.cc: Augment test.
   7411  1.1  mrg 
   7412  1.1  mrg 	LWG 3325 Constrain return type of transformation function for
   7413  1.1  mrg 	transform_view
   7414  1.1  mrg 	* include/std/ranges (transform_view): Constrain the return type of the
   7415  1.1  mrg 	transformation function as per LWG 3325.
   7416  1.1  mrg 	* testsuite/std/ranges/adaptors/lwg3325_neg.cc: New test.
   7417  1.1  mrg 
   7418  1.1  mrg 	LWG 3313 join_view::_Iterator::operator-- is incorrectly constrained
   7419  1.1  mrg 	* include/std/ranges (join_view::_Iterator::operator--): Require that
   7420  1.1  mrg 	range_reference_t<_Base> models common_range.
   7421  1.1  mrg 	* testsuite/std/ranges/adaptors/lwg3313_neg.cc: New test.
   7422  1.1  mrg 
   7423  1.1  mrg 	LWG 3301 transform_view::_Iterator has incorrect iterator_category
   7424  1.1  mrg 	* include/std/ranges (transform_view::_Iterator::_S_iter_cat): Adjust
   7425  1.1  mrg 	determination of iterator_category as per LWG 3301.
   7426  1.1  mrg 	* testsuite/std/ranges/adaptors/transform.cc: Augment test.
   7427  1.1  mrg 
   7428  1.1  mrg 	LWG 3292 iota_view is under-constrained
   7429  1.1  mrg 	* include/std/ranges (iota_view): Require that _Winc models semiregular
   7430  1.1  mrg 	  as per LWG 3292.
   7431  1.1  mrg 	* testsuite/std/ranges/iota/lwg3292_neg.cc: New test.
   7432  1.1  mrg 
   7433  1.1  mrg 2020-02-25  Jonathan Wakely  <jwakely (a] redhat.com>
   7434  1.1  mrg 
   7435  1.1  mrg 	* include/bits/ranges_algobase.h (__copy_or_move): Do not use memmove
   7436  1.1  mrg 	during constant evaluation. Call __builtin_memmove directly instead of
   7437  1.1  mrg 	__memmove.
   7438  1.1  mrg 	(__copy_or_move_backward): Likewise.
   7439  1.1  mrg 	* include/bits/stl_algobase.h (__memmove): Remove.
   7440  1.1  mrg 	(__copy_move<M, true, random_access_iterator_tag>::__copy_m)
   7441  1.1  mrg 	(__copy_move_backward<M, true, random_access_iterator_tag>::__copy_m):
   7442  1.1  mrg 	Use __builtin_memmove directly instead of __memmove.
   7443  1.1  mrg 	(__copy_move_a2): Do not use memmove during constant evaluation.
   7444  1.1  mrg 	(__copy_move_backward_a2): Use _IsMove constant to select correct
   7445  1.1  mrg 	__copy_move_backward specialization.
   7446  1.1  mrg 	* testsuite/25_algorithms/copy_backward/constexpr.cc: Check for copies
   7447  1.1  mrg 	begin turned into moves during constant evaluation.
   7448  1.1  mrg 
   7449  1.1  mrg 	* testsuite/25_algorithms/move_backward/93872.cc: Add test left out of
   7450  1.1  mrg 	previous commit.
   7451  1.1  mrg 
   7452  1.1  mrg 	PR libstdc++/93872
   7453  1.1  mrg 	* include/bits/stl_algobase.h (__memmove): Cast away const before
   7454  1.1  mrg 	doing move assignment.
   7455  1.1  mrg 	* testsuite/25_algorithms/move/93872.cc: New test.
   7456  1.1  mrg 	* testsuite/25_algorithms/move_backward/93872.cc: New test.
   7457  1.1  mrg 
   7458  1.1  mrg 2020-02-24  Patrick Palka  <ppalka (a] redhat.com>
   7459  1.1  mrg 
   7460  1.1  mrg 	PR libstdc++/93884
   7461  1.1  mrg 	* include/bits/ranges_algobase.h (__copy_or_move,
   7462  1.1  mrg 	__copy_or_move_backward): Don't inspect the iter_value_t of the output
   7463  1.1  mrg 	iterator, instead inspect its iterator_traits directly.
   7464  1.1  mrg 	* include/bits/stl_iterator.h (back_insert_iterator::container):
   7465  1.1  mrg 	Conditionally initialize.
   7466  1.1  mrg 	(back_insert_iterator::difference_type): Conditionally define.
   7467  1.1  mrg 	(back_insert_iterator::back_insert_iterator): Conditionally define this
   7468  1.1  mrg 	default constructor.
   7469  1.1  mrg 	(front_insert_iterator::container): Conditionally initialize.
   7470  1.1  mrg 	(front_insert_iterator::difference_type): Conditionally define.
   7471  1.1  mrg 	(front_insert_iterator::front_insert_iterator): Conditionally define
   7472  1.1  mrg 	this default constructor.
   7473  1.1  mrg 	* 24_iterators/back_insert_iterator/pr93884.cc: New test.
   7474  1.1  mrg 	* 24_iterators/front_insert_iterator/pr93884.cc: New test.
   7475  1.1  mrg 
   7476  1.1  mrg 	P0769R2 Add shift to <algorithm>
   7477  1.1  mrg 	* include/bits/ranges_algo.h (shift_left, shift_right): New.
   7478  1.1  mrg 	* testsuite/25_algorithms/shift_left/1.cc: New test.
   7479  1.1  mrg 	* testsuite/25_algorithms/shift_right/1.cc: New test.
   7480  1.1  mrg 
   7481  1.1  mrg 2020-02-24  Jonathan Wakely  <jwakely (a] redhat.com>
   7482  1.1  mrg 
   7483  1.1  mrg 	* include/bits/stream_iterator.h (istream_iterator(default_sentinel_t)):
   7484  1.1  mrg 	Make noexcept-specifier conditional.
   7485  1.1  mrg 	* testsuite/24_iterators/istream_iterator/cons/sentinel.cc: Check
   7486  1.1  mrg 	noexcept-specifier.
   7487  1.1  mrg 
   7488  1.1  mrg 	* include/bits/stream_iterator.h (istream_iterator(default_sentinel_t)):
   7489  1.1  mrg 	Add constructor.
   7490  1.1  mrg 	(operator==(istream_iterator, default_sentinel_t)): Add operator.
   7491  1.1  mrg 	(ostream_iterator::difference_type): Define to ptrdiff_t for C++20.
   7492  1.1  mrg 	* include/bits/streambuf_iterator.h
   7493  1.1  mrg 	(istreambuf_iterator(default_sentinel_t)): Add constructor.
   7494  1.1  mrg 	(operator==(istreambuf_iterator, default_sentinel_t)): Add operator.
   7495  1.1  mrg 	* testsuite/24_iterators/istream_iterator/cons/sentinel.cc:
   7496  1.1  mrg 	New test.
   7497  1.1  mrg 	* testsuite/24_iterators/istream_iterator/sentinel.cc: New test.
   7498  1.1  mrg 	* testsuite/24_iterators/istreambuf_iterator/cons/sentinel.cc:
   7499  1.1  mrg 	New test.
   7500  1.1  mrg 	* testsuite/24_iterators/istreambuf_iterator/sentinel.cc: New test.
   7501  1.1  mrg 
   7502  1.1  mrg 	* include/std/ranges (__deep_const_range, __enable_view_impl): Remove.
   7503  1.1  mrg 	(ranges::enable_view): Simplify (LWG 3326).
   7504  1.1  mrg 	* include/bits/range_access.h (ranges::enable_view): Declare.
   7505  1.1  mrg 	* include/bits/regex.h (__enable_view_impl): Remove partial
   7506  1.1  mrg 	specialization.
   7507  1.1  mrg 	* include/bits/stl_multiset.h (__enable_view_impl): Likewise.
   7508  1.1  mrg 	* include/bits/stl_set.h (__enable_view_impl): Likewise.
   7509  1.1  mrg 	* include/bits/unordered_set.h (__enable_view_impl): Likewise.
   7510  1.1  mrg 	* include/debug/multiset.h (__enable_view_impl): Likewise.
   7511  1.1  mrg 	* include/debug/set.h (__enable_view_impl): Likewise.
   7512  1.1  mrg 	* include/debug/unordered_set (__enable_view_impl): Likewise.
   7513  1.1  mrg 	* include/experimental/string_view (ranges::enable_view): Define
   7514  1.1  mrg 	partial specialization.
   7515  1.1  mrg 	* include/std/span (ranges::enable_view): Likewise.
   7516  1.1  mrg 	* include/std/string_view (ranges::enable_view): Likewise.
   7517  1.1  mrg 	* testsuite/std/ranges/view.cc: Check satisfaction of updated concept.
   7518  1.1  mrg 
   7519  1.1  mrg 2020-02-21  Jonathan Wakely  <jwakely (a] redhat.com>
   7520  1.1  mrg 
   7521  1.1  mrg 	* include/std/optional (operator<=>(optional<T>, optional<U>))
   7522  1.1  mrg 	(operator<=>(optional<T>, nullopt), operator<=>(optional<T>, U)):
   7523  1.1  mrg 	Define for C++20.
   7524  1.1  mrg 	* include/std/tuple (__tuple_cmp): New helper function for <=>.
   7525  1.1  mrg 	(operator<=>(tuple<T...>, tuple<U>...)): Define for C++20.
   7526  1.1  mrg 	* include/std/variant (operator<=>(variant<T...>, variant<T...>))
   7527  1.1  mrg 	(operator<=>(monostate, monostate)): Define for C++20.
   7528  1.1  mrg 	* testsuite/20_util/optional/relops/three_way.cc: New test.
   7529  1.1  mrg 	* testsuite/20_util/tuple/comparison_operators/three_way.cc: New test.
   7530  1.1  mrg 	* testsuite/20_util/variant/89851.cc: Move to ...
   7531  1.1  mrg 	* testsuite/20_util/variant/relops/89851.cc: ... here.
   7532  1.1  mrg 	* testsuite/20_util/variant/90008.cc: Move to ...
   7533  1.1  mrg 	* testsuite/20_util/variant/relops/90008.cc: ... here.
   7534  1.1  mrg 	* testsuite/20_util/variant/relops/three_way.cc: New test.
   7535  1.1  mrg 
   7536  1.1  mrg 2020-02-20  Patrick Palka  <ppalka (a] redhat.com>
   7537  1.1  mrg 
   7538  1.1  mrg 	* include/std/ranges (views::__adaptor::__maybe_refwrap): New utility
   7539  1.1  mrg 	function.
   7540  1.1  mrg 	(views::__adaptor::_RangeAdaptor::operator()): Add comments.  Use
   7541  1.1  mrg 	__maybe_refwrap to capture lvalue references by reference, and then use
   7542  1.1  mrg 	unwrap_reference_t to forward the by-reference captures as references.
   7543  1.1  mrg 	* testsuite/std/ranges/adaptors/split.cc: Augment test.
   7544  1.1  mrg 	* testsuite/std/ranges/adaptors/split_neg.cc: New test.
   7545  1.1  mrg 
   7546  1.1  mrg 	* include/std/ranges (iota_view): Forward declare _Sentinel.
   7547  1.1  mrg 	(iota_view::_Iterator): Befriend _Sentinel.
   7548  1.1  mrg 	(iota_view::_Sentinel::_M_equal): New member function.
   7549  1.1  mrg 	(iota_view::_Sentinel::operator==): Use it.
   7550  1.1  mrg 	(views::_Iota::operator()): Forward __f using the correct type.
   7551  1.1  mrg 	* testsuite/std/ranges/access/ssize.cc (test06): Don't call views::iota
   7552  1.1  mrg 	with integers of different signedness, to appease iota_view's deduction
   7553  1.1  mrg 	guide.
   7554  1.1  mrg 	* testsuite/std/ranges/iota/iota_view.cc: Augment test.
   7555  1.1  mrg 
   7556  1.1  mrg 2020-02-20  Jonathan Wakely  <jwakely (a] redhat.com>
   7557  1.1  mrg 
   7558  1.1  mrg 	* include/bits/range_access.h (ranges::begin): Reject array of
   7559  1.1  mrg 	incomplete type.
   7560  1.1  mrg 	(ranges::end, ranges::size): Require arrays to be bounded.
   7561  1.1  mrg 	(ranges::data): Require lvalue or borrowed_range.
   7562  1.1  mrg 	(ranges::iterator_t): Remove constraint.
   7563  1.1  mrg 	* testsuite/std/ranges/access/begin.cc: Do not check array of
   7564  1.1  mrg 	incomplete type.
   7565  1.1  mrg 	* testsuite/std/ranges/access/begin_neg.cc: New test.
   7566  1.1  mrg 	* testsuite/std/ranges/access/end_neg.cc: Adjust expected error.
   7567  1.1  mrg 	* testsuite/std/ranges/access/size_neg.cc: Adjust expected error.
   7568  1.1  mrg 	* testsuite/std/ranges/access/ssize.cc: Do not check array of
   7569  1.1  mrg 	incomplete type.
   7570  1.1  mrg 
   7571  1.1  mrg 	* include/std/system_error (error_category::operator<=>)
   7572  1.1  mrg 	(operator<=>(const error_code&, const error_code&))
   7573  1.1  mrg 	(operator<=>(const error_condition&, const error_condition&)): Define
   7574  1.1  mrg 	for C++20.
   7575  1.1  mrg 	* testsuite/19_diagnostics/error_category/operators/less.cc: New test.
   7576  1.1  mrg 	* testsuite/19_diagnostics/error_category/operators/three_way.cc: New
   7577  1.1  mrg 	test.
   7578  1.1  mrg 	* testsuite/19_diagnostics/error_code/operators/equal.cc: Remove
   7579  1.1  mrg 	incorrect comment.
   7580  1.1  mrg 	* testsuite/19_diagnostics/error_code/operators/less.cc: New test.
   7581  1.1  mrg 	* testsuite/19_diagnostics/error_code/operators/not_equal.cc: Remove
   7582  1.1  mrg 	incorrect comment.
   7583  1.1  mrg 	* testsuite/19_diagnostics/error_code/operators/three_way.cc: New test.
   7584  1.1  mrg 	* testsuite/19_diagnostics/error_condition/operators/equal.cc: Remove
   7585  1.1  mrg 	incorrect comment.
   7586  1.1  mrg 	* testsuite/19_diagnostics/error_condition/operators/less.cc: New test.
   7587  1.1  mrg 	* testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
   7588  1.1  mrg 	Remove incorrect comment.
   7589  1.1  mrg 	* testsuite/19_diagnostics/error_condition/operators/three_way.cc: New
   7590  1.1  mrg 	test.
   7591  1.1  mrg 
   7592  1.1  mrg 	* libsupc++/typeinfo (type_info::operator!=): Remove for C++20.
   7593  1.1  mrg 
   7594  1.1  mrg 	* include/std/thread (thread::id::operator<=>): Define for C++20.
   7595  1.1  mrg 	* testsuite/30_threads/thread/id/70294.cc: Do not take addresses of
   7596  1.1  mrg 	functions in namespace std.
   7597  1.1  mrg 	* testsuite/30_threads/thread/id/operators_c++20.cc: New test.
   7598  1.1  mrg 
   7599  1.1  mrg 2020-02-19  Patrick Palka  <ppalka (a] redhat.com>
   7600  1.1  mrg 
   7601  1.1  mrg 	* testsuite/std/ranges/adaptors/split.cc (test03): Don't include the
   7602  1.1  mrg 	null terminator of the underlying string as part of the test_range.
   7603  1.1  mrg 	(main): Call test03.
   7604  1.1  mrg 
   7605  1.1  mrg 2020-02-19  Jonathan Wakely  <jwakely (a] redhat.com>
   7606  1.1  mrg 
   7607  1.1  mrg 	* include/bits/stl_iterator.h (common_iterator): Add copyable<I>
   7608  1.1  mrg 	requirement (LWG 3385).
   7609  1.1  mrg 	* testsuite/24_iterators/headers/iterator/synopsis_c++20.cc: Adjust
   7610  1.1  mrg 	expected declaration.
   7611  1.1  mrg 
   7612  1.1  mrg 	* include/std/ranges (take_while_view, drop_view, drop_while_view)
   7613  1.1  mrg 	(elements_view:_Iterator): Initialize data members (LWG 3364).
   7614  1.1  mrg 
   7615  1.1  mrg 	* libsupc++/compare (three_way_comparable): Remove always-false check
   7616  1.1  mrg 	that should have been removed with weak_equality (P1959R0).
   7617  1.1  mrg 	(three_way_comparable_with): Likewise. Reorder requirements (LWG 3360).
   7618  1.1  mrg 
   7619  1.1  mrg 	* include/std/concepts (__detail::__partially_ordered_with): Move here
   7620  1.1  mrg 	from <compare>.
   7621  1.1  mrg 	(totally_ordered, totally_ordered_with): Use __partially_ordered_with
   7622  1.1  mrg 	to simplify definition (LWG 3331).
   7623  1.1  mrg 	* libsupc++/compare (__detail::__partially_ordered_with): Move to
   7624  1.1  mrg 	<concepts>.
   7625  1.1  mrg 
   7626  1.1  mrg 	* include/std/concepts (totally_ordered_with): Remove redundant
   7627  1.1  mrg 	requirement (LWG 3329).
   7628  1.1  mrg 
   7629  1.1  mrg 	* include/std/ranges (__detail::__convertible_to_non_slicing): New
   7630  1.1  mrg 	helper concept.
   7631  1.1  mrg 	(__detail::__pair_like_convertible_to): Remove.
   7632  1.1  mrg 	(__detail::__pair_like_convertible_from): Add requirements for
   7633  1.1  mrg 	non-slicing conversions.
   7634  1.1  mrg 	(subrange): Constrain constructors with __convertible_to_non_slicing.
   7635  1.1  mrg 	Remove constructors from pair-like types. Add new deduction guide.
   7636  1.1  mrg 	* testsuite/std/ranges/subrange/lwg3282_neg.cc: New test.
   7637  1.1  mrg 
   7638  1.1  mrg 	* include/bits/iterator_concepts.h (iter_move): Add declaration to
   7639  1.1  mrg 	prevent unqualified lookup finding a suitable declaration (LWG 3247).
   7640  1.1  mrg 
   7641  1.1  mrg 	* include/std/memory_resource (polymorphic_allocator::allocate)
   7642  1.1  mrg 	(polymorphic_allocator::allocate_object): Change type of exception to
   7643  1.1  mrg 	bad_array_new_length (LWG 3237).
   7644  1.1  mrg 	* testsuite/20_util/polymorphic_allocator/lwg3237.cc: New test.
   7645  1.1  mrg 
   7646  1.1  mrg 	* include/std/type_traits (__cpp_lib_unwrap_ref): Define (LWG 3348).
   7647  1.1  mrg 	* include/std/version (__cpp_lib_unwrap_ref): Likewise.
   7648  1.1  mrg 	* testsuite/20_util/unwrap_reference/1.cc: Check macro.
   7649  1.1  mrg 	* testsuite/20_util/unwrap_reference/3.cc: New test.
   7650  1.1  mrg 
   7651  1.1  mrg 	* include/std/numeric (midpoint(T8, T*)): Do not check for complete
   7652  1.1  mrg 	type during overload resolution, use static assert instead (LWG 3200).
   7653  1.1  mrg 	* testsuite/26_numerics/midpoint/pointer.cc: Do not test with
   7654  1.1  mrg 	incomplete type.
   7655  1.1  mrg 	* testsuite/26_numerics/midpoint/pointer_neg.cc: New test.
   7656  1.1  mrg 
   7657  1.1  mrg 	* include/std/span (span(T (&)[N])): Use non-deduced context to
   7658  1.1  mrg 	prevent first parameter from interfering with class template argument
   7659  1.1  mrg 	deduction (LWG 3369).
   7660  1.1  mrg 	* testsuite/23_containers/span/deduction.cc: Add missing 'const'.
   7661  1.1  mrg 	* testsuite/23_containers/span/lwg3255.cc: Check for construction from
   7662  1.1  mrg 	rvalues.
   7663  1.1  mrg 
   7664  1.1  mrg 	* include/std/span (span::const_iterator, span::const_reverse_iterator)
   7665  1.1  mrg 	(span::cbegin(), span::cend(), span::crbegin(), span::crend()):
   7666  1.1  mrg 	Remove (LWG 3320).
   7667  1.1  mrg 	* testsuite/23_containers/span/everything.cc: Replace uses of cbegin
   7668  1.1  mrg 	and cend.
   7669  1.1  mrg 	* testsuite/20_util/specialized_algorithms/destroy/constrained.cc:
   7670  1.1  mrg 	Likewise.
   7671  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_copy/
   7672  1.1  mrg 	constrained.cc: Likewise.
   7673  1.1  mrg 	* testsuite/20_util/specialized_algorithms/
   7674  1.1  mrg 	uninitialized_default_construct/constrained.cc: Likewise.
   7675  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_fill/
   7676  1.1  mrg 	constrained.cc: Likewise.
   7677  1.1  mrg 	* testsuite/20_util/specialized_algorithms/uninitialized_move/
   7678  1.1  mrg 	constrained.cc: Likewise.
   7679  1.1  mrg 	* testsuite/20_util/specialized_algorithms/
   7680  1.1  mrg 	uninitialized_value_construct/constrained.cc: Likewise.
   7681  1.1  mrg 
   7682  1.1  mrg 	* include/bits/range_access.h (range_size_t): Define alias template.
   7683  1.1  mrg 	* include/std/ranges (all_view): Rename to views::all_t (LWG 3335).
   7684  1.1  mrg 	* testsuite/std/ranges/adaptors/filter.cc: Adjust to new name.
   7685  1.1  mrg 
   7686  1.1  mrg 	* include/std/ranges (filter_view, transform_view, take_view)
   7687  1.1  mrg 	(join_view, split_view, reverse_view): Remove commented-out converting
   7688  1.1  mrg 	constructors (LWG 3280).
   7689  1.1  mrg 
   7690  1.1  mrg 	* include/std/memory (uninitialized_construct_using_allocator): Use
   7691  1.1  mrg 	std::construct_at (LWG 3321).
   7692  1.1  mrg 
   7693  1.1  mrg 	* include/std/memory_resource (polymorphic_allocator::allocate_bytes)
   7694  1.1  mrg 	(polymorphic_allocator::allocate_object)
   7695  1.1  mrg 	(polymorphic_allocator::new_object): Add nodiscard attribute (LWG3304).
   7696  1.1  mrg 
   7697  1.1  mrg 	LWG 3379. "safe" in several library names is misleading
   7698  1.1  mrg 	* include/bits/range_access.h (enable_safe_range): Rename to
   7699  1.1  mrg 	enable_borrowed_range.
   7700  1.1  mrg 	(__detail::__maybe_safe_range): Rename to __maybe_borrowed_range.
   7701  1.1  mrg 	(safe_range): Rename to borrowed_range.
   7702  1.1  mrg 	* include/bits/ranges_algo.h: Adjust to use new names.
   7703  1.1  mrg 	* include/bits/ranges_algobase.h: Likewise.
   7704  1.1  mrg 	* include/bits/ranges_uninitialized.h: Likewise.
   7705  1.1  mrg 	* include/std/ranges: Likewise.
   7706  1.1  mrg 	(safe_iterator_t): Rename to borrowed_iterator_t.
   7707  1.1  mrg 	(safe_subrange_t): Rename to borrowed_subrange_t.
   7708  1.1  mrg 	* include/std/span: Adjust to use new names.
   7709  1.1  mrg 	* include/std/string_view: Likewise.
   7710  1.1  mrg 	* include/experimental/string_view: Likewise.
   7711  1.1  mrg 	* testsuite/std/ranges/access/begin.cc: Likewise.
   7712  1.1  mrg 	* testsuite/std/ranges/access/cbegin.cc: Likewise.
   7713  1.1  mrg 	* testsuite/std/ranges/access/cdata.cc: Likewise.
   7714  1.1  mrg 	* testsuite/std/ranges/access/cend.cc: Likewise.
   7715  1.1  mrg 	* testsuite/std/ranges/access/crbegin.cc: Likewise.
   7716  1.1  mrg 	* testsuite/std/ranges/access/crend.cc: Likewise.
   7717  1.1  mrg 	* testsuite/std/ranges/access/data.cc: Likewise.
   7718  1.1  mrg 	* testsuite/std/ranges/access/end.cc: Likewise.
   7719  1.1  mrg 	* testsuite/std/ranges/access/rbegin.cc: Likewise.
   7720  1.1  mrg 	* testsuite/std/ranges/access/rend.cc: Likewise.
   7721  1.1  mrg 	* testsuite/std/ranges/safe_range.cc: Likewise.
   7722  1.1  mrg 	* testsuite/std/ranges/safe_range_types.cc: Likewise.
   7723  1.1  mrg 	* testsuite/util/testsuite_iterators.h: Likewise.
   7724  1.1  mrg 
   7725  1.1  mrg 	* include/std/ranges (tuple_element<0, const subrange<I, S, K>>)
   7726  1.1  mrg 	(tuple_element<1, const subrange<I, S, K>>): Add partial
   7727  1.1  mrg 	specializations (LWG 3398).
   7728  1.1  mrg 	* testsuite/std/ranges/subrange/tuple_like.cc: New test.
   7729  1.1  mrg 
   7730  1.1  mrg 	* include/bits/ranges_algo.h (__find_fn, __find_first_of_fn)
   7731  1.1  mrg 	(__adjacent_find_fn, __remove_if_fn, __remove_copy_if_fn)
   7732  1.1  mrg 	(__unique_fn, __unique_copy_fn): Remove redundant conversions to bool.
   7733  1.1  mrg 
   7734  1.1  mrg 2020-02-18  Patrick Palka  <ppalka (a] redhat.com>
   7735  1.1  mrg 
   7736  1.1  mrg 	P1983R0 Wording for GB301, US296, US292, US291, and US283
   7737  1.1  mrg 	* include/std/ranges (filter_view::pred): New member function.
   7738  1.1  mrg 	(join_view::_Iterator::_Iterator): Remove now-redundant comment since
   7739  1.1  mrg 	P1983R0 fixes the highlighted issue in the same way.
   7740  1.1  mrg 	(join_view::_Iterator<_Const>): Add friend
   7741  1.1  mrg 	join_view::_Iterator<!_Const>.
   7742  1.1  mrg 	(join_view::_M_inner): Remove mutable specifier, effectively reverting
   7743  1.1  mrg 	the proposed wording changes of P3278.
   7744  1.1  mrg 	(join_view::begin): Refine the condition for when to return a const
   7745  1.1  mrg 	iterator.
   7746  1.1  mrg 	(split_view::_OuterIter::_OuterIter): Adjust constraints.
   7747  1.1  mrg 	* testsuite/std/ranges/adaptors/filter.cc: Test that filter_view::pred
   7748  1.1  mrg 	exists and works.
   7749  1.1  mrg 
   7750  1.1  mrg 2020-02-18  Jonathan Wakely  <jwakely (a] redhat.com>
   7751  1.1  mrg 
   7752  1.1  mrg 	PR libstdc++/93818
   7753  1.1  mrg 	* include/std/ranges (_RangeAdaptor): Add deduction guide.
   7754  1.1  mrg 	(filter_view::_Iterator): Add alias _Vp_iter and use in place of
   7755  1.1  mrg 	iterator_t<_Vp>.
   7756  1.1  mrg 	(filter_view::_Iterator::_S_iter_cat()): Add 'typename'.
   7757  1.1  mrg 	(transform_view::_Iterator): Add alias _Base_iter and use in place of
   7758  1.1  mrg 	iterator_t<_Base>.
   7759  1.1  mrg 	(transform_view::_Iterator::_S_iter_cat()): Add 'typename'.
   7760  1.1  mrg 	(join_view::_Iterator): Add _Outer_iter and _Inner_iter aliases.
   7761  1.1  mrg 	(join_view::_Iterator::_S_iter_cat()): Add 'typename'.
   7762  1.1  mrg 	(split_view::_InnerIter::_S_iter_cat()): Likewise.
   7763  1.1  mrg 
   7764  1.1  mrg 	* testsuite/20_util/integer_comparisons/equal.cc: Fix invalid
   7765  1.1  mrg 	assumption that long is wider than int.
   7766  1.1  mrg 	* testsuite/20_util/integer_comparisons/greater_equal.cc: Likewise.
   7767  1.1  mrg 	* testsuite/20_util/integer_comparisons/less.cc: Likewise.
   7768  1.1  mrg 	* testsuite/20_util/integer_comparisons/less_equal.cc: Likewise.
   7769  1.1  mrg 	* testsuite/20_util/integer_comparisons/not_equal.cc: Likewise.
   7770  1.1  mrg 
   7771  1.1  mrg 	P1976R2 Fixed-size span construction from dynamic range
   7772  1.1  mrg 	* include/std/span (__cpp_lib_span): Update value.
   7773  1.1  mrg 	(span(It, size_type), span(It, End)): Make conditionally explicit. Add
   7774  1.1  mrg 	assertion.
   7775  1.1  mrg 	(span(R&&), span(const span<OType, OExtent>&)): Likewise and relax
   7776  1.1  mrg 	constraints.
   7777  1.1  mrg 	(span::first<Count>(), span::last<Count>()): Use explicit type in
   7778  1.1  mrg 	return statement.
   7779  1.1  mrg 	(as_bytes, as_writable_bytes): Likewise.
   7780  1.1  mrg 	* include/std/version (__cpp_lib_span): Update value.
   7781  1.1  mrg 	* testsuite/23_containers/span/1.cc: Check new value.
   7782  1.1  mrg 	* testsuite/23_containers/span/2.cc: Check new value.
   7783  1.1  mrg 	* testsuite/23_containers/span/explicit.cc: New test.
   7784  1.1  mrg 
   7785  1.1  mrg 	* include/std/span (span::__is_compatible_array): Simplify alias
   7786  1.1  mrg 	template by using requires-clause.
   7787  1.1  mrg 	(span::__is_compatible_ref): New alias template for constraining
   7788  1.1  mrg 	constructors.
   7789  1.1  mrg 	(span::__is_compatible_iterator, span::__is_compatible_range): Remove.
   7790  1.1  mrg 	(span(It, size_type), span(It, End)): Use __is_compatible_ref.
   7791  1.1  mrg 	(span(T(&)[N], span(array<T, N>&), span(const array<T, N>&)): Remove
   7792  1.1  mrg 	redundant parentheses.
   7793  1.1  mrg 	(span(R&&)): Add missing constraints.
   7794  1.1  mrg 
   7795  1.1  mrg 	* include/std/span (span): Reorder members and rename template
   7796  1.1  mrg 	parameters to match declarations in the C++2a working paper.
   7797  1.1  mrg 
   7798  1.1  mrg 	P2116R0 Remove tuple-like protocol support from fixed-extent span
   7799  1.1  mrg 	* include/std/span (get, tuple_size, tuple_element): Remove.
   7800  1.1  mrg 	* testsuite/23_containers/span/everything.cc: Remove checks for
   7801  1.1  mrg 	tuple-like API.
   7802  1.1  mrg 	* testsuite/23_containers/span/get_neg.cc: Remove.
   7803  1.1  mrg 	* testsuite/23_containers/span/tuple_element_dynamic_neg.cc: Remove.
   7804  1.1  mrg 	* testsuite/23_containers/span/tuple_element_oob_neg.cc: Remove.
   7805  1.1  mrg 	* testsuite/23_containers/span/tuple_size_neg.cc: Remove.
   7806  1.1  mrg 
   7807  1.1  mrg 2020-02-17  Patrick Palka  <ppalka (a] redhat.com>
   7808  1.1  mrg 
   7809  1.1  mrg 	P2106R0 Alternative wording for GB315 and GB316
   7810  1.1  mrg 	* include/bits/ranges_algo.h (in_fun_result): New.
   7811  1.1  mrg 	(for_each_result, for_each_n_result): Change into an alias of
   7812  1.1  mrg 	in_fun_result.
   7813  1.1  mrg 	(in_in_result): New.
   7814  1.1  mrg 	(mismatch_result): Change into an alias of in_in_result.
   7815  1.1  mrg 	(copy_if_result): Change into an alias of in_out_result.
   7816  1.1  mrg 	(swap_ranges_result): Change into an alias of in_in_result.
   7817  1.1  mrg 	(unary_transform_result): Change into an alias of in_out_result.
   7818  1.1  mrg 	(in_in_out_result): New.
   7819  1.1  mrg 	(binary_transform_result): Change into an alias of in_in_out_result.
   7820  1.1  mrg 	(replace_copy_result, replace_copy_if_result, remove_copy_if_result,
   7821  1.1  mrg 	remove_copy_result, unique_copy_result, reverse_copy_result,
   7822  1.1  mrg 	rotate_copy_result, partial_sort_copy_result): Change into an alias of
   7823  1.1  mrg 	in_out_result.
   7824  1.1  mrg 	(in_out_out_result): New.
   7825  1.1  mrg 	(partition_copy_result, merge_result): Change into an alias of
   7826  1.1  mrg 	in_out_out_result.
   7827  1.1  mrg 	(set_union_result, set_intersection_result): Change into an alias of
   7828  1.1  mrg 	in_in_out_result.
   7829  1.1  mrg 	(set_difference_result): Change into an alias of in_out_result.
   7830  1.1  mrg 	(set_symmetric_difference): Change into an alias of in_in_out_result.
   7831  1.1  mrg 	(min_max_result): New.
   7832  1.1  mrg 	(minmax_result, minmax_element_result): Change into an alias of
   7833  1.1  mrg 	min_max_result.
   7834  1.1  mrg 	(in_found_result): New.
   7835  1.1  mrg 	(next_permutation_result, prev_permutation_result): Change into an alias
   7836  1.1  mrg 	of in_found_result.
   7837  1.1  mrg 	(__next_permutation_fn::operator(), __prev_permutation_fn::operator()):
   7838  1.1  mrg 	Adjust following changes to next_permutation_result and
   7839  1.1  mrg 	prev_permutation_result.
   7840  1.1  mrg 	* include/bits/ranges_algobase.h (in_out_result): New.
   7841  1.1  mrg 	(copy_result, move_result, move_backward_result, copy_backward_result,
   7842  1.1  mrg 	copy_n_result): Change into an alias of in_out_result.
   7843  1.1  mrg 	* include/bits/ranges_uninitialized.h (uninitialized_copy_result,
   7844  1.1  mrg 	uninitialized_copy_n_result, uninitialized_move_result,
   7845  1.1  mrg 	uninitialized_move_n_result): Likewise.
   7846  1.1  mrg 	* testsuite/25_algorithms/next_permutation/constrained.cc: Adjust uses of
   7847  1.1  mrg 	structured bindings.
   7848  1.1  mrg 	* testsuite/25_algorithms/prev_permutation/constrained.cc: Likewise.
   7849  1.1  mrg 
   7850  1.1  mrg 	P1243R4 Rangify new algorithms
   7851  1.1  mrg 	* include/bits/ranges_algo.h (for_each_n_result, __for_each_n_fn,
   7852  1.1  mrg 	for_each_n, __sample_fn, sample, __clamp_fn, clamp): New.
   7853  1.1  mrg 	* testsuite/25_algorithms/clamp/constrained.cc: New test.
   7854  1.1  mrg 	* testsuite/25_algorithms/for_each/constrained.cc: Augment test.
   7855  1.1  mrg 	* testsuite/25_algorithms/sample/constrained.cc: New test.
   7856  1.1  mrg 
   7857  1.1  mrg 2020-02-17  Jonathan Wakely  <jwakely (a] redhat.com>
   7858  1.1  mrg 
   7859  1.1  mrg 	P1964R2 Wording for boolean-testable
   7860  1.1  mrg 	* include/bits/ranges_algo.h (__find_fn, __find_first_of_fn)
   7861  1.1  mrg 	(__adjacent_find_fn): Cast result of predicate to bool.
   7862  1.1  mrg 	* include/std/concepts (__boolean): Remove.
   7863  1.1  mrg 	(__detail::__boolean_testable_impl, __detail::__boolean_testable): Add
   7864  1.1  mrg 	new helper concepts.
   7865  1.1  mrg 	(__detail::__weakly_eq_cmp_with, totally_ordered, totally_ordered_with)
   7866  1.1  mrg 	(predicate): Use __boolean_testable instead of boolean.
   7867  1.1  mrg 	* libsupc++/compare (__detail::__partially_ordered, _Synth3way):
   7868  1.1  mrg 	Likewise.
   7869  1.1  mrg 
   7870  1.1  mrg 	P1970R2 Consistency for size() functions: Add ranges::ssize
   7871  1.1  mrg 	* include/bits/range_access.h (_SSize, ssize): Define for C++20.
   7872  1.1  mrg 	* testsuite/std/ranges/access/ssize.cc: New test.
   7873  1.1  mrg 
   7874  1.1  mrg 	P1956R1 On the names of low-level bit manipulation functions
   7875  1.1  mrg 	* include/bits/hashtable_policy.h: Update comment.
   7876  1.1  mrg 	* include/std/bit (__ispow2, __ceil2, __floor2, __log2p1): Rename.
   7877  1.1  mrg 	(ispow2, ceil2, floor2, log2p1): Likewise.
   7878  1.1  mrg 	(__cpp_lib_int_pow2): Add feature test macro.
   7879  1.1  mrg 	* include/std/charconv (__to_chars_len_2): Adjust use of __log2p1.
   7880  1.1  mrg 	* include/std/memory (assume_aligned): Adjust use of ispow2.
   7881  1.1  mrg 	* include/std/version (__cpp_lib_int_pow2): Add.
   7882  1.1  mrg 	* libsupc++/new_opa.cc: Adjust use of __ispow2.
   7883  1.1  mrg 	* src/c++17/memory_resource.cc: Likewise, and for __ceil2 and __log2p1.
   7884  1.1  mrg 	* testsuite/17_intro/freestanding.cc: Adjust use of ispow2.
   7885  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/ceil2.cc: Rename to ...
   7886  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/bit_ceil.cc: ... here.
   7887  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/ceil2_neg.cc: Rename to ...
   7888  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/bit_ceil_neg.cc: ... here.
   7889  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/floor2.cc: Rename to ...
   7890  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/bit_floor.cc: ... here.
   7891  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/log2p1.cc: Rename to ...
   7892  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/bit_width.cc: ... here.
   7893  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/ispow2.cc: Rename to ...
   7894  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/has_single_bit.cc: ... here.
   7895  1.1  mrg 
   7896  1.1  mrg 	* include/std/charconv: Add comment.
   7897  1.1  mrg 
   7898  1.1  mrg 	PR libstdc++/92546 (partial)
   7899  1.1  mrg 	* include/bits/random.h (uniform_random_bit_generator): Move definition
   7900  1.1  mrg 	to <bits/uniform_int_dist.h>.
   7901  1.1  mrg 	* include/bits/ranges_algo.h: Include <bits/uniform_int_dist.h> instead
   7902  1.1  mrg 	of <bits/random.h>.
   7903  1.1  mrg 	* include/bits/ranges_algobase.h: Do not include <cmath>.
   7904  1.1  mrg 	* include/bits/uniform_int_dist.h (uniform_random_bit_generator):
   7905  1.1  mrg 	Move here.
   7906  1.1  mrg 	* include/std/ranges: Do not include <limits>.
   7907  1.1  mrg 	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lineno.
   7908  1.1  mrg 
   7909  1.1  mrg 	PR libstdc++/92546 (partial)
   7910  1.1  mrg 	* include/Makefile.am: Add new header.
   7911  1.1  mrg 	* include/Makefile.in: Regenerate.
   7912  1.1  mrg 	* include/bits/int_limits.h: New header.
   7913  1.1  mrg 	* include/bits/parse_numbers.h (__select_int::_Select_int): Replace
   7914  1.1  mrg 	numeric_limits with __detail::__int_limits.
   7915  1.1  mrg 	* include/std/bit (__rotl, __rotr, __countl_zero, __countl_one)
   7916  1.1  mrg 	(__countr_zero, __countr_one, __popcount, __ceil2, __floor2, __log2p1):
   7917  1.1  mrg 	Likewise.
   7918  1.1  mrg 	* include/std/charconv (__to_chars_8, __from_chars_binary)
   7919  1.1  mrg 	(__from_chars_alpha_to_num, from_chars): Likewise.
   7920  1.1  mrg 	* include/std/memory_resource (polymorphic_allocator::allocate)
   7921  1.1  mrg 	(polymorphic_allocator::allocate_object): Likewise.
   7922  1.1  mrg 	* include/std/string_view (basic_string_view::_S_compare): Likewise.
   7923  1.1  mrg 	* include/std/utility (in_range): Likewise.
   7924  1.1  mrg 	* testsuite/20_util/integer_comparisons/in_range_neg.cc: Adjust for
   7925  1.1  mrg 	extra error about incomplete type __int_limits<bool>.
   7926  1.1  mrg 	* testsuite/26_numerics/bit/bit.count/countl_one.cc: Include <limits>.
   7927  1.1  mrg 	* testsuite/26_numerics/bit/bit.count/countl_zero.cc: Likewise.
   7928  1.1  mrg 	* testsuite/26_numerics/bit/bit.count/countr_one.cc: Likewise.
   7929  1.1  mrg 	* testsuite/26_numerics/bit/bit.count/countr_zero.cc: Likewise.
   7930  1.1  mrg 	* testsuite/26_numerics/bit/bit.count/popcount.cc: Likewise.
   7931  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/ceil2_neg.cc: Likewise.
   7932  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/ceil2.cc: Likewise.
   7933  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/floor2.cc: Likewise.
   7934  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/ispow2.cc: Likewise.
   7935  1.1  mrg 	* testsuite/26_numerics/bit/bit.pow.two/log2p1.cc: Likewise.
   7936  1.1  mrg 	* testsuite/26_numerics/bit/bit.rotate/rotl.cc: Likewise.
   7937  1.1  mrg 	* testsuite/26_numerics/bit/bit.rotate/rotr.cc: Likewise.
   7938  1.1  mrg 
   7939  1.1  mrg 	* python/libstdcxx/v6/printers.py (StdCmpCatPrinter.to_string): Update
   7940  1.1  mrg 	value for partial_ordering::unordered.
   7941  1.1  mrg 
   7942  1.1  mrg 	* include/bits/iterator_concepts.h (indirectly_copyable_storable): Add
   7943  1.1  mrg 	const-qualified expression variations.
   7944  1.1  mrg 	* include/std/concepts (copyable): Likewise.
   7945  1.1  mrg 
   7946  1.1  mrg 	* include/std/type_traits (__is_standard_integer): New helper trait.
   7947  1.1  mrg 	* include/std/utility (cmp_equal, cmp_not_equal, cmp_less, cmp_greater)
   7948  1.1  mrg 	(cmp_less_equal, cmp_greater_equal, in_range): Define for C++20.
   7949  1.1  mrg 	* include/std/version (__cpp_lib_integer_comparison_functions): Define.
   7950  1.1  mrg 	* testsuite/20_util/integer_comparisons/1.cc: New test.
   7951  1.1  mrg 	* testsuite/20_util/integer_comparisons/2.cc: New test.
   7952  1.1  mrg 	* testsuite/20_util/integer_comparisons/equal.cc: New test.
   7953  1.1  mrg 	* testsuite/20_util/integer_comparisons/equal_neg.cc: New test.
   7954  1.1  mrg 	* testsuite/20_util/integer_comparisons/greater_equal.cc: New test.
   7955  1.1  mrg 	* testsuite/20_util/integer_comparisons/greater_equal_neg.cc: New test.
   7956  1.1  mrg 	* testsuite/20_util/integer_comparisons/greater_neg.cc: New test.
   7957  1.1  mrg 	* testsuite/20_util/integer_comparisons/in_range.cc: New test.
   7958  1.1  mrg 	* testsuite/20_util/integer_comparisons/in_range_neg.cc: New test.
   7959  1.1  mrg 	* testsuite/20_util/integer_comparisons/less.cc: New test.
   7960  1.1  mrg 	* testsuite/20_util/integer_comparisons/less_equal.cc: New test.
   7961  1.1  mrg 	* testsuite/20_util/integer_comparisons/less_equal_neg.cc: New test.
   7962  1.1  mrg 	* testsuite/20_util/integer_comparisons/less_neg.cc: New test.
   7963  1.1  mrg 	* testsuite/20_util/integer_comparisons/not_equal.cc: New test.
   7964  1.1  mrg 	* testsuite/20_util/integer_comparisons/not_equal_neg.cc: New test.
   7965  1.1  mrg 
   7966  1.1  mrg 2020-02-16  Patrick Palka  <ppalka (a] redhat.com>
   7967  1.1  mrg 
   7968  1.1  mrg 	* include/bits/ranges_algo.h (__lexicographical_compare_fn::operator()):
   7969  1.1  mrg 	Move code after an early exit constexpr if to under an else branch.
   7970  1.1  mrg 	* include/bits/ranges_algobase.h (__equal_fn::operator()): Likewise.
   7971  1.1  mrg 
   7972  1.1  mrg 2020-02-15  Patrick Palka  <ppalka (a] redhat.com>
   7973  1.1  mrg 
   7974  1.1  mrg 	* include/bits/ranges_algo.h: Adjust whitespace and formatting.
   7975  1.1  mrg 	* include/bits/ranges_algobase.h: Likewise.
   7976  1.1  mrg 	* include/bits/ranges_uninitialized.h: Likewise.
   7977  1.1  mrg 
   7978  1.1  mrg 	* include/bits/ranges_algo.h: (adjacent_find, all_of, any_of,
   7979  1.1  mrg 	binary_search, copy_if, count, count_if, equal_range, find, find_end,
   7980  1.1  mrg 	find_first_of, find_if, find_if_not, for_each, generate, generate_n,
   7981  1.1  mrg 	includes, inplace_merge, is_heap, is_heap_until, is_partitioned,
   7982  1.1  mrg 	is_permutation, is_sorted, is_sorted_until, lexicographical_compare,
   7983  1.1  mrg 	lower_bound, make_heap, max, max_element, merge, min, min_element,
   7984  1.1  mrg 	minmax, minmax_element, mismatch, next_permutation, none_of,
   7985  1.1  mrg 	nth_element, partial_sort, partial_sort_copy, partition, partition_copy,
   7986  1.1  mrg 	partition_point, pop_heap, prev_permutation, push_heap, remove,
   7987  1.1  mrg 	remove_copy, remove_copy_if, remove_if, replace, replace_copy,
   7988  1.1  mrg 	replace_copy_if, replace_if, reverse, reverse_copy, rotate, rotate_copy,
   7989  1.1  mrg 	search, search_n, set_difference, set_intersection,
   7990  1.1  mrg 	set_symmetric_difference, set_union, shuffle, sort, sort_heap,
   7991  1.1  mrg 	stable_partition, stable_sort, swap_ranges, transform, unique,
   7992  1.1  mrg 	unique_copy, upper_bound): Convert into function objects.
   7993  1.1  mrg 	* include/bits/ranges_algobase.h: (equal, copy, move, copy_n, fill_n,
   7994  1.1  mrg 	fill, move_backward, copy_backward): Likewise.
   7995  1.1  mrg 	* include/bits/ranges_uninitialized.h (uninitialized_default_construct,
   7996  1.1  mrg 	uninitialized_default_construct_n, uninitialized_value_construct,
   7997  1.1  mrg 	uninitialized_value_construct_n, uninitialized_copy,
   7998  1.1  mrg 	uninitialized_copy_n, uninitialized_move, uninitialized_move_n,
   7999  1.1  mrg 	uninitialized_fill, uninitialized_fill_n, construct_at, destroy_at,
   8000  1.1  mrg 	destroy, destroy_n): Likewise.
   8001  1.1  mrg 
   8002  1.1  mrg 	* include/bits/ranges_algo.h (ranges::__find_end): Fold into ...
   8003  1.1  mrg 	(ranges::find_end): ... here.
   8004  1.1  mrg 	(ranges::__lexicographical_compare): Fold into ...
   8005  1.1  mrg 	(ranges::lexicographical_compare): ... here.
   8006  1.1  mrg 	* include/bits/ranges_algobase.h (ranges::__equal): Fold into ...
   8007  1.1  mrg 	(ranges::equal): ... here.
   8008  1.1  mrg 
   8009  1.1  mrg 2020-02-15  Jonathan Wakely  <jwakely (a] redhat.com>
   8010  1.1  mrg 
   8011  1.1  mrg 	* include/bits/erase_if.h (__cpp_lib_erase_if): Define to 202002L.
   8012  1.1  mrg 	* include/std/deque: Likewise.
   8013  1.1  mrg 	* include/std/forward_list: Likewise.
   8014  1.1  mrg 	* include/std/list: Likewise.
   8015  1.1  mrg 	* include/std/string: Likewise.
   8016  1.1  mrg 	* include/std/vector: Likewise.
   8017  1.1  mrg 	* include/std/version: Likewise.
   8018  1.1  mrg 	* testsuite/23_containers/deque/erasure.cc: Test for new value.
   8019  1.1  mrg 	* testsuite/23_containers/forward_list/erasure.cc: Likewise.
   8020  1.1  mrg 	* testsuite/23_containers/list/erasure.cc: Likewise.
   8021  1.1  mrg 	* testsuite/23_containers/map/erasure.cc: Likewise.
   8022  1.1  mrg 	* testsuite/23_containers/set/erasure.cc: Likewise.
   8023  1.1  mrg 	* testsuite/23_containers/unordered_map/erasure.cc: Likewise.
   8024  1.1  mrg 	* testsuite/23_containers/unordered_set/erasure.cc: Likewise.
   8025  1.1  mrg 	* testsuite/23_containers/vector/erasure.cc: Likewise.
   8026  1.1  mrg 
   8027  1.1  mrg 2020-02-15  Jonathan Wakely  <jwakely (a] redhat.com>
   8028  1.1  mrg 
   8029  1.1  mrg 	* include/bits/random.h (uniform_random_bit_generator): Require min()
   8030  1.1  mrg 	and max() to be constant expressions and min() to be less than max().
   8031  1.1  mrg 	* testsuite/26_numerics/random/concept.cc: Check additional cases.
   8032  1.1  mrg 	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lineno.
   8033  1.1  mrg 
   8034  1.1  mrg 2020-02-13  Patrick Palka  <ppalka (a] redhat.com>
   8035  1.1  mrg 
   8036  1.1  mrg 	* include/Makefile.am: Add <bits/ranges_uninitialized.h>.
   8037  1.1  mrg 	* include/Makefile.in: Regenerate.
   8038  1.1  mrg 	* include/bits/ranges_uninitialized.h: New header.
   8039  1.1  mrg 	* include/std/memory: Include it.
   8040  1.1  mrg 	* testsuite/20_util/specialized_algorithms/destroy/constrained.cc: New
   8041  1.1  mrg 	test.
   8042  1.1  mrg 	* .../uninitialized_copy/constrained.cc: New test.
   8043  1.1  mrg 	* .../uninitialized_default_construct/constrained.cc: New test.
   8044  1.1  mrg 	* .../uninitialized_fill/constrained.cc: New test.
   8045  1.1  mrg 	* .../uninitialized_move/constrained.cc: New test.
   8046  1.1  mrg 	* .../uninitialized_value_construct/constrained.cc: New test.
   8047  1.1  mrg 
   8048  1.1  mrg 	* include/Makefile.am: Add bits/ranges_algobase.h
   8049  1.1  mrg 	* include/Makefile.in: Regenerate.
   8050  1.1  mrg 	* bits/ranges_algo.h: Include <bits/ranges_algobase.h> and refactor
   8051  1.1  mrg 	existing #includes.
   8052  1.1  mrg 	(__detail::__is_normal_iterator, __detail::is_reverse_iterator,
   8053  1.1  mrg 	__detail::__is_move_iterator, copy_result, move_result,
   8054  1.1  mrg 	__equal, equal, copy_result, move_result, move_backward_result,
   8055  1.1  mrg 	copy_backward_result, __copy_or_move_backward, __copy_or_move, copy,
   8056  1.1  mrg 	move, copy_backward, move_backward, copy_n_result, copy_n, fill_n,
   8057  1.1  mrg 	fill): Split out into ...
   8058  1.1  mrg 	* bits/range_algobase.h: ... this new header.
   8059  1.1  mrg 
   8060  1.1  mrg 2020-02-12  Patrick Palka  <ppalka (a] redhat.com>
   8061  1.1  mrg 
   8062  1.1  mrg 	LWG 3389 and LWG 3390
   8063  1.1  mrg 	* include/bits/stl_iterator.h (move_move_iterator): Use std::move when
   8064  1.1  mrg 	constructing the move_iterator with __i.
   8065  1.1  mrg 	(counted_iterator::counted_iterator): Use std::move when initializing
   8066  1.1  mrg 	M_current with __i.
   8067  1.1  mrg 	* testsuite/24_iterators/counted_iterator/lwg3389.cc: New test.
   8068  1.1  mrg 	* testsuite/24_iterators/move_iterator/lwg3390.cc: New test.
   8069  1.1  mrg 
   8070  1.1  mrg 2020-02-12  Sandra Loosemore  <sandra (a] codesourcery.com>
   8071  1.1  mrg 
   8072  1.1  mrg 	PR libstdc++/79193
   8073  1.1  mrg 	PR libstdc++/88999
   8074  1.1  mrg 
   8075  1.1  mrg 	* configure: Regenerated.
   8076  1.1  mrg 
   8077  1.1  mrg 2020-02-12  Franois Dumont  <fdumont (a] gcc.gnu.org>
   8078  1.1  mrg 
   8079  1.1  mrg 	* include/bits/hashtable.h
   8080  1.1  mrg 	(_Hashtable<>(_Hashtable&&, std::allocator_type&)): Add
   8081  1.1  mrg 	missing std namespace qualification to forward call.
   8082  1.1  mrg 
   8083  1.1  mrg 2020-02-09  Jonathan Wakely  <jwakely (a] redhat.com>
   8084  1.1  mrg 
   8085  1.1  mrg 	* testsuite/20_util/function_objects/range.cmp/equal_to.cc: Fix
   8086  1.1  mrg 	comment.
   8087  1.1  mrg 	* testsuite/20_util/function_objects/range.cmp/less.ccL Likewise.
   8088  1.1  mrg 
   8089  1.1  mrg 	* include/std/ranges: Fix non-ASCII characters in comment.
   8090  1.1  mrg 
   8091  1.1  mrg 	* include/bits/range_cmp.h (__detail::__eq_builtin_ptr_cmp): Require
   8092  1.1  mrg 	equality comparison to be valid and return bool.
   8093  1.1  mrg 	(__detail::__less_builtin_ptr_cmp): Likewise for less-than comparison.
   8094  1.1  mrg 	* testsuite/20_util/function_objects/range.cmp/equal_to.cc: Check
   8095  1.1  mrg 	type with ambiguous conversion to fundamental types.
   8096  1.1  mrg 	* testsuite/20_util/function_objects/range.cmp/less.cc: Likewise.
   8097  1.1  mrg 
   8098  1.1  mrg 2020-02-07  Jonathan Wakely  <jwakely (a] redhat.com>
   8099  1.1  mrg 
   8100  1.1  mrg 	* include/bits/iterator_concepts.h (iter_difference_t, iter_value_t):
   8101  1.1  mrg 	Use remove_cvref_t.
   8102  1.1  mrg 	(readable_traits): Rename to indirectly_readable_traits.
   8103  1.1  mrg 	(readable): Rename to indirectly_readable.
   8104  1.1  mrg 	(writable): Rename to indirectly_writable.
   8105  1.1  mrg 	(__detail::__iter_exchange_move): Do not use remove_reference_t.
   8106  1.1  mrg 	(indirectly_swappable): Adjust requires expression parameter types.
   8107  1.1  mrg 	expression.
   8108  1.1  mrg 	* include/bits/ranges_algo.h (ranges::transform, ranges::replace)
   8109  1.1  mrg 	(ranges::replace_if, ranges::generate_n, ranges::generate)
   8110  1.1  mrg 	(ranges::remove): Use new name for writable.
   8111  1.1  mrg 	* include/bits/stl_iterator.h (__detail::__common_iter_has_arrow):
   8112  1.1  mrg 	Use new name for readable.
   8113  1.1  mrg 	* include/ext/pointer.h (readable_traits<_Pointer_adapter<P>>): Use
   8114  1.1  mrg 	new name for readable_traits.
   8115  1.1  mrg 	* testsuite/24_iterators/associated_types/readable.traits.cc: Likewise.
   8116  1.1  mrg 	* testsuite/24_iterators/indirect_callable/projected.cc: Adjust for
   8117  1.1  mrg 	new definition of indirectly_readable.
   8118  1.1  mrg 
   8119  1.1  mrg 	* include/bits/stl_iterator.h (__detail::__common_iter_ptr): Change
   8120  1.1  mrg 	to take parameters of common_iterator, instead of the common_iterator
   8121  1.1  mrg 	type itself. Fix argument for __common_iter_has_arrow constraint.
   8122  1.1  mrg 	(iterator_traits<common_iterator<I, S>>::pointer): Adjust.
   8123  1.1  mrg 
   8124  1.1  mrg 2020-02-07  Jonathan Wakely  <jwakely (a] redhat.com>
   8125  1.1  mrg 
   8126  1.1  mrg 	* include/std/ranges (iota_view): Add braces to prevent -Wempty-body
   8127  1.1  mrg 	warning.
   8128  1.1  mrg 	(basic_istream_view::_Iterator::operator++()): Add missing return.
   8129  1.1  mrg 
   8130  1.1  mrg 2020-02-07  Patrick Palka  <ppalka (a] redhat.com>
   8131  1.1  mrg 
   8132  1.1  mrg 	* include/bits/ranges_algo.h: Remove extraneous &&.
   8133  1.1  mrg 
   8134  1.1  mrg 	* include/std/ranges (ranges::__detail::__stream_extractable,
   8135  1.1  mrg 	ranges::basic_istream_view, ranges::istream_view): Define.
   8136  1.1  mrg 	* testsuite/std/ranges/istream_view: New test.
   8137  1.1  mrg 
   8138  1.1  mrg 	Implement C++20 range adaptors
   8139  1.1  mrg 	* include/std/ranges: Include <bits/refwrap.h> and <tuple>.
   8140  1.1  mrg 	(subrange::_S_store_size): Mark as const instead of constexpr to
   8141  1.1  mrg 	avoid what seems to be a bug in GCC.
   8142  1.1  mrg 	(__detail::__box): Give it defaulted copy and move constructors.
   8143  1.1  mrg 	(ranges::views::_Single::operator()): Mark constexpr.
   8144  1.1  mrg 	(ranges::views::_Iota::operator()): Mark constexpr.
   8145  1.1  mrg 	(__detail::Empty): Define.
   8146  1.1  mrg 	(ranges::views::__closure::_RangeAdaptor,
   8147  1.1  mrg 	ranges::views::__closure::_RangeAdaptorClosure, ref_view, all_view,
   8148  1.1  mrg 	ranges::views::all, ranges::__detail::find_if,
   8149  1.1  mrg 	ranges::__detail::find_if_not, ranges::__detail::mismatch,
   8150  1.1  mrg 	ranges::detail::min, filter_view, ranges::views::filter, transform_view,
   8151  1.1  mrg 	ranges::views::transform, take_view, ranges::views::take,
   8152  1.1  mrg 	take_while_view, ranges::views::take_while, drop_view,
   8153  1.1  mrg 	ranges::views::drop, join_view, ranges::views::join,
   8154  1.1  mrg 	__detail::require_constant, __detail::tiny_range, split_view,
   8155  1.1  mrg 	ranges::views::split, ranges::views::_Counted, ranges::views::counted,
   8156  1.1  mrg 	common_view, ranges::views::common, reverse_view,
   8157  1.1  mrg 	ranges::views::reverse,
   8158  1.1  mrg 	ranges::views::__detail::__is_reversible_subrange,
   8159  1.1  mrg 	ranges::views::__detail::__is_reverse_view, reverse_view,
   8160  1.1  mrg 	ranges::views::reverse, __detail::__has_tuple_element, elements_view,
   8161  1.1  mrg 	ranges::views::elements, ranges::views::keys, ranges::views::values):
   8162  1.1  mrg 	Define.
   8163  1.1  mrg 	(views): Alias for ranges::views.
   8164  1.1  mrg 	(tuple_size<ranges::subrange<>>, tuple_element<0, ranges::subrange>,
   8165  1.1  mrg 	tuple_element<1, ranges::subrange>): New partial specializations.
   8166  1.1  mrg 	* testsuite/std/ranges/adaptors/all.cc: New test.
   8167  1.1  mrg 	* testsuite/std/ranges/adaptors/common.cc: Likewise.
   8168  1.1  mrg 	* testsuite/std/ranges/adaptors/counted.cc: Likewise.
   8169  1.1  mrg 	* testsuite/std/ranges/adaptors/drop.cc: Likewise.
   8170  1.1  mrg 	* testsuite/std/ranges/adaptors/drop_while.cc: Likewise.
   8171  1.1  mrg 	* testsuite/std/ranges/adaptors/elements.cc: Likewise.
   8172  1.1  mrg 	* testsuite/std/ranges/adaptors/filter.cc: Likewise.
   8173  1.1  mrg 	* testsuite/std/ranges/adaptors/join.cc: Likewise.
   8174  1.1  mrg 	* testsuite/std/ranges/adaptors/reverse.cc: Likewise.
   8175  1.1  mrg 	* testsuite/std/ranges/adaptors/split.cc: Likewise.
   8176  1.1  mrg 	* testsuite/std/ranges/adaptors/take.cc: Likewise.
   8177  1.1  mrg 	* testsuite/std/ranges/adaptors/take_while.cc: Likewise.
   8178  1.1  mrg 	* testsuite/std/ranges/adaptors/transform.cc: Likewise.
   8179  1.1  mrg 
   8180  1.1  mrg 2020-02-07  Jonathan Wakely  <jwakely (a] redhat.com>
   8181  1.1  mrg 
   8182  1.1  mrg 	* libsupc++/compare (__cmp_cat::type): Define typedef for underlying
   8183  1.1  mrg 	type of enumerations and comparison category types.
   8184  1.1  mrg 	(__cmp_cat::_Ord, __cmp_cat::_Ncmp): Add underlying type.
   8185  1.1  mrg 	(__cmp_cat::_Ncmp::unordered): Change value to 2.
   8186  1.1  mrg 	(partial_ordering::_M_value, weak_ordering::_M_value)
   8187  1.1  mrg 	(strong_ordering::_M_value): Change type to __cmp_cat::type.
   8188  1.1  mrg 	(partial_ordering::_M_is_ordered): Remove data member.
   8189  1.1  mrg 	(partial_ordering): Use second bit of _M_value for unordered. Adjust
   8190  1.1  mrg 	comparison operators.
   8191  1.1  mrg 	(weak_ordering::operator partial_ordering): Simplify to remove
   8192  1.1  mrg 	branches.
   8193  1.1  mrg 	(operator<=>(unspecified, weak_ordering)): Likewise.
   8194  1.1  mrg 	(strong_ordering::operator partial_ordering): Likewise.
   8195  1.1  mrg 	(strong_ordering::operator weak_ordering): Likewise.
   8196  1.1  mrg 	(operator<=>(unspecified, strong_ordering)): Likewise.
   8197  1.1  mrg 	* testsuite/18_support/comparisons/categories/partialord.cc: New test.
   8198  1.1  mrg 	* testsuite/18_support/comparisons/categories/strongord.cc: New test.
   8199  1.1  mrg 	* testsuite/18_support/comparisons/categories/weakord.cc: New test.
   8200  1.1  mrg 
   8201  1.1  mrg 	* include/std/ranges (iota_view::_Iterator): Fix typo in name of
   8202  1.1  mrg 	__cpp_lib_three_way_comparison macro and use deduced return type for
   8203  1.1  mrg 	operator<=>.
   8204  1.1  mrg 	* testsuite/std/ranges/iota/iterator.cc: New test.
   8205  1.1  mrg 
   8206  1.1  mrg 2020-02-07  Patrick Palka  <ppalka (a] redhat.com>
   8207  1.1  mrg 	    Jonathan Wakely  <jwakely (a] redhat.com>
   8208  1.1  mrg 
   8209  1.1  mrg 	Implement C++20 constrained algorithms
   8210  1.1  mrg 	* include/Makefile.am: Add new header.
   8211  1.1  mrg 	* include/Makefile.in: Regenerate.
   8212  1.1  mrg 	* include/std/algorithm: Include <bits/ranges_algo.h>.
   8213  1.1  mrg 	* include/bits/ranges_algo.h: New file.
   8214  1.1  mrg 	* testsuite/25_algorithms/adjacent_find/constrained.cc: New test.
   8215  1.1  mrg 	* testsuite/25_algorithms/all_of/constrained.cc: New test.
   8216  1.1  mrg 	* testsuite/25_algorithms/any_of/constrained.cc: New test.
   8217  1.1  mrg 	* testsuite/25_algorithms/binary_search/constrained.cc: New test.
   8218  1.1  mrg 	* testsuite/25_algorithms/copy/constrained.cc: New test.
   8219  1.1  mrg 	* testsuite/25_algorithms/copy_backward/constrained.cc: New test.
   8220  1.1  mrg 	* testsuite/25_algorithms/copy_if/constrained.cc: New test.
   8221  1.1  mrg 	* testsuite/25_algorithms/copy_n/constrained.cc: New test.
   8222  1.1  mrg 	* testsuite/25_algorithms/count/constrained.cc: New test.
   8223  1.1  mrg 	* testsuite/25_algorithms/count_if/constrained.cc: New test.
   8224  1.1  mrg 	* testsuite/25_algorithms/equal/constrained.cc: New test.
   8225  1.1  mrg 	* testsuite/25_algorithms/equal_range/constrained.cc: New test.
   8226  1.1  mrg 	* testsuite/25_algorithms/fill/constrained.cc: New test.
   8227  1.1  mrg 	* testsuite/25_algorithms/fill_n/constrained.cc: New test.
   8228  1.1  mrg 	* testsuite/25_algorithms/find/constrained.cc: New test.
   8229  1.1  mrg 	* testsuite/25_algorithms/find_end/constrained.cc: New test.
   8230  1.1  mrg 	* testsuite/25_algorithms/find_first_of/constrained.cc: New test.
   8231  1.1  mrg 	* testsuite/25_algorithms/find_if/constrained.cc: New test.
   8232  1.1  mrg 	* testsuite/25_algorithms/find_if_not/constrained.cc: New test.
   8233  1.1  mrg 	* testsuite/25_algorithms/for_each/constrained.cc: New test.
   8234  1.1  mrg 	* testsuite/25_algorithms/generate/constrained.cc: New test.
   8235  1.1  mrg 	* testsuite/25_algorithms/generate_n/constrained.cc: New test.
   8236  1.1  mrg 	* testsuite/25_algorithms/heap/constrained.cc: New test.
   8237  1.1  mrg 	* testsuite/25_algorithms/includes/constrained.cc: New test.
   8238  1.1  mrg 	* testsuite/25_algorithms/inplace_merge/constrained.cc: New test.
   8239  1.1  mrg 	* testsuite/25_algorithms/is_partitioned/constrained.cc: New test.
   8240  1.1  mrg 	* testsuite/25_algorithms/is_permutation/constrained.cc: New test.
   8241  1.1  mrg 	* testsuite/25_algorithms/is_sorted/constrained.cc: New test.
   8242  1.1  mrg 	* testsuite/25_algorithms/is_sorted_until/constrained.cc: New test.
   8243  1.1  mrg 	* testsuite/25_algorithms/lexicographical_compare/constrained.cc: New
   8244  1.1  mrg 	test.
   8245  1.1  mrg 	* testsuite/25_algorithms/lower_bound/constrained.cc: New test.
   8246  1.1  mrg 	* testsuite/25_algorithms/max/constrained.cc: New test.
   8247  1.1  mrg 	* testsuite/25_algorithms/max_element/constrained.cc: New test.
   8248  1.1  mrg 	* testsuite/25_algorithms/merge/constrained.cc: New test.
   8249  1.1  mrg 	* testsuite/25_algorithms/min/constrained.cc: New test.
   8250  1.1  mrg 	* testsuite/25_algorithms/min_element/constrained.cc: New test.
   8251  1.1  mrg 	* testsuite/25_algorithms/minmax/constrained.cc: New test.
   8252  1.1  mrg 	* testsuite/25_algorithms/minmax_element/constrained.cc: New test.
   8253  1.1  mrg 	* testsuite/25_algorithms/mismatch/constrained.cc: New test.
   8254  1.1  mrg 	* testsuite/25_algorithms/move/constrained.cc: New test.
   8255  1.1  mrg 	* testsuite/25_algorithms/move_backward/constrained.cc: New test.
   8256  1.1  mrg 	* testsuite/25_algorithms/next_permutation/constrained.cc: New test.
   8257  1.1  mrg 	* testsuite/25_algorithms/none_of/constrained.cc: New test.
   8258  1.1  mrg 	* testsuite/25_algorithms/nth_element/constrained.cc: New test.
   8259  1.1  mrg 	* testsuite/25_algorithms/partial_sort/constrained.cc: New test.
   8260  1.1  mrg 	* testsuite/25_algorithms/partial_sort_copy/constrained.cc: New test.
   8261  1.1  mrg 	* testsuite/25_algorithms/partition/constrained.cc: New test.
   8262  1.1  mrg 	* testsuite/25_algorithms/partition_copy/constrained.cc: New test.
   8263  1.1  mrg 	* testsuite/25_algorithms/partition_point/constrained.cc: New test.
   8264  1.1  mrg 	* testsuite/25_algorithms/prev_permutation/constrained.cc: New test.
   8265  1.1  mrg 	* testsuite/25_algorithms/remove/constrained.cc: New test.
   8266  1.1  mrg 	* testsuite/25_algorithms/remove_copy/constrained.cc: New test.
   8267  1.1  mrg 	* testsuite/25_algorithms/remove_copy_if/constrained.cc: New test.
   8268  1.1  mrg 	* testsuite/25_algorithms/remove_if/constrained.cc: New test.
   8269  1.1  mrg 	* testsuite/25_algorithms/replace/constrained.cc: New test.
   8270  1.1  mrg 	* testsuite/25_algorithms/replace_copy/constrained.cc: New test.
   8271  1.1  mrg 	* testsuite/25_algorithms/replace_copy_if/constrained.cc: New test.
   8272  1.1  mrg 	* testsuite/25_algorithms/replace_if/constrained.cc: New test.
   8273  1.1  mrg 	* testsuite/25_algorithms/reverse/constrained.cc: New test.
   8274  1.1  mrg 	* testsuite/25_algorithms/reverse_copy/constrained.cc: New test.
   8275  1.1  mrg 	* testsuite/25_algorithms/rotate/constrained.cc: New test.
   8276  1.1  mrg 	* testsuite/25_algorithms/rotate_copy/constrained.cc: New test.
   8277  1.1  mrg 	* testsuite/25_algorithms/search/constrained.cc: New test.
   8278  1.1  mrg 	* testsuite/25_algorithms/search_n/constrained.cc: New test.
   8279  1.1  mrg 	* testsuite/25_algorithms/set_difference/constrained.cc: New test.
   8280  1.1  mrg 	* testsuite/25_algorithms/set_intersection/constrained.cc: New test.
   8281  1.1  mrg 	* testsuite/25_algorithms/set_symmetric_difference/constrained.cc: New
   8282  1.1  mrg 	test.
   8283  1.1  mrg 	* testsuite/25_algorithms/set_union/constrained.cc: New test.
   8284  1.1  mrg 	* testsuite/25_algorithms/shuffle/constrained.cc: New test.
   8285  1.1  mrg 	* testsuite/25_algorithms/sort/constrained.cc: New test.
   8286  1.1  mrg 	* testsuite/25_algorithms/stable_partition/constrained.cc: New test.
   8287  1.1  mrg 	* testsuite/25_algorithms/stable_sort/constrained.cc: New test.
   8288  1.1  mrg 	* testsuite/25_algorithms/swap_ranges/constrained.cc: New test.
   8289  1.1  mrg 	* testsuite/25_algorithms/transform/constrained.cc: New test.
   8290  1.1  mrg 	* testsuite/25_algorithms/unique/constrained.cc: New test.
   8291  1.1  mrg 	* testsuite/25_algorithms/unique_copy/constrained.cc: New test.
   8292  1.1  mrg 	* testsuite/25_algorithms/upper_bound/constrained.cc: New test.
   8293  1.1  mrg 
   8294  1.1  mrg 2020-02-06  Jonathan Wakely  <jwakely (a] redhat.com>
   8295  1.1  mrg 
   8296  1.1  mrg 	* include/bits/stl_iterator.h (__detail::__common_iter_ptr): Fix PR
   8297  1.1  mrg 	number in comment. Fix indentation.
   8298  1.1  mrg 
   8299  1.1  mrg 	* include/bits/stl_algobase.h (__iter_swap, __iter_swap<true>): Remove
   8300  1.1  mrg 	redundant _GLIBCXX20_CONSTEXPR.
   8301  1.1  mrg 
   8302  1.1  mrg 	* include/std/ranges (viewable_range): Replace decay_t with
   8303  1.1  mrg 	remove_cvref_t (LWG 3375).
   8304  1.1  mrg 
   8305  1.1  mrg 2020-02-05  Jonathan Wakely  <jwakely (a] redhat.com>
   8306  1.1  mrg 
   8307  1.1  mrg 	* include/bits/iterator_concepts.h (iter_reference_t)
   8308  1.1  mrg 	(iter_rvalue_reference_t, iter_common_reference_t, indirect_result_t):
   8309  1.1  mrg 	Remove workarounds for PR c++/67704.
   8310  1.1  mrg 	* testsuite/24_iterators/aliases.cc: New test.
   8311  1.1  mrg 
   8312  1.1  mrg 2020-02-05  Patrick Palka  <ppalka (a] redhat.com>
   8313  1.1  mrg 
   8314  1.1  mrg 	* include/bits/stl_iterator.h (move_iterator::move_iterator): Move __i
   8315  1.1  mrg 	when initializing _M_current.
   8316  1.1  mrg 	(move_iterator::base): Split into two overloads differing in
   8317  1.1  mrg 	ref-qualifiers as in P1207R4 for C++20.
   8318  1.1  mrg 
   8319  1.1  mrg 2020-02-04  Jonathan Wakely  <jwakely (a] redhat.com>
   8320  1.1  mrg 
   8321  1.1  mrg 	* include/std/functional (_GLIBCXX_NOT_FN_CALL_OP): Un-define after
   8322  1.1  mrg 	use.
   8323  1.1  mrg 
   8324  1.1  mrg 	PR libstdc++/93562
   8325  1.1  mrg 	* include/bits/unique_ptr.h (__uniq_ptr_impl::swap): Define.
   8326  1.1  mrg 	(unique_ptr::swap, unique_ptr<T[], D>::swap): Call it.
   8327  1.1  mrg 	* testsuite/20_util/unique_ptr/modifiers/93562.cc: New test.
   8328  1.1  mrg 
   8329  1.1  mrg 2020-02-01  Andrew Burgess  <andrew.burgess (a] embecosm.com>
   8330  1.1  mrg 
   8331  1.1  mrg 	* configure: Regenerate.
   8332  1.1  mrg 
   8333  1.1  mrg 2020-01-31  Patrick Palka  <ppalka (a] redhat.com>
   8334  1.1  mrg 
   8335  1.1  mrg 	* testsuite/24_iterators/range_operations/distance.cc: Do not assume
   8336  1.1  mrg 	test_range::end() returns the same type as test_range::begin().
   8337  1.1  mrg 	* testsuite/24_iterators/range_operations/next.cc: Likewise.
   8338  1.1  mrg 	* testsuite/24_iterators/range_operations/prev.cc: Likewise.
   8339  1.1  mrg 	* testsuite/util/testsuite_iterators.h (__gnu_test::test_range::end):
   8340  1.1  mrg 	Always return a sentinel<I>.
   8341  1.1  mrg 
   8342  1.1  mrg 2020-01-29  Jonathan Wakely  <jwakely (a] redhat.com>
   8343  1.1  mrg 
   8344  1.1  mrg 	PR libstdc++/92895
   8345  1.1  mrg 	* include/std/stop_token (stop_token::stop_possible()): Call new
   8346  1.1  mrg 	_M_stop_possible() function.
   8347  1.1  mrg 	(stop_token::stop_requested()): Do not use stop_possible().
   8348  1.1  mrg 	(stop_token::binary_semaphore): New class, as temporary stand-in for
   8349  1.1  mrg 	std::binary_semaphore.
   8350  1.1  mrg 	(stop_token::_Stop_cb::_M_callback): Add noexcept to type.
   8351  1.1  mrg 	(stop_token::_Stop_cb::_M_destroyed, stop_token::_Stop_cb::_M_done):
   8352  1.1  mrg 	New data members for symchronization with stop_callback destruction.
   8353  1.1  mrg 	(stop_token::_Stop_cb::_Stop_cb): Make non-template.
   8354  1.1  mrg 	(stop_token::_Stop_cb::_M_linked, stop_token::_Stop_cb::_S_execute):
   8355  1.1  mrg 	Remove.
   8356  1.1  mrg 	(stop_token::_Stop_cb::_M_run): New member function.
   8357  1.1  mrg 	(stop_token::_Stop_state::_M_stopped, stop_token::_Stop_state::_M_mtx):
   8358  1.1  mrg 	Remove.
   8359  1.1  mrg 	(stop_token::_Stop_state::_M_owners): New data member to track
   8360  1.1  mrg 	reference count for ownership.
   8361  1.1  mrg 	(stop_token::_Stop_state::_M_value): New data member combining a
   8362  1.1  mrg 	spinlock, the stop requested flag, and the reference count for
   8363  1.1  mrg 	associated stop_source objects.
   8364  1.1  mrg 	(stop_token::_Stop_state::_M_requester): New data member for
   8365  1.1  mrg 	synchronization with stop_callback destruction.
   8366  1.1  mrg 	(stop_token::_Stop_state::_M_stop_possible()): New member function.
   8367  1.1  mrg 	(stop_token::_Stop_state::_M_stop_requested()): Inspect relevant bit
   8368  1.1  mrg 	of _M_value.
   8369  1.1  mrg 	(stop_token::_Stop_state::_M_add_owner)
   8370  1.1  mrg 	(stop_token::_Stop_state::_M_release_ownership)
   8371  1.1  mrg 	(stop_token::_Stop_state::_M_add_ssrc)
   8372  1.1  mrg 	(stop_token::_Stop_state::_M_sub_ssrc): New member functions for
   8373  1.1  mrg 	updating reference counts.
   8374  1.1  mrg 	(stop_token::_Stop_state::_M_lock, stop_token::_Stop_state::_M_unlock)
   8375  1.1  mrg 	(stop_token::_Stop_state::_M_lock, stop_token::_Stop_state::_M_unlock)
   8376  1.1  mrg 	(stop_token::_Stop_state::_M_try_lock)
   8377  1.1  mrg 	(stop_token::_Stop_state::_M_try_lock_and_stop)
   8378  1.1  mrg 	(stop_token::_Stop_state::_M_do_try_lock): New member functions for
   8379  1.1  mrg 	managing spinlock.
   8380  1.1  mrg 	(stop_token::_Stop_state::_M_request_stop): Use atomic operations to
   8381  1.1  mrg 	read and update state. Release lock while running callbacks. Use new
   8382  1.1  mrg 	data members to synchronize with callback destruction.
   8383  1.1  mrg 	(stop_token::_Stop_state::_M_remove_callback): Likewise.
   8384  1.1  mrg 	(stop_token::_Stop_state::_M_register_callback): Use atomic operations
   8385  1.1  mrg 	to read and update state.
   8386  1.1  mrg 	(stop_token::_Stop_state_ref): Handle type to manage _Stop_state,
   8387  1.1  mrg 	replacing shared_ptr.
   8388  1.1  mrg 	(stop_source::stop_source(const stop_source&)): Update reference count.
   8389  1.1  mrg 	(stop_source::operator=(const stop_source&)): Likewise.
   8390  1.1  mrg 	(stop_source::~stop_source()): Likewise.
   8391  1.1  mrg 	(stop_source::stop_source(stop_source&&)): Define as defaulted.
   8392  1.1  mrg 	(stop_source::operator=(stop_source&&)): Establish postcondition on
   8393  1.1  mrg 	parameter.
   8394  1.1  mrg 	(stop_callback): Enforce preconditions on template parameter. Replace
   8395  1.1  mrg 	base class with data member of new _Cb_impl type.
   8396  1.1  mrg 	(stop_callback::stop_callback(const stop_token&, Cb&&))
   8397  1.1  mrg 	(stop_callback::stop_callback(stop_token&&, Cb&&)): Fix TOCTTOU race.
   8398  1.1  mrg 	(stop_callback::_Cb_impl): New type wrapping _Callback member and
   8399  1.1  mrg 	defining the _S_execute member function.
   8400  1.1  mrg 	* testsuite/30_threads/stop_token/stop_callback/deadlock-mt.cc: New
   8401  1.1  mrg 	test.
   8402  1.1  mrg 	* testsuite/30_threads/stop_token/stop_callback/deadlock.cc: New test.
   8403  1.1  mrg 	* testsuite/30_threads/stop_token/stop_callback/destroy.cc: New test.
   8404  1.1  mrg 	* testsuite/30_threads/stop_token/stop_callback/destructible_neg.cc:
   8405  1.1  mrg 	New test.
   8406  1.1  mrg 	* testsuite/30_threads/stop_token/stop_callback/invocable_neg.cc: New
   8407  1.1  mrg 	test.
   8408  1.1  mrg 	* testsuite/30_threads/stop_token/stop_callback/invoke.cc: New test.
   8409  1.1  mrg 	* testsuite/30_threads/stop_token/stop_source/assign.cc: New test.
   8410  1.1  mrg 	* testsuite/30_threads/stop_token/stop_token/stop_possible.cc: New
   8411  1.1  mrg 	test.
   8412  1.1  mrg 
   8413  1.1  mrg 	* libsupc++/compare (__detail::__3way_builtin_ptr_cmp): Use
   8414  1.1  mrg 	three_way_comparable_with.
   8415  1.1  mrg 	(__detail::__3way_cmp_with): Remove workaround for fixed bug.
   8416  1.1  mrg 	(compare_three_way::operator()): Remove redundant constraint from
   8417  1.1  mrg 	requires-clause.
   8418  1.1  mrg 	(__detail::_Synth3way::operator()): Use three_way_comparable_with
   8419  1.1  mrg 	instead of workaround.
   8420  1.1  mrg 	* testsuite/18_support/comparisons/object/93479.cc: Prune extra
   8421  1.1  mrg 	output due to simplified constraints on compare_three_way::operator().
   8422  1.1  mrg 
   8423  1.1  mrg 	PR libstdc++/93479
   8424  1.1  mrg 	* libsupc++/compare (__3way_builtin_ptr_cmp): Require <=> to be valid.
   8425  1.1  mrg 	* testsuite/18_support/comparisons/object/93479.cc: New test.
   8426  1.1  mrg 
   8427  1.1  mrg 	* testsuite/std/ranges/access/end.cc: Do not assume test_range::end()
   8428  1.1  mrg 	returns the same type as test_range::begin(). Add comments.
   8429  1.1  mrg 	* testsuite/std/ranges/access/rbegin.cc: Likewise.
   8430  1.1  mrg 	* testsuite/std/ranges/access/rend.cc: Likewise.
   8431  1.1  mrg 	* testsuite/std/ranges/range.cc: Do not assume the sentinel for
   8432  1.1  mrg 	test_range is the same as its iterator type.
   8433  1.1  mrg 	* testsuite/util/testsuite_iterators.h (test_range::sentinel): Add
   8434  1.1  mrg 	operator- overloads to satisfy sized_sentinel_for when the iterator
   8435  1.1  mrg 	satisfies random_access_iterator.
   8436  1.1  mrg 
   8437  1.1  mrg 2020-01-28  Jonathan Wakely  <jwakely (a] redhat.com>
   8438  1.1  mrg 
   8439  1.1  mrg 	PR libstdc++/93470
   8440  1.1  mrg 	* include/bits/refwrap.h (reference_wrapper::operator()): Restrict
   8441  1.1  mrg 	static assertion to object types.
   8442  1.1  mrg 
   8443  1.1  mrg 	PR libstdc++/93325
   8444  1.1  mrg 	* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Use AC_SEARCH_LIBS for
   8445  1.1  mrg 	clock_gettime instead of explicit glibc version check.
   8446  1.1  mrg 	* configure: Regenerate.
   8447  1.1  mrg 
   8448  1.1  mrg 2020-01-28  Martin Liska  <mliska (a] suse.cz>
   8449  1.1  mrg 
   8450  1.1  mrg 	PR libstdc++/93478
   8451  1.1  mrg 	* include/std/atomic: Fix typo.
   8452  1.1  mrg 	* include/std/optional: Likewise.
   8453  1.1  mrg 
   8454  1.1  mrg 2020-01-27  Andrew Burgess  <andrew.burgess (a] embecosm.com>
   8455  1.1  mrg 
   8456  1.1  mrg 	* configure: Regenerate.
   8457  1.1  mrg 
   8458  1.1  mrg 2020-01-27  Jonathan Wakely  <jwakely (a] redhat.com>
   8459  1.1  mrg 
   8460  1.1  mrg 	PR libstdc++/93426
   8461  1.1  mrg 	* include/std/span (span): Fix deduction guide.
   8462  1.1  mrg 	* testsuite/23_containers/span/deduction.cc: New test.
   8463  1.1  mrg 
   8464  1.1  mrg 2020-01-24  Jonathan Wakely  <jwakely (a] redhat.com>
   8465  1.1  mrg 
   8466  1.1  mrg 	* libsupc++/compare (__cmp_cat::_Eq): Remove enumeration type.
   8467  1.1  mrg 	(__cmp_cat::_Ord::equivalent): Add enumerator.
   8468  1.1  mrg 	(__cmp_cat::_Ord::_Less, __cmp_cat::_Ord::_Greater): Rename to less
   8469  1.1  mrg 	and greater.
   8470  1.1  mrg 	(partial_ordering, weak_ordering, strong_ordering): Remove
   8471  1.1  mrg 	constructors taking __cmp_cat::_Eq parameters. Use renamed
   8472  1.1  mrg 	enumerators.
   8473  1.1  mrg 
   8474  1.1  mrg 2020-01-24  Maciej W. Rozycki  <macro (a] wdc.com>
   8475  1.1  mrg 
   8476  1.1  mrg 	* acinclude.m4: Handle `--with-toolexeclibdir='.
   8477  1.1  mrg 	* Makefile.in: Regenerate.
   8478  1.1  mrg 	* aclocal.m4: Regenerate.
   8479  1.1  mrg 	* configure: Regenerate.
   8480  1.1  mrg 	* doc/Makefile.in: Regenerate.
   8481  1.1  mrg 	* include/Makefile.in: Regenerate.
   8482  1.1  mrg 	* libsupc++/Makefile.in: Regenerate.
   8483  1.1  mrg 	* po/Makefile.in: Regenerate.
   8484  1.1  mrg 	* python/Makefile.in: Regenerate.
   8485  1.1  mrg 	* src/Makefile.in: Regenerate.
   8486  1.1  mrg 	* src/c++11/Makefile.in: Regenerate.
   8487  1.1  mrg 	* src/c++17/Makefile.in: Regenerate.
   8488  1.1  mrg 	* src/c++98/Makefile.in: Regenerate.
   8489  1.1  mrg 	* src/filesystem/Makefile.in: Regenerate.
   8490  1.1  mrg 	* testsuite/Makefile.in: Regenerate.
   8491  1.1  mrg 
   8492  1.1  mrg 2020-01-23  Alexandre Oliva <oliva (a] adacore.com>
   8493  1.1  mrg 
   8494  1.1  mrg 	* crossconfig.m4 (GLIBCXX_CHECK_MATH_DECL): Reject macros.
   8495  1.1  mrg 	* configure: Rebuild.
   8496  1.1  mrg 
   8497  1.1  mrg 	* testsuite/27_io/fpos/mbstate_t/1.cc: Zero-init mbstate_t.
   8498  1.1  mrg 
   8499  1.1  mrg 2020-01-23  Jonathan Wakely  <jwakely (a] redhat.com>
   8500  1.1  mrg 
   8501  1.1  mrg 	PR libstdc++/91947
   8502  1.1  mrg 	* include/Makefile.am (${host_builddir}/largefile-config.h): Simplify
   8503  1.1  mrg 	rule.
   8504  1.1  mrg 	* include/Makefile.in: Regenerate.
   8505  1.1  mrg 
   8506  1.1  mrg 2020-01-20  Jonathan Wakely  <jwakely (a] redhat.com>
   8507  1.1  mrg 
   8508  1.1  mrg 	* doc/xml/faq.xml: Fix grammar.
   8509  1.1  mrg 	* doc/xml/manual/appendix_contributing.xml: Improve instructions.
   8510  1.1  mrg 	* doc/xml/manual/spine.xml: Update copyright years.
   8511  1.1  mrg 	* doc/html/*: Regenerate.
   8512  1.1  mrg 
   8513  1.1  mrg 2020-01-19  Eric S. Raymond <esr (a] thyrsus.com>
   8514  1.1  mrg 
   8515  1.1  mrg 	* doc/xml/faq.xml: Update for SVN -> Git transition.
   8516  1.1  mrg 	* doc/xml/manual/appendix_contributing.xml: Likewise.
   8517  1.1  mrg 	* doc/xml/manual/status_cxx1998.xml: Likewise.
   8518  1.1  mrg 	* doc/xml/manual/status_cxx2011.xml: Likewise.
   8519  1.1  mrg 	* doc/xml/manual/status_cxx2014.xml: Likewise.
   8520  1.1  mrg 	* doc/xml/manual/status_cxx2017.xml: Likewise.
   8521  1.1  mrg 	* doc/xml/manual/status_cxx2020.xml: Likewise.
   8522  1.1  mrg 	* doc/xml/manual/status_cxxtr1.xml: Likewise.
   8523  1.1  mrg 	* doc/xml/manual/status_cxxtr24733.xml: Likewise.
   8524  1.1  mrg 
   8525  1.1  mrg 2020-01-18  Iain Sandoe  <iain (a] sandoe.co.uk>
   8526  1.1  mrg 
   8527  1.1  mrg 	* include/Makefile.am: Add coroutine to the std set.
   8528  1.1  mrg 	* include/Makefile.in: Regenerated.
   8529  1.1  mrg 	* include/std/coroutine: New file.
   8530  1.1  mrg 
   8531  1.1  mrg 2020-01-17  Jonathan Wakely  <jwakely (a] redhat.com>
   8532  1.1  mrg 
   8533  1.1  mrg 	PR libstdc++/92376
   8534  1.1  mrg 	* include/bits/c++config: Only do PSTL config when the header is
   8535  1.1  mrg 	present, to fix freestanding.
   8536  1.1  mrg 	* libsupc++/new_opa.cc [!_GLIBCXX_HOSTED]: Declare allocation
   8537  1.1  mrg 	functions if they were detected by configure.
   8538  1.1  mrg 
   8539  1.1  mrg 2020-01-16  Kai-Uwe Eckhardt  <kuehro (a] gmx.de>
   8540  1.1  mrg 	    Matthew Bauer  <mjbauer95 (a] gmail.com>
   8541  1.1  mrg 	    Jonathan Wakely  <jwakely (a] redhat.com>
   8542  1.1  mrg 
   8543  1.1  mrg 	PR bootstrap/64271 (partial)
   8544  1.1  mrg 	* config/os/bsd/netbsd/ctype_base.h (ctype_base::mask): Change type
   8545  1.1  mrg 	to unsigned short.
   8546  1.1  mrg 	(ctype_base::alpha, ctype_base::digit, ctype_base::xdigit)
   8547  1.1  mrg 	(ctype_base::print, ctype_base::graph, ctype_base::alnum): Sync
   8548  1.1  mrg 	definitions with NetBSD upstream.
   8549  1.1  mrg 	(ctype_base::blank): Use _CTYPE_BL.
   8550  1.1  mrg 	* config/os/bsd/netbsd/ctype_configure_char.cc (_C_ctype_): Remove
   8551  1.1  mrg 	Declaration.
   8552  1.1  mrg 	(ctype<char>::classic_table): Use _C_ctype_tab_ instead of _C_ctype_.
   8553  1.1  mrg 	(ctype<char>::do_toupper, ctype<char>::do_tolower): Cast char
   8554  1.1  mrg 	parameters to unsigned char.
   8555  1.1  mrg 	* config/os/bsd/netbsd/ctype_inline.h (ctype<char>::is): Likewise.
   8556  1.1  mrg 
   8557  1.1  mrg 2020-01-16  Franois Dumont  <fdumont (a] gcc.gnu.org>
   8558  1.1  mrg 
   8559  1.1  mrg 	PR libstdc++/91263
   8560  1.1  mrg 	* include/bits/hashtable.h (_Hashtable<>): Make _Equality<> friend.
   8561  1.1  mrg 	* include/bits/hashtable_policy.h: Include <bits/stl_algo.h>.
   8562  1.1  mrg 	(_Equality_base): Remove.
   8563  1.1  mrg 	(_Equality<>::_M_equal): Review implementation. Use
   8564  1.1  mrg 	std::is_permutation.
   8565  1.1  mrg 	* testsuite/23_containers/unordered_multiset/operators/1.cc
   8566  1.1  mrg 	(Hash, Equal, test02, test03): New.
   8567  1.1  mrg 	* testsuite/23_containers/unordered_set/operators/1.cc
   8568  1.1  mrg 	(Hash, Equal, test02, test03): New.
   8569  1.1  mrg 
   8570  1.1  mrg 2020-01-15  Jonathan Wakely  <jwakely (a] redhat.com>
   8571  1.1  mrg 
   8572  1.1  mrg 	PR libstdc++/93267
   8573  1.1  mrg 	* include/bits/iterator_concepts.h (__max_diff_type, __max_size_type):
   8574  1.1  mrg 	Move here from <bits/range_access.h> and define using __int128 when
   8575  1.1  mrg 	available.
   8576  1.1  mrg 	(__is_integer_like, __is_signed_integer_like): Move here from
   8577  1.1  mrg 	<bits/range_access.h>.
   8578  1.1  mrg 	(weakly_incrementable): Use __is_signed_integer_like.
   8579  1.1  mrg 	* include/bits/range_access.h (__max_diff_type, __max_size_type)
   8580  1.1  mrg 	(__is_integer_like, __is_signed_integer_like): Move to
   8581  1.1  mrg 	<bits/iterator_concepts.h>.
   8582  1.1  mrg 	(__make_unsigned_like_t): Move here from <ranges>.
   8583  1.1  mrg 	* include/std/ranges (__make_unsigned_like_t): Move to
   8584  1.1  mrg 	<bits/range_access.h>.
   8585  1.1  mrg 	(iota_view): Replace using-directive with using-declarations.
   8586  1.1  mrg 	* testsuite/std/ranges/iota/93267.cc: New test.
   8587  1.1  mrg 	* testsuite/std/ranges/iota_view.cc: Move to new 'iota' sub-directory.
   8588  1.1  mrg 
   8589  1.1  mrg 2020-01-13  Jonathan Wakely  <jwakely (a] redhat.com>
   8590  1.1  mrg 
   8591  1.1  mrg 	PR libstdc++/93244
   8592  1.1  mrg 	* include/bits/fs_path.h (path::generic_string<C,A>)
   8593  1.1  mrg 	[_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Convert root-dir to forward-slash.
   8594  1.1  mrg 	* testsuite/27_io/filesystem/path/generic/generic_string.cc: Check
   8595  1.1  mrg 	root-dir is converted to forward slash in generic pathname.
   8596  1.1  mrg 	* testsuite/27_io/filesystem/path/generic/utf.cc: New test.
   8597  1.1  mrg 	* testsuite/27_io/filesystem/path/generic/wchar_t.cc: New test.
   8598  1.1  mrg 
   8599  1.1  mrg 	PR libstdc++/58605
   8600  1.1  mrg 	* include/bits/atomic_base.h (__cpp_lib_atomic_value_initialization):
   8601  1.1  mrg 	Define.
   8602  1.1  mrg 	(__atomic_flag_base, __atomic_base, __atomic_base<_PTp*>)
   8603  1.1  mrg 	(__atomic_float): Add default member initializer for C++20.
   8604  1.1  mrg 	* include/std/atomic (atomic): Likewise.
   8605  1.1  mrg 	(atomic::atomic()): Remove noexcept-specifier on default constructor.
   8606  1.1  mrg 	* include/std/version (__cpp_lib_atomic_value_initialization): Define.
   8607  1.1  mrg 	* testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error line
   8608  1.1  mrg 	number.
   8609  1.1  mrg 	* testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
   8610  1.1  mrg 	* testsuite/29_atomics/atomic/cons/value_init.cc: New test.
   8611  1.1  mrg 	* testsuite/29_atomics/atomic_flag/cons/value_init.cc: New test.
   8612  1.1  mrg 	* testsuite/29_atomics/atomic_flag/requirements/trivial.cc: Adjust
   8613  1.1  mrg 	expected result for is_trivially_default_constructible.
   8614  1.1  mrg 	* testsuite/29_atomics/atomic_float/requirements.cc: Likewise.
   8615  1.1  mrg 	* testsuite/29_atomics/atomic_float/value_init.cc: New test.
   8616  1.1  mrg 	* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
   8617  1.1  mrg 	* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
   8618  1.1  mrg 	* testsuite/29_atomics/atomic_integral/cons/value_init.cc
   8619  1.1  mrg 	* testsuite/29_atomics/atomic_integral/requirements/trivial.cc: Adjust
   8620  1.1  mrg 	expected results for is_trivially_default_constructible.
   8621  1.1  mrg 	* testsuite/util/testsuite_common_types.h (has_trivial_dtor): Add
   8622  1.1  mrg 	new test generator.
   8623  1.1  mrg 
   8624  1.1  mrg 2020-01-10  Jonathan Wakely  <jwakely (a] redhat.com>
   8625  1.1  mrg 
   8626  1.1  mrg 	* testsuite/util/testsuite_iterators.h: Improve comment.
   8627  1.1  mrg 
   8628  1.1  mrg 	* testsuite/25_algorithms/equal/deque_iterators/1.cc: Don't use C++11
   8629  1.1  mrg 	initialization syntax.
   8630  1.1  mrg 
   8631  1.1  mrg 	PR libstdc++/92285
   8632  1.1  mrg 	* include/bits/streambuf_iterator.h (istreambuf_iterator): Make type
   8633  1.1  mrg 	of base class independent of __cplusplus value.
   8634  1.1  mrg 	[__cplusplus < 201103L] (istreambuf_iterator::reference): Override the
   8635  1.1  mrg 	type defined in the base class
   8636  1.1  mrg 	* testsuite/24_iterators/istreambuf_iterator/92285.cc: New test.
   8637  1.1  mrg 	* testsuite/24_iterators/istreambuf_iterator/requirements/
   8638  1.1  mrg 	base_classes.cc: Adjust expected base class for C++98.
   8639  1.1  mrg 
   8640  1.1  mrg 2020-01-09  Olivier Hainque  <hainque (a] adacore.com>
   8641  1.1  mrg 
   8642  1.1  mrg 	* doc/xml/manual/appendix_contributing.xml: Document _C2
   8643  1.1  mrg 	as a reserved identifier, by VxWorks.
   8644  1.1  mrg 	* include/bits/stl_map.h: Rename _C2 template typenames	as _Cmp2.
   8645  1.1  mrg 	* include/bits/stl_multimap.h: Likewise.
   8646  1.1  mrg 
   8647  1.1  mrg 2020-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   8648  1.1  mrg 
   8649  1.1  mrg 	* include/ext/extptr_allocator.h (_ExtPtr_allocator::operator==)
   8650  1.1  mrg 	(_ExtPtr_allocator::operator!=): Add missing const qualifiers.
   8651  1.1  mrg 	* include/ext/pointer.h (readable_traits<_Pointer_adapter<S>>): Add
   8652  1.1  mrg 	partial specialization to disambiguate the two constrained
   8653  1.1  mrg 	specializations.
   8654  1.1  mrg 
   8655  1.1  mrg 	* include/experimental/type_traits (experimental::is_pod_v): Disable
   8656  1.1  mrg 	-Wdeprecated-declarations warnings around reference to std::is_pod.
   8657  1.1  mrg 	* include/std/type_traits (is_pod_v): Likewise.
   8658  1.1  mrg 	* testsuite/18_support/max_align_t/requirements/2.cc: Also check
   8659  1.1  mrg 	is_standard_layout and is_trivial. Do not check is_pod for C++20.
   8660  1.1  mrg 	* testsuite/20_util/is_pod/requirements/explicit_instantiation.cc:
   8661  1.1  mrg 	Add -Wno-deprecated for C++20.
   8662  1.1  mrg 	* testsuite/20_util/is_pod/requirements/typedefs.cc: Likewise.
   8663  1.1  mrg 	* testsuite/20_util/is_pod/value.cc: Likewise.
   8664  1.1  mrg 	* testsuite/experimental/type_traits/value.cc: Likewise.
   8665  1.1  mrg 
   8666  1.1  mrg 2020-01-09  JeanHeyd "ThePhD" Meneide  <phdofthehouse (a] gmail.com>
   8667  1.1  mrg 
   8668  1.1  mrg 	* include/bits/c++config (_GLIBCXX20_DEPRECATED): Add new macro.
   8669  1.1  mrg 	* include/std/type_traits (is_pod, is_pod_v): Deprecate for C++20.
   8670  1.1  mrg 	* testuite/20_util/is_pod/deprecated-2a.cc: New test.
   8671  1.1  mrg 
   8672  1.1  mrg 2020-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   8673  1.1  mrg 
   8674  1.1  mrg 	PR libstdc++/93205
   8675  1.1  mrg 	* include/bits/random.h (operator>>): Check stream operation succeeds.
   8676  1.1  mrg 	* include/bits/random.tcc (operator<<): Remove redundant __ostream_type
   8677  1.1  mrg 	typedefs.
   8678  1.1  mrg 	(operator>>): Remove redundant __istream_type typedefs. Check stream
   8679  1.1  mrg 	operations succeed.
   8680  1.1  mrg 	(__extract_params): New function to fill a vector from a stream.
   8681  1.1  mrg 	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error line.
   8682  1.1  mrg 
   8683  1.1  mrg 	PR libstdc++/93208
   8684  1.1  mrg 	* config/abi/pre/gnu.ver: Add new exports.
   8685  1.1  mrg 	* include/std/memory_resource (memory_resource::~memory_resource()):
   8686  1.1  mrg 	Do not define inline.
   8687  1.1  mrg 	(monotonic_buffer_resource::~monotonic_buffer_resource()): Likewise.
   8688  1.1  mrg 	* src/c++17/memory_resource.cc (memory_resource::~memory_resource()):
   8689  1.1  mrg 	Define.
   8690  1.1  mrg 	(monotonic_buffer_resource::~monotonic_buffer_resource()): Define.
   8691  1.1  mrg 	* testsuite/20_util/monotonic_buffer_resource/93208.cc: New test.
   8692  1.1  mrg 
   8693  1.1  mrg 2020-01-09  Franois Dumont  <fdumont (a] gcc.gnu.org>
   8694  1.1  mrg 
   8695  1.1  mrg 	PR libstdc++/92124
   8696  1.1  mrg 	* include/bits/hashtable.h (_Hashtable<>::__alloc_node_gen_t): New
   8697  1.1  mrg 	template alias.
   8698  1.1  mrg 	(_Hashtable<>::__fwd_value_for): New.
   8699  1.1  mrg 	(_Hashtable<>::_M_assign_elements<>): Remove _NodeGenerator template
   8700  1.1  mrg 	parameter.
   8701  1.1  mrg 	(_Hashtable<>::_M_assign<>): Add _Ht template parameter.
   8702  1.1  mrg 	(_Hashtable<>::operator=(const _Hashtable<>&)): Adapt.
   8703  1.1  mrg 	(_Hashtable<>::_M_move_assign): Adapt. Replace std::move_if_noexcept
   8704  1.1  mrg 	with std::move.
   8705  1.1  mrg 	(_Hashtable<>::_Hashtable(const _Hashtable&)): Adapt.
   8706  1.1  mrg 	(_Hashtable<>::_Hashtable(const _Hashtable&, const allocator_type&)):
   8707  1.1  mrg 	Adapt.
   8708  1.1  mrg 	(_Hashtable<>::_Hashtable(_Hashtable&&, const allocator_type&)):
   8709  1.1  mrg 	Adapt.
   8710  1.1  mrg 	* testsuite/23_containers/unordered_set/92124.cc: New.
   8711  1.1  mrg 
   8712  1.1  mrg 2020-01-08  Jonathan Wakely  <jwakely (a] redhat.com>
   8713  1.1  mrg 
   8714  1.1  mrg 	PR libstdc++/93201
   8715  1.1  mrg 	* src/c++17/fs_ops.cc (do_remove_all): New function implementing more
   8716  1.1  mrg 	detailed error reporting for remove_all. Check result of recursive
   8717  1.1  mrg 	call before incrementing iterator.
   8718  1.1  mrg 	(remove_all(const path&), remove_all(const path&, error_code&)): Use
   8719  1.1  mrg 	do_remove_all.
   8720  1.1  mrg 	* src/filesystem/ops.cc (remove_all(const path&, error_code&)): Check
   8721  1.1  mrg 	result of recursive call before incrementing iterator.
   8722  1.1  mrg 	* testsuite/27_io/filesystem/operations/remove_all.cc: Check errors
   8723  1.1  mrg 	are reported correctly.
   8724  1.1  mrg 	* testsuite/experimental/filesystem/operations/remove_all.cc: Likewise.
   8725  1.1  mrg 
   8726  1.1  mrg 2020-01-07  Thomas Rodgers  <trodgers (a] redhat.com>
   8727  1.1  mrg 
   8728  1.1  mrg 	* include/std/condition_variable
   8729  1.1  mrg 	(condition_variable_any::wait_on): Rename to match current draft
   8730  1.1  mrg 	standard.
   8731  1.1  mrg 	(condition_variable_any::wait_on_until): Likewise.
   8732  1.1  mrg 	(condition_variable_any::wait_on_for): Likewise.
   8733  1.1  mrg 	* testsuite/30_threads/condition_variable_any/stop_token/wait_on.cc:
   8734  1.1  mrg 	Adjust tests to account for renamed methods.
   8735  1.1  mrg 
   8736  1.1  mrg 2020-01-07  Franois Dumont  <fdumont (a] gcc.gnu.org>
   8737  1.1  mrg 
   8738  1.1  mrg 	PR libstdc++/92124
   8739  1.1  mrg 	* include/bits/stl_tree.h
   8740  1.1  mrg 	(_Rb_tree<>::_M_move_assign(_Rb_tree&, false_type)): Replace
   8741  1.1  mrg 	std::move_if_noexcept by std::move.
   8742  1.1  mrg 	* testsuite/23_containers/map/92124.cc: New.
   8743  1.1  mrg 	* testsuite/23_containers/set/92124.cc: New.
   8744  1.1  mrg 
   8745  1.1  mrg 2020-01-06  Jonathan Wakely  <jwakely (a] redhat.com>
   8746  1.1  mrg 
   8747  1.1  mrg 	* include/std/stop_token (stop_token): Remove operator!= (LWG 3254).
   8748  1.1  mrg 	(stop_source): Likewise (LWG 3362).
   8749  1.1  mrg 	* testsuite/30_threads/stop_token/stop_source.cc: Test equality
   8750  1.1  mrg 	comparisons.
   8751  1.1  mrg 
   8752  1.1  mrg 	* include/bits/stl_algobase.h (__is_byte_iter, __min_cmp)
   8753  1.1  mrg 	(lexicographical_compare_three_way): Do not depend on
   8754  1.1  mrg 	__cpp_lib_concepts.
   8755  1.1  mrg 	* include/std/version (__cpp_lib_three_way_comparison): Only define
   8756  1.1  mrg 	when __cpp_lib_concepts is defined.
   8757  1.1  mrg 	* libsupc++/compare (__cpp_lib_three_way_comparison): Likewise.
   8758  1.1  mrg 
   8759  1.1  mrg 2020-01-03  Jonathan Wakely  <jwakely (a] redhat.com>
   8760  1.1  mrg 
   8761  1.1  mrg 	* include/bits/stl_algobase.h (lexicographical_compare_three_way):
   8762  1.1  mrg 	Only define four-argument overload when __cpp_lib_concepts is defined.
   8763  1.1  mrg 
   8764  1.1  mrg 2020-01-01  John David Anglin  <danglin (a] gcc.gnu.org>
   8765  1.1  mrg 
   8766  1.1  mrg 	* config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
   8767  1.1  mrg 
   8768  1.1  mrg 2020-01-01  Jakub Jelinek  <jakub (a] redhat.com>
   8769  1.1  mrg 
   8770  1.1  mrg 	Update copyright years.
   8771  1.1  mrg 
   8773  1.1  mrg Copyright (C) 2020 Free Software Foundation, Inc.
   8774  1.1  mrg 
   8775  1.1  mrg Copying and distribution of this file, with or without modification,
   8776  1.1  mrg are permitted in any medium without royalty provided the copyright
   8777           notice and this notice are preserved.
   8778