Get the conditional right this time. Sigh.
Change-Id: Ib0823f63eee9f53dfe0d38184de02bed2acf99a9
Reviewed-on: https://code-review.googlesource.com/c/re2/+/57992
Reviewed-by: Paul Wankadia <junyer@google.com>
diff --git a/re2/re2.h b/re2/re2.h
index 3e800b6..15ef0b3 100644
--- a/re2/re2.h
+++ b/re2/re2.h
@@ -827,7 +827,7 @@
re2_internal::Parse4ary<T>::value,
int>::type;
-#if !defined(__clang__) && defined(_MSC_VER)
+#if !defined(_MSC_VER)
template <typename T>
using CanParseFrom = typename std::enable_if<
std::is_member_function_pointer<decltype(
@@ -845,7 +845,7 @@
template <typename T, CanParse4ary<T> = 0>
Arg(T* ptr) : arg_(ptr), parser_(DoParse4ary<T>) {}
-#if !defined(__clang__) && defined(_MSC_VER)
+#if !defined(_MSC_VER)
template <typename T, CanParseFrom<T> = 0>
Arg(T* ptr) : arg_(ptr), parser_(DoParseFrom<T>) {}
#endif
@@ -874,7 +874,7 @@
return re2_internal::Parse(str, n, reinterpret_cast<T*>(dest), 10);
}
-#if !defined(__clang__) && defined(_MSC_VER)
+#if !defined(_MSC_VER)
template <typename T>
static bool DoParseFrom(const char* str, size_t n, void* dest) {
if (dest == NULL) return true;
diff --git a/re2/testing/re2_arg_test.cc b/re2/testing/re2_arg_test.cc
index 5d64201..f62e17c 100644
--- a/re2/testing/re2_arg_test.cc
+++ b/re2/testing/re2_arg_test.cc
@@ -134,7 +134,7 @@
}
TEST(RE2ArgTest, ParseFromTest) {
-#if !defined(__clang__) && defined(_MSC_VER)
+#if !defined(_MSC_VER)
struct {
bool ParseFrom(const char* str, size_t n) {
LOG(INFO) << "str = " << str << ", n = " << n;