[libcxx-commits] [libcxx] [libc++] Make forward_list constexpr as part of P3372R3 (PR #129435)
via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Jun 5 13:11:52 PDT 2025
github-actions[bot] wrote:
<!--LLVM CODE FORMAT COMMENT: {clang-format}-->
:warning: C/C++ code formatter, clang-format found issues in your code. :warning:
<details>
<summary>
You can test this locally with the following command:
</summary>
``````````bash
git-clang-format --diff HEAD~1 HEAD --extensions ,cpp,h -- libcxx/include/__memory/allocation_guard.h libcxx/include/__memory/pointer_traits.h libcxx/include/forward_list libcxx/include/version libcxx/test/std/containers/sequences/forwardlist/compare.three_way.pass.cpp libcxx/test/std/containers/sequences/forwardlist/empty.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.access/front.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/alloc.compile.fail.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/alloc.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_copy.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_range.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_size_value.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/copy.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/copy_alloc.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/default.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/from_range.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/range.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/range_alloc.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size_value.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size_value_alloc.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.erasure/erase.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.erasure/erase_if.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.iter/before_begin.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.iter/iterators.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/assign_range.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/clear.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_many.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_one.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_const.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_range.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_size_value.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_range_after.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/prepend_range.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_const.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_exception_safety.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/resize_size.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/resize_size_value.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue_pred.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue_pred.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/remove.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/remove_if.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/reverse.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_flist.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_one.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_range.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/unique.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/unique_pred.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/equal.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/member_swap.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/non_member_swap.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/relational.pass.cpp libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/swap_noexcept.pass.cpp libcxx/test/std/containers/sequences/forwardlist/get_allocator.pass.cpp libcxx/test/std/containers/sequences/forwardlist/incomplete.pass.cpp libcxx/test/std/containers/sequences/forwardlist/max_size.pass.cpp libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.compile.pass.cpp libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp libcxx/test/support/counting_predicates.h
``````````
</details>
<details>
<summary>
View the diff from clang-format here.
</summary>
``````````diff
diff --git a/libcxx/include/__memory/pointer_traits.h b/libcxx/include/__memory/pointer_traits.h
index 2744fee24..879b387b9 100644
--- a/libcxx/include/__memory/pointer_traits.h
+++ b/libcxx/include/__memory/pointer_traits.h
@@ -304,8 +304,8 @@ concept __resettable_smart_pointer_with_args = requires(_Smart __s, _Pointer __p
// This function ensures safe conversions between fancy pointers at compile-time, where we avoid casts from/to
// `__void_pointer` by obtaining the underlying raw pointer from the fancy pointer using `std::to_address`,
-// then dereferencing it to retrieve the pointed-to object, and finally constructing the target fancy pointer
-// to that object using the `std::pointer_traits<>::pinter_to` function.
+// then dereferencing it to retrieve the pointed-to object, and finally constructing the target fancy pointer
+// to that object using the `std::pointer_traits<>::pinter_to` function.
template <class _PtrTo, class _PtrFrom>
_LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI _PtrTo __static_fancy_pointer_cast(const _PtrFrom& __p) {
using __ptr_traits = pointer_traits<_PtrTo>;
diff --git a/libcxx/include/forward_list b/libcxx/include/forward_list
index a4e986733..b1b0c1b5f 100644
--- a/libcxx/include/forward_list
+++ b/libcxx/include/forward_list
@@ -844,7 +844,8 @@ public:
}
# endif // _LIBCPP_CXX03_LANG
_LIBCPP_CONSTEXPR_SINCE_CXX26 _LIBCPP_HIDE_FROM_ABI iterator insert_after(const_iterator __p, const value_type& __v);
- _LIBCPP_CONSTEXPR_SINCE_CXX26 _LIBCPP_HIDE_FROM_ABI iterator insert_after(const_iterator __p, size_type __n, const value_type& __v) {
+ _LIBCPP_CONSTEXPR_SINCE_CXX26 _LIBCPP_HIDE_FROM_ABI iterator
+ insert_after(const_iterator __p, size_type __n, const value_type& __v) {
return __insert_after(__p, __n, __v);
}
template <class _InputIterator, __enable_if_t<__has_input_iterator_category<_InputIterator>::value, int> = 0>
``````````
</details>
https://github.com/llvm/llvm-project/pull/129435
More information about the libcxx-commits
mailing list