From aa813d417bf89910d9f6944357314fa3a1280e56 Mon Sep 17 00:00:00 2001 From: Michael Figurnov Date: Thu, 7 Jun 2018 14:35:07 +0100 Subject: [PATCH] Fix compilation of special functions without C99 math. The commit with Bessel functions i0e and i1e placed the ifdef/endif incorrectly, causing i0e/i1e to be undefined when EIGEN_HAS_C99_MATH=0. These functions do not actually require C99 math, so now they are always available. --- unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h | 4 ++-- unsupported/test/special_functions.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h b/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h index 6c7ac3f3b..293b0597b 100644 --- a/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h +++ b/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h @@ -1574,6 +1574,8 @@ struct betainc_impl { } }; +#endif // EIGEN_HAS_C99_MATH + /**************************************************************************** * Implementation of Bessel function, based on Cephes * ****************************************************************************/ @@ -1902,8 +1904,6 @@ struct i1e_impl { } }; -#endif // EIGEN_HAS_C99_MATH - } // end namespace internal namespace numext { diff --git a/unsupported/test/special_functions.cpp b/unsupported/test/special_functions.cpp index 48d0db95e..0729dd4dc 100644 --- a/unsupported/test/special_functions.cpp +++ b/unsupported/test/special_functions.cpp @@ -335,6 +335,7 @@ template void array_special_functions() ArrayType test = betainc(a, b + one, x) + eps; verify_component_wise(test, expected);); } +#endif // EIGEN_HAS_C99_MATH // Test Bessel function i0e. Reference results obtained with SciPy. { @@ -375,7 +376,6 @@ template void array_special_functions() CALL_SUBTEST(res = i1e(x); verify_component_wise(res, expected);); } -#endif } void test_special_functions()