summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJon TURNEY <jon.turney@dronecode.org.uk>2014-08-04 21:32:37 +0000
committerJon TURNEY <jon.turney@dronecode.org.uk>2014-08-04 21:32:37 +0000
commita4a96eb436fc89b3277aaa0deb1fdef7a9498b08 (patch)
treec1806ded6da1852b5bf578c792726f756be7f8ab
parent79131d442eaa79219de2257c7ee31b2de1efe4ac (diff)
downloadcygnal-a4a96eb436fc89b3277aaa0deb1fdef7a9498b08.tar.gz
cygnal-a4a96eb436fc89b3277aaa0deb1fdef7a9498b08.tar.bz2
cygnal-a4a96eb436fc89b3277aaa0deb1fdef7a9498b08.zip
* libc/include/math.h: Also define M_PI etc. if _XOPEN_SOURCE is
defined appropriately.
-rw-r--r--newlib/ChangeLog5
-rw-r--r--newlib/libc/include/math.h15
2 files changed, 17 insertions, 3 deletions
diff --git a/newlib/ChangeLog b/newlib/ChangeLog
index 2d117b6ac..7e21d9925 100644
--- a/newlib/ChangeLog
+++ b/newlib/ChangeLog
@@ -1,3 +1,8 @@
+2014-08-04 Jon TURNEY <jon.turney@dronecode.org.uk>
+
+ * libc/include/math.h: Also define M_PI etc. if _XOPEN_SOURCE is
+ defined appropriately.
+
2014-08-01 Eric Blake <eblake@redhat.com>
* libc/machine/spu/spu_timer_internal.h: Decorate attribute names
diff --git a/newlib/libc/include/math.h b/newlib/libc/include/math.h
index 606fecfa9..3bf8de517 100644
--- a/newlib/libc/include/math.h
+++ b/newlib/libc/include/math.h
@@ -542,8 +542,12 @@ extern int matherr _PARAMS((struct exception *e));
#define TLOSS 5
#define PLOSS 6
+#endif /* ! defined (__STRICT_ANSI__) */
+
/* Useful constants. */
+#if !defined(__STRICT_ANSI__) || ((_XOPEN_SOURCE - 0) >= 500)
+
#define MAXFLOAT 3.40282347e+38F
#define M_E 2.7182818284590452354
@@ -552,16 +556,21 @@ extern int matherr _PARAMS((struct exception *e));
#define M_LN2 _M_LN2
#define M_LN10 2.30258509299404568402
#define M_PI 3.14159265358979323846
-#define M_TWOPI (M_PI * 2.0)
#define M_PI_2 1.57079632679489661923
#define M_PI_4 0.78539816339744830962
-#define M_3PI_4 2.3561944901923448370E0
-#define M_SQRTPI 1.77245385090551602792981
#define M_1_PI 0.31830988618379067154
#define M_2_PI 0.63661977236758134308
#define M_2_SQRTPI 1.12837916709551257390
#define M_SQRT2 1.41421356237309504880
#define M_SQRT1_2 0.70710678118654752440
+
+#endif
+
+#ifndef __STRICT_ANSI__
+
+#define M_TWOPI (M_PI * 2.0)
+#define M_3PI_4 2.3561944901923448370E0
+#define M_SQRTPI 1.77245385090551602792981
#define M_LN2LO 1.9082149292705877000E-10
#define M_LN2HI 6.9314718036912381649E-1
#define M_SQRT3 1.73205080756887719000