diff options
Diffstat (limited to 'libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_--int.pass.cpp')
-rw-r--r-- | libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_--int.pass.cpp | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_--int.pass.cpp b/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_--int.pass.cpp index 7fc6a1df603..a908c44dda8 100644 --- a/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_--int.pass.cpp +++ b/libcxx/test/std/utilities/time/time.duration/time.duration.arithmetic/op_--int.pass.cpp @@ -11,15 +11,33 @@ // duration -// duration operator--(int); +// constexpr duration operator--(int); // constexpr in C++17 #include <chrono> #include <cassert> +#include "test_macros.h" + +#if TEST_STD_VER > 14 +constexpr bool test_constexpr() +{ + std::chrono::hours h1(3); + std::chrono::hours h2 = h1--; + return h1.count() == 2 && h2.count() == 3; +} +#endif + + int main() { - std::chrono::hours h(3); - std::chrono::hours h2 = h--; - assert(h.count() == 2); + { + std::chrono::hours h1(3); + std::chrono::hours h2 = h1--; + assert(h1.count() == 2); assert(h2.count() == 3); + } + +#if TEST_STD_VER > 14 + static_assert(test_constexpr(), ""); +#endif } |