Parcourir la source

provide isnan macro, if missing, closes #227

Stefan Siegl il y a 9 ans
Parent
commit
de8d9b30c0
1 fichiers modifiés avec 8 ajouts et 1 suppressions
  1. 8 1
      php_v8js_macros.h

+ 8 - 1
php_v8js_macros.h

@@ -2,12 +2,13 @@
   +----------------------------------------------------------------------+
   | PHP Version 5                                                        |
   +----------------------------------------------------------------------+
-  | Copyright (c) 1997-2013 The PHP Group                                |
+  | Copyright (c) 1997-2016 The PHP Group                                |
   +----------------------------------------------------------------------+
   | http://www.opensource.org/licenses/mit-license.php  MIT License      |
   +----------------------------------------------------------------------+
   | Author: Jani Taskinen <[email protected]>                         |
   | Author: Patrick Reilly <[email protected]>                             |
+  | Author: Stefan Siegl <[email protected]>                                |
   +----------------------------------------------------------------------+
 */
 
@@ -27,6 +28,12 @@
 #include <vector>
 #include <mutex>
 
+#ifndef isnan
+/* php.h requires the isnan() macro, which is removed by c++ <cmath> header,
+ * work around: re-define the macro to std::isnan function */
+#define isnan(a) std::isnan(a)
+#endif
+
 extern "C" {
 #include "php.h"
 #include "php_v8js.h"