summaryrefslogtreecommitdiffstats
path: root/libcxx/test/utilities/time
diff options
context:
space:
mode:
authorHoward Hinnant <hhinnant@apple.com>2010-08-22 00:59:46 +0000
committerHoward Hinnant <hhinnant@apple.com>2010-08-22 00:59:46 +0000
commit94b2dd0998230c758abd92c99d3700c971f7a31a (patch)
tree1b9f66ba0b4f8fd99fc02a112d4b7a30c4afe0f6 /libcxx/test/utilities/time
parentd9c6c0b583ac1f1efeec3db571a1028a3c9b7a99 (diff)
downloadbcm5719-llvm-94b2dd0998230c758abd92c99d3700c971f7a31a.tar.gz
bcm5719-llvm-94b2dd0998230c758abd92c99d3700c971f7a31a.zip
Fixing whitespace problems
llvm-svn: 111767
Diffstat (limited to 'libcxx/test/utilities/time')
-rw-r--r--libcxx/test/utilities/time/clock.h2
-rw-r--r--libcxx/test/utilities/time/hours.pass.cpp28
-rw-r--r--libcxx/test/utilities/time/microseconds.pass.cpp28
-rw-r--r--libcxx/test/utilities/time/milliseconds.pass.cpp28
-rw-r--r--libcxx/test/utilities/time/minutes.pass.cpp28
-rw-r--r--libcxx/test/utilities/time/nanoseconds.pass.cpp28
-rw-r--r--libcxx/test/utilities/time/rep.h2
-rw-r--r--libcxx/test/utilities/time/seconds.pass.cpp28
-rw-r--r--libcxx/test/utilities/time/time.clock.req/nothing_to_do.pass.cpp13
-rw-r--r--libcxx/test/utilities/time/time.clock/nothing_to_do.pass.cpp13
-rw-r--r--libcxx/test/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp26
-rw-r--r--libcxx/test/utilities/time/time.clock/time.clock.hires/now.pass.cpp23
-rw-r--r--libcxx/test/utilities/time/time.clock/time.clock.monotonic/consistency.pass.cpp26
-rw-r--r--libcxx/test/utilities/time/time.clock/time.clock.monotonic/now.pass.cpp26
-rw-r--r--libcxx/test/utilities/time/time.clock/time.clock.system/consistency.pass.cpp27
-rw-r--r--libcxx/test/utilities/time/time.clock/time.clock.system/from_time_t.pass.cpp24
-rw-r--r--libcxx/test/utilities/time/time.clock/time.clock.system/now.pass.cpp23
-rw-r--r--libcxx/test/utilities/time/time.clock/time.clock.system/rep_signed.pass.cpp24
-rw-r--r--libcxx/test/utilities/time/time.clock/time.clock.system/to_time_t.pass.cpp24
-rw-r--r--libcxx/test/utilities/time/time.duration/default_ratio.pass.cpp27
-rw-r--r--libcxx/test/utilities/time/time.duration/duration.fail.cpp24
-rw-r--r--libcxx/test/utilities/time/time.duration/positive_num.fail.cpp23
-rw-r--r--libcxx/test/utilities/time/time.duration/ratio.fail.cpp31
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_++.pass.cpp26
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_++int.pass.cpp26
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_+.pass.cpp25
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_+=.pass.cpp27
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_--.pass.cpp26
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_--int.pass.cpp26
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_-.pass.cpp25
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_-=.pass.cpp27
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_divide=.pass.cpp25
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_mod=duration.pass.cpp28
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_mod=rep.pass.cpp25
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_times=.pass.cpp25
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cast/duration_cast.pass.cpp44
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cast/toduration.fail.cpp26
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.comparisons/op_equal.pass.cpp70
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.comparisons/op_less.pass.cpp92
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cons/convert_exact.pass.cpp28
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cons/convert_float_to_int.fail.cpp26
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cons/convert_inexact.fail.cpp26
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cons/convert_inexact.pass.cpp28
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cons/convert_int_to_float.pass.cpp28
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cons/default.pass.cpp35
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cons/rep.pass.cpp37
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cons/rep01.fail.cpp27
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cons/rep02.fail.cpp27
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cons/rep02.pass.cpp27
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.cons/rep03.fail.cpp25
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_+.pass.cpp48
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_-.pass.cpp48
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_duration.pass.cpp44
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_rep.fail.cpp27
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_rep.pass.cpp27
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_mod_duration.pass.cpp42
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_mod_rep.fail.cpp27
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep.pass.cpp8
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep1.fail.cpp8
-rw-r--r--libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep2.fail.cpp8
-rw-r--r--libcxx/test/utilities/time/time.duration/types.pass.cpp4
-rw-r--r--libcxx/test/utilities/time/time.point/default_duration.pass.cpp2
-rw-r--r--libcxx/test/utilities/time/time.point/time.point.cast/time_point_cast.pass.cpp2
-rw-r--r--libcxx/test/utilities/time/time.point/time.point.cast/toduration.fail.cpp2
-rw-r--r--libcxx/test/utilities/time/time.point/time.point.comparisons/op_equal.fail.cpp4
-rw-r--r--libcxx/test/utilities/time/time.point/time.point.comparisons/op_equal.pass.cpp4
-rw-r--r--libcxx/test/utilities/time/time.point/time.point.comparisons/op_less.fail.cpp8
-rw-r--r--libcxx/test/utilities/time/time.point/time.point.comparisons/op_less.pass.cpp8
-rw-r--r--libcxx/test/utilities/time/time.point/time.point.cons/convert.fail.cpp2
-rw-r--r--libcxx/test/utilities/time/time.point/time.point.cons/convert.pass.cpp2
-rw-r--r--libcxx/test/utilities/time/time.point/time.point.nonmember/op_+.pass.cpp8
-rw-r--r--libcxx/test/utilities/time/time.point/time.point.nonmember/op_-duration.pass.cpp4
-rw-r--r--libcxx/test/utilities/time/time.point/time.point.nonmember/op_-time_point.pass.cpp4
-rw-r--r--libcxx/test/utilities/time/time.traits/time.traits.specializations/duration.pass.cpp4
-rw-r--r--libcxx/test/utilities/time/time.traits/time.traits.specializations/time_point.pass.cpp6
75 files changed, 1633 insertions, 101 deletions
diff --git a/libcxx/test/utilities/time/clock.h b/libcxx/test/utilities/time/clock.h
index d5f4c02cc2f..8490188aca7 100644
--- a/libcxx/test/utilities/time/clock.h
+++ b/libcxx/test/utilities/time/clock.h
@@ -14,4 +14,4 @@ class Clock
static time_point now();
};
-#endif
+#endif // CLOCK_H
diff --git a/libcxx/test/utilities/time/hours.pass.cpp b/libcxx/test/utilities/time/hours.pass.cpp
index f76fdf007d2..387089f8f59 100644
--- a/libcxx/test/utilities/time/hours.pass.cpp
+++ b/libcxx/test/utilities/time/hours.pass.cpp
@@ -1 +1,27 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // typedef duration<signed integral type of at least 23 bits, ratio<3600>> hours; #include <chrono> #include <type_traits> #include <limits> int main() { typedef std::chrono::hours D; typedef D::rep Rep; typedef D::period Period; static_assert(std::is_signed<Rep>::value, ""); static_assert(std::is_integral<Rep>::value, ""); static_assert(std::numeric_limits<Rep>::digits >= 22, ""); static_assert((std::is_same<Period, std::ratio<3600> >::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// typedef duration<signed integral type of at least 23 bits, ratio<3600>> hours;
+
+#include <chrono>
+#include <type_traits>
+#include <limits>
+
+int main()
+{
+ typedef std::chrono::hours D;
+ typedef D::rep Rep;
+ typedef D::period Period;
+ static_assert(std::is_signed<Rep>::value, "");
+ static_assert(std::is_integral<Rep>::value, "");
+ static_assert(std::numeric_limits<Rep>::digits >= 22, "");
+ static_assert((std::is_same<Period, std::ratio<3600> >::value), "");
+}
diff --git a/libcxx/test/utilities/time/microseconds.pass.cpp b/libcxx/test/utilities/time/microseconds.pass.cpp
index f04a2de5df5..368d4127335 100644
--- a/libcxx/test/utilities/time/microseconds.pass.cpp
+++ b/libcxx/test/utilities/time/microseconds.pass.cpp
@@ -1 +1,27 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // typedef duration<signed integral type of at least 55 bits, micro> microseconds; #include <chrono> #include <type_traits> #include <limits> int main() { typedef std::chrono::microseconds D; typedef D::rep Rep; typedef D::period Period; static_assert(std::is_signed<Rep>::value, ""); static_assert(std::is_integral<Rep>::value, ""); static_assert(std::numeric_limits<Rep>::digits >= 54, ""); static_assert((std::is_same<Period, std::micro>::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// typedef duration<signed integral type of at least 55 bits, micro> microseconds;
+
+#include <chrono>
+#include <type_traits>
+#include <limits>
+
+int main()
+{
+ typedef std::chrono::microseconds D;
+ typedef D::rep Rep;
+ typedef D::period Period;
+ static_assert(std::is_signed<Rep>::value, "");
+ static_assert(std::is_integral<Rep>::value, "");
+ static_assert(std::numeric_limits<Rep>::digits >= 54, "");
+ static_assert((std::is_same<Period, std::micro>::value), "");
+}
diff --git a/libcxx/test/utilities/time/milliseconds.pass.cpp b/libcxx/test/utilities/time/milliseconds.pass.cpp
index 6002fa028cb..8c147d9f09e 100644
--- a/libcxx/test/utilities/time/milliseconds.pass.cpp
+++ b/libcxx/test/utilities/time/milliseconds.pass.cpp
@@ -1 +1,27 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // typedef duration<signed integral type of at least 45 bits, milli> milliseconds; #include <chrono> #include <type_traits> #include <limits> int main() { typedef std::chrono::milliseconds D; typedef D::rep Rep; typedef D::period Period; static_assert(std::is_signed<Rep>::value, ""); static_assert(std::is_integral<Rep>::value, ""); static_assert(std::numeric_limits<Rep>::digits >= 44, ""); static_assert((std::is_same<Period, std::milli>::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// typedef duration<signed integral type of at least 45 bits, milli> milliseconds;
+
+#include <chrono>
+#include <type_traits>
+#include <limits>
+
+int main()
+{
+ typedef std::chrono::milliseconds D;
+ typedef D::rep Rep;
+ typedef D::period Period;
+ static_assert(std::is_signed<Rep>::value, "");
+ static_assert(std::is_integral<Rep>::value, "");
+ static_assert(std::numeric_limits<Rep>::digits >= 44, "");
+ static_assert((std::is_same<Period, std::milli>::value), "");
+}
diff --git a/libcxx/test/utilities/time/minutes.pass.cpp b/libcxx/test/utilities/time/minutes.pass.cpp
index afa1b320b5c..96589947654 100644
--- a/libcxx/test/utilities/time/minutes.pass.cpp
+++ b/libcxx/test/utilities/time/minutes.pass.cpp
@@ -1 +1,27 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // typedef duration<signed integral type of at least 29 bits, ratio< 60>> minutes; #include <chrono> #include <type_traits> #include <limits> int main() { typedef std::chrono::minutes D; typedef D::rep Rep; typedef D::period Period; static_assert(std::is_signed<Rep>::value, ""); static_assert(std::is_integral<Rep>::value, ""); static_assert(std::numeric_limits<Rep>::digits >= 28, ""); static_assert((std::is_same<Period, std::ratio<60> >::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// typedef duration<signed integral type of at least 29 bits, ratio< 60>> minutes;
+
+#include <chrono>
+#include <type_traits>
+#include <limits>
+
+int main()
+{
+ typedef std::chrono::minutes D;
+ typedef D::rep Rep;
+ typedef D::period Period;
+ static_assert(std::is_signed<Rep>::value, "");
+ static_assert(std::is_integral<Rep>::value, "");
+ static_assert(std::numeric_limits<Rep>::digits >= 28, "");
+ static_assert((std::is_same<Period, std::ratio<60> >::value), "");
+}
diff --git a/libcxx/test/utilities/time/nanoseconds.pass.cpp b/libcxx/test/utilities/time/nanoseconds.pass.cpp
index 929bd9a15ec..a5eb803f537 100644
--- a/libcxx/test/utilities/time/nanoseconds.pass.cpp
+++ b/libcxx/test/utilities/time/nanoseconds.pass.cpp
@@ -1 +1,27 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // typedef duration<signed integral type of at least 64 bits, nano> nanoseconds; #include <chrono> #include <type_traits> #include <limits> int main() { typedef std::chrono::nanoseconds D; typedef D::rep Rep; typedef D::period Period; static_assert(std::is_signed<Rep>::value, ""); static_assert(std::is_integral<Rep>::value, ""); static_assert(std::numeric_limits<Rep>::digits >= 63, ""); static_assert((std::is_same<Period, std::nano>::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// typedef duration<signed integral type of at least 64 bits, nano> nanoseconds;
+
+#include <chrono>
+#include <type_traits>
+#include <limits>
+
+int main()
+{
+ typedef std::chrono::nanoseconds D;
+ typedef D::rep Rep;
+ typedef D::period Period;
+ static_assert(std::is_signed<Rep>::value, "");
+ static_assert(std::is_integral<Rep>::value, "");
+ static_assert(std::numeric_limits<Rep>::digits >= 63, "");
+ static_assert((std::is_same<Period, std::nano>::value), "");
+}
diff --git a/libcxx/test/utilities/time/rep.h b/libcxx/test/utilities/time/rep.h
index fa949fe2e08..ea4db2d3f21 100644
--- a/libcxx/test/utilities/time/rep.h
+++ b/libcxx/test/utilities/time/rep.h
@@ -15,4 +15,4 @@ public:
Rep& operator/=(Rep x) {data_ /= x.data_; return *this;}
};
-#endif
+#endif // REP_H
diff --git a/libcxx/test/utilities/time/seconds.pass.cpp b/libcxx/test/utilities/time/seconds.pass.cpp
index 0022b56a719..d9948bc5b08 100644
--- a/libcxx/test/utilities/time/seconds.pass.cpp
+++ b/libcxx/test/utilities/time/seconds.pass.cpp
@@ -1 +1,27 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // typedef duration<signed integral type of at least 35 bits > seconds; #include <chrono> #include <type_traits> #include <limits> int main() { typedef std::chrono::seconds D; typedef D::rep Rep; typedef D::period Period; static_assert(std::is_signed<Rep>::value, ""); static_assert(std::is_integral<Rep>::value, ""); static_assert(std::numeric_limits<Rep>::digits >= 34, ""); static_assert((std::is_same<Period, std::ratio<1> >::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// typedef duration<signed integral type of at least 35 bits > seconds;
+
+#include <chrono>
+#include <type_traits>
+#include <limits>
+
+int main()
+{
+ typedef std::chrono::seconds D;
+ typedef D::rep Rep;
+ typedef D::period Period;
+ static_assert(std::is_signed<Rep>::value, "");
+ static_assert(std::is_integral<Rep>::value, "");
+ static_assert(std::numeric_limits<Rep>::digits >= 34, "");
+ static_assert((std::is_same<Period, std::ratio<1> >::value), "");
+}
diff --git a/libcxx/test/utilities/time/time.clock.req/nothing_to_do.pass.cpp b/libcxx/test/utilities/time/time.clock.req/nothing_to_do.pass.cpp
index e8db90cbee0..b89f168e9c4 100644
--- a/libcxx/test/utilities/time/time.clock.req/nothing_to_do.pass.cpp
+++ b/libcxx/test/utilities/time/time.clock.req/nothing_to_do.pass.cpp
@@ -1 +1,12 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// int main() { } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+int main()
+{
+}
diff --git a/libcxx/test/utilities/time/time.clock/nothing_to_do.pass.cpp b/libcxx/test/utilities/time/time.clock/nothing_to_do.pass.cpp
index e8db90cbee0..b89f168e9c4 100644
--- a/libcxx/test/utilities/time/time.clock/nothing_to_do.pass.cpp
+++ b/libcxx/test/utilities/time/time.clock/nothing_to_do.pass.cpp
@@ -1 +1,12 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// int main() { } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+int main()
+{
+}
diff --git a/libcxx/test/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp
index 5ad13d0b65f..50923a9f3b0 100644
--- a/libcxx/test/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp
+++ b/libcxx/test/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp
@@ -1 +1,25 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // high_resolution_clock // check clock invariants #include <chrono> int main() { typedef std::chrono::high_resolution_clock C; static_assert((std::is_same<C::rep, C::duration::rep>::value), ""); static_assert((std::is_same<C::period, C::duration::period>::value), ""); static_assert((std::is_same<C::duration, C::time_point::duration>::value), ""); static_assert(C::is_monotonic || !C::is_monotonic, ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// high_resolution_clock
+
+// check clock invariants
+
+#include <chrono>
+
+int main()
+{
+ typedef std::chrono::high_resolution_clock C;
+ static_assert((std::is_same<C::rep, C::duration::rep>::value), "");
+ static_assert((std::is_same<C::period, C::duration::period>::value), "");
+ static_assert((std::is_same<C::duration, C::time_point::duration>::value), "");
+ static_assert(C::is_monotonic || !C::is_monotonic, "");
+}
diff --git a/libcxx/test/utilities/time/time.clock/time.clock.hires/now.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.hires/now.pass.cpp
index d98e07310f6..a0a917bc8a6 100644
--- a/libcxx/test/utilities/time/time.clock/time.clock.hires/now.pass.cpp
+++ b/libcxx/test/utilities/time/time.clock/time.clock.hires/now.pass.cpp
@@ -1 +1,22 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // high_resolution_clock // static time_point now(); #include <chrono> int main() { typedef std::chrono::high_resolution_clock C; C::time_point t1 = C::now(); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// high_resolution_clock
+
+// static time_point now();
+
+#include <chrono>
+
+int main()
+{
+ typedef std::chrono::high_resolution_clock C;
+ C::time_point t1 = C::now();
+}
diff --git a/libcxx/test/utilities/time/time.clock/time.clock.monotonic/consistency.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.monotonic/consistency.pass.cpp
index 63690ff6b57..ac661240e30 100644
--- a/libcxx/test/utilities/time/time.clock/time.clock.monotonic/consistency.pass.cpp
+++ b/libcxx/test/utilities/time/time.clock/time.clock.monotonic/consistency.pass.cpp
@@ -1 +1,25 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // monotonic_clock // check clock invariants #include <chrono> int main() { typedef std::chrono::monotonic_clock C; static_assert((std::is_same<C::rep, C::duration::rep>::value), ""); static_assert((std::is_same<C::period, C::duration::period>::value), ""); static_assert((std::is_same<C::duration, C::time_point::duration>::value), ""); static_assert(C::is_monotonic, ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// monotonic_clock
+
+// check clock invariants
+
+#include <chrono>
+
+int main()
+{
+ typedef std::chrono::monotonic_clock C;
+ static_assert((std::is_same<C::rep, C::duration::rep>::value), "");
+ static_assert((std::is_same<C::period, C::duration::period>::value), "");
+ static_assert((std::is_same<C::duration, C::time_point::duration>::value), "");
+ static_assert(C::is_monotonic, "");
+}
diff --git a/libcxx/test/utilities/time/time.clock/time.clock.monotonic/now.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.monotonic/now.pass.cpp
index 994e9375027..0cb141222de 100644
--- a/libcxx/test/utilities/time/time.clock/time.clock.monotonic/now.pass.cpp
+++ b/libcxx/test/utilities/time/time.clock/time.clock.monotonic/now.pass.cpp
@@ -1 +1,25 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // monotonic_clock // static time_point now(); #include <chrono> #include <cassert> int main() { typedef std::chrono::monotonic_clock C; C::time_point t1 = C::now(); C::time_point t2 = C::now(); assert(t2 >= t1); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// monotonic_clock
+
+// static time_point now();
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ typedef std::chrono::monotonic_clock C;
+ C::time_point t1 = C::now();
+ C::time_point t2 = C::now();
+ assert(t2 >= t1);
+}
diff --git a/libcxx/test/utilities/time/time.clock/time.clock.system/consistency.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.system/consistency.pass.cpp
index f1b43e62664..915504a56bd 100644
--- a/libcxx/test/utilities/time/time.clock/time.clock.system/consistency.pass.cpp
+++ b/libcxx/test/utilities/time/time.clock/time.clock.system/consistency.pass.cpp
@@ -1 +1,26 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // system_clock // check clock invariants #include <chrono> int main() { typedef std::chrono::system_clock C; static_assert((std::is_same<C::rep, C::duration::rep>::value), ""); static_assert((std::is_same<C::period, C::duration::period>::value), ""); static_assert((std::is_same<C::duration, C::time_point::duration>::value), ""); static_assert((std::is_same<C::time_point::clock, C>::value), ""); static_assert((C::is_monotonic || !C::is_monotonic), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// system_clock
+
+// check clock invariants
+
+#include <chrono>
+
+int main()
+{
+ typedef std::chrono::system_clock C;
+ static_assert((std::is_same<C::rep, C::duration::rep>::value), "");
+ static_assert((std::is_same<C::period, C::duration::period>::value), "");
+ static_assert((std::is_same<C::duration, C::time_point::duration>::value), "");
+ static_assert((std::is_same<C::time_point::clock, C>::value), "");
+ static_assert((C::is_monotonic || !C::is_monotonic), "");
+}
diff --git a/libcxx/test/utilities/time/time.clock/time.clock.system/from_time_t.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.system/from_time_t.pass.cpp
index 9b44a1084e1..4404445993a 100644
--- a/libcxx/test/utilities/time/time.clock/time.clock.system/from_time_t.pass.cpp
+++ b/libcxx/test/utilities/time/time.clock/time.clock.system/from_time_t.pass.cpp
@@ -1 +1,23 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // system_clock // static time_point from_time_t(time_t t); #include <chrono> #include <ctime> int main() { typedef std::chrono::system_clock C; C::time_point t1 = C::from_time_t(C::to_time_t(C::now())); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// system_clock
+
+// static time_point from_time_t(time_t t);
+
+#include <chrono>
+#include <ctime>
+
+int main()
+{
+ typedef std::chrono::system_clock C;
+ C::time_point t1 = C::from_time_t(C::to_time_t(C::now()));
+}
diff --git a/libcxx/test/utilities/time/time.clock/time.clock.system/now.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.system/now.pass.cpp
index a4739568040..ef6cb055ae5 100644
--- a/libcxx/test/utilities/time/time.clock/time.clock.system/now.pass.cpp
+++ b/libcxx/test/utilities/time/time.clock/time.clock.system/now.pass.cpp
@@ -1 +1,22 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // system_clock // static time_point now(); #include <chrono> int main() { typedef std::chrono::system_clock C; C::time_point t1 = C::now(); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// system_clock
+
+// static time_point now();
+
+#include <chrono>
+
+int main()
+{
+ typedef std::chrono::system_clock C;
+ C::time_point t1 = C::now();
+}
diff --git a/libcxx/test/utilities/time/time.clock/time.clock.system/rep_signed.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.system/rep_signed.pass.cpp
index d9b574e5341..f971c90afd1 100644
--- a/libcxx/test/utilities/time/time.clock/time.clock.system/rep_signed.pass.cpp
+++ b/libcxx/test/utilities/time/time.clock/time.clock.system/rep_signed.pass.cpp
@@ -1 +1,23 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // system_clock // rep should be signed #include <chrono> #include <cassert> int main() { assert(std::chrono::system_clock::duration::min() < std::chrono::system_clock::duration::zero()); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// system_clock
+
+// rep should be signed
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ assert(std::chrono::system_clock::duration::min() <
+ std::chrono::system_clock::duration::zero());
+}
diff --git a/libcxx/test/utilities/time/time.clock/time.clock.system/to_time_t.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.system/to_time_t.pass.cpp
index f87bd84d727..c307cbe315e 100644
--- a/libcxx/test/utilities/time/time.clock/time.clock.system/to_time_t.pass.cpp
+++ b/libcxx/test/utilities/time/time.clock/time.clock.system/to_time_t.pass.cpp
@@ -1 +1,23 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // system_clock // time_t to_time_t(const time_point& t); #include <chrono> #include <ctime> int main() { typedef std::chrono::system_clock C; std::time_t t1 = C::to_time_t(C::now()); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// system_clock
+
+// time_t to_time_t(const time_point& t);
+
+#include <chrono>
+#include <ctime>
+
+int main()
+{
+ typedef std::chrono::system_clock C;
+ std::time_t t1 = C::to_time_t(C::now());
+}
diff --git a/libcxx/test/utilities/time/time.duration/default_ratio.pass.cpp b/libcxx/test/utilities/time/time.duration/default_ratio.pass.cpp
index 2d323049616..2e20acfc490 100644
--- a/libcxx/test/utilities/time/time.duration/default_ratio.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/default_ratio.pass.cpp
@@ -1 +1,26 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // Test default template arg: // template <class Rep, class Period = ratio<1>> // class duration; #include <chrono> #include <type_traits> int main() { static_assert((std::is_same<std::chrono::duration<int, std::ratio<1> >, std::chrono::duration<int> >::value), ""); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// Test default template arg:
+
+// template <class Rep, class Period = ratio<1>>
+// class duration;
+
+#include <chrono>
+#include <type_traits>
+
+int main()
+{
+ static_assert((std::is_same<std::chrono::duration<int, std::ratio<1> >,
+ std::chrono::duration<int> >::value), "");
+}
diff --git a/libcxx/test/utilities/time/time.duration/duration.fail.cpp b/libcxx/test/utilities/time/time.duration/duration.fail.cpp
index 11a157d3e58..2a879cbf3fa 100644
--- a/libcxx/test/utilities/time/time.duration/duration.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/duration.fail.cpp
@@ -1 +1,23 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // If a program instantiates duration with a duration type for the template // argument Rep a diagnostic is required. #include <chrono> int main() { typedef std::chrono::duration<std::chrono::milliseconds> D; D d; } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// If a program instantiates duration with a duration type for the template
+// argument Rep a diagnostic is required.
+
+#include <chrono>
+
+int main()
+{
+ typedef std::chrono::duration<std::chrono::milliseconds> D;
+ D d;
+}
diff --git a/libcxx/test/utilities/time/time.duration/positive_num.fail.cpp b/libcxx/test/utilities/time/time.duration/positive_num.fail.cpp
index afb51a5a1fa..430bf0ac728 100644
--- a/libcxx/test/utilities/time/time.duration/positive_num.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/positive_num.fail.cpp
@@ -1 +1,22 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // Period::num shall be positive, diagnostic required. #include <chrono> int main() { typedef std::chrono::duration<int, std::ratio<5, -1> > D; D d; } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// Period::num shall be positive, diagnostic required.
+
+#include <chrono>
+
+int main()
+{
+ typedef std::chrono::duration<int, std::ratio<5, -1> > D;
+ D d;
+}
diff --git a/libcxx/test/utilities/time/time.duration/ratio.fail.cpp b/libcxx/test/utilities/time/time.duration/ratio.fail.cpp
index e3e104ebf0e..44039e4c233 100644
--- a/libcxx/test/utilities/time/time.duration/ratio.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/ratio.fail.cpp
@@ -1 +1,30 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // Period shall be a specialization of ratio, diagnostic required. #include <chrono> template <int N, int D = 1> class Ratio { public: static const int num = N; static const int den = D; }; int main() { typedef std::chrono::duration<int, Ratio<1> > D; D d; } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// Period shall be a specialization of ratio, diagnostic required.
+
+#include <chrono>
+
+template <int N, int D = 1>
+class Ratio
+{
+public:
+ static const int num = N;
+ static const int den = D;
+};
+
+int main()
+{
+ typedef std::chrono::duration<int, Ratio<1> > D;
+ D d;
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_++.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_++.pass.cpp
index beaa5cb5f13..41f24dc71db 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_++.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_++.pass.cpp
@@ -1 +1,25 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration& operator++(); #include <chrono> #include <cassert> int main() { std::chrono::hours h(3); std::chrono::hours& href = ++h; assert(&href == &h); assert(h.count() == 4); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration& operator++();
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::hours h(3);
+ std::chrono::hours& href = ++h;
+ assert(&href == &h);
+ assert(h.count() == 4);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_++int.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_++int.pass.cpp
index 129c0efd712..c596a7eab2b 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_++int.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_++int.pass.cpp
@@ -1 +1,25 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration operator++(int); #include <chrono> #include <cassert> int main() { std::chrono::hours h(3); std::chrono::hours h2 = h++; assert(h.count() == 4); assert(h2.count() == 3); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration operator++(int);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::hours h(3);
+ std::chrono::hours h2 = h++;
+ assert(h.count() == 4);
+ assert(h2.count() == 3);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_+.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_+.pass.cpp
index 667b1959f2b..27d11cabbee 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_+.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_+.pass.cpp
@@ -1 +1,24 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration operator+() const; #include <chrono> #include <cassert> int main() { const std::chrono::minutes m(3); std::chrono::minutes m2 = +m; assert(m.count() == m2.count()); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration operator+() const;
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ const std::chrono::minutes m(3);
+ std::chrono::minutes m2 = +m;
+ assert(m.count() == m2.count());
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_+=.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_+=.pass.cpp
index 244de3c8e83..5038ab75d3c 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_+=.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_+=.pass.cpp
@@ -1 +1,26 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration& operator+=(const duration& d); #include <chrono> #include <cassert> int main() { std::chrono::seconds s(3); s += std::chrono::seconds(2); assert(s.count() == 5); s += std::chrono::minutes(2); assert(s.count() == 125); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration& operator+=(const duration& d);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::seconds s(3);
+ s += std::chrono::seconds(2);
+ assert(s.count() == 5);
+ s += std::chrono::minutes(2);
+ assert(s.count() == 125);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_--.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_--.pass.cpp
index cb60a618cb4..9966f063ce0 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_--.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_--.pass.cpp
@@ -1 +1,25 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration& operator--(); #include <chrono> #include <cassert> int main() { std::chrono::hours h(3); std::chrono::hours& href = --h; assert(&href == &h); assert(h.count() == 2); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration& operator--();
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::hours h(3);
+ std::chrono::hours& href = --h;
+ assert(&href == &h);
+ assert(h.count() == 2);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_--int.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_--int.pass.cpp
index 6b88ddfdc4c..bbed446d850 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_--int.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_--int.pass.cpp
@@ -1 +1,25 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration operator--(int); #include <chrono> #include <cassert> int main() { std::chrono::hours h(3); std::chrono::hours h2 = h--; assert(h.count() == 2); assert(h2.count() == 3); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration operator--(int);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::hours h(3);
+ std::chrono::hours h2 = h--;
+ assert(h.count() == 2);
+ assert(h2.count() == 3);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_-.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_-.pass.cpp
index 8ea6e46e363..0148dc77eb1 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_-.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_-.pass.cpp
@@ -1 +1,24 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration operator-() const; #include <chrono> #include <cassert> int main() { const std::chrono::minutes m(3); std::chrono::minutes m2 = -m; assert(m2.count() == -m.count()); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration operator-() const;
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ const std::chrono::minutes m(3);
+ std::chrono::minutes m2 = -m;
+ assert(m2.count() == -m.count());
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_-=.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_-=.pass.cpp
index 87ce32c93aa..eab4d7007c6 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_-=.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_-=.pass.cpp
@@ -1 +1,26 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration& operator-=(const duration& d); #include <chrono> #include <cassert> int main() { std::chrono::seconds s(3); s -= std::chrono::seconds(2); assert(s.count() == 1); s -= std::chrono::minutes(2); assert(s.count() == -119); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration& operator-=(const duration& d);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::seconds s(3);
+ s -= std::chrono::seconds(2);
+ assert(s.count() == 1);
+ s -= std::chrono::minutes(2);
+ assert(s.count() == -119);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_divide=.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_divide=.pass.cpp
index 3371c392dc2..0490ab4efb7 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_divide=.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_divide=.pass.cpp
@@ -1 +1,24 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration& operator/=(const rep& rhs); #include <chrono> #include <cassert> int main() { std::chrono::nanoseconds ns(15); ns /= 5; assert(ns.count() == 3); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration& operator/=(const rep& rhs);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::nanoseconds ns(15);
+ ns /= 5;
+ assert(ns.count() == 3);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_mod=duration.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_mod=duration.pass.cpp
index 953e778a981..f1e0c8690b5 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_mod=duration.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_mod=duration.pass.cpp
@@ -1 +1,27 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration& operator%=(const duration& rhs) #include <chrono> #include <cassert> int main() { std::chrono::microseconds us(11); std::chrono::microseconds us2(3); us %= us2; assert(us.count() == 2); us %= std::chrono::milliseconds(3); assert(us.count() == 2); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration& operator%=(const duration& rhs)
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::microseconds us(11);
+ std::chrono::microseconds us2(3);
+ us %= us2;
+ assert(us.count() == 2);
+ us %= std::chrono::milliseconds(3);
+ assert(us.count() == 2);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_mod=rep.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_mod=rep.pass.cpp
index ab7d7ca82fd..5449aecd396 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_mod=rep.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_mod=rep.pass.cpp
@@ -1 +1,24 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration& operator%=(const rep& rhs) #include <chrono> #include <cassert> int main() { std::chrono::microseconds us(11); us %= 3; assert(us.count() == 2); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration& operator%=(const rep& rhs)
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::microseconds us(11);
+ us %= 3;
+ assert(us.count() == 2);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_times=.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_times=.pass.cpp
index 869eb7fcb6f..e04887082fe 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_times=.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.arithmetic/op_times=.pass.cpp
@@ -1 +1,24 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration& operator*=(const rep& rhs); #include <chrono> #include <cassert> int main() { std::chrono::nanoseconds ns(3); ns *= 5; assert(ns.count() == 15); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration& operator*=(const rep& rhs);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::nanoseconds ns(3);
+ ns *= 5;
+ assert(ns.count() == 15);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cast/duration_cast.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cast/duration_cast.pass.cpp
index acc41bb1aaf..7c5758f249a 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cast/duration_cast.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cast/duration_cast.pass.cpp
@@ -1 +1,43 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class ToDuration, class Rep, class Period> // ToDuration // duration_cast(const duration<Rep, Period>& d); #include <chrono> #include <type_traits> #include <cassert> template <class ToDuration, class FromDuration> void test(const FromDuration& f, const ToDuration& d) { typedef decltype(std::chrono::duration_cast<ToDuration>(f)) R; static_assert((std::is_same<R, ToDuration>::value), ""); assert(std::chrono::duration_cast<ToDuration>(f) == d); } int main() { test(std::chrono::milliseconds(7265000), std::chrono::hours(2)); test(std::chrono::milliseconds(7265000), std::chrono::minutes(121)); test(std::chrono::milliseconds(7265000), std::chrono::seconds(7265)); test(std::chrono::milliseconds(7265000), std::chrono::milliseconds(7265000)); test(std::chrono::milliseconds(7265000), std::chrono::microseconds(7265000000LL)); test(std::chrono::milliseconds(7265000), std::chrono::nanoseconds(7265000000000LL)); test(std::chrono::milliseconds(7265000), std::chrono::duration<double, std::ratio<3600> >(7265./3600)); test(std::chrono::duration<int, std::ratio<2, 3> >(9), std::chrono::duration<int, std::ratio<3, 5> >(10)); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class ToDuration, class Rep, class Period>
+// ToDuration
+// duration_cast(const duration<Rep, Period>& d);
+
+#include <chrono>
+#include <type_traits>
+#include <cassert>
+
+template <class ToDuration, class FromDuration>
+void
+test(const FromDuration& f, const ToDuration& d)
+{
+ typedef decltype(std::chrono::duration_cast<ToDuration>(f)) R;
+ static_assert((std::is_same<R, ToDuration>::value), "");
+ assert(std::chrono::duration_cast<ToDuration>(f) == d);
+}
+
+int main()
+{
+ test(std::chrono::milliseconds(7265000), std::chrono::hours(2));
+ test(std::chrono::milliseconds(7265000), std::chrono::minutes(121));
+ test(std::chrono::milliseconds(7265000), std::chrono::seconds(7265));
+ test(std::chrono::milliseconds(7265000), std::chrono::milliseconds(7265000));
+ test(std::chrono::milliseconds(7265000), std::chrono::microseconds(7265000000LL));
+ test(std::chrono::milliseconds(7265000), std::chrono::nanoseconds(7265000000000LL));
+ test(std::chrono::milliseconds(7265000),
+ std::chrono::duration<double, std::ratio<3600> >(7265./3600));
+ test(std::chrono::duration<int, std::ratio<2, 3> >(9),
+ std::chrono::duration<int, std::ratio<3, 5> >(10));
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cast/toduration.fail.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cast/toduration.fail.cpp
index d90502cba4b..bbf7be5cb04 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cast/toduration.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cast/toduration.fail.cpp
@@ -1 +1,25 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class ToDuration, class Rep, class Period> // ToDuration // duration_cast(const duration<Rep, Period>& d); // ToDuration shall be an instantiation of duration. #include <chrono> int main() { std::chrono::duration_cast<int>(std::chrono::milliseconds(3)); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class ToDuration, class Rep, class Period>
+// ToDuration
+// duration_cast(const duration<Rep, Period>& d);
+
+// ToDuration shall be an instantiation of duration.
+
+#include <chrono>
+
+int main()
+{
+ std::chrono::duration_cast<int>(std::chrono::milliseconds(3));
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.comparisons/op_equal.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.comparisons/op_equal.pass.cpp
index 86d23704954..c850e2b33ca 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.comparisons/op_equal.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.comparisons/op_equal.pass.cpp
@@ -1 +1,69 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep1, class Period1, class Rep2, class Period2> // bool // operator==(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs); // template <class Rep1, class Period1, class Rep2, class Period2> // bool // operator!=(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs); #include <chrono> #include <cassert> int main() { { std::chrono::seconds s1(3); std::chrono::seconds s2(3); assert(s1 == s2); assert(!(s1 != s2)); } { std::chrono::seconds s1(3); std::chrono::seconds s2(4); assert(!(s1 == s2)); assert(s1 != s2); } { std::chrono::milliseconds s1(3); std::chrono::microseconds s2(3000); assert(s1 == s2); assert(!(s1 != s2)); } { std::chrono::milliseconds s1(3); std::chrono::microseconds s2(4000); assert(!(s1 == s2)); assert(s1 != s2); } { std::chrono::duration<int, std::ratio<2, 3> > s1(9); std::chrono::duration<int, std::ratio<3, 5> > s2(10); assert(s1 == s2); assert(!(s1 != s2)); } { std::chrono::duration<int, std::ratio<2, 3> > s1(10); std::chrono::duration<int, std::ratio<3, 5> > s2(9); assert(!(s1 == s2)); assert(s1 != s2); } { std::chrono::duration<int, std::ratio<2, 3> > s1(9); std::chrono::duration<double, std::ratio<3, 5> > s2(10); assert(s1 == s2); assert(!(s1 != s2)); } } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep1, class Period1, class Rep2, class Period2>
+// bool
+// operator==(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs);
+
+// template <class Rep1, class Period1, class Rep2, class Period2>
+// bool
+// operator!=(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ {
+ std::chrono::seconds s1(3);
+ std::chrono::seconds s2(3);
+ assert(s1 == s2);
+ assert(!(s1 != s2));
+ }
+ {
+ std::chrono::seconds s1(3);
+ std::chrono::seconds s2(4);
+ assert(!(s1 == s2));
+ assert(s1 != s2);
+ }
+ {
+ std::chrono::milliseconds s1(3);
+ std::chrono::microseconds s2(3000);
+ assert(s1 == s2);
+ assert(!(s1 != s2));
+ }
+ {
+ std::chrono::milliseconds s1(3);
+ std::chrono::microseconds s2(4000);
+ assert(!(s1 == s2));
+ assert(s1 != s2);
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(9);
+ std::chrono::duration<int, std::ratio<3, 5> > s2(10);
+ assert(s1 == s2);
+ assert(!(s1 != s2));
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(10);
+ std::chrono::duration<int, std::ratio<3, 5> > s2(9);
+ assert(!(s1 == s2));
+ assert(s1 != s2);
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(9);
+ std::chrono::duration<double, std::ratio<3, 5> > s2(10);
+ assert(s1 == s2);
+ assert(!(s1 != s2));
+ }
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.comparisons/op_less.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.comparisons/op_less.pass.cpp
index 5d447115da5..cfb86338b10 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.comparisons/op_less.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.comparisons/op_less.pass.cpp
@@ -1 +1,91 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep1, class Period1, class Rep2, class Period2> // bool // operator< (const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs); // template <class Rep1, class Period1, class Rep2, class Period2> // bool // operator> (const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs); // template <class Rep1, class Period1, class Rep2, class Period2> // bool // operator<=(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs); // template <class Rep1, class Period1, class Rep2, class Period2> // bool // operator>=(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs); #include <chrono> #include <cassert> int main() { { std::chrono::seconds s1(3); std::chrono::seconds s2(3); assert(!(s1 < s2)); assert(!(s1 > s2)); assert( (s1 <= s2)); assert( (s1 >= s2)); } { std::chrono::seconds s1(3); std::chrono::seconds s2(4); assert( (s1 < s2)); assert(!(s1 > s2)); assert( (s1 <= s2)); assert(!(s1 >= s2)); } { std::chrono::milliseconds s1(3); std::chrono::microseconds s2(3000); assert(!(s1 < s2)); assert(!(s1 > s2)); assert( (s1 <= s2)); assert( (s1 >= s2)); } { std::chrono::milliseconds s1(3); std::chrono::microseconds s2(4000); assert( (s1 < s2)); assert(!(s1 > s2)); assert( (s1 <= s2)); assert(!(s1 >= s2)); } { std::chrono::duration<int, std::ratio<2, 3> > s1(9); std::chrono::duration<int, std::ratio<3, 5> > s2(10); assert(!(s1 < s2)); assert(!(s1 > s2)); assert( (s1 <= s2)); assert( (s1 >= s2)); } { std::chrono::duration<int, std::ratio<2, 3> > s1(10); std::chrono::duration<int, std::ratio<3, 5> > s2(9); assert(!(s1 < s2)); assert( (s1 > s2)); assert(!(s1 <= s2)); assert( (s1 >= s2)); } { std::chrono::duration<int, std::ratio<2, 3> > s1(9); std::chrono::duration<double, std::ratio<3, 5> > s2(10); assert(!(s1 < s2)); assert(!(s1 > s2)); assert( (s1 <= s2)); assert( (s1 >= s2)); } } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep1, class Period1, class Rep2, class Period2>
+// bool
+// operator< (const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs);
+
+// template <class Rep1, class Period1, class Rep2, class Period2>
+// bool
+// operator> (const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs);
+
+// template <class Rep1, class Period1, class Rep2, class Period2>
+// bool
+// operator<=(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs);
+
+// template <class Rep1, class Period1, class Rep2, class Period2>
+// bool
+// operator>=(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ {
+ std::chrono::seconds s1(3);
+ std::chrono::seconds s2(3);
+ assert(!(s1 < s2));
+ assert(!(s1 > s2));
+ assert( (s1 <= s2));
+ assert( (s1 >= s2));
+ }
+ {
+ std::chrono::seconds s1(3);
+ std::chrono::seconds s2(4);
+ assert( (s1 < s2));
+ assert(!(s1 > s2));
+ assert( (s1 <= s2));
+ assert(!(s1 >= s2));
+ }
+ {
+ std::chrono::milliseconds s1(3);
+ std::chrono::microseconds s2(3000);
+ assert(!(s1 < s2));
+ assert(!(s1 > s2));
+ assert( (s1 <= s2));
+ assert( (s1 >= s2));
+ }
+ {
+ std::chrono::milliseconds s1(3);
+ std::chrono::microseconds s2(4000);
+ assert( (s1 < s2));
+ assert(!(s1 > s2));
+ assert( (s1 <= s2));
+ assert(!(s1 >= s2));
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(9);
+ std::chrono::duration<int, std::ratio<3, 5> > s2(10);
+ assert(!(s1 < s2));
+ assert(!(s1 > s2));
+ assert( (s1 <= s2));
+ assert( (s1 >= s2));
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(10);
+ std::chrono::duration<int, std::ratio<3, 5> > s2(9);
+ assert(!(s1 < s2));
+ assert( (s1 > s2));
+ assert(!(s1 <= s2));
+ assert( (s1 >= s2));
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(9);
+ std::chrono::duration<double, std::ratio<3, 5> > s2(10);
+ assert(!(s1 < s2));
+ assert(!(s1 > s2));
+ assert( (s1 <= s2));
+ assert( (s1 >= s2));
+ }
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_exact.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_exact.pass.cpp
index 356fd1bd8e3..9639ad2b902 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_exact.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_exact.pass.cpp
@@ -1 +1,27 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep2, class Period2> // duration(const duration<Rep2, Period2>& d); // exact conversions allowed for integral reps #include <chrono> #include <cassert> int main() { std::chrono::milliseconds ms(1); std::chrono::microseconds us = ms; assert(us.count() == 1000); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep2, class Period2>
+// duration(const duration<Rep2, Period2>& d);
+
+// exact conversions allowed for integral reps
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::milliseconds ms(1);
+ std::chrono::microseconds us = ms;
+ assert(us.count() == 1000);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_float_to_int.fail.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_float_to_int.fail.cpp
index 5d53a39d594..056096a66b0 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_float_to_int.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_float_to_int.fail.cpp
@@ -1 +1,25 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep2, class Period2> // duration(const duration<Rep2, Period2>& d); // conversions from floating point to integral durations disallowed #include <chrono> int main() { std::chrono::duration<double> d; std::chrono::duration<int> i = d; } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep2, class Period2>
+// duration(const duration<Rep2, Period2>& d);
+
+// conversions from floating point to integral durations disallowed
+
+#include <chrono>
+
+int main()
+{
+ std::chrono::duration<double> d;
+ std::chrono::duration<int> i = d;
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_inexact.fail.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_inexact.fail.cpp
index 1e87931a01d..692da387770 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_inexact.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_inexact.fail.cpp
@@ -1 +1,25 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep2, class Period2> // duration(const duration<Rep2, Period2>& d); // inexact conversions disallowed for integral reps #include <chrono> int main() { std::chrono::microseconds us(1); std::chrono::milliseconds ms = us; } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep2, class Period2>
+// duration(const duration<Rep2, Period2>& d);
+
+// inexact conversions disallowed for integral reps
+
+#include <chrono>
+
+int main()
+{
+ std::chrono::microseconds us(1);
+ std::chrono::milliseconds ms = us;
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_inexact.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_inexact.pass.cpp
index 1359be9c0eb..39f281a026e 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_inexact.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_inexact.pass.cpp
@@ -1 +1,27 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep2, class Period2> // duration(const duration<Rep2, Period2>& d); // inexact conversions allowed for floating point reps #include <chrono> #include <cassert> int main() { std::chrono::duration<double, std::micro> us(1); std::chrono::duration<double, std::milli> ms = us; assert(ms.count() == 1./1000); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep2, class Period2>
+// duration(const duration<Rep2, Period2>& d);
+
+// inexact conversions allowed for floating point reps
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::duration<double, std::micro> us(1);
+ std::chrono::duration<double, std::milli> ms = us;
+ assert(ms.count() == 1./1000);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_int_to_float.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_int_to_float.pass.cpp
index 32328cac805..a69c3543c2d 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_int_to_float.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cons/convert_int_to_float.pass.cpp
@@ -1 +1,27 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep2, class Period2> // duration(const duration<Rep2, Period2>& d); // conversions from integral to floating point durations allowed #include <chrono> #include <cassert> int main() { std::chrono::duration<int> i(3); std::chrono::duration<int> d = i; assert(d.count() == 3); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep2, class Period2>
+// duration(const duration<Rep2, Period2>& d);
+
+// conversions from integral to floating point durations allowed
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::duration<int> i(3);
+ std::chrono::duration<int> d = i;
+ assert(d.count() == 3);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cons/default.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cons/default.pass.cpp
index 1d86be2ecac..917c4cc744c 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cons/default.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cons/default.pass.cpp
@@ -1 +1,34 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // duration() = default; // Rep must be default initialized, not initialized with 0 #include <chrono> #include <cassert> #include "../../rep.h" template <class D> void test() { D d; assert(d.count() == typename D::rep()); } int main() { test<std::chrono::duration<Rep> >(); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// duration() = default;
+
+// Rep must be default initialized, not initialized with 0
+
+#include <chrono>
+#include <cassert>
+
+#include "../../rep.h"
+
+template <class D>
+void
+test()
+{
+ D d;
+ assert(d.count() == typename D::rep());
+}
+
+int main()
+{
+ test<std::chrono::duration<Rep> >();
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cons/rep.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cons/rep.pass.cpp
index 7538605d073..59bbd6e1946 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cons/rep.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cons/rep.pass.cpp
@@ -1 +1,36 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep2> // explicit duration(const Rep2& r); #include <chrono> #include <cassert> #include "../../rep.h" template <class D, class R> void test(R r) { D d(r); assert(d.count() == r); } int main() { test<std::chrono::duration<int> >(5); test<std::chrono::duration<int, std::ratio<3, 2> > >(5); test<std::chrono::duration<Rep, std::ratio<3, 2> > >(Rep(3)); test<std::chrono::duration<double, std::ratio<2, 3> > >(5.5); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep2>
+// explicit duration(const Rep2& r);
+
+#include <chrono>
+#include <cassert>
+
+#include "../../rep.h"
+
+template <class D, class R>
+void
+test(R r)
+{
+ D d(r);
+ assert(d.count() == r);
+}
+
+int main()
+{
+ test<std::chrono::duration<int> >(5);
+ test<std::chrono::duration<int, std::ratio<3, 2> > >(5);
+ test<std::chrono::duration<Rep, std::ratio<3, 2> > >(Rep(3));
+ test<std::chrono::duration<double, std::ratio<2, 3> > >(5.5);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cons/rep01.fail.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cons/rep01.fail.cpp
index da9d886c249..b0d20e1e1a6 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cons/rep01.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cons/rep01.fail.cpp
@@ -1 +1,26 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep2> // explicit duration(const Rep2& r); // test for explicit #include <chrono> #include "../../rep.h" int main() { std::chrono::duration<int> d = 1; } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep2>
+// explicit duration(const Rep2& r);
+
+// test for explicit
+
+#include <chrono>
+
+#include "../../rep.h"
+
+int main()
+{
+ std::chrono::duration<int> d = 1;
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cons/rep02.fail.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cons/rep02.fail.cpp
index 17d532cbadb..72bd7678858 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cons/rep02.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cons/rep02.fail.cpp
@@ -1 +1,26 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep2> // explicit duration(const Rep2& r); // Rep2 shall be implicitly convertible to rep #include <chrono> #include "../../rep.h" int main() { std::chrono::duration<Rep> d(1); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep2>
+// explicit duration(const Rep2& r);
+
+// Rep2 shall be implicitly convertible to rep
+
+#include <chrono>
+
+#include "../../rep.h"
+
+int main()
+{
+ std::chrono::duration<Rep> d(1);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cons/rep02.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cons/rep02.pass.cpp
index 38844c7811c..c25f04a96c9 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cons/rep02.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cons/rep02.pass.cpp
@@ -1 +1,26 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep2> // explicit duration(const Rep2& r); // construct double with int #include <chrono> #include <cassert> int main() { std::chrono::duration<double> d(5); assert(d.count() == 5); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep2>
+// explicit duration(const Rep2& r);
+
+// construct double with int
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::duration<double> d(5);
+ assert(d.count() == 5);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.cons/rep03.fail.cpp b/libcxx/test/utilities/time/time.duration/time.duration.cons/rep03.fail.cpp
index fb6c83a1d3d..9fa9bdeb8c7 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.cons/rep03.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.cons/rep03.fail.cpp
@@ -1 +1,24 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep2> // explicit duration(const Rep2& r); // treat_as_floating_point<Rep2>::value shall be false #include <chrono> int main() { std::chrono::duration<int> d(1.); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep2>
+// explicit duration(const Rep2& r);
+
+// treat_as_floating_point<Rep2>::value shall be false
+
+#include <chrono>
+
+int main()
+{
+ std::chrono::duration<int> d(1.);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_+.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_+.pass.cpp
index 168e7a0437a..94605b2d4ca 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_+.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_+.pass.cpp
@@ -1 +1,47 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep1, class Period1, class Rep2, class Period2> // typename common_type<duration<Rep1, Period1>, duration<Rep2, Period2>>::type // operator+(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs); #include <chrono> #include <cassert> int main() { { std::chrono::seconds s1(3); std::chrono::seconds s2(5); std::chrono::seconds r = s1 + s2; assert(r.count() == 8); } { std::chrono::seconds s1(3); std::chrono::microseconds s2(5); std::chrono::microseconds r = s1 + s2; assert(r.count() == 3000005); } { std::chrono::duration<int, std::ratio<2, 3> > s1(3); std::chrono::duration<int, std::ratio<3, 5> > s2(5); std::chrono::duration<int, std::ratio<1, 15> > r = s1 + s2; assert(r.count() == 75); } { std::chrono::duration<int, std::ratio<2, 3> > s1(3); std::chrono::duration<double, std::ratio<3, 5> > s2(5); std::chrono::duration<double, std::ratio<1, 15> > r = s1 + s2; assert(r.count() == 75); } } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep1, class Period1, class Rep2, class Period2>
+// typename common_type<duration<Rep1, Period1>, duration<Rep2, Period2>>::type
+// operator+(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ {
+ std::chrono::seconds s1(3);
+ std::chrono::seconds s2(5);
+ std::chrono::seconds r = s1 + s2;
+ assert(r.count() == 8);
+ }
+ {
+ std::chrono::seconds s1(3);
+ std::chrono::microseconds s2(5);
+ std::chrono::microseconds r = s1 + s2;
+ assert(r.count() == 3000005);
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(3);
+ std::chrono::duration<int, std::ratio<3, 5> > s2(5);
+ std::chrono::duration<int, std::ratio<1, 15> > r = s1 + s2;
+ assert(r.count() == 75);
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(3);
+ std::chrono::duration<double, std::ratio<3, 5> > s2(5);
+ std::chrono::duration<double, std::ratio<1, 15> > r = s1 + s2;
+ assert(r.count() == 75);
+ }
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_-.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_-.pass.cpp
index 918f62d5d20..56329ee0c5f 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_-.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_-.pass.cpp
@@ -1 +1,47 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep1, class Period1, class Rep2, class Period2> // typename common_type<duration<Rep1, Period1>, duration<Rep2, Period2>>::type // operator-(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs); #include <chrono> #include <cassert> int main() { { std::chrono::seconds s1(3); std::chrono::seconds s2(5); std::chrono::seconds r = s1 - s2; assert(r.count() == -2); } { std::chrono::seconds s1(3); std::chrono::microseconds s2(5); std::chrono::microseconds r = s1 - s2; assert(r.count() == 2999995); } { std::chrono::duration<int, std::ratio<2, 3> > s1(3); std::chrono::duration<int, std::ratio<3, 5> > s2(5); std::chrono::duration<int, std::ratio<1, 15> > r = s1 - s2; assert(r.count() == -15); } { std::chrono::duration<int, std::ratio<2, 3> > s1(3); std::chrono::duration<double, std::ratio<3, 5> > s2(5); std::chrono::duration<double, std::ratio<1, 15> > r = s1 - s2; assert(r.count() == -15); } } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep1, class Period1, class Rep2, class Period2>
+// typename common_type<duration<Rep1, Period1>, duration<Rep2, Period2>>::type
+// operator-(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ {
+ std::chrono::seconds s1(3);
+ std::chrono::seconds s2(5);
+ std::chrono::seconds r = s1 - s2;
+ assert(r.count() == -2);
+ }
+ {
+ std::chrono::seconds s1(3);
+ std::chrono::microseconds s2(5);
+ std::chrono::microseconds r = s1 - s2;
+ assert(r.count() == 2999995);
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(3);
+ std::chrono::duration<int, std::ratio<3, 5> > s2(5);
+ std::chrono::duration<int, std::ratio<1, 15> > r = s1 - s2;
+ assert(r.count() == -15);
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(3);
+ std::chrono::duration<double, std::ratio<3, 5> > s2(5);
+ std::chrono::duration<double, std::ratio<1, 15> > r = s1 - s2;
+ assert(r.count() == -15);
+ }
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_duration.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_duration.pass.cpp
index 4ad5961fc8a..af50271e6ae 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_duration.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_duration.pass.cpp
@@ -1 +1,43 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep1, class Period1, class Rep2, class Period2> // typename common_type<Rep1, Rep2>::type // operator/(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs); #include <chrono> #include <cassert> int main() { { std::chrono::nanoseconds ns1(15); std::chrono::nanoseconds ns2(5); assert(ns1 / ns2 == 3); } { std::chrono::microseconds us1(15); std::chrono::nanoseconds ns2(5); assert(us1 / ns2 == 3000); } { std::chrono::duration<int, std::ratio<2, 3> > s1(30); std::chrono::duration<int, std::ratio<3, 5> > s2(5); assert(s1 / s2 == 6); } { std::chrono::duration<int, std::ratio<2, 3> > s1(30); std::chrono::duration<double, std::ratio<3, 5> > s2(5); assert(s1 / s2 == 20./3); } } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep1, class Period1, class Rep2, class Period2>
+// typename common_type<Rep1, Rep2>::type
+// operator/(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ {
+ std::chrono::nanoseconds ns1(15);
+ std::chrono::nanoseconds ns2(5);
+ assert(ns1 / ns2 == 3);
+ }
+ {
+ std::chrono::microseconds us1(15);
+ std::chrono::nanoseconds ns2(5);
+ assert(us1 / ns2 == 3000);
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(30);
+ std::chrono::duration<int, std::ratio<3, 5> > s2(5);
+ assert(s1 / s2 == 6);
+ }
+ {
+ std::chrono::duration<int, std::ratio<2, 3> > s1(30);
+ std::chrono::duration<double, std::ratio<3, 5> > s2(5);
+ assert(s1 / s2 == 20./3);
+ }
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_rep.fail.cpp b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_rep.fail.cpp
index 244061fb2a0..99336528882 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_rep.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_rep.fail.cpp
@@ -1 +1,26 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep1, class Period, class Rep2> // duration<typename common_type<Rep1, Rep2>::type, Period> // operator/(const duration<Rep1, Period>& d, const Rep2& s); #include <chrono> #include "../../rep.h" int main() { std::chrono::duration<Rep> d(Rep(15)); d = d / 5; } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep1, class Period, class Rep2>
+// duration<typename common_type<Rep1, Rep2>::type, Period>
+// operator/(const duration<Rep1, Period>& d, const Rep2& s);
+
+#include <chrono>
+
+#include "../../rep.h"
+
+int main()
+{
+ std::chrono::duration<Rep> d(Rep(15));
+ d = d / 5;
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_rep.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_rep.pass.cpp
index 81848a84f10..cdd105b8fff 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_rep.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_divide_rep.pass.cpp
@@ -1 +1,26 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep1, class Period, class Rep2> // duration<typename common_type<Rep1, Rep2>::type, Period> // operator/(const duration<Rep1, Period>& d, const Rep2& s); #include <chrono> #include <cassert> int main() { std::chrono::nanoseconds ns(15); ns = ns / 5; assert(ns.count() == 3); } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep1, class Period, class Rep2>
+// duration<typename common_type<Rep1, Rep2>::type, Period>
+// operator/(const duration<Rep1, Period>& d, const Rep2& s);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ std::chrono::nanoseconds ns(15);
+ ns = ns / 5;
+ assert(ns.count() == 3);
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_mod_duration.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_mod_duration.pass.cpp
index 2e664d9860b..1d61cb3e7f1 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_mod_duration.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_mod_duration.pass.cpp
@@ -1 +1,41 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep1, class Period1, class Rep2, class Period2> // typename common_type<duration<Rep1, Period1>, duration<Rep2, Period2>>::type // operator%(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs); #include <chrono> #include <cassert> int main() { { std::chrono::nanoseconds ns1(15); std::chrono::nanoseconds ns2(6); std::chrono::nanoseconds r = ns1 % ns2; assert(r.count() == 3); } { std::chrono::microseconds us1(15); std::chrono::nanoseconds ns2(28); std::chrono::nanoseconds r = us1 % ns2; assert(r.count() == 20); } { std::chrono::duration<int, std::ratio<3, 5> > s1(6); std::chrono::duration<int, std::ratio<2, 3> > s2(3); std::chrono::duration<int, std::ratio<1, 15> > r = s1 % s2; assert(r.count() == 24); } } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep1, class Period1, class Rep2, class Period2>
+// typename common_type<duration<Rep1, Period1>, duration<Rep2, Period2>>::type
+// operator%(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs);
+
+#include <chrono>
+#include <cassert>
+
+int main()
+{
+ {
+ std::chrono::nanoseconds ns1(15);
+ std::chrono::nanoseconds ns2(6);
+ std::chrono::nanoseconds r = ns1 % ns2;
+ assert(r.count() == 3);
+ }
+ {
+ std::chrono::microseconds us1(15);
+ std::chrono::nanoseconds ns2(28);
+ std::chrono::nanoseconds r = us1 % ns2;
+ assert(r.count() == 20);
+ }
+ {
+ std::chrono::duration<int, std::ratio<3, 5> > s1(6);
+ std::chrono::duration<int, std::ratio<2, 3> > s2(3);
+ std::chrono::duration<int, std::ratio<1, 15> > r = s1 % s2;
+ assert(r.count() == 24);
+ }
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_mod_rep.fail.cpp b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_mod_rep.fail.cpp
index 9e82fdfc1ff..349c6e8a948 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_mod_rep.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_mod_rep.fail.cpp
@@ -1 +1,26 @@
-//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // <chrono> // duration // template <class Rep1, class Period, class Rep2> // duration<typename common_type<Rep1, Rep2>::type, Period> // operator%(const duration<Rep1, Period>& d, const Rep2& s) #include <chrono> #include "../../rep.h" int main() { std::chrono::duration<Rep> d(Rep(15)); d = d % 5; } \ No newline at end of file
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <chrono>
+
+// duration
+
+// template <class Rep1, class Period, class Rep2>
+// duration<typename common_type<Rep1, Rep2>::type, Period>
+// operator%(const duration<Rep1, Period>& d, const Rep2& s)
+
+#include <chrono>
+
+#include "../../rep.h"
+
+int main()
+{
+ std::chrono::duration<Rep> d(Rep(15));
+ d = d % 5;
+}
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep.pass.cpp b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep.pass.cpp
index c27ac5c797d..7d83d9db616 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep.pass.cpp
@@ -11,12 +11,12 @@
// duration
-// template <class Rep1, class Period, class Rep2>
-// duration<typename common_type<Rep1, Rep2>::type, Period>
+// template <class Rep1, class Period, class Rep2>
+// duration<typename common_type<Rep1, Rep2>::type, Period>
// operator*(const duration<Rep1, Period>& d, const Rep2& s);
-// template <class Rep1, class Period, class Rep2>
-// duration<typename common_type<Rep1, Rep2>::type, Period>
+// template <class Rep1, class Period, class Rep2>
+// duration<typename common_type<Rep1, Rep2>::type, Period>
// operator*(const Rep1& s, const duration<Rep2, Period>& d);
#include <chrono>
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep1.fail.cpp b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep1.fail.cpp
index d6cdcbe05dc..dde038083b0 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep1.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep1.fail.cpp
@@ -11,12 +11,12 @@
// duration
-// template <class Rep1, class Period, class Rep2>
-// duration<typename common_type<Rep1, Rep2>::type, Period>
+// template <class Rep1, class Period, class Rep2>
+// duration<typename common_type<Rep1, Rep2>::type, Period>
// operator*(const duration<Rep1, Period>& d, const Rep2& s);
-// template <class Rep1, class Period, class Rep2>
-// duration<typename common_type<Rep1, Rep2>::type, Period>
+// template <class Rep1, class Period, class Rep2>
+// duration<typename common_type<Rep1, Rep2>::type, Period>
// operator*(const Rep1& s, const duration<Rep2, Period>& d);
#include <chrono>
diff --git a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep2.fail.cpp b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep2.fail.cpp
index 0b1a38ab058..9dfb7385da8 100644
--- a/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep2.fail.cpp
+++ b/libcxx/test/utilities/time/time.duration/time.duration.nonmember/op_times_rep2.fail.cpp
@@ -11,12 +11,12 @@
// duration
-// template <class Rep1, class Period, class Rep2>
-// duration<typename common_type<Rep1, Rep2>::type, Period>
+// template <class Rep1, class Period, class Rep2>
+// duration<typename common_type<Rep1, Rep2>::type, Period>
// operator*(const duration<Rep1, Period>& d, const Rep2& s);
-// template <class Rep1, class Period, class Rep2>
-// duration<typename common_type<Rep1, Rep2>::type, Period>
+// template <class Rep1, class Period, class Rep2>
+// duration<typename common_type<Rep1, Rep2>::type, Period>
// operator*(const Rep1& s, const duration<Rep2, Period>& d);
#include <chrono>
diff --git a/libcxx/test/utilities/time/time.duration/types.pass.cpp b/libcxx/test/utilities/time/time.duration/types.pass.cpp
index 5b6aa81c4a6..8ed179d45dd 100644
--- a/libcxx/test/utilities/time/time.duration/types.pass.cpp
+++ b/libcxx/test/utilities/time/time.duration/types.pass.cpp
@@ -13,8 +13,8 @@
// Test nested types
-// typedef Rep rep;
-// typedef Period period;
+// typedef Rep rep;
+// typedef Period period;
#include <chrono>
#include <type_traits>
diff --git a/libcxx/test/utilities/time/time.point/default_duration.pass.cpp b/libcxx/test/utilities/time/time.point/default_duration.pass.cpp
index fe220d3e210..9135f915a63 100644
--- a/libcxx/test/utilities/time/time.point/default_duration.pass.cpp
+++ b/libcxx/test/utilities/time/time.point/default_duration.pass.cpp
@@ -13,7 +13,7 @@
// Test default template arg:
-// template <class Clock, class Duration = typename Clock::duration>
+// template <class Clock, class Duration = typename Clock::duration>
// class time_point;
#include <chrono>
diff --git a/libcxx/test/utilities/time/time.point/time.point.cast/time_point_cast.pass.cpp b/libcxx/test/utilities/time/time.point/time.point.cast/time_point_cast.pass.cpp
index d12c692bb8e..cd808111550 100644
--- a/libcxx/test/utilities/time/time.point/time.point.cast/time_point_cast.pass.cpp
+++ b/libcxx/test/utilities/time/time.point/time.point.cast/time_point_cast.pass.cpp
@@ -11,7 +11,7 @@
// time_point
-// template <class ToDuration, class Clock, class Duration>
+// template <class ToDuration, class Clock, class Duration>
// time_point<Clock, ToDuration>
// time_point_cast(const time_point<Clock, Duration>& t);
diff --git a/libcxx/test/utilities/time/time.point/time.point.cast/toduration.fail.cpp b/libcxx/test/utilities/time/time.point/time.point.cast/toduration.fail.cpp
index 412cc07afe0..d611212c4f8 100644
--- a/libcxx/test/utilities/time/time.point/time.point.cast/toduration.fail.cpp
+++ b/libcxx/test/utilities/time/time.point/time.point.cast/toduration.fail.cpp
@@ -11,7 +11,7 @@
// time_point
-// template <class ToDuration, class Clock, class Duration>
+// template <class ToDuration, class Clock, class Duration>
// time_point<Clock, ToDuration>
// time_point_cast(const time_point<Clock, Duration>& t);
diff --git a/libcxx/test/utilities/time/time.point/time.point.comparisons/op_equal.fail.cpp b/libcxx/test/utilities/time/time.point/time.point.comparisons/op_equal.fail.cpp
index 7122a8ba298..e6f34c558a6 100644
--- a/libcxx/test/utilities/time/time.point/time.point.comparisons/op_equal.fail.cpp
+++ b/libcxx/test/utilities/time/time.point/time.point.comparisons/op_equal.fail.cpp
@@ -11,11 +11,11 @@
// time_point
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator==(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator!=(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
diff --git a/libcxx/test/utilities/time/time.point/time.point.comparisons/op_equal.pass.cpp b/libcxx/test/utilities/time/time.point/time.point.comparisons/op_equal.pass.cpp
index 6d1a0dcc7cf..8e204502840 100644
--- a/libcxx/test/utilities/time/time.point/time.point.comparisons/op_equal.pass.cpp
+++ b/libcxx/test/utilities/time/time.point/time.point.comparisons/op_equal.pass.cpp
@@ -11,11 +11,11 @@
// time_point
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator==(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator!=(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
diff --git a/libcxx/test/utilities/time/time.point/time.point.comparisons/op_less.fail.cpp b/libcxx/test/utilities/time/time.point/time.point.comparisons/op_less.fail.cpp
index f98dca131bd..4e4fb1d65b8 100644
--- a/libcxx/test/utilities/time/time.point/time.point.comparisons/op_less.fail.cpp
+++ b/libcxx/test/utilities/time/time.point/time.point.comparisons/op_less.fail.cpp
@@ -11,19 +11,19 @@
// time_point
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator< (const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator> (const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator<=(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator>=(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
diff --git a/libcxx/test/utilities/time/time.point/time.point.comparisons/op_less.pass.cpp b/libcxx/test/utilities/time/time.point/time.point.comparisons/op_less.pass.cpp
index abbb304d04e..8acdc1cae65 100644
--- a/libcxx/test/utilities/time/time.point/time.point.comparisons/op_less.pass.cpp
+++ b/libcxx/test/utilities/time/time.point/time.point.comparisons/op_less.pass.cpp
@@ -11,19 +11,19 @@
// time_point
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator< (const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator> (const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator<=(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// bool
// operator>=(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
diff --git a/libcxx/test/utilities/time/time.point/time.point.cons/convert.fail.cpp b/libcxx/test/utilities/time/time.point/time.point.cons/convert.fail.cpp
index 68fd0a0cbe6..58241a9f22d 100644
--- a/libcxx/test/utilities/time/time.point/time.point.cons/convert.fail.cpp
+++ b/libcxx/test/utilities/time/time.point/time.point.cons/convert.fail.cpp
@@ -11,7 +11,7 @@
// time_point
-// template <class Duration2>
+// template <class Duration2>
// time_point(const time_point<clock, Duration2>& t);
// Duration2 shall be implicitly convertible to duration.
diff --git a/libcxx/test/utilities/time/time.point/time.point.cons/convert.pass.cpp b/libcxx/test/utilities/time/time.point/time.point.cons/convert.pass.cpp
index 69547a4c1b4..bdd260eff35 100644
--- a/libcxx/test/utilities/time/time.point/time.point.cons/convert.pass.cpp
+++ b/libcxx/test/utilities/time/time.point/time.point.cons/convert.pass.cpp
@@ -11,7 +11,7 @@
// time_point
-// template <class Duration2>
+// template <class Duration2>
// time_point(const time_point<clock, Duration2>& t);
#include <chrono>
diff --git a/libcxx/test/utilities/time/time.point/time.point.nonmember/op_+.pass.cpp b/libcxx/test/utilities/time/time.point/time.point.nonmember/op_+.pass.cpp
index ed31cece003..fc627e10e37 100644
--- a/libcxx/test/utilities/time/time.point/time.point.nonmember/op_+.pass.cpp
+++ b/libcxx/test/utilities/time/time.point/time.point.nonmember/op_+.pass.cpp
@@ -11,12 +11,12 @@
// time_point
-// template <class Clock, class Duration1, class Rep2, class Period2>
-// time_point<Clock, typename common_type<Duration1, duration<Rep2, Period2>>::type>
+// template <class Clock, class Duration1, class Rep2, class Period2>
+// time_point<Clock, typename common_type<Duration1, duration<Rep2, Period2>>::type>
// operator+(const time_point<Clock, Duration1>& lhs, const duration<Rep2, Period2>& rhs);
-// template <class Rep1, class Period1, class Clock, class Duration2>
-// time_point<Clock, typename common_type<duration<Rep1, Period1>, Duration2>::type>
+// template <class Rep1, class Period1, class Clock, class Duration2>
+// time_point<Clock, typename common_type<duration<Rep1, Period1>, Duration2>::type>
// operator+(const duration<Rep1, Period1>& lhs, const time_point<Clock, Duration2>& rhs);
#include <chrono>
diff --git a/libcxx/test/utilities/time/time.point/time.point.nonmember/op_-duration.pass.cpp b/libcxx/test/utilities/time/time.point/time.point.nonmember/op_-duration.pass.cpp
index c3e0d62b660..c2bca855983 100644
--- a/libcxx/test/utilities/time/time.point/time.point.nonmember/op_-duration.pass.cpp
+++ b/libcxx/test/utilities/time/time.point/time.point.nonmember/op_-duration.pass.cpp
@@ -11,8 +11,8 @@
// time_point
-// template <class Clock, class Duration1, class Rep2, class Period2>
-// time_point<Clock, typename common_type<Duration1, duration<Rep2, Period2>>::type>
+// template <class Clock, class Duration1, class Rep2, class Period2>
+// time_point<Clock, typename common_type<Duration1, duration<Rep2, Period2>>::type>
// operator-(const time_point<Clock, Duration1>& lhs, const duration<Rep2, Period2>& rhs);
#include <chrono>
diff --git a/libcxx/test/utilities/time/time.point/time.point.nonmember/op_-time_point.pass.cpp b/libcxx/test/utilities/time/time.point/time.point.nonmember/op_-time_point.pass.cpp
index f8ac80bde37..0ea405f76af 100644
--- a/libcxx/test/utilities/time/time.point/time.point.nonmember/op_-time_point.pass.cpp
+++ b/libcxx/test/utilities/time/time.point/time.point.nonmember/op_-time_point.pass.cpp
@@ -11,8 +11,8 @@
// time_point
-// template <class Clock, class Duration1, class Duration2>
-// typename common_type<Duration1, Duration2>::type
+// template <class Clock, class Duration1, class Duration2>
+// typename common_type<Duration1, Duration2>::type
// operator-(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
#include <chrono>
diff --git a/libcxx/test/utilities/time/time.traits/time.traits.specializations/duration.pass.cpp b/libcxx/test/utilities/time/time.traits/time.traits.specializations/duration.pass.cpp
index dfccbd5cbf8..f638f630921 100644
--- a/libcxx/test/utilities/time/time.traits/time.traits.specializations/duration.pass.cpp
+++ b/libcxx/test/utilities/time/time.traits/time.traits.specializations/duration.pass.cpp
@@ -9,10 +9,10 @@
// <chrono>
-// template <class Rep1, class Period1, class Rep2, class Period2>
+// template <class Rep1, class Period1, class Rep2, class Period2>
// struct common_type<chrono::duration<Rep1, Period1>, chrono::duration<Rep2, Period2>>
// {
-// typedef chrono::duration<typename common_type<Rep1, Rep2>::type, see below }> type;
+// typedef chrono::duration<typename common_type<Rep1, Rep2>::type, see below }> type;
// };
#include <chrono>
diff --git a/libcxx/test/utilities/time/time.traits/time.traits.specializations/time_point.pass.cpp b/libcxx/test/utilities/time/time.traits/time.traits.specializations/time_point.pass.cpp
index b0965e10457..55d14e1b2aa 100644
--- a/libcxx/test/utilities/time/time.traits/time.traits.specializations/time_point.pass.cpp
+++ b/libcxx/test/utilities/time/time.traits/time.traits.specializations/time_point.pass.cpp
@@ -9,10 +9,10 @@
// <chrono>
-// template <class Clock, class Duration1, class Duration2>
+// template <class Clock, class Duration1, class Duration2>
// struct common_type<chrono::time_point<Clock, Duration1>, chrono::time_point<Clock, Duration2>>
-// {
-// typedef chrono::time_point<Clock, typename common_type<Duration1, Duration2>::type> type;
+// {
+// typedef chrono::time_point<Clock, typename common_type<Duration1, Duration2>::type> type;
// };
#include <chrono>
OpenPOWER on IntegriCloud