]> granicus.if.org Git - php/commitdiff
Register missing math constants (been missing since 4.0.2!)
authorHannes Magnusson <bjori@php.net>
Sun, 27 Aug 2006 18:20:39 +0000 (18:20 +0000)
committerHannes Magnusson <bjori@php.net>
Sun, 27 Aug 2006 18:20:39 +0000 (18:20 +0000)
Remove M_PI from math.c (its defined in php_math.h)

ext/standard/basic_functions.c
ext/standard/math.c
ext/standard/tests/math/constants.phpt [new file with mode: 0644]

index 9da6061aba2c841fddcee4b02d31254e39c289d6..dcf4700b18e45b6d8ebd51808472d1c61bb38f9b 100644 (file)
@@ -3976,9 +3976,13 @@ PHP_MINIT_FUNCTION(basic)
        REGISTER_MATH_CONSTANT(M_PI_4);
        REGISTER_MATH_CONSTANT(M_1_PI);
        REGISTER_MATH_CONSTANT(M_2_PI);
+       REGISTER_MATH_CONSTANT(M_SQRTPI);
        REGISTER_MATH_CONSTANT(M_2_SQRTPI);
+       REGISTER_MATH_CONSTANT(M_LNPI);
+       REGISTER_MATH_CONSTANT(M_EULER);
        REGISTER_MATH_CONSTANT(M_SQRT2);
        REGISTER_MATH_CONSTANT(M_SQRT1_2);
+       REGISTER_MATH_CONSTANT(M_SQRT3);
        REGISTER_DOUBLE_CONSTANT("INF", php_get_inf(), CONST_CS | CONST_PERSISTENT);
        REGISTER_DOUBLE_CONSTANT("NAN", php_get_nan(), CONST_CS | CONST_PERSISTENT);
 
index d82f41fc501d4f8c39e62cbdaacfb46cdf3daa25..cb73ef21872761391cfca7700bc28fcc58ec2fcb 100644 (file)
 #include <float.h>
 #include <stdlib.h>
 
-#ifndef M_PI
-#define M_PI 3.14159265358979323846
-#endif
-
 #ifndef PHP_ROUND_FUZZ
 # ifndef PHP_WIN32
 #  define PHP_ROUND_FUZZ 0.50000000001
diff --git a/ext/standard/tests/math/constants.phpt b/ext/standard/tests/math/constants.phpt
new file mode 100644 (file)
index 0000000..94ba3fd
--- /dev/null
@@ -0,0 +1,46 @@
+--TEST--
+Math constants
+--FILE--
+<?php
+$constants = array(
+    "M_E",
+    "M_LOG2E",
+    "M_LOG10E",
+    "M_LN2",
+    "M_LN10",
+    "M_PI",
+    "M_PI_2",
+    "M_PI_4",
+    "M_1_PI",
+    "M_2_PI",
+    "M_SQRTPI",
+    "M_2_SQRTPI",
+    "M_LNPI",
+    "M_EULER",
+    "M_SQRT2",
+    "M_SQRT1_2",
+    "M_SQRT3"
+);
+foreach($constants as $constant) {
+    printf("%-10s: %.14s\n", $constant, constant($constant));
+}
+?>
+--EXPECT--
+M_E       : 2.718281828459
+M_LOG2E   : 1.442695040889
+M_LOG10E  : 0.434294481903
+M_LN2     : 0.693147180559
+M_LN10    : 2.302585092994
+M_PI      : 3.141592653589
+M_PI_2    : 1.570796326794
+M_PI_4    : 0.785398163397
+M_1_PI    : 0.318309886183
+M_2_PI    : 0.636619772367
+M_SQRTPI  : 1.772453850905
+M_2_SQRTPI: 1.128379167095
+M_LNPI    : 1.144729885849
+M_EULER   : 0.577215664901
+M_SQRT2   : 1.414213562373
+M_SQRT1_2 : 0.707106781186
+M_SQRT3   : 1.732050807568
+