[libcxx-commits] [libcxx] [libc++][WIP] ADL-proof `std::__wrap_iter` (PR #107766)
A. Jiang via libcxx-commits
libcxx-commits at lists.llvm.org
Fri Apr 11 03:05:51 PDT 2025
================
@@ -98,6 +98,14 @@
// and WCHAR_MAX. This ABI setting determines whether we should instead track whether the fill
// value has been initialized using a separate boolean, which changes the ABI.
# define _LIBCPP_ABI_IOS_ALLOW_ARBITRARY_FILL_VALUE
+// Change std::__wrap_iter<T> to not associate the namespaces associated with
+// T when unqualified lookup (e.g., with operators) is done. Also make it so
+// only std::__wrap_iter<pointer> and std::__wrap_iter<const_pointer> can
+// be used together (for comparison, conversion, etc.) instead of with any
+// wrapped iterator. So comprison between std::__wrap_iter<fancy_pointer<T>>
+// and std::__wrap_iter<T*> will no longer compile even if fancy_pointer<T>
+// is comparable with T*.
----------------
frederick-vs-ja wrote:
FYI I resolved most of the "Also..." part in #115271. The changes weren't ABI breaking, perhaps.
https://github.com/llvm/llvm-project/pull/107766
More information about the libcxx-commits
mailing list