[libcxx-commits] [libcxx] [libc++] Implement a type-safe iterator for optional (PR #154239)

via libcxx-commits libcxx-commits at lists.llvm.org
Tue Dec 2 18:29:21 PST 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 origin/main HEAD --extensions ,cpp,h -- libcxx/include/__iterator/upper_bounded_iterator.h libcxx/test/std/utilities/optional/optional.iterator/iterator_compare.pass.cpp libcxx/include/optional libcxx/test/libcxx/utilities/optional/optional.iterator/iterator.compile.pass.cpp libcxx/test/std/utilities/optional/optional.iterator/iterator.pass.cpp --diff_from_common_commit
``````````

:warning:
The reproduction instructions above might return results for more than one PR
in a stack if you are using a stacked PR workflow. You can limit the results by
changing `origin/main` to the base branch/commit you want to compare against.
:warning:

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/libcxx/test/std/utilities/optional/optional.iterator/iterator_compare.pass.cpp b/libcxx/test/std/utilities/optional/optional.iterator/iterator_compare.pass.cpp
index 16b74ade9..958519d4c 100644
--- a/libcxx/test/std/utilities/optional/optional.iterator/iterator_compare.pass.cpp
+++ b/libcxx/test/std/utilities/optional/optional.iterator/iterator_compare.pass.cpp
@@ -20,11 +20,11 @@
 #include <type_traits>
 #include <utility>
 
-template<typename T>
+template <typename T>
 constexpr bool test() {
   using Opt = std::optional<T>;
-  using I = Opt::iterator;
-  using CI = Opt::const_iterator;
+  using I   = Opt::iterator;
+  using CI  = Opt::const_iterator;
 
   static_assert(std::three_way_comparable<I>);
   static_assert(std::three_way_comparable<CI>);
@@ -82,7 +82,6 @@ constexpr bool test() {
   return true;
 }
 
-
 constexpr bool test() {
   test<int>();
   test<char>();

``````````

</details>


https://github.com/llvm/llvm-project/pull/154239


More information about the libcxx-commits mailing list