Stupid me. Py_RETURN_NAN should actually return something ...
diff --git a/Include/floatobject.h b/Include/floatobject.h
index 91814f2..84398c2 100644
--- a/Include/floatobject.h
+++ b/Include/floatobject.h
@@ -22,7 +22,7 @@
 #define PyFloat_CheckExact(op) (Py_TYPE(op) == &PyFloat_Type)
 
 #ifdef Py_NAN
-#define Py_RETURN_NAN PyFloat_FromDouble(Py_NAN)
+#define Py_RETURN_NAN return PyFloat_FromDouble(Py_NAN)
 #endif
 
 #define Py_RETURN_INF(sign) do					\