[libcxx-commits] [libcxx] d6d5026 - [libc++] Avoid transitive inclusion for `<__algorithm/find.h>` (#162508)

via libcxx-commits libcxx-commits at lists.llvm.org
Thu Oct 9 02:58:03 PDT 2025


Author: A. Jiang
Date: 2025-10-09T17:57:59+08:00
New Revision: d6d5026b5107b940d7a7853ab16480f83c14384d

URL: https://github.com/llvm/llvm-project/commit/d6d5026b5107b940d7a7853ab16480f83c14384d
DIFF: https://github.com/llvm/llvm-project/commit/d6d5026b5107b940d7a7853ab16480f83c14384d.diff

LOG: [libc++] Avoid transitive inclusion for `<__algorithm/find.h>` (#162508)

Currently, `size_t` and `__libcpp_is_constant_evaluated` are obtained by
transitive inclusion in `<__algorithm/find.h>` when `<cwchar>` is not
included. This broke module build when `_LIBCPP_HAS_WIDE_CHARACTERS` is
`1` and caused CI failure. We should explicitly include the
corresponding internal headers.

Added: 
    

Modified: 
    libcxx/include/__algorithm/find.h

Removed: 
    


################################################################################
diff  --git a/libcxx/include/__algorithm/find.h b/libcxx/include/__algorithm/find.h
index 72e201a3c693b..10379d7074c3a 100644
--- a/libcxx/include/__algorithm/find.h
+++ b/libcxx/include/__algorithm/find.h
@@ -17,12 +17,14 @@
 #include <__bit/countr.h>
 #include <__bit/invert_if.h>
 #include <__config>
+#include <__cstddef/size_t.h>
 #include <__functional/identity.h>
 #include <__fwd/bit_reference.h>
 #include <__iterator/segmented_iterator.h>
 #include <__string/constexpr_c_functions.h>
 #include <__type_traits/enable_if.h>
 #include <__type_traits/invoke.h>
+#include <__type_traits/is_constant_evaluated.h>
 #include <__type_traits/is_equality_comparable.h>
 #include <__type_traits/is_integral.h>
 #include <__type_traits/is_signed.h>


        


More information about the libcxx-commits mailing list