1 /* A correct <float.h>.
3 Copyright (C) 2007-2008 Free Software Foundation, Inc.
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 3 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>. */
21 @PRAGMA_SYSTEM_HEADER@
24 /* The include_next requires a split double-inclusion guard. */
25 #@INCLUDE_NEXT@ @NEXT_FLOAT_H@
30 /* 'long double' properties. */
31 #if defined __i386__ && (defined __BEOS__ || defined __OpenBSD__)
32 /* Number of mantissa units, in base FLT_RADIX. */
34 # define LDBL_MANT_DIG 64
35 /* Number of decimal digits that is sufficient for representing a number. */
38 /* x-1 where x is the smallest representable number > 1. */
40 # define LDBL_EPSILON 1.0842021724855044340E-19L
41 /* Minimum e such that FLT_RADIX^(e-1) is a normalized number. */
43 # define LDBL_MIN_EXP (-16381)
44 /* Maximum e such that FLT_RADIX^(e-1) is a representable finite number. */
46 # define LDBL_MAX_EXP 16384
47 /* Minimum positive normalized number. */
49 # define LDBL_MIN 3.3621031431120935063E-4932L
50 /* Maximum representable finite number. */
52 # define LDBL_MAX 1.1897314953572317650E+4932L
53 /* Minimum e such that 10^e is in the range of normalized numbers. */
54 # undef LDBL_MIN_10_EXP
55 # define LDBL_MIN_10_EXP (-4931)
56 /* Maximum e such that 10^e is in the range of representable finite numbers. */
57 # undef LDBL_MAX_10_EXP
58 # define LDBL_MAX_10_EXP 4932
61 #endif /* _GL_FLOAT_H */
62 #endif /* _GL_FLOAT_H */