2 dnl Copyright (C) 2007-2012 Free Software Foundation, Inc.
3 dnl This file is free software; the Free Software Foundation
4 dnl gives unlimited permission to copy and/or distribute it,
5 dnl with or without modifications, as long as this notice is preserved.
9 AC_REQUIRE([gl_MATH_H_DEFAULTS])
10 gl_CHECK_NEXT_HEADERS([math.h])
11 AC_REQUIRE([AC_C_INLINE])
13 AC_CACHE_CHECK([whether NAN macro works], [gl_cv_header_math_nan_works],
14 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include <math.h>]],
15 [[/* Solaris 10 has a broken definition of NAN. Other platforms
16 fail to provide NAN, or provide it only in C99 mode; this
17 test only needs to fail when NAN is provided but wrong. */
23 [gl_cv_header_math_nan_works=yes],
24 [gl_cv_header_math_nan_works=no])])
25 if test $gl_cv_header_math_nan_works = no; then
28 AC_CACHE_CHECK([whether HUGE_VAL works], [gl_cv_header_math_huge_val_works],
29 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include <math.h>]],
30 [[/* Solaris 10 has a broken definition of HUGE_VAL. */
33 [gl_cv_header_math_huge_val_works=yes],
34 [gl_cv_header_math_huge_val_works=no])])
35 if test $gl_cv_header_math_huge_val_works = no; then
39 dnl Check for declarations of anything we want to poison if the
40 dnl corresponding gnulib module is not in use.
41 gl_WARN_ON_USE_PREPARE([[#include <math.h>]],
42 [acosf acosl asinf asinl atanf atanl
43 cbrt cbrtf cbrtl ceilf ceill copysign copysignf copysignl cosf cosl coshf
44 expf expl exp2 exp2f exp2l expm1 expm1f expm1l
45 fabsf fabsl floorf floorl fma fmaf fmal
46 fmod fmodf fmodl frexpf frexpl hypotf hypotl
48 logb log logf logl log10f log10l log1p log1pf log1pl log2 log2f log2l
50 remainder remainderf remainderl
51 rint rintf rintl round roundf roundl sinf sinl sinhf sqrtf sqrtl
52 tanf tanl tanhf trunc truncf truncl])
55 AC_DEFUN([gl_MATH_MODULE_INDICATOR],
57 dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
58 AC_REQUIRE([gl_MATH_H_DEFAULTS])
59 gl_MODULE_INDICATOR_SET_VARIABLE([$1])
60 dnl Define it also as a C macro, for the benefit of the unit tests.
61 gl_MODULE_INDICATOR_FOR_TESTS([$1])
64 AC_DEFUN([gl_MATH_H_DEFAULTS],
66 GNULIB_ACOSF=0; AC_SUBST([GNULIB_ACOSF])
67 GNULIB_ACOSL=0; AC_SUBST([GNULIB_ACOSL])
68 GNULIB_ASINF=0; AC_SUBST([GNULIB_ASINF])
69 GNULIB_ASINL=0; AC_SUBST([GNULIB_ASINL])
70 GNULIB_ATANF=0; AC_SUBST([GNULIB_ATANF])
71 GNULIB_ATANL=0; AC_SUBST([GNULIB_ATANL])
72 GNULIB_ATAN2F=0; AC_SUBST([GNULIB_ATAN2F])
73 GNULIB_CBRT=0; AC_SUBST([GNULIB_CBRT])
74 GNULIB_CBRTF=0; AC_SUBST([GNULIB_CBRTF])
75 GNULIB_CBRTL=0; AC_SUBST([GNULIB_CBRTL])
76 GNULIB_CEIL=0; AC_SUBST([GNULIB_CEIL])
77 GNULIB_CEILF=0; AC_SUBST([GNULIB_CEILF])
78 GNULIB_CEILL=0; AC_SUBST([GNULIB_CEILL])
79 GNULIB_COPYSIGN=0; AC_SUBST([GNULIB_COPYSIGN])
80 GNULIB_COPYSIGNF=0; AC_SUBST([GNULIB_COPYSIGNF])
81 GNULIB_COPYSIGNL=0; AC_SUBST([GNULIB_COPYSIGNL])
82 GNULIB_COSF=0; AC_SUBST([GNULIB_COSF])
83 GNULIB_COSL=0; AC_SUBST([GNULIB_COSL])
84 GNULIB_COSHF=0; AC_SUBST([GNULIB_COSHF])
85 GNULIB_EXPF=0; AC_SUBST([GNULIB_EXPF])
86 GNULIB_EXPL=0; AC_SUBST([GNULIB_EXPL])
87 GNULIB_EXP2=0; AC_SUBST([GNULIB_EXP2])
88 GNULIB_EXP2F=0; AC_SUBST([GNULIB_EXP2F])
89 GNULIB_EXP2L=0; AC_SUBST([GNULIB_EXP2L])
90 GNULIB_EXPM1=0; AC_SUBST([GNULIB_EXPM1])
91 GNULIB_EXPM1F=0; AC_SUBST([GNULIB_EXPM1F])
92 GNULIB_EXPM1L=0; AC_SUBST([GNULIB_EXPM1L])
93 GNULIB_FABSF=0; AC_SUBST([GNULIB_FABSF])
94 GNULIB_FABSL=0; AC_SUBST([GNULIB_FABSL])
95 GNULIB_FLOOR=0; AC_SUBST([GNULIB_FLOOR])
96 GNULIB_FLOORF=0; AC_SUBST([GNULIB_FLOORF])
97 GNULIB_FLOORL=0; AC_SUBST([GNULIB_FLOORL])
98 GNULIB_FMA=0; AC_SUBST([GNULIB_FMA])
99 GNULIB_FMAF=0; AC_SUBST([GNULIB_FMAF])
100 GNULIB_FMAL=0; AC_SUBST([GNULIB_FMAL])
101 GNULIB_FMOD=0; AC_SUBST([GNULIB_FMOD])
102 GNULIB_FMODF=0; AC_SUBST([GNULIB_FMODF])
103 GNULIB_FMODL=0; AC_SUBST([GNULIB_FMODL])
104 GNULIB_FREXPF=0; AC_SUBST([GNULIB_FREXPF])
105 GNULIB_FREXP=0; AC_SUBST([GNULIB_FREXP])
106 GNULIB_FREXPL=0; AC_SUBST([GNULIB_FREXPL])
107 GNULIB_HYPOT=0; AC_SUBST([GNULIB_HYPOT])
108 GNULIB_HYPOTF=0; AC_SUBST([GNULIB_HYPOTF])
109 GNULIB_HYPOTL=0; AC_SUBST([GNULIB_HYPOTL])
110 GNULIB_ISFINITE=0; AC_SUBST([GNULIB_ISFINITE])
111 GNULIB_ISINF=0; AC_SUBST([GNULIB_ISINF])
112 GNULIB_ISNAN=0; AC_SUBST([GNULIB_ISNAN])
113 GNULIB_ISNANF=0; AC_SUBST([GNULIB_ISNANF])
114 GNULIB_ISNAND=0; AC_SUBST([GNULIB_ISNAND])
115 GNULIB_ISNANL=0; AC_SUBST([GNULIB_ISNANL])
116 GNULIB_LDEXPF=0; AC_SUBST([GNULIB_LDEXPF])
117 GNULIB_LDEXPL=0; AC_SUBST([GNULIB_LDEXPL])
118 GNULIB_LOGB=0; AC_SUBST([GNULIB_LOGB])
119 GNULIB_LOG=0; AC_SUBST([GNULIB_LOG])
120 GNULIB_LOGF=0; AC_SUBST([GNULIB_LOGF])
121 GNULIB_LOGL=0; AC_SUBST([GNULIB_LOGL])
122 GNULIB_LOG10F=0; AC_SUBST([GNULIB_LOG10F])
123 GNULIB_LOG10L=0; AC_SUBST([GNULIB_LOG10L])
124 GNULIB_LOG1P=0; AC_SUBST([GNULIB_LOG1P])
125 GNULIB_LOG1PF=0; AC_SUBST([GNULIB_LOG1PF])
126 GNULIB_LOG1PL=0; AC_SUBST([GNULIB_LOG1PL])
127 GNULIB_LOG2=0; AC_SUBST([GNULIB_LOG2])
128 GNULIB_LOG2F=0; AC_SUBST([GNULIB_LOG2F])
129 GNULIB_LOG2L=0; AC_SUBST([GNULIB_LOG2L])
130 GNULIB_MODF=0; AC_SUBST([GNULIB_MODF])
131 GNULIB_MODFF=0; AC_SUBST([GNULIB_MODFF])
132 GNULIB_MODFL=0; AC_SUBST([GNULIB_MODFL])
133 GNULIB_POWF=0; AC_SUBST([GNULIB_POWF])
134 GNULIB_REMAINDER=0; AC_SUBST([GNULIB_REMAINDER])
135 GNULIB_REMAINDERF=0; AC_SUBST([GNULIB_REMAINDERF])
136 GNULIB_REMAINDERL=0; AC_SUBST([GNULIB_REMAINDERL])
137 GNULIB_RINT=0; AC_SUBST([GNULIB_RINT])
138 GNULIB_RINTF=0; AC_SUBST([GNULIB_RINTF])
139 GNULIB_RINTL=0; AC_SUBST([GNULIB_RINTL])
140 GNULIB_ROUND=0; AC_SUBST([GNULIB_ROUND])
141 GNULIB_ROUNDF=0; AC_SUBST([GNULIB_ROUNDF])
142 GNULIB_ROUNDL=0; AC_SUBST([GNULIB_ROUNDL])
143 GNULIB_SIGNBIT=0; AC_SUBST([GNULIB_SIGNBIT])
144 GNULIB_SINF=0; AC_SUBST([GNULIB_SINF])
145 GNULIB_SINL=0; AC_SUBST([GNULIB_SINL])
146 GNULIB_SINHF=0; AC_SUBST([GNULIB_SINHF])
147 GNULIB_SQRTF=0; AC_SUBST([GNULIB_SQRTF])
148 GNULIB_SQRTL=0; AC_SUBST([GNULIB_SQRTL])
149 GNULIB_TANF=0; AC_SUBST([GNULIB_TANF])
150 GNULIB_TANL=0; AC_SUBST([GNULIB_TANL])
151 GNULIB_TANHF=0; AC_SUBST([GNULIB_TANHF])
152 GNULIB_TRUNC=0; AC_SUBST([GNULIB_TRUNC])
153 GNULIB_TRUNCF=0; AC_SUBST([GNULIB_TRUNCF])
154 GNULIB_TRUNCL=0; AC_SUBST([GNULIB_TRUNCL])
155 dnl Assume proper GNU behavior unless another module says otherwise.
156 HAVE_ACOSF=1; AC_SUBST([HAVE_ACOSF])
157 HAVE_ACOSL=1; AC_SUBST([HAVE_ACOSL])
158 HAVE_ASINF=1; AC_SUBST([HAVE_ASINF])
159 HAVE_ASINL=1; AC_SUBST([HAVE_ASINL])
160 HAVE_ATANF=1; AC_SUBST([HAVE_ATANF])
161 HAVE_ATANL=1; AC_SUBST([HAVE_ATANL])
162 HAVE_ATAN2F=1; AC_SUBST([HAVE_ATAN2F])
163 HAVE_CBRT=1; AC_SUBST([HAVE_CBRT])
164 HAVE_CBRTF=1; AC_SUBST([HAVE_CBRTF])
165 HAVE_CBRTL=1; AC_SUBST([HAVE_CBRTL])
166 HAVE_COPYSIGN=1; AC_SUBST([HAVE_COPYSIGN])
167 HAVE_COPYSIGNL=1; AC_SUBST([HAVE_COPYSIGNL])
168 HAVE_COSF=1; AC_SUBST([HAVE_COSF])
169 HAVE_COSL=1; AC_SUBST([HAVE_COSL])
170 HAVE_COSHF=1; AC_SUBST([HAVE_COSHF])
171 HAVE_EXPF=1; AC_SUBST([HAVE_EXPF])
172 HAVE_EXPL=1; AC_SUBST([HAVE_EXPL])
173 HAVE_EXPM1=1; AC_SUBST([HAVE_EXPM1])
174 HAVE_EXPM1F=1; AC_SUBST([HAVE_EXPM1F])
175 HAVE_FABSF=1; AC_SUBST([HAVE_FABSF])
176 HAVE_FABSL=1; AC_SUBST([HAVE_FABSL])
177 HAVE_FMA=1; AC_SUBST([HAVE_FMA])
178 HAVE_FMAF=1; AC_SUBST([HAVE_FMAF])
179 HAVE_FMAL=1; AC_SUBST([HAVE_FMAL])
180 HAVE_FMODF=1; AC_SUBST([HAVE_FMODF])
181 HAVE_FMODL=1; AC_SUBST([HAVE_FMODL])
182 HAVE_FREXPF=1; AC_SUBST([HAVE_FREXPF])
183 HAVE_HYPOTF=1; AC_SUBST([HAVE_HYPOTF])
184 HAVE_HYPOTL=1; AC_SUBST([HAVE_HYPOTL])
185 HAVE_ISNANF=1; AC_SUBST([HAVE_ISNANF])
186 HAVE_ISNAND=1; AC_SUBST([HAVE_ISNAND])
187 HAVE_ISNANL=1; AC_SUBST([HAVE_ISNANL])
188 HAVE_LDEXPF=1; AC_SUBST([HAVE_LDEXPF])
189 HAVE_LOGF=1; AC_SUBST([HAVE_LOGF])
190 HAVE_LOGL=1; AC_SUBST([HAVE_LOGL])
191 HAVE_LOG10F=1; AC_SUBST([HAVE_LOG10F])
192 HAVE_LOG10L=1; AC_SUBST([HAVE_LOG10L])
193 HAVE_LOG1P=1; AC_SUBST([HAVE_LOG1P])
194 HAVE_LOG1PF=1; AC_SUBST([HAVE_LOG1PF])
195 HAVE_LOG1PL=1; AC_SUBST([HAVE_LOG1PL])
196 HAVE_MODFF=1; AC_SUBST([HAVE_MODFF])
197 HAVE_MODFL=1; AC_SUBST([HAVE_MODFL])
198 HAVE_POWF=1; AC_SUBST([HAVE_POWF])
199 HAVE_REMAINDER=1; AC_SUBST([HAVE_REMAINDER])
200 HAVE_REMAINDERF=1; AC_SUBST([HAVE_REMAINDERF])
201 HAVE_RINT=1; AC_SUBST([HAVE_RINT])
202 HAVE_RINTL=1; AC_SUBST([HAVE_RINTL])
203 HAVE_SINF=1; AC_SUBST([HAVE_SINF])
204 HAVE_SINL=1; AC_SUBST([HAVE_SINL])
205 HAVE_SINHF=1; AC_SUBST([HAVE_SINHF])
206 HAVE_SQRTF=1; AC_SUBST([HAVE_SQRTF])
207 HAVE_SQRTL=1; AC_SUBST([HAVE_SQRTL])
208 HAVE_TANF=1; AC_SUBST([HAVE_TANF])
209 HAVE_TANL=1; AC_SUBST([HAVE_TANL])
210 HAVE_TANHF=1; AC_SUBST([HAVE_TANHF])
211 HAVE_DECL_ACOSL=1; AC_SUBST([HAVE_DECL_ACOSL])
212 HAVE_DECL_ASINL=1; AC_SUBST([HAVE_DECL_ASINL])
213 HAVE_DECL_ATANL=1; AC_SUBST([HAVE_DECL_ATANL])
214 HAVE_DECL_CBRTF=1; AC_SUBST([HAVE_DECL_CBRTF])
215 HAVE_DECL_CBRTL=1; AC_SUBST([HAVE_DECL_CBRTL])
216 HAVE_DECL_CEILF=1; AC_SUBST([HAVE_DECL_CEILF])
217 HAVE_DECL_CEILL=1; AC_SUBST([HAVE_DECL_CEILL])
218 HAVE_DECL_COPYSIGNF=1; AC_SUBST([HAVE_DECL_COPYSIGNF])
219 HAVE_DECL_COSL=1; AC_SUBST([HAVE_DECL_COSL])
220 HAVE_DECL_EXPL=1; AC_SUBST([HAVE_DECL_EXPL])
221 HAVE_DECL_EXP2=1; AC_SUBST([HAVE_DECL_EXP2])
222 HAVE_DECL_EXP2F=1; AC_SUBST([HAVE_DECL_EXP2F])
223 HAVE_DECL_EXP2L=1; AC_SUBST([HAVE_DECL_EXP2L])
224 HAVE_DECL_EXPM1L=1; AC_SUBST([HAVE_DECL_EXPM1L])
225 HAVE_DECL_FLOORF=1; AC_SUBST([HAVE_DECL_FLOORF])
226 HAVE_DECL_FLOORL=1; AC_SUBST([HAVE_DECL_FLOORL])
227 HAVE_DECL_FREXPL=1; AC_SUBST([HAVE_DECL_FREXPL])
228 HAVE_DECL_LDEXPL=1; AC_SUBST([HAVE_DECL_LDEXPL])
229 HAVE_DECL_LOGB=1; AC_SUBST([HAVE_DECL_LOGB])
230 HAVE_DECL_LOGL=1; AC_SUBST([HAVE_DECL_LOGL])
231 HAVE_DECL_LOG10L=1; AC_SUBST([HAVE_DECL_LOG10L])
232 HAVE_DECL_LOG2=1; AC_SUBST([HAVE_DECL_LOG2])
233 HAVE_DECL_LOG2F=1; AC_SUBST([HAVE_DECL_LOG2F])
234 HAVE_DECL_LOG2L=1; AC_SUBST([HAVE_DECL_LOG2L])
235 HAVE_DECL_REMAINDER=1; AC_SUBST([HAVE_DECL_REMAINDER])
236 HAVE_DECL_REMAINDERL=1; AC_SUBST([HAVE_DECL_REMAINDERL])
237 HAVE_DECL_RINTF=1; AC_SUBST([HAVE_DECL_RINTF])
238 HAVE_DECL_ROUND=1; AC_SUBST([HAVE_DECL_ROUND])
239 HAVE_DECL_ROUNDF=1; AC_SUBST([HAVE_DECL_ROUNDF])
240 HAVE_DECL_ROUNDL=1; AC_SUBST([HAVE_DECL_ROUNDL])
241 HAVE_DECL_SINL=1; AC_SUBST([HAVE_DECL_SINL])
242 HAVE_DECL_SQRTL=1; AC_SUBST([HAVE_DECL_SQRTL])
243 HAVE_DECL_TANL=1; AC_SUBST([HAVE_DECL_TANL])
244 HAVE_DECL_TRUNC=1; AC_SUBST([HAVE_DECL_TRUNC])
245 HAVE_DECL_TRUNCF=1; AC_SUBST([HAVE_DECL_TRUNCF])
246 HAVE_DECL_TRUNCL=1; AC_SUBST([HAVE_DECL_TRUNCL])
247 REPLACE_CBRTF=0; AC_SUBST([REPLACE_CBRTF])
248 REPLACE_CBRTL=0; AC_SUBST([REPLACE_CBRTL])
249 REPLACE_CEIL=0; AC_SUBST([REPLACE_CEIL])
250 REPLACE_CEILF=0; AC_SUBST([REPLACE_CEILF])
251 REPLACE_CEILL=0; AC_SUBST([REPLACE_CEILL])
252 REPLACE_EXPM1=0; AC_SUBST([REPLACE_EXPM1])
253 REPLACE_EXPM1F=0; AC_SUBST([REPLACE_EXPM1F])
254 REPLACE_EXP2=0; AC_SUBST([REPLACE_EXP2])
255 REPLACE_EXP2L=0; AC_SUBST([REPLACE_EXP2L])
256 REPLACE_FABSL=0; AC_SUBST([REPLACE_FABSL])
257 REPLACE_FLOOR=0; AC_SUBST([REPLACE_FLOOR])
258 REPLACE_FLOORF=0; AC_SUBST([REPLACE_FLOORF])
259 REPLACE_FLOORL=0; AC_SUBST([REPLACE_FLOORL])
260 REPLACE_FMA=0; AC_SUBST([REPLACE_FMA])
261 REPLACE_FMAF=0; AC_SUBST([REPLACE_FMAF])
262 REPLACE_FMAL=0; AC_SUBST([REPLACE_FMAL])
263 REPLACE_FMOD=0; AC_SUBST([REPLACE_FMOD])
264 REPLACE_FMODF=0; AC_SUBST([REPLACE_FMODF])
265 REPLACE_FMODL=0; AC_SUBST([REPLACE_FMODL])
266 REPLACE_FREXPF=0; AC_SUBST([REPLACE_FREXPF])
267 REPLACE_FREXP=0; AC_SUBST([REPLACE_FREXP])
268 REPLACE_FREXPL=0; AC_SUBST([REPLACE_FREXPL])
269 REPLACE_HUGE_VAL=0; AC_SUBST([REPLACE_HUGE_VAL])
270 REPLACE_HYPOT=0; AC_SUBST([REPLACE_HYPOT])
271 REPLACE_HYPOTF=0; AC_SUBST([REPLACE_HYPOTF])
272 REPLACE_HYPOTL=0; AC_SUBST([REPLACE_HYPOTL])
273 REPLACE_ISFINITE=0; AC_SUBST([REPLACE_ISFINITE])
274 REPLACE_ISINF=0; AC_SUBST([REPLACE_ISINF])
275 REPLACE_ISNAN=0; AC_SUBST([REPLACE_ISNAN])
276 REPLACE_LDEXPL=0; AC_SUBST([REPLACE_LDEXPL])
277 REPLACE_LOG=0; AC_SUBST([REPLACE_LOG])
278 REPLACE_LOGF=0; AC_SUBST([REPLACE_LOGF])
279 REPLACE_LOGL=0; AC_SUBST([REPLACE_LOGL])
280 REPLACE_LOG1P=0; AC_SUBST([REPLACE_LOG1P])
281 REPLACE_LOG1PF=0; AC_SUBST([REPLACE_LOG1PF])
282 REPLACE_LOG1PL=0; AC_SUBST([REPLACE_LOG1PL])
283 REPLACE_LOG2=0; AC_SUBST([REPLACE_LOG2])
284 REPLACE_LOG2F=0; AC_SUBST([REPLACE_LOG2F])
285 REPLACE_LOG2L=0; AC_SUBST([REPLACE_LOG2L])
286 REPLACE_MODF=0; AC_SUBST([REPLACE_MODF])
287 REPLACE_MODFF=0; AC_SUBST([REPLACE_MODFF])
288 REPLACE_MODFL=0; AC_SUBST([REPLACE_MODFL])
289 REPLACE_NAN=0; AC_SUBST([REPLACE_NAN])
290 REPLACE_REMAINDER=0; AC_SUBST([REPLACE_REMAINDER])
291 REPLACE_REMAINDERF=0; AC_SUBST([REPLACE_REMAINDERF])
292 REPLACE_REMAINDERL=0; AC_SUBST([REPLACE_REMAINDERL])
293 REPLACE_ROUND=0; AC_SUBST([REPLACE_ROUND])
294 REPLACE_ROUNDF=0; AC_SUBST([REPLACE_ROUNDF])
295 REPLACE_ROUNDL=0; AC_SUBST([REPLACE_ROUNDL])
296 REPLACE_SIGNBIT=0; AC_SUBST([REPLACE_SIGNBIT])
297 REPLACE_SIGNBIT_USING_GCC=0; AC_SUBST([REPLACE_SIGNBIT_USING_GCC])
298 REPLACE_SQRTL=0; AC_SUBST([REPLACE_SQRTL])
299 REPLACE_TRUNC=0; AC_SUBST([REPLACE_TRUNC])
300 REPLACE_TRUNCF=0; AC_SUBST([REPLACE_TRUNCF])
301 REPLACE_TRUNCL=0; AC_SUBST([REPLACE_TRUNCL])
304 # gl_LONG_DOUBLE_VS_DOUBLE
305 # determines whether 'long double' and 'double' have the same representation.
306 # Sets variable HAVE_SAME_LONG_DOUBLE_AS_DOUBLE to 0 or 1, and defines
307 # HAVE_SAME_LONG_DOUBLE_AS_DOUBLE accordingly.
308 # The currently known platforms where this is the case are:
309 # Linux/HPPA, Minix 3.1.8, AIX 5, AIX 6 and 7 with xlc, MSVC 9.
310 AC_DEFUN([gl_LONG_DOUBLE_VS_DOUBLE],
312 AC_CACHE_CHECK([whether long double and double are the same],
313 [gl_cv_long_double_equals_double],
315 [AC_LANG_PROGRAM([[#include <float.h>]],
316 [[typedef int check[sizeof (long double) == sizeof (double)
317 && LDBL_MANT_DIG == DBL_MANT_DIG
318 && LDBL_MAX_EXP == DBL_MAX_EXP
319 && LDBL_MIN_EXP == DBL_MIN_EXP
322 [gl_cv_long_double_equals_double=yes],
323 [gl_cv_long_double_equals_double=no])
325 if test $gl_cv_long_double_equals_double = yes; then
326 AC_DEFINE([HAVE_SAME_LONG_DOUBLE_AS_DOUBLE], [1],
327 [Define to 1 if 'long double' and 'double' have the same representation.])
328 HAVE_SAME_LONG_DOUBLE_AS_DOUBLE=1
330 HAVE_SAME_LONG_DOUBLE_AS_DOUBLE=0
332 AC_SUBST([HAVE_SAME_LONG_DOUBLE_AS_DOUBLE])