Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/local_includes/math.h')
-rw-r--r--winsup/cygwin/local_includes/math.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/winsup/cygwin/local_includes/math.h b/winsup/cygwin/local_includes/math.h
new file mode 100644
index 000000000..d30ecf9e2
--- /dev/null
+++ b/winsup/cygwin/local_includes/math.h
@@ -0,0 +1,43 @@
+#ifndef _LOCAL_MATH_H_
+#define _LOCAL_MATH_H_
+
+/* This header is required to define the types used by some of the
+ mingw-w64 based files in the math subdir. */
+
+typedef union __mingw_dbl_type_t {
+ double x;
+ unsigned long long val;
+ struct {
+ unsigned int low, high;
+ } lh;
+} __mingw_dbl_type_t;
+
+typedef union __mingw_flt_type_t {
+ float x;
+ unsigned int val;
+} __mingw_flt_type_t;
+
+typedef union __mingw_ldbl_type_t
+{
+ long double x;
+ struct {
+ unsigned int low, high;
+ int sign_exponent : 16;
+ int res1 : 16;
+ int res0 : 32;
+ } lh;
+} __mingw_ldbl_type_t;
+
+typedef union __mingw_fp_types_t
+{
+ long double *ld;
+ double *d;
+ float *f;
+ __mingw_ldbl_type_t *ldt;
+ __mingw_dbl_type_t *dt;
+ __mingw_flt_type_t *ft;
+} __mingw_fp_types_t;
+
+#include_next <math.h>
+
+#endif /* _LOCAL_MATH_H_ */