From: Marc Fehling <mafehling.git@gmail.com>
Date: Mon, 5 Jun 2023 21:45:21 +0000 (-0600)
Subject: Hotfix muparser: Fix problem with IntelLLVM finite math
X-Git-Tag: v9.5.0-rc1~158^2
X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F15312%2Fhead;p=dealii.git

Hotfix muparser: Fix problem with IntelLLVM finite math
---

diff --git a/bundled/muparser_v2_3_3/src/muParserTest.cpp b/bundled/muparser_v2_3_3/src/muParserTest.cpp
index eaff3aa8bf..8dc01caaea 100644
--- a/bundled/muparser_v2_3_3/src/muParserTest.cpp
+++ b/bundled/muparser_v2_3_3/src/muParserTest.cpp
@@ -1546,17 +1546,7 @@ namespace mu
 					// The tests equations never result in infinity, if they do thats a bug.
 					// reference:
 					// http://sourceforge.net/projects/muparser/forums/forum/462843/topic/5037825
-#ifdef _MSC_VER
-#pragma warning(push)
-#pragma warning(disable:4127)
-#endif
-					if (std::numeric_limits<value_type>::has_infinity)
-#ifdef _MSC_VER
-#pragma warning(pop)
-#endif
-					{
-						bCloseEnough &= (fabs(fVal[i]) != numeric_limits<value_type>::infinity());
-					}
+					bCloseEnough &= std::isfinite(fVal[i]);
 				}
 
 				iRet = ((bCloseEnough && a_fPass) || (!bCloseEnough && !a_fPass)) ? 0 : 1;