Fix float_double_conversion test failures on MIPS (#543)
diff --git a/tests/float_double_conversion/float_double_conversion.c b/tests/float_double_conversion/float_double_conversion.c
index 70a3664..aeaabe0 100644
--- a/tests/float_double_conversion/float_double_conversion.c
+++ b/tests/float_double_conversion/float_double_conversion.c
@@ -73,7 +73,16 @@
             pb_istream_t stream = pb_istream_from_buffer(buf, msglen);
             DoubleMsg msg = { 0.0 };
             TEST(pb_decode(&stream, &DoubleMsg_msg, &msg));
-            TEST(memcmp(&msg.value, &expected_double, sizeof(double)) == 0);
+
+            if (isnan(expected_double))
+            {
+                /* Bottom bits of NAN converted to double can vary */
+                TEST(isnan(msg.value));
+            }
+            else
+            {
+                TEST(memcmp(&msg.value, &expected_double, sizeof(double)) == 0);
+            }
         }
     }