[libcxx-commits] [PATCH] D99641: [libcxx] [test] Fix invocable tests on Windows

Marek Kurdej via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Mar 31 06:31:22 PDT 2021


curdeius accepted this revision as: curdeius.
curdeius added a comment.

LGTM. Thanks for adding the comment.
Hopefully the Windows agent will be added soon to the CI!



================
Comment at: libcxx/test/std/concepts/concepts.callable/concept.invocable/invocable.compile.pass.cpp:232
 static_assert(std::invocable<multiple_overloads&, int>);
+#ifndef _MSC_VER
+// With MSVC 19.28 and newer, this test passes. However Clang currently only
----------------
So, if we wanted to be precise (and if clang-cl correctly mimicked 19.28+ behaviour), it would be then `#if !(defined(_MSC_VER) && defined(__clang__)) || !(defined(_MSC_VER) && (_MSC_VER < 1928))`, right?

So to:
1) turn it off for clang-cl
2) turn it off for MSVC before 19.28

But I'm not sure we want that. Just noting.


================
Comment at: libcxx/test/std/concepts/concepts.callable/concept.invocable/invocable.compile.pass.cpp:233
+#ifndef _MSC_VER
+// With MSVC 19.28 and newer, this test passes. However Clang currently only
+// mimics the old MSVC behaviour where this assert fails, regardless of what
----------------
Nit. Here and in the other test.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D99641/new/

https://reviews.llvm.org/D99641



More information about the libcxx-commits mailing list