d252bf0741e3a090a0927155a6c30a957abc9084
[bpt/guile.git] / lib / float.in.h
1 /* A correct <float.h>.
2
3 Copyright (C) 2007-2011 Free Software Foundation, Inc.
4
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU Lesser 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.
9
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 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>. */
17
18 #ifndef _GL_FLOAT_H
19
20 #if __GNUC__ >= 3
21 @PRAGMA_SYSTEM_HEADER@
22 #endif
23 @PRAGMA_COLUMNS@
24
25 /* The include_next requires a split double-inclusion guard. */
26 #@INCLUDE_NEXT@ @NEXT_FLOAT_H@
27
28 #ifndef _GL_FLOAT_H
29 #define _GL_FLOAT_H
30
31 /* 'long double' properties. */
32 #if defined __i386__ && (defined __BEOS__ || defined __OpenBSD__)
33 /* Number of mantissa units, in base FLT_RADIX. */
34 # undef LDBL_MANT_DIG
35 # define LDBL_MANT_DIG 64
36 /* Number of decimal digits that is sufficient for representing a number. */
37 # undef LDBL_DIG
38 # define LDBL_DIG 18
39 /* x-1 where x is the smallest representable number > 1. */
40 # undef LDBL_EPSILON
41 # define LDBL_EPSILON 1.0842021724855044340E-19L
42 /* Minimum e such that FLT_RADIX^(e-1) is a normalized number. */
43 # undef LDBL_MIN_EXP
44 # define LDBL_MIN_EXP (-16381)
45 /* Maximum e such that FLT_RADIX^(e-1) is a representable finite number. */
46 # undef LDBL_MAX_EXP
47 # define LDBL_MAX_EXP 16384
48 /* Minimum positive normalized number. */
49 # undef LDBL_MIN
50 # define LDBL_MIN 3.3621031431120935063E-4932L
51 /* Maximum representable finite number. */
52 # undef LDBL_MAX
53 # define LDBL_MAX 1.1897314953572317650E+4932L
54 /* Minimum e such that 10^e is in the range of normalized numbers. */
55 # undef LDBL_MIN_10_EXP
56 # define LDBL_MIN_10_EXP (-4931)
57 /* Maximum e such that 10^e is in the range of representable finite numbers. */
58 # undef LDBL_MAX_10_EXP
59 # define LDBL_MAX_10_EXP 4932
60 #endif
61
62 #endif /* _GL_FLOAT_H */
63 #endif /* _GL_FLOAT_H */