[libcxx-commits] [libcxx] [libc++] Implement Resolution of LWG 3886 (PR #155356)

via libcxx-commits libcxx-commits at lists.llvm.org
Tue Aug 26 19:48:37 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/__expected/expected.h libcxx/include/optional libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.u.pass.cpp libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/U.pass.cpp libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_or.pass.cpp libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_or_const.pass.cpp
``````````

</details>

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

``````````diff
diff --git a/libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.u.pass.cpp b/libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.u.pass.cpp
index 4c16176b6..63f2fb5e9 100644
--- a/libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.u.pass.cpp
+++ b/libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.u.pass.cpp
@@ -80,7 +80,7 @@ struct CopyOnly {
   friend constexpr bool operator==(const CopyOnly& mi, int ii) { return mi.i == ii; }
 };
 
-struct MoveOnly2{
+struct MoveOnly2 {
   int j;
   bool used_move1 = false;
   bool used_move2 = false;
@@ -89,7 +89,6 @@ struct MoveOnly2{
   constexpr MoveOnly2(const MoveOnly2&) = delete;
   constexpr MoveOnly2(MoveOnly2&& m) : j(m.j), used_move1(true) {}
   constexpr MoveOnly2(const MoveOnly2&& m) : j(m.j), used_move2(true) {}
-
 };
 
 struct BaseError {};
diff --git a/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/U.pass.cpp b/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/U.pass.cpp
index edf9fa08d..9d2badbf1 100644
--- a/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/U.pass.cpp
+++ b/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/U.pass.cpp
@@ -134,12 +134,12 @@ void test_explicit() {
         }
         T::reset();
         {
-            optional<T> t{43};
-            assert(T::alive == 1);
-            assert(T::value_constructed == 1);
-            assert(T::move_constructed == 0);
-            assert(T::copy_constructed == 0);
-            assert(t.value().value == 43);
+          optional<T> t{43};
+          assert(T::alive == 1);
+          assert(T::value_constructed == 1);
+          assert(T::move_constructed == 0);
+          assert(T::copy_constructed == 0);
+          assert(t.value().value == 43);
         }
         assert(T::alive == 0);
     }
diff --git a/libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_or.pass.cpp b/libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_or.pass.cpp
index deb65dd0a..f67643ef2 100644
--- a/libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_or.pass.cpp
+++ b/libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_or.pass.cpp
@@ -65,9 +65,9 @@ constexpr int test()
         assert(!opt);
     }
     {
-        optional<X> opt;
-        assert(std::move(opt).value_or<X>({Y(3)}) == 4);
-        assert(!opt);
+      optional<X> opt;
+      assert(std::move(opt).value_or<X>({Y(3)}) == 4);
+      assert(!opt);
     }
     return 0;
 }
diff --git a/libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_or_const.pass.cpp b/libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_or_const.pass.cpp
index 355dae0ea..5b3ff9131 100644
--- a/libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_or_const.pass.cpp
+++ b/libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_or_const.pass.cpp
@@ -76,8 +76,8 @@ int main(int, char**)
         assert(opt.value_or(Y(3)) == 4);
     }
     {
-        const optional<X> opt;
-        assert(opt.value_or<X>({Y(3)}) == 4);
+      const optional<X> opt;
+      assert(opt.value_or<X>({Y(3)}) == 4);
     }
 
   return 0;

``````````

</details>


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


More information about the libcxx-commits mailing list