[libcxx-commits] [PATCH] D106567: [WIP] poke buildkite, not for review
Arthur O'Dwyer via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Jul 22 10:40:21 PDT 2021
Quuxplusone updated this revision to Diff 360878.
Quuxplusone added a comment.
Having confirmed the "Modular build" step fails with the original patch ( https://buildkite.com/llvm-project/libcxx-ci/builds/4430#9311f9f8-91ca-4465-a9b1-0ca67dd641ca ), now try it with `__function_like` non-private (to match `__hash_table` etc).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D106567/new/
https://reviews.llvm.org/D106567
Files:
libcxx/include/__iterator/advance.h
libcxx/include/module.modulemap
libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/special_function.compile.pass.cpp
libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.next/special_function.compile.pass.cpp
libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.prev/special_function.compile.pass.cpp
Index: libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.prev/special_function.compile.pass.cpp
===================================================================
--- libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.prev/special_function.compile.pass.cpp
+++ libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.prev/special_function.compile.pass.cpp
@@ -10,12 +10,6 @@
// UNSUPPORTED: libcpp-no-concepts
// UNSUPPORTED: gcc-10
-// Clang has a bug when modules are enabled that causes `__function_like::operator&`
-// not to be picked up by the derived class.
-// XFAIL: clang-11 && modules-build
-// XFAIL: clang-12 && modules-build
-// XFAIL: clang-13 && modules-build
-
// ranges::prev
#include <iterator>
Index: libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.next/special_function.compile.pass.cpp
===================================================================
--- libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.next/special_function.compile.pass.cpp
+++ libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.next/special_function.compile.pass.cpp
@@ -10,12 +10,6 @@
// UNSUPPORTED: libcpp-no-concepts
// UNSUPPORTED: gcc-10
-// Clang has a bug when modules are enabled that causes `__function_like::operator&`
-// not to be picked up by the derived class.
-// XFAIL: clang-11 && modules-build
-// XFAIL: clang-12 && modules-build
-// XFAIL: clang-13 && modules-build
-
// ranges::next
#include <iterator>
Index: libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/special_function.compile.pass.cpp
===================================================================
--- libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/special_function.compile.pass.cpp
+++ libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/special_function.compile.pass.cpp
@@ -10,12 +10,6 @@
// UNSUPPORTED: libcpp-no-concepts
// UNSUPPORTED: gcc-10
-// Clang has a bug when modules are enabled that causes `__function_like::operator&`
-// not to be picked up by the derived class.
-// XFAIL: clang-11 && modules-build
-// XFAIL: clang-12 && modules-build
-// XFAIL: clang-13 && modules-build
-
// ranges::advance
#include <iterator>
Index: libcxx/include/module.modulemap
===================================================================
--- libcxx/include/module.modulemap
+++ libcxx/include/module.modulemap
@@ -773,7 +773,7 @@
module __bits { private header "__bits" export * }
module __debug { header "__debug" export * }
module __errc { private header "__errc" export * }
- module __function_like { private header "__function_like.h" export * }
+ module __function_like { header "__function_like.h" export * }
module __hash_table { header "__hash_table" export * }
module __locale { private header "__locale" export * }
module __mutex_base { private header "__mutex_base" export * }
Index: libcxx/include/__iterator/advance.h
===================================================================
--- libcxx/include/__iterator/advance.h
+++ libcxx/include/__iterator/advance.h
@@ -16,11 +16,11 @@
#include <__iterator/concepts.h>
#include <__iterator/incrementable_traits.h>
#include <__iterator/iterator_traits.h>
+#include <__utility/move.h>
#include <cstdlib>
#include <concepts>
#include <limits>
#include <type_traits>
-#include <utility>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
#pragma GCC system_header
@@ -129,7 +129,7 @@
constexpr void operator()(_Ip& __i, _Sp __bound) const {
// If `I` and `S` model `assignable_from<I&, S>`, equivalent to `i = std::move(bound)`.
if constexpr (assignable_from<_Ip&, _Sp>) {
- __i = std::move(__bound);
+ __i = _VSTD::move(__bound);
}
// Otherwise, if `S` and `I` model `sized_sentinel_for<S, I>`, equivalent to `ranges::advance(i, bound - i)`.
else if constexpr (sized_sentinel_for<_Sp, _Ip>) {
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D106567.360878.patch
Type: text/x-patch
Size: 4222 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20210722/5e42b420/attachment.bin>
More information about the libcxx-commits
mailing list