diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2020-09-07 20:09:17 +0100 |
---|---|---|
committer | Jonathan Wakely <jwakely@redhat.com> | 2020-09-07 20:09:17 +0100 |
commit | 00ffe730072f5e2e1923692163dc37db7b3784cb (patch) | |
tree | b08c7da59a99cecb1ca705f3b1dee9e94fe1805f | |
parent | e147bb0faad95ed8699c426484ed3dd026fd3366 (diff) | |
download | gcc-00ffe730072f5e2e1923692163dc37db7b3784cb.zip gcc-00ffe730072f5e2e1923692163dc37db7b3784cb.tar.gz gcc-00ffe730072f5e2e1923692163dc37db7b3784cb.tar.bz2 |
libstdc++: Simplify constraints for semiregular-box [LWG 3477]
libstdc++-v3/ChangeLog:
* include/std/ranges (__box): Simplify constraints as per LWG 3477.
-rw-r--r-- | libstdc++-v3/include/std/ranges | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libstdc++-v3/include/std/ranges b/libstdc++-v3/include/std/ranges index 054ffe8..23a04d6 100644 --- a/libstdc++-v3/include/std/ranges +++ b/libstdc++-v3/include/std/ranges @@ -494,10 +494,12 @@ namespace ranges using std::optional<_Tp>::operator=; + // _GLIBCXX_RESOLVE_LIB_DEFECTS + // 3477. Simplify constraints for semiregular-box __box& operator=(const __box& __that) noexcept(is_nothrow_copy_constructible_v<_Tp>) - requires (!assignable_from<_Tp&, const _Tp&>) + requires (!copyable<_Tp>) { if ((bool)__that) this->emplace(*__that); @@ -509,7 +511,7 @@ namespace ranges __box& operator=(__box&& __that) noexcept(is_nothrow_move_constructible_v<_Tp>) - requires (!assignable_from<_Tp&, _Tp>) + requires (!movable<_Tp>) { if ((bool)__that) this->emplace(std::move(*__that)); |