[libcxx-commits] [PATCH] D101638: [libc++] std::to_address mustn't depend on P::element_type.

Louis Dionne via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed May 5 09:46:26 PDT 2021


ldionne updated this revision to Diff 343092.
ldionne added a comment.

Fix Clang failure and add test case. Basically the issue was a subtle
case where we'd instantiate SFINAE checks too early even when the raw
pointer should have been selected right away.

That is not an issue when writing to_address to the spec, because it uses
auto-deduced return type instead, which doesn't require instantiating the
fancy pointer checking helper class during template argument deduction.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D101638/new/

https://reviews.llvm.org/D101638

Files:
  libcxx/include/__memory/pointer_traits.h
  libcxx/include/iterator
  libcxx/test/libcxx/utilities/memory/pointer.conversion/to_address.pass.cpp
  libcxx/test/libcxx/utilities/memory/pointer.conversion/to_address_std_iterators.pass.cpp
  libcxx/test/std/utilities/memory/pointer.conversion/to_address.pass.cpp
  libcxx/test/std/utilities/memory/pointer.conversion/to_address_std_iterators.pass.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D101638.343092.patch
Type: text/x-patch
Size: 16032 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20210505/5439994c/attachment-0001.bin>


More information about the libcxx-commits mailing list