From a662df817fdbd0604f61fd5a3b2b345c571b2041 Mon Sep 17 00:00:00 2001 From: Daniel Lemire Date: Sun, 26 Mar 2023 20:43:33 -0400 Subject: [PATCH] If we detect that the compiler supports FASTFLOAT_IS_CONSTEXPR, then let us run the tests automatically. --- tests/CMakeLists.txt | 2 +- tests/basictest.cpp | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 2dc784e..37f6c7f 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -60,7 +60,7 @@ fast_float_add_cpp_test(rcppfastfloat_test) fast_float_add_cpp_test(example_test) fast_float_add_cpp_test(example_comma_test) fast_float_add_cpp_test(basictest) -option(FASTFLOAT_CONSTEXPR_TESTS "Constexpr tests" OFF) +option(FASTFLOAT_CONSTEXPR_TESTS "Require constexpr tests (build will fail if the compiler won't support it)" OFF) if (FASTFLOAT_CONSTEXPR_TESTS) target_compile_features(basictest PRIVATE cxx_std_20) target_compile_definitions(basictest PRIVATE FASTFLOAT_CONSTEXPR_TESTS) diff --git a/tests/basictest.cpp b/tests/basictest.cpp index 5615b5d..3ed10f0 100644 --- a/tests/basictest.cpp +++ b/tests/basictest.cpp @@ -13,6 +13,12 @@ #include #include +#if FASTFLOAT_IS_CONSTEXPR +#ifndef FASTFLOAT_CONSTEXPR_TESTS +#define FASTFLOAT_CONSTEXPR_TESTS 1 +#endif // #ifndef FASTFLOAT_CONSTEXPR_TESTS +#endif // FASTFLOAT_IS_CONSTEXPR + #if FASTFLOAT_HAS_BIT_CAST #include #endif @@ -74,6 +80,10 @@ const char * round_name(int d) { TEST_CASE("system_info") { std::cout << "system info:" << std::endl; +#ifdef FASTFLOAT_CONSTEXPR_TESTS + SHOW_DEFINE(FASTFLOAT_CONSTEXPR_TESTS); + +#endif #ifdef _MSC_VER SHOW_DEFINE(_MSC_VER); #endif