1 /***********************************************************************
3 * This software is part of the ast package *
4 * Copyright (c) 1985-2010 AT&T Intellectual Property *
5 * and is licensed under the *
6 * Common Public License, Version 1.0 *
7 * by AT&T Intellectual Property *
9 * A copy of the License is available at *
10 * http://www.opensource.org/licenses/cpl1.0.txt *
11 * (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) *
13 * Information and Software Systems Research *
17 * Glenn Fowler <gsf@research.att.com> *
18 * David Korn <dgk@research.att.com> *
19 * Phong Vo <kpv@research.att.com> *
21 ***********************************************************************/
23 /* : : generated by proto : : */
24 /* : : generated from /home/gisburn/ksh93/ast_ksh_20100309/build_i386_32bit/src/lib/libast/features/float by iffe version 2009-12-04 : : */
26 #ifndef _def_float_ast
27 #if !defined(__PROTO__)
28 # if defined(__STDC__) || defined(__cplusplus) || defined(_proto) || defined(c_plusplus)
29 # if defined(__cplusplus)
30 # define __LINKAGE__ "C"
35 # define __PROTO__(x) x
37 # define __PARAM__(n,o) n
38 # if !defined(__STDC__) && !defined(__cplusplus)
39 # if !defined(c_plusplus)
50 # define __PROTO__(x) ()
51 # define __OTORP__(x) x
52 # define __PARAM__(n,o) o
60 # define __MANGLE__ __LINKAGE__
61 # if defined(__cplusplus) || defined(c_plusplus)
62 # define __VARARG__ ...
66 # if defined(__STDARG__)
67 # define __VA_START__(p,a) va_start(p,a)
69 # define __VA_START__(p,a) va_start(p)
71 # if !defined(__INLINE__)
72 # if defined(__cplusplus)
73 # define __INLINE__ extern __MANGLE__ inline
75 # if defined(_WIN32) && !defined(__GNUC__)
76 # define __INLINE__ __inline
81 #if !defined(__LINKAGE__)
82 #define __LINKAGE__ /* 2004-08-11 transition */
85 #define _def_float_ast 1
86 #define _sys_types 1 /* #include <sys/types.h> ok */
87 #define _hdr_float 1 /* #include <float.h> ok */
88 #define _hdr_limits 1 /* #include <limits.h> ok */
89 #define _hdr_math 1 /* #include <math.h> ok */
90 #define _hdr_values 1 /* #include <values.h> ok */
91 #define _LIB_m 1 /* -lm is a library */
92 #define _lib_fpclassify 1 /* fpclassify() in default lib(s) */
93 #define _lib_frexp 1 /* frexp() in default lib(s) */
94 #define _lib_frexpl 1 /* frexpl() in default lib(s) */
95 #define _lib_ldexp 1 /* ldexp() in default lib(s) */
96 #define _lib_ldexpl 1 /* ldexpl() in default lib(s) */
97 #define _lib_finite 1 /* finite() in default lib(s) */
98 #define _lib_isinf 1 /* isinf() in default lib(s) */
99 #define _lib_isnan 1 /* isnan() in default lib(s) */
100 #define _lib_isnanl 1 /* isnanl() in default lib(s) */
101 #define _lib_signbit 1 /* signbit() in default lib(s) */
102 #define _lib_copysign 1 /* copysign() in default lib(s) */
103 #define _lib_copysignl 1 /* copysignl() in default lib(s) */
104 #include <ast_common.h>
111 #define FLT_MAX 3.4028234663852885981170E+38F
113 #ifndef FLT_MAX_10_EXP
114 #define FLT_MAX_10_EXP ( + 38 )
117 #define FLT_MAX_EXP ( + 128 )
120 #define FLT_MIN 1.1754943508222875079688E-38F
122 #ifndef FLT_MIN_10_EXP
123 #define FLT_MIN_10_EXP ( - 37 )
126 #define FLT_MIN_EXP ( - 125 )
132 #define DBL_MAX 1.7976931348623157081452E+308
134 #ifndef DBL_MAX_10_EXP
135 #define DBL_MAX_10_EXP ( + 308 )
138 #define DBL_MAX_EXP ( + 1024 )
141 #define DBL_MIN 2.2250738585072013830903E-308
143 #ifndef DBL_MIN_10_EXP
144 #define DBL_MIN_10_EXP ( - 307 )
147 #define DBL_MIN_EXP ( - 1021 )
153 #define LDBL_MAX 1.1897314953572317650213E+4932L
155 #ifndef LDBL_MAX_10_EXP
156 #define LDBL_MAX_10_EXP ( + 4932 )
159 #define LDBL_MAX_EXP ( + 16384 )
162 #define LDBL_MIN 3.3621031431120935062627E-4932L
164 #ifndef LDBL_MIN_10_EXP
165 #define LDBL_MIN_10_EXP ( - 4931 )
168 #define LDBL_MIN_EXP ( - 16381 )
175 #define ULLONG_DIG 19
176 #define UINTMAX_DIG ULLONG_DIG
178 #define FLT_ULONG_MAX 4294967295.0F
179 #define FLT_ULLONG_MAX 18446744073709551615.0F
180 #define FLT_UINTMAX_MAX FLT_ULLONG_MAX
181 #define FLT_LONG_MAX 2147483647.0F
182 #define FLT_LLONG_MAX 9223372036854775807.0F
183 #define FLT_INTMAX_MAX FLT_LLONG_MAX
184 #define FLT_LONG_MIN (-2147483648.0F)
185 #define FLT_LLONG_MIN (-9223372036854775808.0F)
186 #define FLT_INTMAX_MIN FLT_LLONG_MIN
188 #define DBL_ULONG_MAX 4294967295.0
189 #define DBL_ULLONG_MAX 18446744073709551615.0
190 #define DBL_UINTMAX_MAX DBL_ULLONG_MAX
191 #define DBL_LONG_MAX 2147483647.0
192 #define DBL_LLONG_MAX 9223372036854775807.0
193 #define DBL_INTMAX_MAX DBL_LLONG_MAX
194 #define DBL_LONG_MIN (-2147483648.0)
195 #define DBL_LLONG_MIN (-9223372036854775808.0)
196 #define DBL_INTMAX_MIN DBL_LLONG_MIN
198 #define LDBL_ULONG_MAX 4294967295.0L
199 #define LDBL_ULLONG_MAX 18446744073709551615.0L
200 #define LDBL_UINTMAX_MAX LDBL_ULLONG_MAX
201 #define LDBL_LONG_MAX 2147483647.0L
202 #define LDBL_LLONG_MAX 9223372036854775807.0L
203 #define LDBL_INTMAX_MAX LDBL_LLONG_MAX
204 #define LDBL_LONG_MIN (-2147483648.0L)
205 #define LDBL_LLONG_MIN (-9223372036854775808.0L)
206 #define LDBL_INTMAX_MIN LDBL_LLONG_MIN
208 #define FLTMAX_UINTMAX_MAX LDBL_UINTMAX_MAX
209 #define FLTMAX_INTMAX_MAX LDBL_INTMAX_MAX
210 #define FLTMAX_INTMAX_MIN LDBL_INTMAX_MIN
212 typedef union _ast_dbl_exp_u
214 uint32_t e
[sizeof(double)/4];
218 #define _ast_dbl_exp_index 1
219 #define _ast_dbl_exp_shift 20
221 typedef union _fltmax_exp_u
223 uint32_t e
[sizeof(_ast_fltmax_t
)/4];
227 #define _ast_fltmax_exp_index 2
228 #define _ast_fltmax_exp_shift 0
230 #define _ast_flt_unsigned_max_t unsigned long long
231 #define _ast_flt_nan_init 0xff,0xff,0xff,0x7f
232 #define _ast_flt_inf_init 0x00,0x00,0x80,0x7f
233 #define _ast_dbl_nan_init 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f
234 #define _ast_dbl_inf_init 0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x7f
235 #define _ast_ldbl_nan_init 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xf0,0x7f
236 #define _ast_ldbl_inf_init 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0x7f,0xf0,0x7f