From f73c5fa6069982e917e5632299bb5a815b002de3 Mon Sep 17 00:00:00 2001
From: "Bryan A. Jones" <bjones AT ece.msstate.edu>
Date: Mon, 26 Nov 2012 11:29:47 -0600
Subject: [PATCH] Fix: - Modify tests to compile under MSVC++ EE 2008      -
 Change type of floating-point constants to single/double precision        as
 appropriate.

---
 src/unity.c      |  23 +++++++--
 test/testunity.c | 121 +++++++++++++++++++++++++----------------------
 2 files changed, 83 insertions(+), 61 deletions(-)

diff --git a/src/unity.c b/src/unity.c
index 8dd6d39..bd9aa14 100644
--- a/src/unity.c
+++ b/src/unity.c
@@ -32,6 +32,13 @@ const char* UnityStrInf      = "Infinity";
 const char* UnityStrNegInf   = "Negative Infinity";
 const char* UnityStrNaN      = "NaN";
 
+// Dividing by these constants produces +/- infinity.
+// The rationale is given in UnityAssertFloatIsInf's body.
+static const _UF f_zero = 0.0f;
+#ifndef UNITY_EXCLUDE_DOUBLE
+static const _UD d_zero = 0.0;
+#endif
+
 // compiler-generic print formatting masks
 const _U_UINT UnitySizeMask[] = 
 {
@@ -607,7 +614,12 @@ void UnityAssertFloatIsInf(const _UF actual,
 {
     UNITY_SKIP_EXECUTION;
 
-    if ((1.0f / 0.0f) != actual)
+    // In Microsoft Visual C++ Express Edition 2008,
+    //   if ((1.0f / f_zero) != actual)
+    // produces
+    //   error C2124: divide or mod by zero
+    // As a workaround, place 0 into a variable.
+    if ((1.0f / f_zero) != actual)
     {
         UnityTestResultsFailBegin(lineNumber);
 #ifdef UNITY_FLOAT_VERBOSE
@@ -630,7 +642,8 @@ void UnityAssertFloatIsNegInf(const _UF actual,
 {
     UNITY_SKIP_EXECUTION;
 
-    if ((-1.0f / 0.0f) != actual)
+    // The rationale for not using 1.0f/0.0f is given in UnityAssertFloatIsInf's body.
+    if ((-1.0f / f_zero) != actual)
     {
         UnityTestResultsFailBegin(lineNumber);
 #ifdef UNITY_FLOAT_VERBOSE
@@ -773,7 +786,8 @@ void UnityAssertDoubleIsInf(const _UD actual,
 {
     UNITY_SKIP_EXECUTION;
 
-    if ((1.0 / 0.0) != actual)
+    // The rationale for not using 1.0/0.0 is given in UnityAssertFloatIsInf's body.
+    if ((1.0 / d_zero) != actual)
     {
         UnityTestResultsFailBegin(lineNumber);
 #ifdef UNITY_DOUBLE_VERBOSE
@@ -796,7 +810,8 @@ void UnityAssertDoubleIsNegInf(const _UD actual,
 {
     UNITY_SKIP_EXECUTION;
 
-    if ((-1.0 / 0.0) != actual)
+    // The rationale for not using 1.0/0.0 is given in UnityAssertFloatIsInf's body.
+    if ((-1.0 / d_zero) != actual)
     {
         UnityTestResultsFailBegin(lineNumber);
 #ifdef UNITY_DOUBLE_VERBOSE
diff --git a/test/testunity.c b/test/testunity.c
index 3345959..2a10894 100755
--- a/test/testunity.c
+++ b/test/testunity.c
@@ -7,6 +7,13 @@
 #include <setjmp.h>
 #include "unity.h"
 
+// Dividing by these constants produces +/- infinity.
+// The rationale is given in UnityAssertFloatIsInf's body.
+static const _UF f_zero = 0.0f;
+#ifndef UNITY_EXCLUDE_DOUBLE
+static const _UD d_zero = 0.0;
+#endif
+
 #define EXPECT_ABORT_BEGIN \
     if (TEST_PROTECT())    \
     {
@@ -2232,7 +2239,7 @@ void testFloatsNotEqualActualNaN(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_FLOAT(85.963f, 0.0f / 0.0f);
+    TEST_ASSERT_EQUAL_FLOAT(85.963f, 0.0f / f_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2243,7 +2250,7 @@ void testFloatsNotEqualExpectedNaN(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_FLOAT(0.0f / 0.0f, 85.963f);
+    TEST_ASSERT_EQUAL_FLOAT(0.0f / f_zero, 85.963f);
     VERIFY_FAILS_END
 #endif
 }
@@ -2254,7 +2261,7 @@ void testFloatsNotEqualBothNaN(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_FLOAT(0.0f / 0.0f, 0.0f / 0.0f);
+    TEST_ASSERT_EQUAL_FLOAT(0.0f / f_zero, 0.0f / f_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2265,7 +2272,7 @@ void testFloatsNotEqualInfNaN(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_FLOAT(1.0f / 0.0f, 0.0f / 0.0f);
+    TEST_ASSERT_EQUAL_FLOAT(1.0f / f_zero, 0.0f / f_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2276,7 +2283,7 @@ void testFloatsNotEqualNaNInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_FLOAT(0.0f / 0.0f, 1.0f / 0.0f);
+    TEST_ASSERT_EQUAL_FLOAT(0.0f / f_zero, 1.0f / f_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2287,7 +2294,7 @@ void testFloatsNotEqualActualInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_FLOAT(321.642f, 1.0f / 0.0f);
+    TEST_ASSERT_EQUAL_FLOAT(321.642f, 1.0f / f_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2298,7 +2305,7 @@ void testFloatsNotEqualExpectedInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_FLOAT(1.0f / 0.0f, 321.642f);
+    TEST_ASSERT_EQUAL_FLOAT(1.0f / f_zero, 321.642f);
     VERIFY_FAILS_END
 #endif
 }
@@ -2309,7 +2316,7 @@ void testFloatsNotEqualBothInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_FLOAT(1.0f / 0.0f, 1.0f / 0.0f);
+    TEST_ASSERT_EQUAL_FLOAT(1.0f / f_zero, 1.0f / f_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2320,7 +2327,7 @@ void testFloatsNotEqualPlusMinusInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_FLOAT(1.0f / 0.0f, -1.0f / 0.0f);
+    TEST_ASSERT_EQUAL_FLOAT(1.0f / f_zero, -1.0f / f_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2330,8 +2337,8 @@ void testFloatIsInf(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    TEST_ASSERT_FLOAT_IS_INF(2.0f / 0.0f);
-    TEST_ASSERT_FLOAT_IS_NEG_INF(-3.0f / 0.0f);
+    TEST_ASSERT_FLOAT_IS_INF(2.0f / f_zero);
+    TEST_ASSERT_FLOAT_IS_NEG_INF(-3.0f / f_zero);
 #endif
 }
 
@@ -2362,7 +2369,7 @@ void testFloatIsNan(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    TEST_ASSERT_FLOAT_IS_NAN(0.0f / 0.0f);    
+    TEST_ASSERT_FLOAT_IS_NAN(0.0f / f_zero);    
 #endif
 }
 
@@ -2383,7 +2390,7 @@ void testFloatInfIsNotNan(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_FLOAT_IS_NAN(1.0f / 0.0f);
+    TEST_ASSERT_FLOAT_IS_NAN(1.0f / f_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2394,7 +2401,7 @@ void testFloatNanIsNotInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_FLOAT_IS_INF(0.0f / 0.0f);
+    TEST_ASSERT_FLOAT_IS_INF(0.0f / f_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2404,10 +2411,10 @@ void testEqualFloatArrays(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    float p0[] = {1.0, -8.0,  25.4, -0.123};
-    float p1[] = {1.0, -8.0,  25.4, -0.123};
-    float p2[] = {1.0, -8.0,  25.4, -0.2};
-    float p3[] = {1.0, -23.0, 25.0, -0.26};
+    float p0[] = {1.0f, -8.0f,  25.4f, -0.123f};
+    float p1[] = {1.0f, -8.0f,  25.4f, -0.123f};
+    float p2[] = {1.0f, -8.0f,  25.4f, -0.2f};
+    float p3[] = {1.0f, -23.0f, 25.0f, -0.26f};
 
     TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p0, 1);
     TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p0, 4);
@@ -2423,7 +2430,7 @@ void testNotEqualFloatArraysExpectedNull(void)
     TEST_IGNORE();
 #else
     float* p0 = NULL;
-    float p1[] = {1.0, 8.0, 25.4, 0.252};
+    float p1[] = {1.0f, 8.0f, 25.4f, 0.252f};
 
     EXPECT_ABORT_BEGIN
     TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
@@ -2436,7 +2443,7 @@ void testNotEqualFloatArraysActualNull(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    float p0[] = {1.0, 8.0, 25.4, 0.253};
+    float p0[] = {1.0f, 8.0f, 25.4f, 0.253f};
     float* p1 = NULL;
 
     EXPECT_ABORT_BEGIN
@@ -2450,8 +2457,8 @@ void testNotEqualFloatArrays1(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    float p0[] = {1.0, 8.0, 25.4, 0.253};
-    float p1[] = {1.0, 8.0, 25.4, 0.252};
+    float p0[] = {1.0f, 8.0f, 25.4f, 0.253f};
+    float p1[] = {1.0f, 8.0f, 25.4f, 0.252f};
 
     EXPECT_ABORT_BEGIN
     TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
@@ -2464,8 +2471,8 @@ void testNotEqualFloatArrays2(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    float p0[] = {1.0, 8.0, 25.4, 0.253};
-    float p1[] = {2.0, 8.0, 25.4, 0.253};
+    float p0[] = {1.0f, 8.0f, 25.4f, 0.253f};
+    float p1[] = {2.0f, 8.0f, 25.4f, 0.253f};
 
     EXPECT_ABORT_BEGIN
     TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
@@ -2478,8 +2485,8 @@ void testNotEqualFloatArrays3(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    float p0[] = {1.0, 8.0, 25.4, 0.253};
-    float p1[] = {1.0, 8.0, 25.5, 0.253};
+    float p0[] = {1.0f, 8.0f, 25.4f, 0.253f};
+    float p1[] = {1.0f, 8.0f, 25.5f, 0.253f};
 
     EXPECT_ABORT_BEGIN
     TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
@@ -2492,8 +2499,8 @@ void testNotEqualFloatArraysNegative1(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    float p0[] = {-1.0, -8.0, -25.4, -0.253};
-    float p1[] = {-1.0, -8.0, -25.4, -0.252};
+    float p0[] = {-1.0f, -8.0f, -25.4f, -0.253f};
+    float p1[] = {-1.0f, -8.0f, -25.4f, -0.252f};
 
     EXPECT_ABORT_BEGIN
     TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
@@ -2506,8 +2513,8 @@ void testNotEqualFloatArraysNegative2(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    float p0[] = {-1.0, -8.0, -25.4, -0.253};
-    float p1[] = {-2.0, -8.0, -25.4, -0.253};
+    float p0[] = {-1.0f, -8.0f, -25.4f, -0.253f};
+    float p1[] = {-2.0f, -8.0f, -25.4f, -0.253f};
 
     EXPECT_ABORT_BEGIN
     TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
@@ -2520,8 +2527,8 @@ void testNotEqualFloatArraysNegative3(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    float p0[] = {-1.0, -8.0, -25.4, -0.253};
-    float p1[] = {-1.0, -8.0, -25.5, -0.253};
+    float p0[] = {-1.0f, -8.0f, -25.4f, -0.253f};
+    float p1[] = {-1.0f, -8.0f, -25.5f, -0.253f};
 
     EXPECT_ABORT_BEGIN
     TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
@@ -2534,8 +2541,8 @@ void testNotEqualFloatArraysNaN(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    float p0[] = {1.0, 0.0 / 0.0, 25.4, 0.253};
-    float p1[] = {1.0, 0.0 / 0.0, 25.4, 0.253};
+    float p0[] = {1.0f, 0.0f / f_zero, 25.4f, 0.253f};
+    float p1[] = {1.0f, 0.0f / f_zero, 25.4f, 0.253f};
 
     EXPECT_ABORT_BEGIN
     TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
@@ -2548,8 +2555,8 @@ void testNotEqualFloatArraysInf(void)
 #ifdef UNITY_EXCLUDE_FLOAT
     TEST_IGNORE();
 #else
-    float p0[] = {1.0, 1.0 / 0.0, 25.4, 0.253};
-    float p1[] = {1.0, 1.0 / 0.0, 25.4, 0.253};
+    float p0[] = {1.0f, 1.0f / f_zero, 25.4f, 0.253f};
+    float p1[] = {1.0f, 1.0f / f_zero, 25.4f, 0.253f};
 
     EXPECT_ABORT_BEGIN
     TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
@@ -2634,7 +2641,7 @@ void testDoublesNotEqualActualNaN(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_DOUBLE(85.963f, 0.0f / 0.0f);
+    TEST_ASSERT_EQUAL_DOUBLE(85.963, 0.0 / d_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2645,7 +2652,7 @@ void testDoublesNotEqualExpectedNaN(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_DOUBLE(0.0f / 0.0f, 85.963f);
+    TEST_ASSERT_EQUAL_DOUBLE(0.0 / d_zero, 85.963);
     VERIFY_FAILS_END
 #endif
 }
@@ -2656,7 +2663,7 @@ void testDoublesNotEqualBothNaN(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_DOUBLE(0.0f / 0.0f, 0.0f / 0.0f);
+    TEST_ASSERT_EQUAL_DOUBLE(0.0 / d_zero, 0.0 / d_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2667,7 +2674,7 @@ void testDoublesNotEqualInfNaN(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_DOUBLE(1.0f / 0.0f, 0.0f / 0.0f);
+    TEST_ASSERT_EQUAL_DOUBLE(1.0 / d_zero, 0.0 / d_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2678,7 +2685,7 @@ void testDoublesNotEqualNaNInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_DOUBLE(0.0f / 0.0f, 1.0f / 0.0f);
+    TEST_ASSERT_EQUAL_DOUBLE(0.0 / d_zero, 1.0 / d_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2689,7 +2696,7 @@ void testDoublesNotEqualActualInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_DOUBLE(321.642f, 1.0f / 0.0f);
+    TEST_ASSERT_EQUAL_DOUBLE(321.642, 1.0 / d_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2700,7 +2707,7 @@ void testDoublesNotEqualExpectedInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_DOUBLE(1.0f / 0.0f, 321.642f);
+    TEST_ASSERT_EQUAL_DOUBLE(1.0 / d_zero, 321.642);
     VERIFY_FAILS_END
 #endif
 }
@@ -2711,7 +2718,7 @@ void testDoublesNotEqualBothInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_DOUBLE(1.0f / 0.0f, 1.0f / 0.0f);
+    TEST_ASSERT_EQUAL_DOUBLE(1.0 / d_zero, 1.0 / d_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2722,7 +2729,7 @@ void testDoublesNotEqualPlusMinusInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_EQUAL_DOUBLE(1.0f / 0.0f, -1.0f / 0.0f);
+    TEST_ASSERT_EQUAL_DOUBLE(1.0 / d_zero, -1.0 / d_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2732,8 +2739,8 @@ void testDoubleIsInf(void)
 #ifdef UNITY_EXCLUDE_DOUBLE
     TEST_IGNORE();
 #else
-    TEST_ASSERT_DOUBLE_IS_INF(2.0f / 0.0f);
-    TEST_ASSERT_DOUBLE_IS_NEG_INF(-3.0f / 0.0f);
+    TEST_ASSERT_DOUBLE_IS_INF(2.0 / d_zero);
+    TEST_ASSERT_DOUBLE_IS_NEG_INF(-3.0 / d_zero);
 #endif
 }
 
@@ -2743,7 +2750,7 @@ void testDoubleIsNotInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_DOUBLE_IS_INF(2.0f);
+    TEST_ASSERT_DOUBLE_IS_INF(2.0);
     VERIFY_FAILS_END
 #endif
 }
@@ -2754,7 +2761,7 @@ void testDoubleIsNotNegInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_DOUBLE_IS_NEG_INF(-999.876f);
+    TEST_ASSERT_DOUBLE_IS_NEG_INF(-999.876);
     VERIFY_FAILS_END
 #endif
 }
@@ -2764,7 +2771,7 @@ void testDoubleIsNan(void)
 #ifdef UNITY_EXCLUDE_DOUBLE
     TEST_IGNORE();
 #else
-    TEST_ASSERT_DOUBLE_IS_NAN(0.0f / 0.0f);    
+    TEST_ASSERT_DOUBLE_IS_NAN(0.0 / d_zero);    
 #endif
 }
 
@@ -2774,7 +2781,7 @@ void testDoubleIsNotNan(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_DOUBLE_IS_NAN(234.9f);
+    TEST_ASSERT_DOUBLE_IS_NAN(234.9);
     VERIFY_FAILS_END
 #endif
 }
@@ -2785,7 +2792,7 @@ void testDoubleInfIsNotNan(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_DOUBLE_IS_NAN(1.0f / 0.0f);
+    TEST_ASSERT_DOUBLE_IS_NAN(1.0 / d_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2796,7 +2803,7 @@ void testDoubleNanIsNotInf(void)
     TEST_IGNORE();
 #else
     EXPECT_ABORT_BEGIN
-    TEST_ASSERT_DOUBLE_IS_INF(0.0f / 0.0f);
+    TEST_ASSERT_DOUBLE_IS_INF(0.0 / d_zero);
     VERIFY_FAILS_END
 #endif
 }
@@ -2936,8 +2943,8 @@ void testNotEqualDoubleArraysNaN(void)
 #ifdef UNITY_EXCLUDE_DOUBLE
     TEST_IGNORE();
 #else
-    double p0[] = {1.0, 0.0 / 0.0, 25.4, 0.253};
-    double p1[] = {1.0, 0.0 / 0.0, 25.4, 0.253};
+    double p0[] = {1.0, 0.0 / d_zero, 25.4, 0.253};
+    double p1[] = {1.0, 0.0 / d_zero, 25.4, 0.253};
 
     EXPECT_ABORT_BEGIN
     TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
@@ -2950,8 +2957,8 @@ void testNotEqualDoubleArraysInf(void)
 #ifdef UNITY_EXCLUDE_DOUBLE
     TEST_IGNORE();
 #else
-    double p0[] = {1.0, 1.0 / 0.0, 25.4, 0.253};
-    double p1[] = {1.0, 1.0 / 0.0, 25.4, 0.253};
+    double p0[] = {1.0, 1.0 / d_zero, 25.4, 0.253};
+    double p1[] = {1.0, 1.0 / d_zero, 25.4, 0.253};
 
     EXPECT_ABORT_BEGIN
     TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);