[all-commits] [llvm/llvm-project] df81bb: [libc++] [LIBCXX-DEBUG-FIXME] Constexpr char_trait...

Quuxplusone via All-commits all-commits at lists.llvm.org
Mon Sep 20 11:45:16 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: df81bb71aa452c677984fbeb7c34e8a77ec3e83b
      https://github.com/llvm/llvm-project/commit/df81bb71aa452c677984fbeb7c34e8a77ec3e83b
  Author: Arthur O'Dwyer <arthur.j.odwyer at gmail.com>
  Date:   2021-09-20 (Mon, 20 Sep 2021)

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

  Log Message:
  -----------
  [libc++] [LIBCXX-DEBUG-FIXME] Constexpr char_traits::copy mustn't compare unrelated pointers.

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.

Differential Revision: https://reviews.llvm.org/D101674




More information about the All-commits mailing list