• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //===----------------------------------------------------------------------===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is dual licensed under the MIT and the University of Illinois Open
6 // Source Licenses. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 
10 // <chrono>
11 
12 // duration
13 
14 // constexpr duration& operator--();  // constexpr in C++17
15 
16 #include <chrono>
17 #include <cassert>
18 
19 #include "test_macros.h"
20 
21 #if TEST_STD_VER > 14
test_constexpr()22 constexpr bool test_constexpr()
23 {
24     std::chrono::hours h(3);
25     return (--h).count() == 2;
26 }
27 #endif
28 
main()29 int main()
30 {
31     {
32     std::chrono::hours h(3);
33     std::chrono::hours& href = --h;
34     assert(&href == &h);
35     assert(h.count() == 2);
36     }
37 
38 #if TEST_STD_VER > 14
39     static_assert(test_constexpr(), "");
40 #endif
41 }
42