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// template <class Rep2, class Period2>
15//   duration(const duration<Rep2, Period2>& d);
16
17// inexact conversions allowed for floating point reps
18
19#include <chrono>
20#include <cassert>
21
22int main()
23{
24    {
25    std::chrono::duration<double, std::micro> us(1);
26    std::chrono::duration<double, std::milli> ms = us;
27    assert(ms.count() == 1./1000);
28    }
29#ifndef _LIBCPP_HAS_NO_CONSTEXPR
30    {
31    constexpr std::chrono::duration<double, std::micro> us(1);
32    constexpr std::chrono::duration<double, std::milli> ms = us;
33    static_assert(ms.count() == 1./1000, "");
34    }
35#endif
36}
37