From edd6ada2992c7f2975767d1e2a54eea04fe1d5dd Mon Sep 17 00:00:00 2001 From: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz> Date: Fri, 6 Jun 2025 17:41:08 +0200 Subject: [PATCH 1/6] [libc++] Add missing C++20 [time.point.arithmetic] --- libcxx/include/__chrono/time_point.h | 13 ++++++ libcxx/include/chrono | 5 +++ .../time.point.arithmetic/op_++.pass.cpp | 39 ++++++++++++++++++ .../time.point.arithmetic/op_++int.pass.cpp | 40 +++++++++++++++++++ .../time.point.arithmetic/op_--.pass.cpp | 39 ++++++++++++++++++ .../time.point.arithmetic/op_--int.pass.cpp | 40 +++++++++++++++++++ 6 files changed, 176 insertions(+) create mode 100644 libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp create mode 100644 libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp create mode 100644 libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp create mode 100644 libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp diff --git a/libcxx/include/__chrono/time_point.h b/libcxx/include/__chrono/time_point.h index 6b866b882f89a..36be0759b6b8c 100644 --- a/libcxx/include/__chrono/time_point.h +++ b/libcxx/include/__chrono/time_point.h @@ -58,6 +58,19 @@ class time_point { // arithmetic +#if _LIBCPP_STD_VER >= 20 + _LIBCPP_HIDE_FROM_ABI constexpr time_point& operator++() { + ++__d_; + return *this; + } + _LIBCPP_HIDE_FROM_ABI constexpr time_point operator++(int) { return time_point(__d_++); } + _LIBCPP_HIDE_FROM_ABI constexpr time_point& operator--() { + --__d_; + return *this; + } + _LIBCPP_HIDE_FROM_ABI constexpr time_point operator--(int) { return time_point(__d_--); } +#endif // _LIBCPP_STD_VER >= 20 + _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX17 time_point& operator+=(const duration& __d) { __d_ += __d; return *this; diff --git a/libcxx/include/chrono b/libcxx/include/chrono index cd9b98872083e..82e99a31bcc9f 100644 --- a/libcxx/include/chrono +++ b/libcxx/include/chrono @@ -132,6 +132,11 @@ public: // arithmetic + constexpr time_point& operator++(); // C++20 + constexpr time_point operator++(int); // C++20 + constexpr time_point& operator--(); // C++20 + constexpr time_point operator--(int); // C++20 + time_point& operator+=(const duration& d); // constexpr in C++17 time_point& operator-=(const duration& d); // constexpr in C++17 diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp new file mode 100644 index 0000000000000..dad50d09ed8b0 --- /dev/null +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp @@ -0,0 +1,39 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// +// UNSUPPORTED: c++03, c++11, c++14, c++17 + +// + +// time_point + +// constexpr time_point& operator++(); + +#include +#include + +#include "test_macros.h" + +constexpr bool constexpr_test() { + typedef std::chrono::system_clock Clock; + typedef std::chrono::milliseconds Duration; + std::chrono::time_point t(Duration(5)); + return (++t).time_since_epoch() == Duration(6); +} + +int main(int, char**) { + typedef std::chrono::system_clock Clock; + typedef std::chrono::milliseconds Duration; + std::chrono::time_point t(Duration(3)); + std::chrono::time_point& tref = ++t; + assert(&tref == &t); + assert(t.time_since_epoch() == Duration(4)); + + static_assert(constexpr_test()); + + return 0; +} diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp new file mode 100644 index 0000000000000..c517ff9516bdc --- /dev/null +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp @@ -0,0 +1,40 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// +// UNSUPPORTED: c++03, c++11, c++14, c++17 + +// + +// time_point + +// constexpr time_point operator++(int); + +#include +#include + +#include "test_macros.h" + +constexpr bool test_constexpr() { + typedef std::chrono::system_clock Clock; + typedef std::chrono::milliseconds Duration; + std::chrono::time_point t1(Duration(3)); + std::chrono::time_point t2 = t1++; + return t1.time_since_epoch() == Duration(4) && t2.time_since_epoch() == Duration(3); +} + +int main(int, char**) { + typedef std::chrono::system_clock Clock; + typedef std::chrono::milliseconds Duration; + std::chrono::time_point t1(Duration(3)); + std::chrono::time_point t2 = t1++; + assert(t1.time_since_epoch() == Duration(4)); + assert(t2.time_since_epoch() == Duration(3)); + + static_assert(test_constexpr()); + + return 0; +} diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp new file mode 100644 index 0000000000000..7b55f747d06c7 --- /dev/null +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp @@ -0,0 +1,39 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// +// UNSUPPORTED: c++03, c++11, c++14, c++17 + +// + +// time_point + +// constexpr time_point& operator--(); + +#include +#include + +#include "test_macros.h" + +constexpr bool constexpr_test() { + typedef std::chrono::system_clock Clock; + typedef std::chrono::milliseconds Duration; + std::chrono::time_point t(Duration(5)); + return (--t).time_since_epoch() == Duration(4); +} + +int main(int, char**) { + typedef std::chrono::system_clock Clock; + typedef std::chrono::milliseconds Duration; + std::chrono::time_point t(Duration(3)); + std::chrono::time_point& tref = --t; + assert(&tref == &t); + assert(t.time_since_epoch() == Duration(2)); + + static_assert(constexpr_test()); + + return 0; +} diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp new file mode 100644 index 0000000000000..6dfa03c154f57 --- /dev/null +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp @@ -0,0 +1,40 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// +// UNSUPPORTED: c++03, c++11, c++14, c++17 + +// + +// time_point + +// constexpr time_point operator--(int); + +#include +#include + +#include "test_macros.h" + +constexpr bool test_constexpr() { + typedef std::chrono::system_clock Clock; + typedef std::chrono::milliseconds Duration; + std::chrono::time_point t1(Duration(3)); + std::chrono::time_point t2 = t1--; + return t1.time_since_epoch() == Duration(2) && t2.time_since_epoch() == Duration(3); +} + +int main(int, char**) { + typedef std::chrono::system_clock Clock; + typedef std::chrono::milliseconds Duration; + std::chrono::time_point t1(Duration(3)); + std::chrono::time_point t2 = t1--; + assert(t1.time_since_epoch() == Duration(2)); + assert(t2.time_since_epoch() == Duration(3)); + + static_assert(test_constexpr()); + + return 0; +} From 9980f08a9c99cfbe45fe05b2dcf44de4f10eb10f Mon Sep 17 00:00:00 2001 From: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz> Date: Mon, 9 Jun 2025 14:57:03 +0200 Subject: [PATCH 2/6] test_fixups --- .../time.point.arithmetic/op_++.pass.cpp | 22 +++++++----------- .../time.point.arithmetic/op_++int.pass.cpp | 23 +++++++------------ .../time.point.arithmetic/op_--.pass.cpp | 22 +++++++----------- .../time.point.arithmetic/op_--int.pass.cpp | 23 +++++++------------ 4 files changed, 32 insertions(+), 58 deletions(-) diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp index dad50d09ed8b0..1ccf4d13c13c1 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp @@ -5,7 +5,7 @@ // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// -// UNSUPPORTED: c++03, c++11, c++14, c++17 +// REQUIRES: std-at-least-c++20 // @@ -13,27 +13,21 @@ // constexpr time_point& operator++(); -#include #include +#include #include "test_macros.h" -constexpr bool constexpr_test() { +constexpr bool test() { typedef std::chrono::system_clock Clock; typedef std::chrono::milliseconds Duration; - std::chrono::time_point t(Duration(5)); - return (++t).time_since_epoch() == Duration(6); + std::chrono::time_point t{Duration{5}}; + std::chrono::time_point& tref{++t}; + return &tref == &t && tref.time_since_epoch() == Duration{6}; } int main(int, char**) { - typedef std::chrono::system_clock Clock; - typedef std::chrono::milliseconds Duration; - std::chrono::time_point t(Duration(3)); - std::chrono::time_point& tref = ++t; - assert(&tref == &t); - assert(t.time_since_epoch() == Duration(4)); - - static_assert(constexpr_test()); - + assert(test()); + static_assert(test()); return 0; } diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp index c517ff9516bdc..670a7b5b67889 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp @@ -5,7 +5,7 @@ // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// -// UNSUPPORTED: c++03, c++11, c++14, c++17 +// REQUIRES: std-at-least-c++20 // @@ -13,28 +13,21 @@ // constexpr time_point operator++(int); -#include #include +#include #include "test_macros.h" -constexpr bool test_constexpr() { +constexpr bool test() { typedef std::chrono::system_clock Clock; typedef std::chrono::milliseconds Duration; - std::chrono::time_point t1(Duration(3)); - std::chrono::time_point t2 = t1++; - return t1.time_since_epoch() == Duration(4) && t2.time_since_epoch() == Duration(3); + std::chrono::time_point t1{Duration{3}}; + std::chrono::time_point t2{t1++}; + return t1.time_since_epoch() == Duration{4} && t2.time_since_epoch() == Duration{3}; } int main(int, char**) { - typedef std::chrono::system_clock Clock; - typedef std::chrono::milliseconds Duration; - std::chrono::time_point t1(Duration(3)); - std::chrono::time_point t2 = t1++; - assert(t1.time_since_epoch() == Duration(4)); - assert(t2.time_since_epoch() == Duration(3)); - - static_assert(test_constexpr()); - + assert(test()); + static_assert(test()); return 0; } diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp index 7b55f747d06c7..0a28b536acae9 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp @@ -5,7 +5,7 @@ // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// -// UNSUPPORTED: c++03, c++11, c++14, c++17 +// REQUIRES: std-at-least-c++20 // @@ -13,27 +13,21 @@ // constexpr time_point& operator--(); -#include #include +#include #include "test_macros.h" -constexpr bool constexpr_test() { +constexpr bool test() { typedef std::chrono::system_clock Clock; typedef std::chrono::milliseconds Duration; - std::chrono::time_point t(Duration(5)); - return (--t).time_since_epoch() == Duration(4); + std::chrono::time_point t{Duration{5}}; + std::chrono::time_point& tref{--t}; + return &tref == &t && tref.time_since_epoch() == Duration{4}; } int main(int, char**) { - typedef std::chrono::system_clock Clock; - typedef std::chrono::milliseconds Duration; - std::chrono::time_point t(Duration(3)); - std::chrono::time_point& tref = --t; - assert(&tref == &t); - assert(t.time_since_epoch() == Duration(2)); - - static_assert(constexpr_test()); - + assert(test()); + static_assert(test()); return 0; } diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp index 6dfa03c154f57..c2eafd715bc40 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp @@ -5,7 +5,7 @@ // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// -// UNSUPPORTED: c++03, c++11, c++14, c++17 +// REQUIRES: std-at-least-c++20 // @@ -13,28 +13,21 @@ // constexpr time_point operator--(int); -#include #include +#include #include "test_macros.h" -constexpr bool test_constexpr() { +constexpr bool test() { typedef std::chrono::system_clock Clock; typedef std::chrono::milliseconds Duration; - std::chrono::time_point t1(Duration(3)); - std::chrono::time_point t2 = t1--; - return t1.time_since_epoch() == Duration(2) && t2.time_since_epoch() == Duration(3); + std::chrono::time_point t1{Duration{3}}; + std::chrono::time_point t2{t1--}; + return t1.time_since_epoch() == Duration{2} && t2.time_since_epoch() == Duration{3}; } int main(int, char**) { - typedef std::chrono::system_clock Clock; - typedef std::chrono::milliseconds Duration; - std::chrono::time_point t1(Duration(3)); - std::chrono::time_point t2 = t1--; - assert(t1.time_since_epoch() == Duration(2)); - assert(t2.time_since_epoch() == Duration(3)); - - static_assert(test_constexpr()); - + assert(test()); + static_assert(test()); return 0; } From 07cb87c69351fb3c55c872a97662cf21600b4fa0 Mon Sep 17 00:00:00 2001 From: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz> Date: Mon, 9 Jun 2025 20:50:34 +0200 Subject: [PATCH 3/6] test_fixups_2 --- .../time/time.point/time.point.arithmetic/op_++.pass.cpp | 8 +++++--- .../time.point/time.point.arithmetic/op_++int.pass.cpp | 8 +++++--- .../time/time.point/time.point.arithmetic/op_--.pass.cpp | 8 +++++--- .../time.point/time.point.arithmetic/op_--int.pass.cpp | 8 +++++--- 4 files changed, 20 insertions(+), 12 deletions(-) diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp index 1ccf4d13c13c1..bcc8011c07d2e 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp @@ -19,11 +19,13 @@ #include "test_macros.h" constexpr bool test() { - typedef std::chrono::system_clock Clock; - typedef std::chrono::milliseconds Duration; + using Clock = std::chrono::system_clock; + using Duration = std::chrono::milliseconds; std::chrono::time_point t{Duration{5}}; std::chrono::time_point& tref{++t}; - return &tref == &t && tref.time_since_epoch() == Duration{6}; + assert(&tref == &t); + assert(tref.time_since_epoch() == Duration{6}); + return true; } int main(int, char**) { diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp index 670a7b5b67889..6794c0b6773d6 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp @@ -19,11 +19,13 @@ #include "test_macros.h" constexpr bool test() { - typedef std::chrono::system_clock Clock; - typedef std::chrono::milliseconds Duration; + using Clock = std::chrono::system_clock; + using Duration = std::chrono::milliseconds; std::chrono::time_point t1{Duration{3}}; std::chrono::time_point t2{t1++}; - return t1.time_since_epoch() == Duration{4} && t2.time_since_epoch() == Duration{3}; + assert(t1.time_since_epoch() == Duration{4}); + assert(t2.time_since_epoch() == Duration{3}); + return true; } int main(int, char**) { diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp index 0a28b536acae9..c0198d2457824 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp @@ -19,11 +19,13 @@ #include "test_macros.h" constexpr bool test() { - typedef std::chrono::system_clock Clock; - typedef std::chrono::milliseconds Duration; + using Clock = std::chrono::system_clock; + using Duration = std::chrono::milliseconds; std::chrono::time_point t{Duration{5}}; std::chrono::time_point& tref{--t}; - return &tref == &t && tref.time_since_epoch() == Duration{4}; + assert(&tref == &t); + assert(tref.time_since_epoch() == Duration{4}); + return true; } int main(int, char**) { diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp index c2eafd715bc40..7e3edc380f9c1 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp @@ -19,11 +19,13 @@ #include "test_macros.h" constexpr bool test() { - typedef std::chrono::system_clock Clock; - typedef std::chrono::milliseconds Duration; + using Clock = std::chrono::system_clock; + using Duration = std::chrono::milliseconds; std::chrono::time_point t1{Duration{3}}; std::chrono::time_point t2{t1--}; - return t1.time_since_epoch() == Duration{2} && t2.time_since_epoch() == Duration{3}; + assert(t1.time_since_epoch() == Duration{2}); + assert(t2.time_since_epoch() == Duration{3}); + return true; } int main(int, char**) { From f99225a4210a09407964d9ca2416c732c18035cb Mon Sep 17 00:00:00 2001 From: maflcko <6399679+maflcko@users.noreply.github.com> Date: Tue, 10 Jun 2025 07:33:43 +0200 Subject: [PATCH 4/6] Apply suggestions from code review Co-authored-by: Hristo Hristov --- libcxx/include/__chrono/time_point.h | 4 ++-- .../time/time.point/time.point.arithmetic/op_++int.pass.cpp | 2 +- .../std/time/time.point/time.point.arithmetic/op_--.pass.cpp | 2 +- .../time/time.point/time.point.arithmetic/op_--int.pass.cpp | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/libcxx/include/__chrono/time_point.h b/libcxx/include/__chrono/time_point.h index 36be0759b6b8c..fc4408d23dbf1 100644 --- a/libcxx/include/__chrono/time_point.h +++ b/libcxx/include/__chrono/time_point.h @@ -63,12 +63,12 @@ class time_point { ++__d_; return *this; } - _LIBCPP_HIDE_FROM_ABI constexpr time_point operator++(int) { return time_point(__d_++); } + _LIBCPP_HIDE_FROM_ABI constexpr time_point operator++(int) { return time_point{__d_++}; } _LIBCPP_HIDE_FROM_ABI constexpr time_point& operator--() { --__d_; return *this; } - _LIBCPP_HIDE_FROM_ABI constexpr time_point operator--(int) { return time_point(__d_--); } + _LIBCPP_HIDE_FROM_ABI constexpr time_point operator--(int) { return time_point{__d_--}; } #endif // _LIBCPP_STD_VER >= 20 _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX17 time_point& operator+=(const duration& __d) { diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp index 6794c0b6773d6..5304d37d5c361 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++int.pass.cpp @@ -29,7 +29,7 @@ constexpr bool test() { } int main(int, char**) { - assert(test()); + test(); static_assert(test()); return 0; } diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp index c0198d2457824..915156fcc6b8c 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--.pass.cpp @@ -29,7 +29,7 @@ constexpr bool test() { } int main(int, char**) { - assert(test()); + test(); static_assert(test()); return 0; } diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp index 7e3edc380f9c1..cc5f462106bbf 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_--int.pass.cpp @@ -29,7 +29,7 @@ constexpr bool test() { } int main(int, char**) { - assert(test()); + test(); static_assert(test()); return 0; } From 1899032ff887a477e4ac9f2dd4f2bb67fccfedd2 Mon Sep 17 00:00:00 2001 From: Hristo Hristov Date: Tue, 10 Jun 2025 10:19:24 +0300 Subject: [PATCH 5/6] Update libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp --- .../std/time/time.point/time.point.arithmetic/op_++.pass.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp index bcc8011c07d2e..d7f01af4ce6bc 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp @@ -29,7 +29,7 @@ constexpr bool test() { } int main(int, char**) { - assert(test()); + test(); static_assert(test()); return 0; } From 270df709e41f409323342e9862ffe76d63826150 Mon Sep 17 00:00:00 2001 From: Hristo Hristov Date: Tue, 10 Jun 2025 10:20:05 +0300 Subject: [PATCH 6/6] Update libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp --- .../std/time/time.point/time.point.arithmetic/op_++.pass.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp index d7f01af4ce6bc..e035d7ef4fa0e 100644 --- a/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp +++ b/libcxx/test/std/time/time.point/time.point.arithmetic/op_++.pass.cpp @@ -29,7 +29,7 @@ constexpr bool test() { } int main(int, char**) { - test(); + test(); static_assert(test()); return 0; }