-
Notifications
You must be signed in to change notification settings - Fork 15.1k
[libc++][test] Fix-up tests for is_clock(_v)
#166888
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[libc++][test] Fix-up tests for is_clock(_v)
#166888
Conversation
This fixes incompleteness and inconsistency for a test file added in adc7932, by - renaming `trait.is.clock.compile.verify.cpp` to `trait.is.clock.verify.cpp`, and - adding comments clarifying what are being tested.
|
@llvm/pr-subscribers-libcxx Author: A. Jiang (frederick-vs-ja) ChangesThis fixes incompleteness and inconsistency for a test file added in adc7932, by
Full diff: https://github.com/llvm/llvm-project/pull/166888.diff 1 Files Affected:
diff --git a/libcxx/test/libcxx/time/time.traits.is.clock/trait.is.clock.compile.verify.cpp b/libcxx/test/libcxx/time/time.traits.is.clock/trait.is.clock.verify.cpp
similarity index 61%
rename from libcxx/test/libcxx/time/time.traits.is.clock/trait.is.clock.compile.verify.cpp
rename to libcxx/test/libcxx/time/time.traits.is.clock/trait.is.clock.verify.cpp
index e9ad59aba13cb..f4f438d348a85 100644
--- a/libcxx/test/libcxx/time/time.traits.is.clock/trait.is.clock.compile.verify.cpp
+++ b/libcxx/test/libcxx/time/time.traits.is.clock/trait.is.clock.verify.cpp
@@ -8,6 +8,18 @@
// REQUIRES: std-at-least-c++20
+// <chrono>
+//
+// template<class T> struct is_clock;
+// template<class T> constexpr bool is_clock_v = is_clock<T>::value;
+
+// [time.traits.is.clock]/3:
+// The behavior of a program that adds specializations for is_clock is undefined.
+
+// [namespace.std]/3:
+// The behavior of a C++ program is undefined if it declares an explicit or partial specialization of any standard
+// library variable template, except where explicitly permitted by the specification of that variable template.
+
#include <chrono>
#include <ratio>
|
Let's rename the file to: I also think we need the exact set of changes to: libcxx/test/std/time/time.traits.is.clock/trait.is.clock.compile.pass.cpp |
is_clock(_v)is_clock(_v)
|
@frederick-vs-ja Thanks! LGTM |
This fixes incompleteness and inconsistency for test files added in adc7932, by
libcxx/test/std/time/time.traits.is.clock/trait.is.clock.compile.pass.cpptolibcxx/test/std/time/time.traits/is.clock.compile.pass.cpp,libcxx/test/libcxx/time/time.traits.is.clock/trait.is.clock.compile.verify.cpptolibcxx/test/libcxx/time/time.traits/is.clock.verify.cpp, and