summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/utilities/time
diff options
context:
space:
mode:
authorMarshall Clow <mclow.lists@gmail.com>2019-07-26 15:10:46 +0000
committerMarshall Clow <mclow.lists@gmail.com>2019-07-26 15:10:46 +0000
commit736e8aa8ed48fd8c29a909bf616965d0f8677bca (patch)
tree4362f60b12cc5a96b658b04674dd49b0f6ab3f69 /libcxx/test/std/utilities/time
parent92363a3ada3f4b770c24db8cd3b5cd8d025ff917 (diff)
downloadbcm5719-llvm-736e8aa8ed48fd8c29a909bf616965d0f8677bca.tar.gz
bcm5719-llvm-736e8aa8ed48fd8c29a909bf616965d0f8677bca.zip
Fix a bug in std::chrono::abs where it would fail when the duration's period had not been reduced.s
llvm-svn: 367120
Diffstat (limited to 'libcxx/test/std/utilities/time')
-rw-r--r--libcxx/test/std/utilities/time/time.duration/time.duration.alg/abs.pass.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/libcxx/test/std/utilities/time/time.duration/time.duration.alg/abs.pass.cpp b/libcxx/test/std/utilities/time/time.duration/time.duration.alg/abs.pass.cpp
index 605e27cd982..8f5544f0ef0 100644
--- a/libcxx/test/std/utilities/time/time.duration/time.duration.alg/abs.pass.cpp
+++ b/libcxx/test/std/utilities/time/time.duration/time.duration.alg/abs.pass.cpp
@@ -49,5 +49,11 @@ int main(int, char**)
static_assert(h2.count() == 3, "");
}
+ {
+// Make sure it works for durations that are not LCD'ed - example from LWG3091
+ constexpr auto d = std::chrono::abs(std::chrono::duration<int, std::ratio<60, 100>>{2});
+ static_assert(d.count() == 2, "");
+ }
+
return 0;
}
OpenPOWER on IntegriCloud