[libcxx-commits] [PATCH] D101674: [libc++] [LIBCXX-DEBUG-FIXME] Constexpr char_traits::copy mustn't compare unrelated pointers.

Arthur O'Dwyer via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Thu Sep 9 18:36:59 PDT 2021


Quuxplusone updated this revision to Diff 371762.
Quuxplusone edited the summary of this revision.
Quuxplusone added a reviewer: Mordante.
Quuxplusone added a comment.

Now that __builtin_is_constant_evaluated() is present on all supported
compilers, we can use it to skip the UB-inducing assert in cases where
the computation might be happening at constexpr time.

@ldionne ping!


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D101674

Files:
  libcxx/include/__string
  libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char/copy.pass.cpp
  libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char16_t/copy.pass.cpp
  libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char32_t/copy.pass.cpp
  libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/copy.pass.cpp
  libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.wchar.t/copy.pass.cpp
  libcxx/test/std/strings/string.view/string.view.ops/copy.pass.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D101674.371762.patch
Type: text/x-patch
Size: 7039 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20210910/0359b25b/attachment.bin>


More information about the libcxx-commits mailing list