36 lines · cpp
1//===----------------------------------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8// REQUIRES: std-at-least-c++209 10// <chrono>11 12// time_point13 14// constexpr time_point& operator++();15 16#include <cassert>17#include <chrono>18 19#include "test_macros.h"20 21constexpr bool test() {22 using Clock = std::chrono::system_clock;23 using Duration = std::chrono::milliseconds;24 std::chrono::time_point<Clock, Duration> t{Duration{5}};25 std::chrono::time_point<Clock, Duration>& tref{++t};26 assert(&tref == &t);27 assert(tref.time_since_epoch() == Duration{6});28 return true;29}30 31int main(int, char**) {32 test();33 static_assert(test());34 return 0;35}36