No public description
PiperOrigin-RevId: 576101480
diff --git a/fuzztest/fuzztest.h b/fuzztest/fuzztest.h
index 8f50528..a6be614 100644
--- a/fuzztest/fuzztest.h
+++ b/fuzztest/fuzztest.h
@@ -20,6 +20,8 @@
#include <tuple>
#include <vector>
+#if !defined(__APPLE__) && !defined(_MSC_VER) && !defined(DISABLE_FUZZTEST)
+
#include "./fuzztest/domain.h"
#include "./fuzztest/internal/registry.h"
@@ -123,18 +125,36 @@
} // namespace fuzztest
-// Temporarily disable fuzz tests under MSVC/iOS/MacOS.
+#else // !defined(__APPLE__) && !defined(_MSC_VER) &&
+ // !defined(DISABLE_FUZZTEST)
+
+namespace fuzztest {
+namespace internal {
+
+// For those platforms we don't support yet.
+struct RegisterStub {
+ template <typename... T>
+ RegisterStub WithDomains(T&&...) {
+ return *this;
+ }
+};
+
+} // namespace internal
+} // namespace fuzztest
+
+// Temporarily disable fuzz tests under MSVC/iOS/MacOS, and in any other
+// cases where DISABLE_FUZZTEST has been specified.
// They might not support all the C++17 features we are using right now.
// Disables all registration and disables running the domain expressions by
// using a ternary expression. The tail code (eg .WithDomains(...)) will not be
// executed.
-#if defined(__APPLE__) || defined(_MSC_VER)
#undef FUZZ_TEST
#define FUZZ_TEST(suite_name, func) \
[[maybe_unused]] static ::fuzztest::internal::RegisterStub \
fuzztest_reg_##suite_name##func = \
true ? ::fuzztest::internal::RegisterStub() \
: ::fuzztest::internal::RegisterStub()
-#endif // defined(__APPLE__) || defined(_MSC_VER)
+#endif // !defined(__APPLE__) && !defined(_MSC_VER) &&
+ // !defined(DISABLE_FUZZTEST)
#endif // FUZZTEST_FUZZTEST_FUZZTEST_H_
diff --git a/fuzztest/internal/registry.h b/fuzztest/internal/registry.h
index 541c08f..a90e01c 100644
--- a/fuzztest/internal/registry.h
+++ b/fuzztest/internal/registry.h
@@ -92,14 +92,6 @@
}
};
-// For those platforms we don't support yet.
-struct RegisterStub {
- template <typename... T>
- RegisterStub WithDomains(T&&...) {
- return *this;
- }
-};
-
#define INTERNAL_FUZZ_TEST(suite_name, func) \
[[maybe_unused]] static ::fuzztest::internal::RegistrationToken \
fuzztest_reg_##suite_name##func = \