From 59aa9e577eb2b182374f5421828687c93b81ad3d Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Wed, 19 Feb 2020 16:43:07 +0000 Subject: [PATCH] libstdc++: ranges::iter_move should perform ADL-only lookup (LWG 3247) * include/bits/iterator_concepts.h (iter_move): Add declaration to prevent unqualified lookup finding a suitable declaration (LWG 3247). --- libstdc++-v3/ChangeLog | 3 +++ libstdc++-v3/include/bits/iterator_concepts.h | 2 ++ 2 files changed, 5 insertions(+) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 067cf8343f6..689bee8c2a9 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,8 @@ 2020-02-19 Jonathan Wakely + * include/bits/iterator_concepts.h (iter_move): Add declaration to + prevent unqualified lookup finding a suitable declaration (LWG 3247). + * include/std/memory_resource (polymorphic_allocator::allocate) (polymorphic_allocator::allocate_object): Change type of exception to bad_array_new_length (LWG 3237). diff --git a/libstdc++-v3/include/bits/iterator_concepts.h b/libstdc++-v3/include/bits/iterator_concepts.h index 792b3262106..08e622259b4 100644 --- a/libstdc++-v3/include/bits/iterator_concepts.h +++ b/libstdc++-v3/include/bits/iterator_concepts.h @@ -79,6 +79,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { namespace __cust_imove { + void iter_move(); + template concept __adl_imove = (std::__detail::__class_or_enum>) -- 2.30.2