[libcxx-commits] [libcxx] [libc++] Add input validation for set_intersection() in debug mode. (PR #101508)
Iuri Chaer via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Aug 6 05:23:46 PDT 2024
================
@@ -95,6 +98,14 @@ __set_intersection(
_Compare&& __comp,
std::forward_iterator_tag,
std::forward_iterator_tag) {
+#if _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_DEBUG
+ if (!__libcpp_is_constant_evaluated()) {
----------------
ichaer wrote:
Because`__builtin_expect()`, which`_LIBCPP_ASSERT()` expands to, can't be constant-evaluated. I learned that from a compilation error, btw.
https://github.com/llvm/llvm-project/pull/101508
More information about the libcxx-commits
mailing list