libstdc++: Add comparison operators to types from Utilities clause
authorJonathan Wakely <jwakely@redhat.com>
Wed, 15 Apr 2020 18:47:48 +0000 (19:47 +0100)
committerJonathan Wakely <jwakely@redhat.com>
Wed, 15 Apr 2020 18:47:48 +0000 (19:47 +0100)
commit596676d66cab21e5ed85669e737af5b62f067d57
tree3ee36a74c869d33d9a1b0745e061df54eec7edf6
parent4714fd14afadbfdab0cc76a8b3fdf7a8161e0ebe
libstdc++: Add comparison operators to types from Utilities clause

Some more C++20 changes from P1614R2, "The Mothership has Landed".

This removes all redundant equality and inequality operators in the
Utilities clause, as they can be synthesized from the remaining equality
operators.

It also removes the single redundant operator in the Localization
clause, because it didn't seem worth doing in a separate commit.

* include/bits/allocator.h (operator!=): Do not define for C++20.
* include/bits/locale_classes.h (operator!=): Likewise.
* include/bits/std_function.h (operator==(nullptr_t, const function&))
(operator!=(const function&, nullptr_t))
(operator!=(nullptr_t, const function&)): Likewise.
* include/ext/bitmap_allocator.h (operator!=): Likewise.
* include/ext/debug_allocator.h (operator!=): Likewise.
* include/ext/extptr_allocator.h (operator!=): Likewise.
* include/ext/malloc_allocator.h (operator!=): Likewise.
* include/ext/mt_allocator.h (operator!=): Likewise.
* include/ext/new_allocator.h (operator!=): Likewise.
* include/ext/pool_allocator.h (operator!=): Likewise.
* include/ext/throw_allocator.h (operator!=): Likewise.
* include/std/bitset (bitset::operator!=): Likewise.
* include/std/memory_resource (operator!=): Likewise.
* include/std/scoped_allocator (operator!=): Likewise.
15 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/allocator.h
libstdc++-v3/include/bits/locale_classes.h
libstdc++-v3/include/bits/std_function.h
libstdc++-v3/include/ext/bitmap_allocator.h
libstdc++-v3/include/ext/debug_allocator.h
libstdc++-v3/include/ext/extptr_allocator.h
libstdc++-v3/include/ext/malloc_allocator.h
libstdc++-v3/include/ext/mt_allocator.h
libstdc++-v3/include/ext/new_allocator.h
libstdc++-v3/include/ext/pool_allocator.h
libstdc++-v3/include/ext/throw_allocator.h
libstdc++-v3/include/std/bitset
libstdc++-v3/include/std/memory_resource
libstdc++-v3/include/std/scoped_allocator