This source file includes following definitions.
- _NaN
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 #ifndef _@GUARD_PREFIX@_MATH_H
19
20 #if __GNUC__ >= 3
21 @PRAGMA_SYSTEM_HEADER@
22 #endif
23 @PRAGMA_COLUMNS@
24
25 #if defined _GL_INCLUDING_MATH_H
26
27
28
29
30
31
32
33 #@INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ @NEXT_AS_FIRST_DIRECTIVE_MATH_H@
34
35 #else
36
37
38
39 #define _GL_INCLUDING_MATH_H
40 #@INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ @NEXT_AS_FIRST_DIRECTIVE_MATH_H@
41 #undef _GL_INCLUDING_MATH_H
42
43 #ifndef _@GUARD_PREFIX@_MATH_H
44 #define _@GUARD_PREFIX@_MATH_H
45
46
47 #if defined __VMS && ! defined NAN
48 # include <fp.h>
49 #endif
50
51 #ifndef _GL_INLINE_HEADER_BEGIN
52 #error "Please include config.h first."
53 #endif
54 _GL_INLINE_HEADER_BEGIN
55 #ifndef _GL_MATH_INLINE
56 # define _GL_MATH_INLINE _GL_INLINE
57 #endif
58
59
60
61 #ifndef _GL_ATTRIBUTE_CONST
62 # if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95) || defined __clang__
63 # define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
64 # else
65 # define _GL_ATTRIBUTE_CONST
66 # endif
67 #endif
68
69
70
71
72
73
74
75 #ifdef __cplusplus
76
77
78
79 # define _GL_MATH_CXX_REAL_FLOATING_DECL_1(func) \
80 static inline int \
81 _gl_cxx_ ## func ## f (float f) \
82 { \
83 return func (f); \
84 } \
85 static inline int \
86 _gl_cxx_ ## func ## d (double d) \
87 { \
88 return func (d); \
89 } \
90 static inline int \
91 _gl_cxx_ ## func ## l (long double l) \
92 { \
93 return func (l); \
94 }
95 # define _GL_MATH_CXX_REAL_FLOATING_DECL_2(func,rpl_func,rettype) \
96 _GL_BEGIN_NAMESPACE \
97 inline rettype \
98 rpl_func (float f) \
99 { \
100 return _gl_cxx_ ## func ## f (f); \
101 } \
102 inline rettype \
103 rpl_func (double d) \
104 { \
105 return _gl_cxx_ ## func ## d (d); \
106 } \
107 inline rettype \
108 rpl_func (long double l) \
109 { \
110 return _gl_cxx_ ## func ## l (l); \
111 } \
112 _GL_END_NAMESPACE
113 #endif
114
115
116
117
118
119 #define _GL_WARN_REAL_FLOATING_DECL(func) \
120 _GL_MATH_INLINE int \
121 _GL_WARN_ON_USE_ATTRIBUTE (#func " is unportable - " \
122 "use gnulib module " #func " for portability") \
123 rpl_ ## func ## f (float f) \
124 { \
125 return func (f); \
126 } \
127 _GL_MATH_INLINE int \
128 _GL_WARN_ON_USE_ATTRIBUTE (#func " is unportable - " \
129 "use gnulib module " #func " for portability") \
130 rpl_ ## func ## d (double d) \
131 { \
132 return func (d); \
133 } \
134 _GL_MATH_INLINE int \
135 _GL_WARN_ON_USE_ATTRIBUTE (#func " is unportable - " \
136 "use gnulib module " #func " for portability") \
137 rpl_ ## func ## l (long double l) \
138 { \
139 return func (l); \
140 }
141 #define _GL_WARN_REAL_FLOATING_IMPL(func, value) \
142 (sizeof (value) == sizeof (float) ? rpl_ ## func ## f (value) \
143 : sizeof (value) == sizeof (double) ? rpl_ ## func ## d (value) \
144 : rpl_ ## func ## l (value))
145
146
147 #if @REPLACE_ITOLD@
148
149
150 _GL_EXTERN_C void _Qp_itoq (long double *, int);
151 static void (*_gl_math_fix_itold) (long double *, int) = _Qp_itoq;
152 #endif
153
154
155
156
157
158
159
160 #if !defined NAN || @REPLACE_NAN@
161 # if !GNULIB_defined_NAN
162 # undef NAN
163
164
165 # if defined __DECC || defined _MSC_VER
166 _GL_MATH_INLINE float
167 _NaN ()
168 {
169 static float zero = 0.0f;
170 return zero / zero;
171 }
172 # define NAN (_NaN())
173 # else
174 # define NAN (0.0f / 0.0f)
175 # endif
176 # define GNULIB_defined_NAN 1
177 # endif
178 #endif
179
180
181
182 #if @REPLACE_HUGE_VAL@
183 # undef HUGE_VALF
184 # define HUGE_VALF (1.0f / 0.0f)
185 # undef HUGE_VAL
186 # define HUGE_VAL (1.0 / 0.0)
187 # undef HUGE_VALL
188 # define HUGE_VALL (1.0L / 0.0L)
189 #endif
190
191
192 #ifndef HUGE_VALF
193 # if defined _MSC_VER
194
195 # define HUGE_VALF (1e25f * 1e25f)
196 # else
197 # define HUGE_VALF (1.0f / 0.0f)
198 # endif
199 #endif
200
201
202 #ifndef HUGE_VAL
203 # if defined _MSC_VER
204
205 # define HUGE_VAL (1e250 * 1e250)
206 # else
207 # define HUGE_VAL (1.0 / 0.0)
208 # endif
209 #endif
210
211
212 #ifndef HUGE_VALL
213 # if defined _MSC_VER
214
215 # define HUGE_VALL (1e250L * 1e250L)
216 # else
217 # define HUGE_VALL (1.0L / 0.0L)
218 # endif
219 #endif
220
221
222 #if defined FP_ILOGB0 && defined FP_ILOGBNAN
223
224 # if defined __HAIKU__
225
226 # undef FP_ILOGB0
227 # undef FP_ILOGBNAN
228 # define FP_ILOGB0 (- 2147483647 - 1)
229 # define FP_ILOGBNAN (- 2147483647 - 1)
230 # endif
231 #else
232
233 # if defined __NetBSD__ || defined __sgi
234
235 # define FP_ILOGB0 (- 2147483647 - 1)
236 # define FP_ILOGBNAN (- 2147483647 - 1)
237 # elif defined _AIX
238
239 # define FP_ILOGB0 (- 2147483647 - 1)
240 # define FP_ILOGBNAN 2147483647
241 # elif defined __sun
242
243 # define FP_ILOGB0 (- 2147483647)
244 # define FP_ILOGBNAN 2147483647
245 # else
246
247 # define FP_ILOGB0 (- 2147483647)
248 # define FP_ILOGBNAN (- 2147483647 - 1)
249 # endif
250 #endif
251
252
253 #if @GNULIB_ACOSF@
254 # if @REPLACE_ACOSF@
255 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
256 # undef acosf
257 # define acosf rpl_acosf
258 # endif
259 _GL_FUNCDECL_RPL (acosf, float, (float x));
260 _GL_CXXALIAS_RPL (acosf, float, (float x));
261 # else
262 # if !@HAVE_ACOSF@
263 # undef acosf
264 _GL_FUNCDECL_SYS (acosf, float, (float x));
265 # endif
266 _GL_CXXALIAS_SYS (acosf, float, (float x));
267 # endif
268 _GL_CXXALIASWARN (acosf);
269 #elif defined GNULIB_POSIXCHECK
270 # undef acosf
271 # if HAVE_RAW_DECL_ACOSF
272 _GL_WARN_ON_USE (acosf, "acosf is unportable - "
273 "use gnulib module acosf for portability");
274 # endif
275 #endif
276
277 #if @GNULIB_ACOSL@
278 # if !@HAVE_ACOSL@ || !@HAVE_DECL_ACOSL@
279 # undef acosl
280 _GL_FUNCDECL_SYS (acosl, long double, (long double x));
281 # endif
282 _GL_CXXALIAS_SYS (acosl, long double, (long double x));
283 # if __GLIBC__ >= 2
284 _GL_CXXALIASWARN (acosl);
285 # endif
286 #elif defined GNULIB_POSIXCHECK
287 # undef acosl
288 # if HAVE_RAW_DECL_ACOSL
289 _GL_WARN_ON_USE (acosl, "acosl is unportable - "
290 "use gnulib module acosl for portability");
291 # endif
292 #endif
293
294
295 #if @GNULIB_ASINF@
296 # if @REPLACE_ASINF@
297 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
298 # undef asinf
299 # define asinf rpl_asinf
300 # endif
301 _GL_FUNCDECL_RPL (asinf, float, (float x));
302 _GL_CXXALIAS_RPL (asinf, float, (float x));
303 # else
304 # if !@HAVE_ASINF@
305 # undef asinf
306 _GL_FUNCDECL_SYS (asinf, float, (float x));
307 # endif
308 _GL_CXXALIAS_SYS (asinf, float, (float x));
309 # endif
310 _GL_CXXALIASWARN (asinf);
311 #elif defined GNULIB_POSIXCHECK
312 # undef asinf
313 # if HAVE_RAW_DECL_ASINF
314 _GL_WARN_ON_USE (asinf, "asinf is unportable - "
315 "use gnulib module asinf for portability");
316 # endif
317 #endif
318
319 #if @GNULIB_ASINL@
320 # if !@HAVE_ASINL@ || !@HAVE_DECL_ASINL@
321 # undef asinl
322 _GL_FUNCDECL_SYS (asinl, long double, (long double x));
323 # endif
324 _GL_CXXALIAS_SYS (asinl, long double, (long double x));
325 # if __GLIBC__ >= 2
326 _GL_CXXALIASWARN (asinl);
327 # endif
328 #elif defined GNULIB_POSIXCHECK
329 # undef asinl
330 # if HAVE_RAW_DECL_ASINL
331 _GL_WARN_ON_USE (asinl, "asinl is unportable - "
332 "use gnulib module asinl for portability");
333 # endif
334 #endif
335
336
337 #if @GNULIB_ATANF@
338 # if @REPLACE_ATANF@
339 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
340 # undef atanf
341 # define atanf rpl_atanf
342 # endif
343 _GL_FUNCDECL_RPL (atanf, float, (float x));
344 _GL_CXXALIAS_RPL (atanf, float, (float x));
345 # else
346 # if !@HAVE_ATANF@
347 # undef atanf
348 _GL_FUNCDECL_SYS (atanf, float, (float x));
349 # endif
350 _GL_CXXALIAS_SYS (atanf, float, (float x));
351 # endif
352 _GL_CXXALIASWARN (atanf);
353 #elif defined GNULIB_POSIXCHECK
354 # undef atanf
355 # if HAVE_RAW_DECL_ATANF
356 _GL_WARN_ON_USE (atanf, "atanf is unportable - "
357 "use gnulib module atanf for portability");
358 # endif
359 #endif
360
361 #if @GNULIB_ATANL@
362 # if !@HAVE_ATANL@ || !@HAVE_DECL_ATANL@
363 # undef atanl
364 _GL_FUNCDECL_SYS (atanl, long double, (long double x));
365 # endif
366 _GL_CXXALIAS_SYS (atanl, long double, (long double x));
367 # if __GLIBC__ >= 2
368 _GL_CXXALIASWARN (atanl);
369 # endif
370 #elif defined GNULIB_POSIXCHECK
371 # undef atanl
372 # if HAVE_RAW_DECL_ATANL
373 _GL_WARN_ON_USE (atanl, "atanl is unportable - "
374 "use gnulib module atanl for portability");
375 # endif
376 #endif
377
378
379 #if @GNULIB_ATAN2F@
380 # if @REPLACE_ATAN2F@
381 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
382 # undef atan2f
383 # define atan2f rpl_atan2f
384 # endif
385 _GL_FUNCDECL_RPL (atan2f, float, (float y, float x));
386 _GL_CXXALIAS_RPL (atan2f, float, (float y, float x));
387 # else
388 # if !@HAVE_ATAN2F@
389 # undef atan2f
390 _GL_FUNCDECL_SYS (atan2f, float, (float y, float x));
391 # endif
392 _GL_CXXALIAS_SYS (atan2f, float, (float y, float x));
393 # endif
394 _GL_CXXALIASWARN (atan2f);
395 #elif defined GNULIB_POSIXCHECK
396 # undef atan2f
397 # if HAVE_RAW_DECL_ATAN2F
398 _GL_WARN_ON_USE (atan2f, "atan2f is unportable - "
399 "use gnulib module atan2f for portability");
400 # endif
401 #endif
402
403
404 #if @GNULIB_CBRTF@
405 # if @REPLACE_CBRTF@
406 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
407 # undef cbrtf
408 # define cbrtf rpl_cbrtf
409 # endif
410 _GL_FUNCDECL_RPL (cbrtf, float, (float x));
411 _GL_CXXALIAS_RPL (cbrtf, float, (float x));
412 # else
413 # if !@HAVE_DECL_CBRTF@
414 _GL_FUNCDECL_SYS (cbrtf, float, (float x));
415 # endif
416 _GL_CXXALIAS_SYS (cbrtf, float, (float x));
417 # endif
418 _GL_CXXALIASWARN (cbrtf);
419 #elif defined GNULIB_POSIXCHECK
420 # undef cbrtf
421 # if HAVE_RAW_DECL_CBRTF
422 _GL_WARN_ON_USE (cbrtf, "cbrtf is unportable - "
423 "use gnulib module cbrtf for portability");
424 # endif
425 #endif
426
427 #if @GNULIB_CBRT@
428 # if !@HAVE_CBRT@
429 _GL_FUNCDECL_SYS (cbrt, double, (double x));
430 # endif
431 _GL_CXXALIAS_SYS (cbrt, double, (double x));
432 # if __GLIBC__ >= 2
433 _GL_CXXALIASWARN1 (cbrt, double, (double x));
434 # endif
435 #elif defined GNULIB_POSIXCHECK
436 # undef cbrt
437 # if HAVE_RAW_DECL_CBRT
438 _GL_WARN_ON_USE (cbrt, "cbrt is unportable - "
439 "use gnulib module cbrt for portability");
440 # endif
441 #endif
442
443 #if @GNULIB_CBRTL@
444 # if @REPLACE_CBRTL@
445 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
446 # undef cbrtl
447 # define cbrtl rpl_cbrtl
448 # endif
449 _GL_FUNCDECL_RPL (cbrtl, long double, (long double x));
450 _GL_CXXALIAS_RPL (cbrtl, long double, (long double x));
451 # else
452 # if !@HAVE_DECL_CBRTL@
453 _GL_FUNCDECL_SYS (cbrtl, long double, (long double x));
454 # endif
455 _GL_CXXALIAS_SYS (cbrtl, long double, (long double x));
456 # endif
457 _GL_CXXALIASWARN (cbrtl);
458 #elif defined GNULIB_POSIXCHECK
459 # undef cbrtl
460 # if HAVE_RAW_DECL_CBRTL
461 _GL_WARN_ON_USE (cbrtl, "cbrtl is unportable - "
462 "use gnulib module cbrtl for portability");
463 # endif
464 #endif
465
466
467 #if @GNULIB_CEILF@
468 # if @REPLACE_CEILF@
469 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
470 # undef ceilf
471 # define ceilf rpl_ceilf
472 # endif
473 _GL_FUNCDECL_RPL (ceilf, float, (float x));
474 _GL_CXXALIAS_RPL (ceilf, float, (float x));
475 # else
476 # if !@HAVE_DECL_CEILF@
477 # undef ceilf
478 _GL_FUNCDECL_SYS (ceilf, float, (float x));
479 # endif
480 _GL_CXXALIAS_SYS (ceilf, float, (float x));
481 # endif
482 _GL_CXXALIASWARN (ceilf);
483 #elif defined GNULIB_POSIXCHECK
484 # undef ceilf
485 # if HAVE_RAW_DECL_CEILF
486 _GL_WARN_ON_USE (ceilf, "ceilf is unportable - "
487 "use gnulib module ceilf for portability");
488 # endif
489 #endif
490
491 #if @GNULIB_CEIL@
492 # if @REPLACE_CEIL@
493 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
494 # undef ceil
495 # define ceil rpl_ceil
496 # endif
497 _GL_FUNCDECL_RPL (ceil, double, (double x));
498 _GL_CXXALIAS_RPL (ceil, double, (double x));
499 # else
500 _GL_CXXALIAS_SYS (ceil, double, (double x));
501 # endif
502 # if __GLIBC__ >= 2
503 _GL_CXXALIASWARN1 (ceil, double, (double x));
504 # endif
505 #endif
506
507 #if @GNULIB_CEILL@
508 # if @REPLACE_CEILL@
509 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
510 # undef ceill
511 # define ceill rpl_ceill
512 # endif
513 _GL_FUNCDECL_RPL (ceill, long double, (long double x));
514 _GL_CXXALIAS_RPL (ceill, long double, (long double x));
515 # else
516 # if !@HAVE_DECL_CEILL@
517 # undef ceill
518 _GL_FUNCDECL_SYS (ceill, long double, (long double x));
519 # endif
520 _GL_CXXALIAS_SYS (ceill, long double, (long double x));
521 # endif
522 # if __GLIBC__ >= 2
523 _GL_CXXALIASWARN (ceill);
524 # endif
525 #elif defined GNULIB_POSIXCHECK
526 # undef ceill
527 # if HAVE_RAW_DECL_CEILL
528 _GL_WARN_ON_USE (ceill, "ceill is unportable - "
529 "use gnulib module ceill for portability");
530 # endif
531 #endif
532
533
534 #if @GNULIB_COPYSIGNF@
535 # if !@HAVE_DECL_COPYSIGNF@
536 # undef copysignf
537 _GL_FUNCDECL_SYS (copysignf, float, (float x, float y));
538 # endif
539 _GL_CXXALIAS_SYS (copysignf, float, (float x, float y));
540 _GL_CXXALIASWARN (copysignf);
541 #elif defined GNULIB_POSIXCHECK
542 # undef copysignf
543 # if HAVE_RAW_DECL_COPYSIGNF
544 _GL_WARN_ON_USE (copysignf, "copysignf is unportable - "
545 "use gnulib module copysignf for portability");
546 # endif
547 #endif
548
549 #if @GNULIB_COPYSIGN@
550 # if !@HAVE_COPYSIGN@
551 _GL_FUNCDECL_SYS (copysign, double, (double x, double y));
552 # endif
553 _GL_CXXALIAS_SYS (copysign, double, (double x, double y));
554 # if __GLIBC__ >= 2
555 _GL_CXXALIASWARN1 (copysign, double, (double x, double y));
556 # endif
557 #elif defined GNULIB_POSIXCHECK
558 # undef copysign
559 # if HAVE_RAW_DECL_COPYSIGN
560 _GL_WARN_ON_USE (copysign, "copysign is unportable - "
561 "use gnulib module copysign for portability");
562 # endif
563 #endif
564
565 #if @GNULIB_COPYSIGNL@
566 # if !@HAVE_COPYSIGNL@
567 _GL_FUNCDECL_SYS (copysignl, long double, (long double x, long double y));
568 # endif
569 _GL_CXXALIAS_SYS (copysignl, long double, (long double x, long double y));
570 _GL_CXXALIASWARN (copysignl);
571 #elif defined GNULIB_POSIXCHECK
572 # undef copysignl
573 # if HAVE_RAW_DECL_COPYSIGNL
574 _GL_WARN_ON_USE (copysign, "copysignl is unportable - "
575 "use gnulib module copysignl for portability");
576 # endif
577 #endif
578
579
580 #if @GNULIB_COSF@
581 # if @REPLACE_COSF@
582 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
583 # undef cosf
584 # define cosf rpl_cosf
585 # endif
586 _GL_FUNCDECL_RPL (cosf, float, (float x));
587 _GL_CXXALIAS_RPL (cosf, float, (float x));
588 # else
589 # if !@HAVE_COSF@
590 # undef cosf
591 _GL_FUNCDECL_SYS (cosf, float, (float x));
592 # endif
593 _GL_CXXALIAS_SYS (cosf, float, (float x));
594 # endif
595 _GL_CXXALIASWARN (cosf);
596 #elif defined GNULIB_POSIXCHECK
597 # undef cosf
598 # if HAVE_RAW_DECL_COSF
599 _GL_WARN_ON_USE (cosf, "cosf is unportable - "
600 "use gnulib module cosf for portability");
601 # endif
602 #endif
603
604 #if @GNULIB_COSL@
605 # if !@HAVE_COSL@ || !@HAVE_DECL_COSL@
606 # undef cosl
607 _GL_FUNCDECL_SYS (cosl, long double, (long double x));
608 # endif
609 _GL_CXXALIAS_SYS (cosl, long double, (long double x));
610 # if __GLIBC__ >= 2
611 _GL_CXXALIASWARN (cosl);
612 # endif
613 #elif defined GNULIB_POSIXCHECK
614 # undef cosl
615 # if HAVE_RAW_DECL_COSL
616 _GL_WARN_ON_USE (cosl, "cosl is unportable - "
617 "use gnulib module cosl for portability");
618 # endif
619 #endif
620
621
622 #if @GNULIB_COSHF@
623 # if @REPLACE_COSHF@
624 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
625 # undef coshf
626 # define coshf rpl_coshf
627 # endif
628 _GL_FUNCDECL_RPL (coshf, float, (float x));
629 _GL_CXXALIAS_RPL (coshf, float, (float x));
630 # else
631 # if !@HAVE_COSHF@
632 # undef coshf
633 _GL_FUNCDECL_SYS (coshf, float, (float x));
634 # endif
635 _GL_CXXALIAS_SYS (coshf, float, (float x));
636 # endif
637 _GL_CXXALIASWARN (coshf);
638 #elif defined GNULIB_POSIXCHECK
639 # undef coshf
640 # if HAVE_RAW_DECL_COSHF
641 _GL_WARN_ON_USE (coshf, "coshf is unportable - "
642 "use gnulib module coshf for portability");
643 # endif
644 #endif
645
646
647 #if @GNULIB_EXPF@
648 # if @REPLACE_EXPF@
649 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
650 # undef expf
651 # define expf rpl_expf
652 # endif
653 _GL_FUNCDECL_RPL (expf, float, (float x));
654 _GL_CXXALIAS_RPL (expf, float, (float x));
655 # else
656 # if !@HAVE_EXPF@
657 # undef expf
658 _GL_FUNCDECL_SYS (expf, float, (float x));
659 # endif
660 _GL_CXXALIAS_SYS (expf, float, (float x));
661 # endif
662 _GL_CXXALIASWARN (expf);
663 #elif defined GNULIB_POSIXCHECK
664 # undef expf
665 # if HAVE_RAW_DECL_EXPF
666 _GL_WARN_ON_USE (expf, "expf is unportable - "
667 "use gnulib module expf for portability");
668 # endif
669 #endif
670
671 #if @GNULIB_EXPL@
672 # if @REPLACE_EXPL@
673 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
674 # undef expl
675 # define expl rpl_expl
676 # endif
677 _GL_FUNCDECL_RPL (expl, long double, (long double x));
678 _GL_CXXALIAS_RPL (expl, long double, (long double x));
679 # else
680 # if !@HAVE_EXPL@ || !@HAVE_DECL_EXPL@
681 # undef expl
682 _GL_FUNCDECL_SYS (expl, long double, (long double x));
683 # endif
684 _GL_CXXALIAS_SYS (expl, long double, (long double x));
685 # endif
686 # if __GLIBC__ >= 2
687 _GL_CXXALIASWARN (expl);
688 # endif
689 #elif defined GNULIB_POSIXCHECK
690 # undef expl
691 # if HAVE_RAW_DECL_EXPL
692 _GL_WARN_ON_USE (expl, "expl is unportable - "
693 "use gnulib module expl for portability");
694 # endif
695 #endif
696
697
698 #if @GNULIB_EXP2F@
699 # if !@HAVE_DECL_EXP2F@
700 _GL_FUNCDECL_SYS (exp2f, float, (float x));
701 # endif
702 _GL_CXXALIAS_SYS (exp2f, float, (float x));
703 _GL_CXXALIASWARN (exp2f);
704 #elif defined GNULIB_POSIXCHECK
705 # undef exp2f
706 # if HAVE_RAW_DECL_EXP2F
707 _GL_WARN_ON_USE (exp2f, "exp2f is unportable - "
708 "use gnulib module exp2f for portability");
709 # endif
710 #endif
711
712 #if @GNULIB_EXP2@
713 # if @REPLACE_EXP2@
714 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
715 # undef exp2
716 # define exp2 rpl_exp2
717 # endif
718 _GL_FUNCDECL_RPL (exp2, double, (double x));
719 _GL_CXXALIAS_RPL (exp2, double, (double x));
720 # else
721 # if !@HAVE_DECL_EXP2@
722 _GL_FUNCDECL_SYS (exp2, double, (double x));
723 # endif
724 _GL_CXXALIAS_SYS (exp2, double, (double x));
725 # endif
726 # if __GLIBC__ >= 2
727 _GL_CXXALIASWARN1 (exp2, double, (double x));
728 # endif
729 #elif defined GNULIB_POSIXCHECK
730 # undef exp2
731 # if HAVE_RAW_DECL_EXP2
732 _GL_WARN_ON_USE (exp2, "exp2 is unportable - "
733 "use gnulib module exp2 for portability");
734 # endif
735 #endif
736
737 #if @GNULIB_EXP2L@
738 # if @REPLACE_EXP2L@
739 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
740 # undef exp2l
741 # define exp2l rpl_exp2l
742 # endif
743 _GL_FUNCDECL_RPL (exp2l, long double, (long double x));
744 _GL_CXXALIAS_RPL (exp2l, long double, (long double x));
745 # else
746 # if !@HAVE_DECL_EXP2L@
747 # undef exp2l
748 _GL_FUNCDECL_SYS (exp2l, long double, (long double x));
749 # endif
750 _GL_CXXALIAS_SYS (exp2l, long double, (long double x));
751 # endif
752 _GL_CXXALIASWARN (exp2l);
753 #elif defined GNULIB_POSIXCHECK
754 # undef exp2l
755 # if HAVE_RAW_DECL_EXP2L
756 _GL_WARN_ON_USE (exp2l, "exp2l is unportable - "
757 "use gnulib module exp2l for portability");
758 # endif
759 #endif
760
761
762 #if @GNULIB_EXPM1F@
763 # if @REPLACE_EXPM1F@
764 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
765 # undef expm1f
766 # define expm1f rpl_expm1f
767 # endif
768 _GL_FUNCDECL_RPL (expm1f, float, (float x));
769 _GL_CXXALIAS_RPL (expm1f, float, (float x));
770 # else
771 # if !@HAVE_EXPM1F@
772 _GL_FUNCDECL_SYS (expm1f, float, (float x));
773 # endif
774 _GL_CXXALIAS_SYS (expm1f, float, (float x));
775 # endif
776 _GL_CXXALIASWARN (expm1f);
777 #elif defined GNULIB_POSIXCHECK
778 # undef expm1f
779 # if HAVE_RAW_DECL_EXPM1F
780 _GL_WARN_ON_USE (expm1f, "expm1f is unportable - "
781 "use gnulib module expm1f for portability");
782 # endif
783 #endif
784
785 #if @GNULIB_EXPM1@
786 # if @REPLACE_EXPM1@
787 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
788 # undef expm1
789 # define expm1 rpl_expm1
790 # endif
791 _GL_FUNCDECL_RPL (expm1, double, (double x));
792 _GL_CXXALIAS_RPL (expm1, double, (double x));
793 # else
794 # if !@HAVE_EXPM1@
795 _GL_FUNCDECL_SYS (expm1, double, (double x));
796 # endif
797 _GL_CXXALIAS_SYS (expm1, double, (double x));
798 # endif
799 # if __GLIBC__ >= 2
800 _GL_CXXALIASWARN1 (expm1, double, (double x));
801 # endif
802 #elif defined GNULIB_POSIXCHECK
803 # undef expm1
804 # if HAVE_RAW_DECL_EXPM1
805 _GL_WARN_ON_USE (expm1, "expm1 is unportable - "
806 "use gnulib module expm1 for portability");
807 # endif
808 #endif
809
810 #if @GNULIB_EXPM1L@
811 # if @REPLACE_EXPM1L@
812 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
813 # undef expm1l
814 # define expm1l rpl_expm1l
815 # endif
816 _GL_FUNCDECL_RPL (expm1l, long double, (long double x));
817 _GL_CXXALIAS_RPL (expm1l, long double, (long double x));
818 # else
819 # if !@HAVE_DECL_EXPM1L@
820 # undef expm1l
821 # if !(defined __cplusplus && defined _AIX)
822 _GL_FUNCDECL_SYS (expm1l, long double, (long double x));
823 # endif
824 # endif
825 _GL_CXXALIAS_SYS (expm1l, long double, (long double x));
826 # endif
827 _GL_CXXALIASWARN (expm1l);
828 #elif defined GNULIB_POSIXCHECK
829 # undef expm1l
830 # if HAVE_RAW_DECL_EXPM1L
831 _GL_WARN_ON_USE (expm1l, "expm1l is unportable - "
832 "use gnulib module expm1l for portability");
833 # endif
834 #endif
835
836
837 #if @GNULIB_FABSF@
838 # if !@HAVE_FABSF@
839 # undef fabsf
840 _GL_FUNCDECL_SYS (fabsf, float, (float x));
841 # endif
842 _GL_CXXALIAS_SYS (fabsf, float, (float x));
843 # if __GLIBC__ >= 2
844 _GL_CXXALIASWARN (fabsf);
845 # endif
846 #elif defined GNULIB_POSIXCHECK
847 # undef fabsf
848 # if HAVE_RAW_DECL_FABSF
849 _GL_WARN_ON_USE (fabsf, "fabsf is unportable - "
850 "use gnulib module fabsf for portability");
851 # endif
852 #endif
853
854 #if @GNULIB_FABSL@
855 # if @REPLACE_FABSL@
856 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
857 # undef fabsl
858 # define fabsl rpl_fabsl
859 # endif
860 _GL_FUNCDECL_RPL (fabsl, long double, (long double x));
861 _GL_CXXALIAS_RPL (fabsl, long double, (long double x));
862 # else
863 # if !@HAVE_FABSL@
864 # undef fabsl
865 _GL_FUNCDECL_SYS (fabsl, long double, (long double x));
866 # endif
867 _GL_CXXALIAS_SYS (fabsl, long double, (long double x));
868 # endif
869 # if __GLIBC__ >= 2
870 _GL_CXXALIASWARN (fabsl);
871 # endif
872 #elif defined GNULIB_POSIXCHECK
873 # undef fabsl
874 # if HAVE_RAW_DECL_FABSL
875 _GL_WARN_ON_USE (fabsl, "fabsl is unportable - "
876 "use gnulib module fabsl for portability");
877 # endif
878 #endif
879
880
881 #if @GNULIB_FLOORF@
882 # if @REPLACE_FLOORF@
883 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
884 # undef floorf
885 # define floorf rpl_floorf
886 # endif
887 _GL_FUNCDECL_RPL (floorf, float, (float x));
888 _GL_CXXALIAS_RPL (floorf, float, (float x));
889 # else
890 # if !@HAVE_DECL_FLOORF@
891 # undef floorf
892 _GL_FUNCDECL_SYS (floorf, float, (float x));
893 # endif
894 _GL_CXXALIAS_SYS (floorf, float, (float x));
895 # endif
896 _GL_CXXALIASWARN (floorf);
897 #elif defined GNULIB_POSIXCHECK
898 # undef floorf
899 # if HAVE_RAW_DECL_FLOORF
900 _GL_WARN_ON_USE (floorf, "floorf is unportable - "
901 "use gnulib module floorf for portability");
902 # endif
903 #endif
904
905 #if @GNULIB_FLOOR@
906 # if @REPLACE_FLOOR@
907 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
908 # undef floor
909 # define floor rpl_floor
910 # endif
911 _GL_FUNCDECL_RPL (floor, double, (double x));
912 _GL_CXXALIAS_RPL (floor, double, (double x));
913 # else
914 _GL_CXXALIAS_SYS (floor, double, (double x));
915 # endif
916 # if __GLIBC__ >= 2
917 _GL_CXXALIASWARN1 (floor, double, (double x));
918 # endif
919 #endif
920
921 #if @GNULIB_FLOORL@
922 # if @REPLACE_FLOORL@
923 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
924 # undef floorl
925 # define floorl rpl_floorl
926 # endif
927 _GL_FUNCDECL_RPL (floorl, long double, (long double x));
928 _GL_CXXALIAS_RPL (floorl, long double, (long double x));
929 # else
930 # if !@HAVE_DECL_FLOORL@
931 # undef floorl
932 _GL_FUNCDECL_SYS (floorl, long double, (long double x));
933 # endif
934 _GL_CXXALIAS_SYS (floorl, long double, (long double x));
935 # endif
936 # if __GLIBC__ >= 2
937 _GL_CXXALIASWARN (floorl);
938 # endif
939 #elif defined GNULIB_POSIXCHECK
940 # undef floorl
941 # if HAVE_RAW_DECL_FLOORL
942 _GL_WARN_ON_USE (floorl, "floorl is unportable - "
943 "use gnulib module floorl for portability");
944 # endif
945 #endif
946
947
948 #if @GNULIB_FMAF@
949 # if @REPLACE_FMAF@
950 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
951 # undef fmaf
952 # define fmaf rpl_fmaf
953 # endif
954 _GL_FUNCDECL_RPL (fmaf, float, (float x, float y, float z));
955 _GL_CXXALIAS_RPL (fmaf, float, (float x, float y, float z));
956 # else
957 # if !@HAVE_FMAF@
958 # undef fmaf
959 _GL_FUNCDECL_SYS (fmaf, float, (float x, float y, float z));
960 # endif
961 _GL_CXXALIAS_SYS (fmaf, float, (float x, float y, float z));
962 # endif
963 _GL_CXXALIASWARN (fmaf);
964 #elif defined GNULIB_POSIXCHECK
965 # undef fmaf
966 # if HAVE_RAW_DECL_FMAF
967 _GL_WARN_ON_USE (fmaf, "fmaf is unportable - "
968 "use gnulib module fmaf for portability");
969 # endif
970 #endif
971
972 #if @GNULIB_FMA@
973 # if @REPLACE_FMA@
974 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
975 # undef fma
976 # define fma rpl_fma
977 # endif
978 _GL_FUNCDECL_RPL (fma, double, (double x, double y, double z));
979 _GL_CXXALIAS_RPL (fma, double, (double x, double y, double z));
980 # else
981 # if !@HAVE_FMA@
982 # undef fma
983 _GL_FUNCDECL_SYS (fma, double, (double x, double y, double z));
984 # endif
985 _GL_CXXALIAS_SYS (fma, double, (double x, double y, double z));
986 # endif
987 # if __GLIBC__ >= 2
988 _GL_CXXALIASWARN1 (fma, double, (double x, double y, double z));
989 # endif
990 #elif defined GNULIB_POSIXCHECK
991 # undef fma
992 # if HAVE_RAW_DECL_FMA
993 _GL_WARN_ON_USE (fma, "fma is unportable - "
994 "use gnulib module fma for portability");
995 # endif
996 #endif
997
998 #if @GNULIB_FMAL@
999 # if @REPLACE_FMAL@
1000 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1001 # undef fmal
1002 # define fmal rpl_fmal
1003 # endif
1004 _GL_FUNCDECL_RPL (fmal, long double,
1005 (long double x, long double y, long double z));
1006 _GL_CXXALIAS_RPL (fmal, long double,
1007 (long double x, long double y, long double z));
1008 # else
1009 # if !@HAVE_FMAL@
1010 # undef fmal
1011 # if !(defined __cplusplus && defined _AIX)
1012 _GL_FUNCDECL_SYS (fmal, long double,
1013 (long double x, long double y, long double z));
1014 # endif
1015 # endif
1016 _GL_CXXALIAS_SYS (fmal, long double,
1017 (long double x, long double y, long double z));
1018 # endif
1019 _GL_CXXALIASWARN (fmal);
1020 #elif defined GNULIB_POSIXCHECK
1021 # undef fmal
1022 # if HAVE_RAW_DECL_FMAL
1023 _GL_WARN_ON_USE (fmal, "fmal is unportable - "
1024 "use gnulib module fmal for portability");
1025 # endif
1026 #endif
1027
1028
1029 #if @GNULIB_FMODF@
1030 # if @REPLACE_FMODF@
1031 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1032 # undef fmodf
1033 # define fmodf rpl_fmodf
1034 # endif
1035 _GL_FUNCDECL_RPL (fmodf, float, (float x, float y));
1036 _GL_CXXALIAS_RPL (fmodf, float, (float x, float y));
1037 # else
1038 # if !@HAVE_FMODF@
1039 # undef fmodf
1040 _GL_FUNCDECL_SYS (fmodf, float, (float x, float y));
1041 # endif
1042 _GL_CXXALIAS_SYS (fmodf, float, (float x, float y));
1043 # endif
1044 _GL_CXXALIASWARN (fmodf);
1045 #elif defined GNULIB_POSIXCHECK
1046 # undef fmodf
1047 # if HAVE_RAW_DECL_FMODF
1048 _GL_WARN_ON_USE (fmodf, "fmodf is unportable - "
1049 "use gnulib module fmodf for portability");
1050 # endif
1051 #endif
1052
1053 #if @GNULIB_FMOD@
1054 # if @REPLACE_FMOD@
1055 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1056 # undef fmod
1057 # define fmod rpl_fmod
1058 # endif
1059 _GL_FUNCDECL_RPL (fmod, double, (double x, double y));
1060 _GL_CXXALIAS_RPL (fmod, double, (double x, double y));
1061 # else
1062 _GL_CXXALIAS_SYS (fmod, double, (double x, double y));
1063 # endif
1064 # if __GLIBC__ >= 2
1065 _GL_CXXALIASWARN1 (fmod, double, (double x, double y));
1066 # endif
1067 #elif defined GNULIB_POSIXCHECK
1068 # undef fmod
1069 # if HAVE_RAW_DECL_FMOD
1070 _GL_WARN_ON_USE (fmod, "fmod has portability problems - "
1071 "use gnulib module fmod for portability");
1072 # endif
1073 #endif
1074
1075 #if @GNULIB_FMODL@
1076 # if @REPLACE_FMODL@
1077 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1078 # undef fmodl
1079 # define fmodl rpl_fmodl
1080 # endif
1081 _GL_FUNCDECL_RPL (fmodl, long double, (long double x, long double y));
1082 _GL_CXXALIAS_RPL (fmodl, long double, (long double x, long double y));
1083 # else
1084 # if !@HAVE_FMODL@
1085 # undef fmodl
1086 _GL_FUNCDECL_SYS (fmodl, long double, (long double x, long double y));
1087 # endif
1088 _GL_CXXALIAS_SYS (fmodl, long double, (long double x, long double y));
1089 # endif
1090 # if __GLIBC__ >= 2
1091 _GL_CXXALIASWARN (fmodl);
1092 # endif
1093 #elif defined GNULIB_POSIXCHECK
1094 # undef fmodl
1095 # if HAVE_RAW_DECL_FMODL
1096 _GL_WARN_ON_USE (fmodl, "fmodl is unportable - "
1097 "use gnulib module fmodl for portability");
1098 # endif
1099 #endif
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109 #if @GNULIB_FREXPF@
1110 # if @REPLACE_FREXPF@
1111 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1112 # undef frexpf
1113 # define frexpf rpl_frexpf
1114 # endif
1115 _GL_FUNCDECL_RPL (frexpf, float, (float x, int *expptr) _GL_ARG_NONNULL ((2)));
1116 _GL_CXXALIAS_RPL (frexpf, float, (float x, int *expptr));
1117 # else
1118 # if !@HAVE_FREXPF@
1119 # undef frexpf
1120 _GL_FUNCDECL_SYS (frexpf, float, (float x, int *expptr) _GL_ARG_NONNULL ((2)));
1121 # endif
1122 _GL_CXXALIAS_SYS (frexpf, float, (float x, int *expptr));
1123 # endif
1124 # if __GLIBC__ >= 2
1125 _GL_CXXALIASWARN (frexpf);
1126 # endif
1127 #elif defined GNULIB_POSIXCHECK
1128 # undef frexpf
1129 # if HAVE_RAW_DECL_FREXPF
1130 _GL_WARN_ON_USE (frexpf, "frexpf is unportable - "
1131 "use gnulib module frexpf for portability");
1132 # endif
1133 #endif
1134
1135
1136
1137
1138
1139
1140
1141
1142 #if @GNULIB_FREXP@
1143 # if @REPLACE_FREXP@
1144 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1145 # undef frexp
1146 # define frexp rpl_frexp
1147 # endif
1148 _GL_FUNCDECL_RPL (frexp, double, (double x, int *expptr) _GL_ARG_NONNULL ((2)));
1149 _GL_CXXALIAS_RPL (frexp, double, (double x, int *expptr));
1150 # else
1151 _GL_CXXALIAS_SYS (frexp, double, (double x, int *expptr));
1152 # endif
1153 # if __GLIBC__ >= 2
1154 _GL_CXXALIASWARN1 (frexp, double, (double x, int *expptr));
1155 # endif
1156 #elif defined GNULIB_POSIXCHECK
1157 # undef frexp
1158
1159 _GL_WARN_ON_USE (frexp, "frexp is unportable - "
1160 "use gnulib module frexp for portability");
1161 #endif
1162
1163
1164
1165
1166
1167
1168
1169
1170 #if @GNULIB_FREXPL@ && @REPLACE_FREXPL@
1171 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1172 # undef frexpl
1173 # define frexpl rpl_frexpl
1174 # endif
1175 _GL_FUNCDECL_RPL (frexpl, long double,
1176 (long double x, int *expptr) _GL_ARG_NONNULL ((2)));
1177 _GL_CXXALIAS_RPL (frexpl, long double, (long double x, int *expptr));
1178 #else
1179 # if !@HAVE_DECL_FREXPL@
1180 _GL_FUNCDECL_SYS (frexpl, long double,
1181 (long double x, int *expptr) _GL_ARG_NONNULL ((2)));
1182 # endif
1183 # if @GNULIB_FREXPL@
1184 _GL_CXXALIAS_SYS (frexpl, long double, (long double x, int *expptr));
1185 # endif
1186 #endif
1187 #if @GNULIB_FREXPL@ && !(@REPLACE_FREXPL@ && !@HAVE_DECL_FREXPL@)
1188 # if __GLIBC__ >= 2
1189 _GL_CXXALIASWARN (frexpl);
1190 # endif
1191 #endif
1192 #if !@GNULIB_FREXPL@ && defined GNULIB_POSIXCHECK
1193 # undef frexpl
1194 # if HAVE_RAW_DECL_FREXPL
1195 _GL_WARN_ON_USE (frexpl, "frexpl is unportable - "
1196 "use gnulib module frexpl for portability");
1197 # endif
1198 #endif
1199
1200
1201
1202 #if @GNULIB_HYPOTF@
1203 # if @REPLACE_HYPOTF@
1204 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1205 # undef hypotf
1206 # define hypotf rpl_hypotf
1207 # endif
1208 _GL_FUNCDECL_RPL (hypotf, float, (float x, float y));
1209 _GL_CXXALIAS_RPL (hypotf, float, (float x, float y));
1210 # else
1211 # if !@HAVE_HYPOTF@
1212 _GL_FUNCDECL_SYS (hypotf, float, (float x, float y));
1213 # endif
1214 _GL_CXXALIAS_SYS (hypotf, float, (float x, float y));
1215 # endif
1216 # if __GLIBC__ >= 2
1217 _GL_CXXALIASWARN (hypotf);
1218 # endif
1219 #elif defined GNULIB_POSIXCHECK
1220 # undef hypotf
1221 # if HAVE_RAW_DECL_HYPOTF
1222 _GL_WARN_ON_USE (hypotf, "hypotf is unportable - "
1223 "use gnulib module hypotf for portability");
1224 # endif
1225 #endif
1226
1227
1228 #if @GNULIB_HYPOT@
1229 # if @REPLACE_HYPOT@
1230 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1231 # undef hypot
1232 # define hypot rpl_hypot
1233 # endif
1234 _GL_FUNCDECL_RPL (hypot, double, (double x, double y));
1235 _GL_CXXALIAS_RPL (hypot, double, (double x, double y));
1236 # else
1237 _GL_CXXALIAS_SYS (hypot, double, (double x, double y));
1238 # endif
1239 # if __GLIBC__ >= 2
1240 _GL_CXXALIASWARN1 (hypot, double, (double x, double y));
1241 # endif
1242 #elif defined GNULIB_POSIXCHECK
1243 # undef hypot
1244 # if HAVE_RAW_DECL_HYPOT
1245 _GL_WARN_ON_USE (hypotf, "hypot has portability problems - "
1246 "use gnulib module hypot for portability");
1247 # endif
1248 #endif
1249
1250
1251 #if @GNULIB_HYPOTL@
1252 # if @REPLACE_HYPOTL@
1253 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1254 # undef hypotl
1255 # define hypotl rpl_hypotl
1256 # endif
1257 _GL_FUNCDECL_RPL (hypotl, long double, (long double x, long double y));
1258 _GL_CXXALIAS_RPL (hypotl, long double, (long double x, long double y));
1259 # else
1260 # if !@HAVE_HYPOTL@
1261 _GL_FUNCDECL_SYS (hypotl, long double, (long double x, long double y));
1262 # endif
1263 _GL_CXXALIAS_SYS (hypotl, long double, (long double x, long double y));
1264 # endif
1265 # if __GLIBC__ >= 2
1266 _GL_CXXALIASWARN (hypotl);
1267 # endif
1268 #elif defined GNULIB_POSIXCHECK
1269 # undef hypotl
1270 # if HAVE_RAW_DECL_HYPOTL
1271 _GL_WARN_ON_USE (hypotl, "hypotl is unportable - "
1272 "use gnulib module hypotl for portability");
1273 # endif
1274 #endif
1275
1276
1277 #if @GNULIB_ILOGBF@
1278 # if @REPLACE_ILOGBF@
1279 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1280 # undef ilogbf
1281 # define ilogbf rpl_ilogbf
1282 # endif
1283 _GL_FUNCDECL_RPL (ilogbf, int, (float x));
1284 _GL_CXXALIAS_RPL (ilogbf, int, (float x));
1285 # else
1286 # if !@HAVE_ILOGBF@
1287 _GL_FUNCDECL_SYS (ilogbf, int, (float x));
1288 # endif
1289 _GL_CXXALIAS_SYS (ilogbf, int, (float x));
1290 # endif
1291 _GL_CXXALIASWARN (ilogbf);
1292 #elif defined GNULIB_POSIXCHECK
1293 # undef ilogbf
1294 # if HAVE_RAW_DECL_ILOGBF
1295 _GL_WARN_ON_USE (ilogbf, "ilogbf is unportable - "
1296 "use gnulib module ilogbf for portability");
1297 # endif
1298 #endif
1299
1300 #if @GNULIB_ILOGB@
1301 # if @REPLACE_ILOGB@
1302 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1303 # undef ilogb
1304 # define ilogb rpl_ilogb
1305 # endif
1306 _GL_FUNCDECL_RPL (ilogb, int, (double x));
1307 _GL_CXXALIAS_RPL (ilogb, int, (double x));
1308 # else
1309 # if !@HAVE_ILOGB@
1310 _GL_FUNCDECL_SYS (ilogb, int, (double x));
1311 # endif
1312 _GL_CXXALIAS_SYS (ilogb, int, (double x));
1313 # endif
1314 # if __GLIBC__ >= 2
1315 _GL_CXXALIASWARN1 (ilogb, int, (double x));
1316 # endif
1317 #elif defined GNULIB_POSIXCHECK
1318 # undef ilogb
1319 # if HAVE_RAW_DECL_ILOGB
1320 _GL_WARN_ON_USE (ilogb, "ilogb is unportable - "
1321 "use gnulib module ilogb for portability");
1322 # endif
1323 #endif
1324
1325 #if @GNULIB_ILOGBL@
1326 # if @REPLACE_ILOGBL@
1327 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1328 # undef ilogbl
1329 # define ilogbl rpl_ilogbl
1330 # endif
1331 _GL_FUNCDECL_RPL (ilogbl, int, (long double x));
1332 _GL_CXXALIAS_RPL (ilogbl, int, (long double x));
1333 # else
1334 # if !@HAVE_ILOGBL@
1335 # undef ilogbl
1336 _GL_FUNCDECL_SYS (ilogbl, int, (long double x));
1337 # endif
1338 _GL_CXXALIAS_SYS (ilogbl, int, (long double x));
1339 # endif
1340 _GL_CXXALIASWARN (ilogbl);
1341 #elif defined GNULIB_POSIXCHECK
1342 # undef ilogbl
1343 # if HAVE_RAW_DECL_ILOGBL
1344 _GL_WARN_ON_USE (ilogbl, "ilogbl is unportable - "
1345 "use gnulib module ilogbl for portability");
1346 # endif
1347 #endif
1348
1349
1350 #if @GNULIB_MDA_J0@
1351
1352
1353
1354 # if defined _WIN32 && !defined __CYGWIN__
1355 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1356 # undef j0
1357 # define j0 _j0
1358 # endif
1359 _GL_CXXALIAS_MDA (j0, double, (double x));
1360 # else
1361 _GL_CXXALIAS_SYS (j0, double, (double x));
1362 # endif
1363 _GL_CXXALIASWARN (j0);
1364 #endif
1365
1366 #if @GNULIB_MDA_J1@
1367
1368
1369
1370 # if defined _WIN32 && !defined __CYGWIN__
1371 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1372 # undef j1
1373 # define j1 _j1
1374 # endif
1375 _GL_CXXALIAS_MDA (j1, double, (double x));
1376 # else
1377 _GL_CXXALIAS_SYS (j1, double, (double x));
1378 # endif
1379 _GL_CXXALIASWARN (j1);
1380 #endif
1381
1382 #if @GNULIB_MDA_JN@
1383
1384
1385
1386 # if defined _WIN32 && !defined __CYGWIN__
1387 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1388 # undef jn
1389 # define jn _jn
1390 # endif
1391 _GL_CXXALIAS_MDA (jn, double, (int n, double x));
1392 # else
1393 _GL_CXXALIAS_SYS (jn, double, (int n, double x));
1394 # endif
1395 _GL_CXXALIASWARN (jn);
1396 #endif
1397
1398
1399
1400 #if @GNULIB_LDEXPF@
1401 # if !@HAVE_LDEXPF@
1402 # undef ldexpf
1403 _GL_FUNCDECL_SYS (ldexpf, float, (float x, int exp));
1404 # endif
1405 _GL_CXXALIAS_SYS (ldexpf, float, (float x, int exp));
1406 # if __GLIBC__ >= 2
1407 _GL_CXXALIASWARN (ldexpf);
1408 # endif
1409 #elif defined GNULIB_POSIXCHECK
1410 # undef ldexpf
1411 # if HAVE_RAW_DECL_LDEXPF
1412 _GL_WARN_ON_USE (ldexpf, "ldexpf is unportable - "
1413 "use gnulib module ldexpf for portability");
1414 # endif
1415 #endif
1416
1417
1418 #if @GNULIB_LDEXPL@ && @REPLACE_LDEXPL@
1419 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1420 # undef ldexpl
1421 # define ldexpl rpl_ldexpl
1422 # endif
1423 _GL_FUNCDECL_RPL (ldexpl, long double, (long double x, int exp));
1424 _GL_CXXALIAS_RPL (ldexpl, long double, (long double x, int exp));
1425 #else
1426 # if !@HAVE_DECL_LDEXPL@
1427 _GL_FUNCDECL_SYS (ldexpl, long double, (long double x, int exp));
1428 # endif
1429 # if @GNULIB_LDEXPL@
1430 _GL_CXXALIAS_SYS (ldexpl, long double, (long double x, int exp));
1431 # endif
1432 #endif
1433 #if @GNULIB_LDEXPL@
1434 # if __GLIBC__ >= 2
1435 _GL_CXXALIASWARN (ldexpl);
1436 # endif
1437 #endif
1438 #if !@GNULIB_LDEXPL@ && defined GNULIB_POSIXCHECK
1439 # undef ldexpl
1440 # if HAVE_RAW_DECL_LDEXPL
1441 _GL_WARN_ON_USE (ldexpl, "ldexpl is unportable - "
1442 "use gnulib module ldexpl for portability");
1443 # endif
1444 #endif
1445
1446
1447 #if @GNULIB_LOGF@
1448 # if @REPLACE_LOGF@
1449 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1450 # undef logf
1451 # define logf rpl_logf
1452 # endif
1453 _GL_FUNCDECL_RPL (logf, float, (float x));
1454 _GL_CXXALIAS_RPL (logf, float, (float x));
1455 # else
1456 # if !@HAVE_LOGF@
1457 # undef logf
1458 _GL_FUNCDECL_SYS (logf, float, (float x));
1459 # endif
1460 _GL_CXXALIAS_SYS (logf, float, (float x));
1461 # endif
1462 _GL_CXXALIASWARN (logf);
1463 #elif defined GNULIB_POSIXCHECK
1464 # undef logf
1465 # if HAVE_RAW_DECL_LOGF
1466 _GL_WARN_ON_USE (logf, "logf is unportable - "
1467 "use gnulib module logf for portability");
1468 # endif
1469 #endif
1470
1471 #if @GNULIB_LOG@
1472 # if @REPLACE_LOG@
1473 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1474 # undef log
1475 # define log rpl_log
1476 # endif
1477 _GL_FUNCDECL_RPL (log, double, (double x));
1478 _GL_CXXALIAS_RPL (log, double, (double x));
1479 # else
1480 _GL_CXXALIAS_SYS (log, double, (double x));
1481 # endif
1482 # if __GLIBC__ >= 2
1483 _GL_CXXALIASWARN1 (log, double, (double x));
1484 # endif
1485 #elif defined GNULIB_POSIXCHECK
1486 # undef log
1487 # if HAVE_RAW_DECL_LOG
1488 _GL_WARN_ON_USE (log, "log has portability problems - "
1489 "use gnulib module log for portability");
1490 # endif
1491 #endif
1492
1493 #if @GNULIB_LOGL@
1494 # if @REPLACE_LOGL@
1495 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1496 # undef logl
1497 # define logl rpl_logl
1498 # endif
1499 _GL_FUNCDECL_RPL (logl, long double, (long double x));
1500 _GL_CXXALIAS_RPL (logl, long double, (long double x));
1501 # else
1502 # if !@HAVE_LOGL@ || !@HAVE_DECL_LOGL@
1503 # undef logl
1504 _GL_FUNCDECL_SYS (logl, long double, (long double x));
1505 # endif
1506 _GL_CXXALIAS_SYS (logl, long double, (long double x));
1507 # endif
1508 # if __GLIBC__ >= 2
1509 _GL_CXXALIASWARN (logl);
1510 # endif
1511 #elif defined GNULIB_POSIXCHECK
1512 # undef logl
1513 # if HAVE_RAW_DECL_LOGL
1514 _GL_WARN_ON_USE (logl, "logl is unportable - "
1515 "use gnulib module logl for portability");
1516 # endif
1517 #endif
1518
1519
1520 #if @GNULIB_LOG10F@
1521 # if @REPLACE_LOG10F@
1522 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1523 # undef log10f
1524 # define log10f rpl_log10f
1525 # endif
1526 _GL_FUNCDECL_RPL (log10f, float, (float x));
1527 _GL_CXXALIAS_RPL (log10f, float, (float x));
1528 # else
1529 # if !@HAVE_LOG10F@
1530 # undef log10f
1531 _GL_FUNCDECL_SYS (log10f, float, (float x));
1532 # endif
1533 _GL_CXXALIAS_SYS (log10f, float, (float x));
1534 # endif
1535 _GL_CXXALIASWARN (log10f);
1536 #elif defined GNULIB_POSIXCHECK
1537 # undef log10f
1538 # if HAVE_RAW_DECL_LOG10F
1539 _GL_WARN_ON_USE (log10f, "log10f is unportable - "
1540 "use gnulib module log10f for portability");
1541 # endif
1542 #endif
1543
1544 #if @GNULIB_LOG10@
1545 # if @REPLACE_LOG10@
1546 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1547 # undef log10
1548 # define log10 rpl_log10
1549 # endif
1550 _GL_FUNCDECL_RPL (log10, double, (double x));
1551 _GL_CXXALIAS_RPL (log10, double, (double x));
1552 # else
1553 _GL_CXXALIAS_SYS (log10, double, (double x));
1554 # endif
1555 # if __GLIBC__ >= 2
1556 _GL_CXXALIASWARN1 (log10, double, (double x));
1557 # endif
1558 #elif defined GNULIB_POSIXCHECK
1559 # undef log10
1560 # if HAVE_RAW_DECL_LOG10
1561 _GL_WARN_ON_USE (log10, "log10 has portability problems - "
1562 "use gnulib module log10 for portability");
1563 # endif
1564 #endif
1565
1566 #if @GNULIB_LOG10L@
1567 # if @REPLACE_LOG10L@
1568 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1569 # undef log10l
1570 # define log10l rpl_log10l
1571 # endif
1572 _GL_FUNCDECL_RPL (log10l, long double, (long double x));
1573 _GL_CXXALIAS_RPL (log10l, long double, (long double x));
1574 # else
1575 # if !@HAVE_LOG10L@ || !@HAVE_DECL_LOG10L@
1576 # undef log10l
1577 _GL_FUNCDECL_SYS (log10l, long double, (long double x));
1578 # endif
1579 _GL_CXXALIAS_SYS (log10l, long double, (long double x));
1580 # endif
1581 # if __GLIBC__ >= 2
1582 _GL_CXXALIASWARN (log10l);
1583 # endif
1584 #elif defined GNULIB_POSIXCHECK
1585 # undef log10l
1586 # if HAVE_RAW_DECL_LOG10L
1587 _GL_WARN_ON_USE (log10l, "log10l is unportable - "
1588 "use gnulib module log10l for portability");
1589 # endif
1590 #endif
1591
1592
1593 #if @GNULIB_LOG1PF@
1594 # if @REPLACE_LOG1PF@
1595 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1596 # undef log1pf
1597 # define log1pf rpl_log1pf
1598 # endif
1599 _GL_FUNCDECL_RPL (log1pf, float, (float x));
1600 _GL_CXXALIAS_RPL (log1pf, float, (float x));
1601 # else
1602 # if !@HAVE_LOG1PF@
1603 _GL_FUNCDECL_SYS (log1pf, float, (float x));
1604 # endif
1605 _GL_CXXALIAS_SYS (log1pf, float, (float x));
1606 # endif
1607 _GL_CXXALIASWARN (log1pf);
1608 #elif defined GNULIB_POSIXCHECK
1609 # undef log1pf
1610 # if HAVE_RAW_DECL_LOG1PF
1611 _GL_WARN_ON_USE (log1pf, "log1pf is unportable - "
1612 "use gnulib module log1pf for portability");
1613 # endif
1614 #endif
1615
1616 #if @GNULIB_LOG1P@
1617 # if @REPLACE_LOG1P@
1618 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1619 # undef log1p
1620 # define log1p rpl_log1p
1621 # endif
1622 _GL_FUNCDECL_RPL (log1p, double, (double x));
1623 _GL_CXXALIAS_RPL (log1p, double, (double x));
1624 # else
1625 # if !@HAVE_LOG1P@
1626 _GL_FUNCDECL_SYS (log1p, double, (double x));
1627 # endif
1628 _GL_CXXALIAS_SYS (log1p, double, (double x));
1629 # endif
1630 # if __GLIBC__ >= 2
1631 _GL_CXXALIASWARN1 (log1p, double, (double x));
1632 # endif
1633 #elif defined GNULIB_POSIXCHECK
1634 # undef log1p
1635 # if HAVE_RAW_DECL_LOG1P
1636 _GL_WARN_ON_USE (log1p, "log1p has portability problems - "
1637 "use gnulib module log1p for portability");
1638 # endif
1639 #endif
1640
1641 #if @GNULIB_LOG1PL@
1642 # if @REPLACE_LOG1PL@
1643 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1644 # undef log1pl
1645 # define log1pl rpl_log1pl
1646 # endif
1647 _GL_FUNCDECL_RPL (log1pl, long double, (long double x));
1648 _GL_CXXALIAS_RPL (log1pl, long double, (long double x));
1649 # else
1650 # if !@HAVE_LOG1PL@
1651 _GL_FUNCDECL_SYS (log1pl, long double, (long double x));
1652 # endif
1653 _GL_CXXALIAS_SYS (log1pl, long double, (long double x));
1654 # endif
1655 _GL_CXXALIASWARN (log1pl);
1656 #elif defined GNULIB_POSIXCHECK
1657 # undef log1pl
1658 # if HAVE_RAW_DECL_LOG1PL
1659 _GL_WARN_ON_USE (log1pl, "log1pl has portability problems - "
1660 "use gnulib module log1pl for portability");
1661 # endif
1662 #endif
1663
1664
1665 #if @GNULIB_LOG2F@
1666 # if @REPLACE_LOG2F@
1667 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1668 # undef log2f
1669 # define log2f rpl_log2f
1670 # endif
1671 _GL_FUNCDECL_RPL (log2f, float, (float x));
1672 _GL_CXXALIAS_RPL (log2f, float, (float x));
1673 # else
1674 # if !@HAVE_DECL_LOG2F@
1675 # undef log2f
1676 _GL_FUNCDECL_SYS (log2f, float, (float x));
1677 # endif
1678 _GL_CXXALIAS_SYS (log2f, float, (float x));
1679 # endif
1680 _GL_CXXALIASWARN (log2f);
1681 #elif defined GNULIB_POSIXCHECK
1682 # undef log2f
1683 # if HAVE_RAW_DECL_LOG2F
1684 _GL_WARN_ON_USE (log2f, "log2f is unportable - "
1685 "use gnulib module log2f for portability");
1686 # endif
1687 #endif
1688
1689 #if @GNULIB_LOG2@
1690 # if @REPLACE_LOG2@
1691 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1692 # undef log2
1693 # define log2 rpl_log2
1694 # endif
1695 _GL_FUNCDECL_RPL (log2, double, (double x));
1696 _GL_CXXALIAS_RPL (log2, double, (double x));
1697 # else
1698 # if !@HAVE_DECL_LOG2@
1699 # undef log2
1700 _GL_FUNCDECL_SYS (log2, double, (double x));
1701 # endif
1702 _GL_CXXALIAS_SYS (log2, double, (double x));
1703 # endif
1704 # if __GLIBC__ >= 2
1705 _GL_CXXALIASWARN1 (log2, double, (double x));
1706 # endif
1707 #elif defined GNULIB_POSIXCHECK
1708 # undef log2
1709 # if HAVE_RAW_DECL_LOG2
1710 _GL_WARN_ON_USE (log2, "log2 is unportable - "
1711 "use gnulib module log2 for portability");
1712 # endif
1713 #endif
1714
1715 #if @GNULIB_LOG2L@
1716 # if @REPLACE_LOG2L@
1717 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1718 # undef log2l
1719 # define log2l rpl_log2l
1720 # endif
1721 _GL_FUNCDECL_RPL (log2l, long double, (long double x));
1722 _GL_CXXALIAS_RPL (log2l, long double, (long double x));
1723 # else
1724 # if !@HAVE_DECL_LOG2L@
1725 _GL_FUNCDECL_SYS (log2l, long double, (long double x));
1726 # endif
1727 _GL_CXXALIAS_SYS (log2l, long double, (long double x));
1728 # endif
1729 _GL_CXXALIASWARN (log2l);
1730 #elif defined GNULIB_POSIXCHECK
1731 # undef log2l
1732 # if HAVE_RAW_DECL_LOG2L
1733 _GL_WARN_ON_USE (log2l, "log2l is unportable - "
1734 "use gnulib module log2l for portability");
1735 # endif
1736 #endif
1737
1738
1739 #if @GNULIB_LOGBF@
1740 # if @REPLACE_LOGBF@
1741 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1742 # undef logbf
1743 # define logbf rpl_logbf
1744 # endif
1745 _GL_FUNCDECL_RPL (logbf, float, (float x));
1746 _GL_CXXALIAS_RPL (logbf, float, (float x));
1747 # else
1748 # if !@HAVE_LOGBF@
1749 _GL_FUNCDECL_SYS (logbf, float, (float x));
1750 # endif
1751 _GL_CXXALIAS_SYS (logbf, float, (float x));
1752 # endif
1753 _GL_CXXALIASWARN (logbf);
1754 #elif defined GNULIB_POSIXCHECK
1755 # undef logbf
1756 # if HAVE_RAW_DECL_LOGBF
1757 _GL_WARN_ON_USE (logbf, "logbf is unportable - "
1758 "use gnulib module logbf for portability");
1759 # endif
1760 #endif
1761
1762 #if @GNULIB_LOGB@
1763 # if @REPLACE_LOGB@
1764 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1765 # undef logb
1766 # define logb rpl_logb
1767 # endif
1768 _GL_FUNCDECL_RPL (logb, double, (double x));
1769 _GL_CXXALIAS_RPL (logb, double, (double x));
1770 # else
1771 # if !@HAVE_DECL_LOGB@
1772 _GL_FUNCDECL_SYS (logb, double, (double x));
1773 # endif
1774 _GL_CXXALIAS_SYS (logb, double, (double x));
1775 # endif
1776 # if __GLIBC__ >= 2
1777 _GL_CXXALIASWARN1 (logb, double, (double x));
1778 # endif
1779 #elif defined GNULIB_POSIXCHECK
1780 # undef logb
1781 # if HAVE_RAW_DECL_LOGB
1782 _GL_WARN_ON_USE (logb, "logb is unportable - "
1783 "use gnulib module logb for portability");
1784 # endif
1785 #endif
1786
1787 #if @GNULIB_LOGBL@
1788 # if @REPLACE_LOGBL@
1789 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1790 # undef logbl
1791 # define logbl rpl_logbl
1792 # endif
1793 _GL_FUNCDECL_RPL (logbl, long double, (long double x));
1794 _GL_CXXALIAS_RPL (logbl, long double, (long double x));
1795 # else
1796 # if !@HAVE_LOGBL@
1797 _GL_FUNCDECL_SYS (logbl, long double, (long double x));
1798 # endif
1799 _GL_CXXALIAS_SYS (logbl, long double, (long double x));
1800 # endif
1801 _GL_CXXALIASWARN (logbl);
1802 #elif defined GNULIB_POSIXCHECK
1803 # undef logbl
1804 # if HAVE_RAW_DECL_LOGBL
1805 _GL_WARN_ON_USE (logbl, "logbl is unportable - "
1806 "use gnulib module logbl for portability");
1807 # endif
1808 #endif
1809
1810
1811 #if @GNULIB_MODFF@
1812 # if @REPLACE_MODFF@
1813 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1814 # undef modff
1815 # define modff rpl_modff
1816 # endif
1817 _GL_FUNCDECL_RPL (modff, float, (float x, float *iptr) _GL_ARG_NONNULL ((2)));
1818 _GL_CXXALIAS_RPL (modff, float, (float x, float *iptr));
1819 # else
1820 # if !@HAVE_MODFF@
1821 # undef modff
1822 _GL_FUNCDECL_SYS (modff, float, (float x, float *iptr) _GL_ARG_NONNULL ((2)));
1823 # endif
1824 _GL_CXXALIAS_SYS (modff, float, (float x, float *iptr));
1825 # endif
1826 _GL_CXXALIASWARN (modff);
1827 #elif defined GNULIB_POSIXCHECK
1828 # undef modff
1829 # if HAVE_RAW_DECL_MODFF
1830 _GL_WARN_ON_USE (modff, "modff is unportable - "
1831 "use gnulib module modff for portability");
1832 # endif
1833 #endif
1834
1835 #if @GNULIB_MODF@
1836 # if @REPLACE_MODF@
1837 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1838 # undef modf
1839 # define modf rpl_modf
1840 # endif
1841 _GL_FUNCDECL_RPL (modf, double, (double x, double *iptr) _GL_ARG_NONNULL ((2)));
1842 _GL_CXXALIAS_RPL (modf, double, (double x, double *iptr));
1843 # else
1844 _GL_CXXALIAS_SYS (modf, double, (double x, double *iptr));
1845 # endif
1846 # if __GLIBC__ >= 2
1847 _GL_CXXALIASWARN1 (modf, double, (double x, double *iptr));
1848 # endif
1849 #elif defined GNULIB_POSIXCHECK
1850 # undef modf
1851 # if HAVE_RAW_DECL_MODF
1852 _GL_WARN_ON_USE (modf, "modf has portability problems - "
1853 "use gnulib module modf for portability");
1854 # endif
1855 #endif
1856
1857 #if @GNULIB_MODFL@
1858 # if @REPLACE_MODFL@
1859 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1860 # undef modfl
1861 # define modfl rpl_modfl
1862 # endif
1863 _GL_FUNCDECL_RPL (modfl, long double, (long double x, long double *iptr)
1864 _GL_ARG_NONNULL ((2)));
1865 _GL_CXXALIAS_RPL (modfl, long double, (long double x, long double *iptr));
1866 # else
1867 # if !@HAVE_MODFL@
1868 # undef modfl
1869 _GL_FUNCDECL_SYS (modfl, long double, (long double x, long double *iptr)
1870 _GL_ARG_NONNULL ((2)));
1871 # endif
1872 _GL_CXXALIAS_SYS (modfl, long double, (long double x, long double *iptr));
1873 # endif
1874 # if __GLIBC__ >= 2
1875 _GL_CXXALIASWARN (modfl);
1876 # endif
1877 #elif defined GNULIB_POSIXCHECK
1878 # undef modfl
1879 # if HAVE_RAW_DECL_MODFL
1880 _GL_WARN_ON_USE (modfl, "modfl is unportable - "
1881 "use gnulib module modfl for portability");
1882 # endif
1883 #endif
1884
1885
1886 #if @GNULIB_POWF@
1887 # if !@HAVE_POWF@
1888 # undef powf
1889 _GL_FUNCDECL_SYS (powf, float, (float x, float y));
1890 # endif
1891 _GL_CXXALIAS_SYS (powf, float, (float x, float y));
1892 _GL_CXXALIASWARN (powf);
1893 #elif defined GNULIB_POSIXCHECK
1894 # undef powf
1895 # if HAVE_RAW_DECL_POWF
1896 _GL_WARN_ON_USE (powf, "powf is unportable - "
1897 "use gnulib module powf for portability");
1898 # endif
1899 #endif
1900
1901
1902 #if @GNULIB_REMAINDERF@
1903 # if @REPLACE_REMAINDERF@
1904 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1905 # undef remainderf
1906 # define remainderf rpl_remainderf
1907 # endif
1908 _GL_FUNCDECL_RPL (remainderf, float, (float x, float y));
1909 _GL_CXXALIAS_RPL (remainderf, float, (float x, float y));
1910 # else
1911 # if !@HAVE_REMAINDERF@
1912 _GL_FUNCDECL_SYS (remainderf, float, (float x, float y));
1913 # endif
1914 _GL_CXXALIAS_SYS (remainderf, float, (float x, float y));
1915 # endif
1916 _GL_CXXALIASWARN (remainderf);
1917 #elif defined GNULIB_POSIXCHECK
1918 # undef remainderf
1919 # if HAVE_RAW_DECL_REMAINDERF
1920 _GL_WARN_ON_USE (remainderf, "remainderf is unportable - "
1921 "use gnulib module remainderf for portability");
1922 # endif
1923 #endif
1924
1925 #if @GNULIB_REMAINDER@
1926 # if @REPLACE_REMAINDER@
1927 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1928 # undef remainder
1929 # define remainder rpl_remainder
1930 # endif
1931 _GL_FUNCDECL_RPL (remainder, double, (double x, double y));
1932 _GL_CXXALIAS_RPL (remainder, double, (double x, double y));
1933 # else
1934 # if !@HAVE_REMAINDER@ || !@HAVE_DECL_REMAINDER@
1935 _GL_FUNCDECL_SYS (remainder, double, (double x, double y));
1936 # endif
1937 _GL_CXXALIAS_SYS (remainder, double, (double x, double y));
1938 # endif
1939 # if __GLIBC__ >= 2
1940 _GL_CXXALIASWARN1 (remainder, double, (double x, double y));
1941 # endif
1942 #elif defined GNULIB_POSIXCHECK
1943 # undef remainder
1944 # if HAVE_RAW_DECL_REMAINDER
1945 _GL_WARN_ON_USE (remainder, "remainder is unportable - "
1946 "use gnulib module remainder for portability");
1947 # endif
1948 #endif
1949
1950 #if @GNULIB_REMAINDERL@
1951 # if @REPLACE_REMAINDERL@
1952 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
1953 # undef remainderl
1954 # define remainderl rpl_remainderl
1955 # endif
1956 _GL_FUNCDECL_RPL (remainderl, long double, (long double x, long double y));
1957 _GL_CXXALIAS_RPL (remainderl, long double, (long double x, long double y));
1958 # else
1959 # if !@HAVE_DECL_REMAINDERL@
1960 # undef remainderl
1961 # if !(defined __cplusplus && defined _AIX)
1962 _GL_FUNCDECL_SYS (remainderl, long double, (long double x, long double y));
1963 # endif
1964 # endif
1965 _GL_CXXALIAS_SYS (remainderl, long double, (long double x, long double y));
1966 # endif
1967 _GL_CXXALIASWARN (remainderl);
1968 #elif defined GNULIB_POSIXCHECK
1969 # undef remainderl
1970 # if HAVE_RAW_DECL_REMAINDERL
1971 _GL_WARN_ON_USE (remainderl, "remainderl is unportable - "
1972 "use gnulib module remainderl for portability");
1973 # endif
1974 #endif
1975
1976
1977 #if @GNULIB_RINTF@
1978 # if !@HAVE_DECL_RINTF@
1979 _GL_FUNCDECL_SYS (rintf, float, (float x));
1980 # endif
1981 _GL_CXXALIAS_SYS (rintf, float, (float x));
1982 _GL_CXXALIASWARN (rintf);
1983 #elif defined GNULIB_POSIXCHECK
1984 # undef rintf
1985 # if HAVE_RAW_DECL_RINTF
1986 _GL_WARN_ON_USE (rintf, "rintf is unportable - "
1987 "use gnulib module rintf for portability");
1988 # endif
1989 #endif
1990
1991 #if @GNULIB_RINT@
1992 # if !@HAVE_RINT@
1993 _GL_FUNCDECL_SYS (rint, double, (double x));
1994 # endif
1995 _GL_CXXALIAS_SYS (rint, double, (double x));
1996 # if __GLIBC__ >= 2
1997 _GL_CXXALIASWARN1 (rint, double, (double x));
1998 # endif
1999 #elif defined GNULIB_POSIXCHECK
2000 # undef rint
2001 # if HAVE_RAW_DECL_RINT
2002 _GL_WARN_ON_USE (rint, "rint is unportable - "
2003 "use gnulib module rint for portability");
2004 # endif
2005 #endif
2006
2007 #if @GNULIB_RINTL@
2008 # if @REPLACE_RINTL@
2009 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2010 # undef rintl
2011 # define rintl rpl_rintl
2012 # endif
2013 _GL_FUNCDECL_RPL (rintl, long double, (long double x));
2014 _GL_CXXALIAS_RPL (rintl, long double, (long double x));
2015 # else
2016 # if !@HAVE_RINTL@
2017 _GL_FUNCDECL_SYS (rintl, long double, (long double x));
2018 # endif
2019 _GL_CXXALIAS_SYS (rintl, long double, (long double x));
2020 # endif
2021 _GL_CXXALIASWARN (rintl);
2022 #elif defined GNULIB_POSIXCHECK
2023 # undef rintl
2024 # if HAVE_RAW_DECL_RINTL
2025 _GL_WARN_ON_USE (rintl, "rintl is unportable - "
2026 "use gnulib module rintl for portability");
2027 # endif
2028 #endif
2029
2030
2031 #if @GNULIB_ROUNDF@
2032 # if @REPLACE_ROUNDF@
2033 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2034 # undef roundf
2035 # define roundf rpl_roundf
2036 # endif
2037 _GL_FUNCDECL_RPL (roundf, float, (float x));
2038 _GL_CXXALIAS_RPL (roundf, float, (float x));
2039 # else
2040 # if !@HAVE_DECL_ROUNDF@
2041 _GL_FUNCDECL_SYS (roundf, float, (float x));
2042 # endif
2043 _GL_CXXALIAS_SYS (roundf, float, (float x));
2044 # endif
2045 _GL_CXXALIASWARN (roundf);
2046 #elif defined GNULIB_POSIXCHECK
2047 # undef roundf
2048 # if HAVE_RAW_DECL_ROUNDF
2049 _GL_WARN_ON_USE (roundf, "roundf is unportable - "
2050 "use gnulib module roundf for portability");
2051 # endif
2052 #endif
2053
2054 #if @GNULIB_ROUND@
2055 # if @REPLACE_ROUND@
2056 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2057 # undef round
2058 # define round rpl_round
2059 # endif
2060 _GL_FUNCDECL_RPL (round, double, (double x));
2061 _GL_CXXALIAS_RPL (round, double, (double x));
2062 # else
2063 # if !@HAVE_DECL_ROUND@
2064 _GL_FUNCDECL_SYS (round, double, (double x));
2065 # endif
2066 _GL_CXXALIAS_SYS (round, double, (double x));
2067 # endif
2068 # if __GLIBC__ >= 2
2069 _GL_CXXALIASWARN1 (round, double, (double x));
2070 # endif
2071 #elif defined GNULIB_POSIXCHECK
2072 # undef round
2073 # if HAVE_RAW_DECL_ROUND
2074 _GL_WARN_ON_USE (round, "round is unportable - "
2075 "use gnulib module round for portability");
2076 # endif
2077 #endif
2078
2079 #if @GNULIB_ROUNDL@
2080 # if @REPLACE_ROUNDL@
2081 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2082 # undef roundl
2083 # define roundl rpl_roundl
2084 # endif
2085 _GL_FUNCDECL_RPL (roundl, long double, (long double x));
2086 _GL_CXXALIAS_RPL (roundl, long double, (long double x));
2087 # else
2088 # if !@HAVE_DECL_ROUNDL@
2089 # undef roundl
2090 # if !(defined __cplusplus && defined _AIX)
2091 _GL_FUNCDECL_SYS (roundl, long double, (long double x));
2092 # endif
2093 # endif
2094 _GL_CXXALIAS_SYS (roundl, long double, (long double x));
2095 # endif
2096 _GL_CXXALIASWARN (roundl);
2097 #elif defined GNULIB_POSIXCHECK
2098 # undef roundl
2099 # if HAVE_RAW_DECL_ROUNDL
2100 _GL_WARN_ON_USE (roundl, "roundl is unportable - "
2101 "use gnulib module roundl for portability");
2102 # endif
2103 #endif
2104
2105
2106 #if @GNULIB_SINF@
2107 # if @REPLACE_SINF@
2108 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2109 # undef sinf
2110 # define sinf rpl_sinf
2111 # endif
2112 _GL_FUNCDECL_RPL (sinf, float, (float x));
2113 _GL_CXXALIAS_RPL (sinf, float, (float x));
2114 # else
2115 # if !@HAVE_SINF@
2116 # undef sinf
2117 _GL_FUNCDECL_SYS (sinf, float, (float x));
2118 # endif
2119 _GL_CXXALIAS_SYS (sinf, float, (float x));
2120 # endif
2121 _GL_CXXALIASWARN (sinf);
2122 #elif defined GNULIB_POSIXCHECK
2123 # undef sinf
2124 # if HAVE_RAW_DECL_SINF
2125 _GL_WARN_ON_USE (sinf, "sinf is unportable - "
2126 "use gnulib module sinf for portability");
2127 # endif
2128 #endif
2129
2130 #if @GNULIB_SINL@
2131 # if !@HAVE_SINL@ || !@HAVE_DECL_SINL@
2132 # undef sinl
2133 _GL_FUNCDECL_SYS (sinl, long double, (long double x));
2134 # endif
2135 _GL_CXXALIAS_SYS (sinl, long double, (long double x));
2136 # if __GLIBC__ >= 2
2137 _GL_CXXALIASWARN (sinl);
2138 # endif
2139 #elif defined GNULIB_POSIXCHECK
2140 # undef sinl
2141 # if HAVE_RAW_DECL_SINL
2142 _GL_WARN_ON_USE (sinl, "sinl is unportable - "
2143 "use gnulib module sinl for portability");
2144 # endif
2145 #endif
2146
2147
2148 #if @GNULIB_SINHF@
2149 # if @REPLACE_SINHF@
2150 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2151 # undef sinhf
2152 # define sinhf rpl_sinhf
2153 # endif
2154 _GL_FUNCDECL_RPL (sinhf, float, (float x));
2155 _GL_CXXALIAS_RPL (sinhf, float, (float x));
2156 # else
2157 # if !@HAVE_SINHF@
2158 # undef sinhf
2159 _GL_FUNCDECL_SYS (sinhf, float, (float x));
2160 # endif
2161 _GL_CXXALIAS_SYS (sinhf, float, (float x));
2162 # endif
2163 _GL_CXXALIASWARN (sinhf);
2164 #elif defined GNULIB_POSIXCHECK
2165 # undef sinhf
2166 # if HAVE_RAW_DECL_SINHF
2167 _GL_WARN_ON_USE (sinhf, "sinhf is unportable - "
2168 "use gnulib module sinhf for portability");
2169 # endif
2170 #endif
2171
2172
2173 #if @GNULIB_SQRTF@
2174 # if @REPLACE_SQRTF@
2175 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2176 # undef sqrtf
2177 # define sqrtf rpl_sqrtf
2178 # endif
2179 _GL_FUNCDECL_RPL (sqrtf, float, (float x));
2180 _GL_CXXALIAS_RPL (sqrtf, float, (float x));
2181 # else
2182 # if !@HAVE_SQRTF@
2183 # undef sqrtf
2184 _GL_FUNCDECL_SYS (sqrtf, float, (float x));
2185 # endif
2186 _GL_CXXALIAS_SYS (sqrtf, float, (float x));
2187 # endif
2188 _GL_CXXALIASWARN (sqrtf);
2189 #elif defined GNULIB_POSIXCHECK
2190 # undef sqrtf
2191 # if HAVE_RAW_DECL_SQRTF
2192 _GL_WARN_ON_USE (sqrtf, "sqrtf is unportable - "
2193 "use gnulib module sqrtf for portability");
2194 # endif
2195 #endif
2196
2197 #if @GNULIB_SQRTL@
2198 # if @REPLACE_SQRTL@
2199 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2200 # undef sqrtl
2201 # define sqrtl rpl_sqrtl
2202 # endif
2203 _GL_FUNCDECL_RPL (sqrtl, long double, (long double x));
2204 _GL_CXXALIAS_RPL (sqrtl, long double, (long double x));
2205 # else
2206 # if !@HAVE_SQRTL@ || !@HAVE_DECL_SQRTL@
2207 # undef sqrtl
2208 _GL_FUNCDECL_SYS (sqrtl, long double, (long double x));
2209 # endif
2210 _GL_CXXALIAS_SYS (sqrtl, long double, (long double x));
2211 # endif
2212 # if __GLIBC__ >= 2
2213 _GL_CXXALIASWARN (sqrtl);
2214 # endif
2215 #elif defined GNULIB_POSIXCHECK
2216 # undef sqrtl
2217 # if HAVE_RAW_DECL_SQRTL
2218 _GL_WARN_ON_USE (sqrtl, "sqrtl is unportable - "
2219 "use gnulib module sqrtl for portability");
2220 # endif
2221 #endif
2222
2223
2224 #if @GNULIB_TANF@
2225 # if @REPLACE_TANF@
2226 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2227 # undef tanf
2228 # define tanf rpl_tanf
2229 # endif
2230 _GL_FUNCDECL_RPL (tanf, float, (float x));
2231 _GL_CXXALIAS_RPL (tanf, float, (float x));
2232 # else
2233 # if !@HAVE_TANF@
2234 # undef tanf
2235 _GL_FUNCDECL_SYS (tanf, float, (float x));
2236 # endif
2237 _GL_CXXALIAS_SYS (tanf, float, (float x));
2238 # endif
2239 _GL_CXXALIASWARN (tanf);
2240 #elif defined GNULIB_POSIXCHECK
2241 # undef tanf
2242 # if HAVE_RAW_DECL_TANF
2243 _GL_WARN_ON_USE (tanf, "tanf is unportable - "
2244 "use gnulib module tanf for portability");
2245 # endif
2246 #endif
2247
2248 #if @GNULIB_TANL@
2249 # if !@HAVE_TANL@ || !@HAVE_DECL_TANL@
2250 # undef tanl
2251 _GL_FUNCDECL_SYS (tanl, long double, (long double x));
2252 # endif
2253 _GL_CXXALIAS_SYS (tanl, long double, (long double x));
2254 # if __GLIBC__ >= 2
2255 _GL_CXXALIASWARN (tanl);
2256 # endif
2257 #elif defined GNULIB_POSIXCHECK
2258 # undef tanl
2259 # if HAVE_RAW_DECL_TANL
2260 _GL_WARN_ON_USE (tanl, "tanl is unportable - "
2261 "use gnulib module tanl for portability");
2262 # endif
2263 #endif
2264
2265
2266 #if @GNULIB_TANHF@
2267 # if @REPLACE_TANHF@
2268 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2269 # undef tanhf
2270 # define tanhf rpl_tanhf
2271 # endif
2272 _GL_FUNCDECL_RPL (tanhf, float, (float x));
2273 _GL_CXXALIAS_RPL (tanhf, float, (float x));
2274 # else
2275 # if !@HAVE_TANHF@
2276 # undef tanhf
2277 _GL_FUNCDECL_SYS (tanhf, float, (float x));
2278 # endif
2279 _GL_CXXALIAS_SYS (tanhf, float, (float x));
2280 # endif
2281 _GL_CXXALIASWARN (tanhf);
2282 #elif defined GNULIB_POSIXCHECK
2283 # undef tanhf
2284 # if HAVE_RAW_DECL_TANHF
2285 _GL_WARN_ON_USE (tanhf, "tanhf is unportable - "
2286 "use gnulib module tanhf for portability");
2287 # endif
2288 #endif
2289
2290
2291 #if @GNULIB_TRUNCF@
2292 # if @REPLACE_TRUNCF@
2293 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2294 # undef truncf
2295 # define truncf rpl_truncf
2296 # endif
2297 _GL_FUNCDECL_RPL (truncf, float, (float x));
2298 _GL_CXXALIAS_RPL (truncf, float, (float x));
2299 # else
2300 # if !@HAVE_DECL_TRUNCF@
2301 _GL_FUNCDECL_SYS (truncf, float, (float x));
2302 # endif
2303 _GL_CXXALIAS_SYS (truncf, float, (float x));
2304 # endif
2305 _GL_CXXALIASWARN (truncf);
2306 #elif defined GNULIB_POSIXCHECK
2307 # undef truncf
2308 # if HAVE_RAW_DECL_TRUNCF
2309 _GL_WARN_ON_USE (truncf, "truncf is unportable - "
2310 "use gnulib module truncf for portability");
2311 # endif
2312 #endif
2313
2314 #if @GNULIB_TRUNC@
2315 # if @REPLACE_TRUNC@
2316 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2317 # undef trunc
2318 # define trunc rpl_trunc
2319 # endif
2320 _GL_FUNCDECL_RPL (trunc, double, (double x));
2321 _GL_CXXALIAS_RPL (trunc, double, (double x));
2322 # else
2323 # if !@HAVE_DECL_TRUNC@
2324 _GL_FUNCDECL_SYS (trunc, double, (double x));
2325 # endif
2326 _GL_CXXALIAS_SYS (trunc, double, (double x));
2327 # endif
2328 # if __GLIBC__ >= 2
2329 _GL_CXXALIASWARN1 (trunc, double, (double x));
2330 # endif
2331 #elif defined GNULIB_POSIXCHECK
2332 # undef trunc
2333 # if HAVE_RAW_DECL_TRUNC
2334 _GL_WARN_ON_USE (trunc, "trunc is unportable - "
2335 "use gnulib module trunc for portability");
2336 # endif
2337 #endif
2338
2339 #if @GNULIB_TRUNCL@
2340 # if @REPLACE_TRUNCL@
2341 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2342 # undef truncl
2343 # define truncl rpl_truncl
2344 # endif
2345 _GL_FUNCDECL_RPL (truncl, long double, (long double x));
2346 _GL_CXXALIAS_RPL (truncl, long double, (long double x));
2347 # else
2348 # if !@HAVE_DECL_TRUNCL@
2349 _GL_FUNCDECL_SYS (truncl, long double, (long double x));
2350 # endif
2351 _GL_CXXALIAS_SYS (truncl, long double, (long double x));
2352 # endif
2353 _GL_CXXALIASWARN (truncl);
2354 #elif defined GNULIB_POSIXCHECK
2355 # undef truncl
2356 # if HAVE_RAW_DECL_TRUNCL
2357 _GL_WARN_ON_USE (truncl, "truncl is unportable - "
2358 "use gnulib module truncl for portability");
2359 # endif
2360 #endif
2361
2362
2363 #if @GNULIB_MDA_Y0@
2364
2365
2366
2367 # if defined _WIN32 && !defined __CYGWIN__
2368 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2369 # undef y0
2370 # define y0 _y0
2371 # endif
2372 _GL_CXXALIAS_MDA (y0, double, (double x));
2373 # else
2374 _GL_CXXALIAS_SYS (y0, double, (double x));
2375 # endif
2376 _GL_CXXALIASWARN (y0);
2377 #endif
2378
2379 #if @GNULIB_MDA_Y1@
2380
2381
2382
2383 # if defined _WIN32 && !defined __CYGWIN__
2384 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2385 # undef y1
2386 # define y1 _y1
2387 # endif
2388 _GL_CXXALIAS_MDA (y1, double, (double x));
2389 # else
2390 _GL_CXXALIAS_SYS (y1, double, (double x));
2391 # endif
2392 _GL_CXXALIASWARN (y1);
2393 #endif
2394
2395 #if @GNULIB_MDA_YN@
2396
2397
2398
2399 # if defined _WIN32 && !defined __CYGWIN__
2400 # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
2401 # undef yn
2402 # define yn _yn
2403 # endif
2404 _GL_CXXALIAS_MDA (yn, double, (int n, double x));
2405 # else
2406 _GL_CXXALIAS_SYS (yn, double, (int n, double x));
2407 # endif
2408 _GL_CXXALIASWARN (yn);
2409 #endif
2410
2411
2412
2413
2414
2415
2416 #if @GNULIB_ISFINITE@
2417 # if @REPLACE_ISFINITE@
2418 _GL_EXTERN_C int gl_isfinitef (float x);
2419 _GL_EXTERN_C int gl_isfinited (double x);
2420 _GL_EXTERN_C int gl_isfinitel (long double x);
2421 # undef isfinite
2422 # define isfinite(x) \
2423 (sizeof (x) == sizeof (long double) ? gl_isfinitel (x) : \
2424 sizeof (x) == sizeof (double) ? gl_isfinited (x) : \
2425 gl_isfinitef (x))
2426 # endif
2427 # ifdef __cplusplus
2428 # if defined isfinite || defined GNULIB_NAMESPACE
2429 _GL_MATH_CXX_REAL_FLOATING_DECL_1 (isfinite)
2430 # undef isfinite
2431 # if __GNUC__ >= 6 || (defined __clang__ && !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ || defined __OpenBSD__ || defined _AIX || (defined _WIN32 && !defined __CYGWIN__)))
2432
2433
2434 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (isfinite, rpl_isfinite, bool)
2435 # define isfinite rpl_isfinite
2436 # else
2437 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (isfinite, isfinite, bool)
2438 # endif
2439 # endif
2440 # endif
2441 #elif defined GNULIB_POSIXCHECK
2442 # if defined isfinite
2443 _GL_WARN_REAL_FLOATING_DECL (isfinite);
2444 # undef isfinite
2445 # define isfinite(x) _GL_WARN_REAL_FLOATING_IMPL (isfinite, x)
2446 # endif
2447 #endif
2448
2449
2450 #if @GNULIB_ISINF@
2451 # if @REPLACE_ISINF@
2452 _GL_EXTERN_C int gl_isinff (float x);
2453 _GL_EXTERN_C int gl_isinfd (double x);
2454 _GL_EXTERN_C int gl_isinfl (long double x);
2455 # undef isinf
2456 # define isinf(x) \
2457 (sizeof (x) == sizeof (long double) ? gl_isinfl (x) : \
2458 sizeof (x) == sizeof (double) ? gl_isinfd (x) : \
2459 gl_isinff (x))
2460 # endif
2461 # ifdef __cplusplus
2462 # if defined isinf || defined GNULIB_NAMESPACE
2463 _GL_MATH_CXX_REAL_FLOATING_DECL_1 (isinf)
2464 # undef isinf
2465 # if __GNUC__ >= 6 || (defined __clang__ && !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ || defined __OpenBSD__ || (defined _WIN32 && !defined __CYGWIN__)))
2466
2467
2468 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (isinf, rpl_isinf, bool)
2469 # define isinf rpl_isinf
2470 # else
2471 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (isinf, isinf, bool)
2472 # endif
2473 # endif
2474 # endif
2475 #elif defined GNULIB_POSIXCHECK
2476 # if defined isinf
2477 _GL_WARN_REAL_FLOATING_DECL (isinf);
2478 # undef isinf
2479 # define isinf(x) _GL_WARN_REAL_FLOATING_IMPL (isinf, x)
2480 # endif
2481 #endif
2482
2483
2484 #if @GNULIB_ISNANF@
2485
2486 # if @HAVE_ISNANF@
2487
2488
2489 # if (__GNUC__ >= 4) || (__clang_major__ >= 4)
2490
2491
2492 # undef isnanf
2493 # define isnanf(x) __builtin_isnan ((float)(x))
2494 # elif defined isnan
2495 # undef isnanf
2496 # define isnanf(x) isnan ((float)(x))
2497 # endif
2498 # else
2499
2500 # undef isnanf
2501 # define isnanf rpl_isnanf
2502 _GL_EXTERN_C int isnanf (float x);
2503 # endif
2504 #endif
2505
2506 #if @GNULIB_ISNAND@
2507
2508
2509
2510 # if @HAVE_ISNAND@
2511
2512
2513 # if (__GNUC__ >= 4) || (__clang_major__ >= 4)
2514
2515 # undef isnand
2516 # define isnand(x) __builtin_isnan ((double)(x))
2517 # else
2518 # undef isnand
2519 # define isnand(x) isnan ((double)(x))
2520 # endif
2521 # else
2522
2523 # undef isnand
2524 # define isnand rpl_isnand
2525 _GL_EXTERN_C int isnand (double x);
2526 # endif
2527 #endif
2528
2529 #if @GNULIB_ISNANL@
2530
2531 # if @HAVE_ISNANL@
2532
2533
2534 # if (__GNUC__ >= 4) || (__clang_major__ >= 4)
2535
2536
2537 # undef isnanl
2538 # define isnanl(x) __builtin_isnan ((long double)(x))
2539 # elif defined isnan
2540 # undef isnanl
2541 # define isnanl(x) isnan ((long double)(x))
2542 # endif
2543 # else
2544
2545 # undef isnanl
2546 # define isnanl rpl_isnanl
2547 _GL_EXTERN_C int isnanl (long double x) _GL_ATTRIBUTE_CONST;
2548 # endif
2549 #endif
2550
2551
2552 #if @GNULIB_ISNAN@
2553 # if @REPLACE_ISNAN@
2554
2555
2556
2557
2558 # if @HAVE_ISNANF@ && (__GNUC__ >= 4) || (__clang_major__ >= 4)
2559 # define gl_isnan_f(x) __builtin_isnan ((float)(x))
2560 # else
2561 _GL_EXTERN_C int rpl_isnanf (float x);
2562 # define gl_isnan_f(x) rpl_isnanf (x)
2563 # endif
2564 # if @HAVE_ISNAND@ && (__GNUC__ >= 4) || (__clang_major__ >= 4)
2565 # define gl_isnan_d(x) __builtin_isnan ((double)(x))
2566 # else
2567 _GL_EXTERN_C int rpl_isnand (double x);
2568 # define gl_isnan_d(x) rpl_isnand (x)
2569 # endif
2570 # if @HAVE_ISNANL@ && (__GNUC__ >= 4) || (__clang_major__ >= 4)
2571 # define gl_isnan_l(x) __builtin_isnan ((long double)(x))
2572 # else
2573 _GL_EXTERN_C int rpl_isnanl (long double x) _GL_ATTRIBUTE_CONST;
2574 # define gl_isnan_l(x) rpl_isnanl (x)
2575 # endif
2576 # undef isnan
2577 # define isnan(x) \
2578 (sizeof (x) == sizeof (long double) ? gl_isnan_l (x) : \
2579 sizeof (x) == sizeof (double) ? gl_isnan_d (x) : \
2580 gl_isnan_f (x))
2581 # elif (__GNUC__ >= 4) || (__clang_major__ >= 4)
2582 # undef isnan
2583 # define isnan(x) \
2584 (sizeof (x) == sizeof (long double) ? __builtin_isnan ((long double)(x)) : \
2585 sizeof (x) == sizeof (double) ? __builtin_isnan ((double)(x)) : \
2586 __builtin_isnan ((float)(x)))
2587 # endif
2588 # ifdef __cplusplus
2589 # if defined isnan || defined GNULIB_NAMESPACE
2590 _GL_MATH_CXX_REAL_FLOATING_DECL_1 (isnan)
2591 # undef isnan
2592 # if __GNUC__ >= 6 || (defined __clang__ && !((defined __APPLE__ && defined __MACH__ && __clang_major__ < 12) || (defined __FreeBSD__ && __clang_major__ < 7) || defined __OpenBSD__ || (defined _WIN32 && !defined __CYGWIN__)))
2593
2594
2595 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (isnan, rpl_isnan, bool)
2596 # define isnan rpl_isnan
2597 # else
2598 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (isnan, isnan, bool)
2599 # endif
2600 # endif
2601 # else
2602
2603 # ifndef isnan
2604 # define isnan isnan
2605 # endif
2606 # endif
2607 #elif defined GNULIB_POSIXCHECK
2608 # if defined isnan
2609 _GL_WARN_REAL_FLOATING_DECL (isnan);
2610 # undef isnan
2611 # define isnan(x) _GL_WARN_REAL_FLOATING_IMPL (isnan, x)
2612 # endif
2613 #endif
2614
2615
2616 #if @GNULIB_SIGNBIT@
2617 # if (@REPLACE_SIGNBIT_USING_BUILTINS@ \
2618 && (!defined __cplusplus || __cplusplus < 201103))
2619 # undef signbit
2620
2621 # define signbit(x) \
2622 (sizeof (x) == sizeof (long double) ? __builtin_signbitl (x) : \
2623 sizeof (x) == sizeof (double) ? __builtin_signbit (x) : \
2624 __builtin_signbitf (x))
2625 # endif
2626 # if @REPLACE_SIGNBIT@ && !GNULIB_defined_signbit
2627 # undef signbit
2628 _GL_EXTERN_C int gl_signbitf (float arg);
2629 _GL_EXTERN_C int gl_signbitd (double arg);
2630 _GL_EXTERN_C int gl_signbitl (long double arg);
2631 # if (__GNUC__ >= 2 || defined __clang__) && !defined __STRICT_ANSI__
2632 # define _GL_NUM_UINT_WORDS(type) \
2633 ((sizeof (type) + sizeof (unsigned int) - 1) / sizeof (unsigned int))
2634 # if defined FLT_SIGNBIT_WORD && defined FLT_SIGNBIT_BIT && !defined gl_signbitf
2635 # define gl_signbitf_OPTIMIZED_MACRO
2636 # define gl_signbitf(arg) \
2637 ({ union { float _value; \
2638 unsigned int _word[_GL_NUM_UINT_WORDS (float)]; \
2639 } _m; \
2640 _m._value = (arg); \
2641 (_m._word[FLT_SIGNBIT_WORD] >> FLT_SIGNBIT_BIT) & 1; \
2642 })
2643 # endif
2644 # if defined DBL_SIGNBIT_WORD && defined DBL_SIGNBIT_BIT && !defined gl_signbitd
2645 # define gl_signbitd_OPTIMIZED_MACRO
2646 # define gl_signbitd(arg) \
2647 ({ union { double _value; \
2648 unsigned int _word[_GL_NUM_UINT_WORDS (double)]; \
2649 } _m; \
2650 _m._value = (arg); \
2651 (_m._word[DBL_SIGNBIT_WORD] >> DBL_SIGNBIT_BIT) & 1; \
2652 })
2653 # endif
2654 # if defined LDBL_SIGNBIT_WORD && defined LDBL_SIGNBIT_BIT && !defined gl_signbitl
2655 # define gl_signbitl_OPTIMIZED_MACRO
2656 # define gl_signbitl(arg) \
2657 ({ union { long double _value; \
2658 unsigned int _word[_GL_NUM_UINT_WORDS (long double)]; \
2659 } _m; \
2660 _m._value = (arg); \
2661 (_m._word[LDBL_SIGNBIT_WORD] >> LDBL_SIGNBIT_BIT) & 1; \
2662 })
2663 # endif
2664 # endif
2665 # define signbit(x) \
2666 (sizeof (x) == sizeof (long double) ? gl_signbitl (x) : \
2667 sizeof (x) == sizeof (double) ? gl_signbitd (x) : \
2668 gl_signbitf (x))
2669 # define GNULIB_defined_signbit 1
2670 # endif
2671 # ifdef __cplusplus
2672 # if defined signbit || defined GNULIB_NAMESPACE
2673 _GL_MATH_CXX_REAL_FLOATING_DECL_1 (signbit)
2674 # undef signbit
2675 # if __GNUC__ >= 6 || (defined __clang__ && !((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ || defined __OpenBSD__ || defined _AIX || (defined _WIN32 && !defined __CYGWIN__)))
2676
2677
2678 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (signbit, rpl_signbit, bool)
2679 # define signbit rpl_signbit
2680 # else
2681 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (signbit, signbit, bool)
2682 # endif
2683 # endif
2684 # endif
2685 #elif defined GNULIB_POSIXCHECK
2686 # if defined signbit
2687 _GL_WARN_REAL_FLOATING_DECL (signbit);
2688 # undef signbit
2689 # define signbit(x) _GL_WARN_REAL_FLOATING_IMPL (signbit, x)
2690 # endif
2691 #endif
2692
2693 _GL_INLINE_HEADER_END
2694
2695 #endif
2696 #endif
2697 #endif