Mercurial > hg > octave-kai > gnulib-hg
annotate lib/math.in.h @ 15893:792aac7b45c4
New module 'sinhf'.
* lib/math.in.h (sinhf): New declaration.
* lib/sinhf.c: New file.
* m4/sinhf.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether sinhf is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_SINHF, HAVE_SINHF.
* modules/math (Makefile.am): Substitute GNULIB_SINHF, HAVE_SINHF.
* modules/sinhf: New file.
* tests/test-math-c++.cc: Check the declaration of sinhf.
* doc/posix-functions/sinhf.texi: Mention the new module.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sun, 09 Oct 2011 00:40:19 +0200 |
parents | 52fb6ed99832 |
children | df1794ad8606 |
rev | line source |
---|---|
9255 | 1 /* A GNU-like <math.h>. |
2 | |
14079
97fc9a21a8fb
maint: update almost all copyright ranges to include 2011
Jim Meyering <meyering@redhat.com>
parents:
14060
diff
changeset
|
3 Copyright (C) 2002-2003, 2007-2011 Free Software Foundation, Inc. |
9255 | 4 |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
9297
diff
changeset
|
5 This program is free software: you can redistribute it and/or modify |
9255 | 6 it under the terms of the GNU General Public License as published by |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
9297
diff
changeset
|
7 the Free Software Foundation; either version 3 of the License, or |
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
9297
diff
changeset
|
8 (at your option) any later version. |
9255 | 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 General Public License for more details. | |
14 | |
15 You should have received a copy of the GNU General Public License | |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
9297
diff
changeset
|
16 along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
9255 | 17 |
14840
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14274
diff
changeset
|
18 #ifndef _@GUARD_PREFIX@_MATH_H |
13094
2ed0fc659db8
Emit #pragma system_header after the inclusion guard, not before.
Bruno Haible <bruno@clisp.org>
parents:
13055
diff
changeset
|
19 |
10655
8668b19a7032
Avoid gcc warnings because of #pragma GCC system_header on older gcc.
Bruno Haible <bruno@clisp.org>
parents:
10375
diff
changeset
|
20 #if __GNUC__ >= 3 |
10375
f96e845fc36d
Avoid some "gcc -pedantic" warnings.
Bruno Haible <bruno@clisp.org>
parents:
10287
diff
changeset
|
21 @PRAGMA_SYSTEM_HEADER@ |
10655
8668b19a7032
Avoid gcc warnings because of #pragma GCC system_header on older gcc.
Bruno Haible <bruno@clisp.org>
parents:
10375
diff
changeset
|
22 #endif |
13761
a19ace3ba849
Avoid line length limitation from HP NonStop system header files.
Bruno Haible <bruno@clisp.org>
parents:
13758
diff
changeset
|
23 @PRAGMA_COLUMNS@ |
10375
f96e845fc36d
Avoid some "gcc -pedantic" warnings.
Bruno Haible <bruno@clisp.org>
parents:
10287
diff
changeset
|
24 |
9255 | 25 /* The include_next requires a split double-inclusion guard. */ |
11583
dc80f2cc1327
Second attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
Eric Blake <ebb9@byu.net>
parents:
11525
diff
changeset
|
26 #@INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ @NEXT_AS_FIRST_DIRECTIVE_MATH_H@ |
9255 | 27 |
14840
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14274
diff
changeset
|
28 #ifndef _@GUARD_PREFIX@_MATH_H |
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14274
diff
changeset
|
29 #define _@GUARD_PREFIX@_MATH_H |
9255 | 30 |
31 | |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
32 /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
33 |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
34 /* The definition of _GL_ARG_NONNULL is copied here. */ |
9255 | 35 |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
36 /* The definition of _GL_WARN_ON_USE is copied here. */ |
12422
f7842310a565
New module 'arg-nonnull'. Declare which arguments expect non-NULL values.
Bruno Haible <bruno@clisp.org>
parents:
12421
diff
changeset
|
37 |
12726
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
38 /* Helper macros to define a portability warning for the |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
39 classification macro FUNC called with VALUE. POSIX declares the |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
40 classification macros with an argument of real-floating (that is, |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
41 one of float, double, or long double). */ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
42 #define _GL_WARN_REAL_FLOATING_DECL(func) \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
43 static inline int \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
44 rpl_ ## func ## f (float f) \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
45 { \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
46 return func (f); \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
47 } \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
48 static inline int \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
49 rpl_ ## func ## d (double d) \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
50 { \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
51 return func (d); \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
52 } \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
53 static inline int \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
54 rpl_ ## func ## l (long double l) \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
55 { \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
56 return func (l); \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
57 } \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
58 _GL_WARN_ON_USE (rpl_ ## func ## f, #func " is unportable - " \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
59 "use gnulib module " #func " for portability"); \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
60 _GL_WARN_ON_USE (rpl_ ## func ## d, #func " is unportable - " \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
61 "use gnulib module " #func " for portability"); \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
62 _GL_WARN_ON_USE (rpl_ ## func ## l, #func " is unportable - " \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
63 "use gnulib module " #func " for portability") |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
64 #define _GL_WARN_REAL_FLOATING_IMPL(func, value) \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
65 (sizeof (value) == sizeof (float) ? rpl_ ## func ## f (value) \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
66 : sizeof (value) == sizeof (double) ? rpl_ ## func ## d (value) \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
67 : rpl_ ## func ## l (value)) |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
68 |
9255 | 69 |
15803
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
70 #if @REPLACE_ITOLD@ |
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
71 /* Pull in a function that fixes the 'int' to 'long double' conversion |
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
72 of glibc 2.7. */ |
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
73 _GL_EXTERN_C void _Qp_itoq (long double *, int); |
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
74 static void (*_gl_math_fix_itold) (long double *, int) = _Qp_itoq; |
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
75 #endif |
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
76 |
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
77 |
9850 | 78 /* POSIX allows platforms that don't support NAN. But all major |
79 machines in the past 15 years have supported something close to | |
9898
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
80 IEEE NaN, so we define this unconditionally. We also must define |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
81 it on platforms like Solaris 10, where NAN is present but defined |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
82 as a function pointer rather than a floating point constant. */ |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
83 #if !defined NAN || @REPLACE_NAN@ |
14274
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
84 # if !GNULIB_defined_NAN |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
85 # undef NAN |
15595
328819af1c02
Support for MSVC compiler: Avoid division by a literal 0.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
86 /* The Compaq (ex-DEC) C 6.4 compiler and the Microsoft MSVC 9 compiler |
328819af1c02
Support for MSVC compiler: Avoid division by a literal 0.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
87 choke on the expression 0.0 / 0.0. */ |
328819af1c02
Support for MSVC compiler: Avoid division by a literal 0.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
88 # if defined __DECC || defined _MSC_VER |
9850 | 89 static float |
90 _NaN () | |
91 { | |
92 static float zero = 0.0f; | |
93 return zero / zero; | |
94 } | |
14274
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
95 # define NAN (_NaN()) |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
96 # else |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
97 # define NAN (0.0f / 0.0f) |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
98 # endif |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
99 # define GNULIB_defined_NAN 1 |
9850 | 100 # endif |
101 #endif | |
102 | |
9898
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
103 /* Solaris 10 defines HUGE_VAL, but as a function pointer rather |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
104 than a floating point constant. */ |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
105 #if @REPLACE_HUGE_VAL@ |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
106 # undef HUGE_VAL |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
107 # define HUGE_VAL (1.0 / 0.0) |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
108 #endif |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
109 |
12927
d3ea0f2aacfc
logb: Provide missing declaration for Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
12766
diff
changeset
|
110 |
15884 | 111 #if @GNULIB_ACOSF@ |
112 # if !@HAVE_ACOSF@ | |
113 # undef acosf | |
114 _GL_FUNCDECL_SYS (acosf, float, (float x)); | |
115 # endif | |
116 _GL_CXXALIAS_SYS (acosf, float, (float x)); | |
117 _GL_CXXALIASWARN (acosf); | |
118 #elif defined GNULIB_POSIXCHECK | |
119 # undef acosf | |
120 # if HAVE_RAW_DECL_ACOSF | |
121 _GL_WARN_ON_USE (acosf, "acosf is unportable - " | |
122 "use gnulib module acosf for portability"); | |
123 # endif | |
124 #endif | |
125 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
126 #if @GNULIB_ACOSL@ |
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
127 # if !@HAVE_ACOSL@ || !@HAVE_DECL_ACOSL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
128 _GL_FUNCDECL_SYS (acosl, long double, (long double x)); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
129 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
130 _GL_CXXALIAS_SYS (acosl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
131 _GL_CXXALIASWARN (acosl); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
132 #elif defined GNULIB_POSIXCHECK |
9255 | 133 # undef acosl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
134 # if HAVE_RAW_DECL_ACOSL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
135 _GL_WARN_ON_USE (acosl, "acosl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
136 "use gnulib module mathl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
137 # endif |
9255 | 138 #endif |
139 | |
9285 | 140 |
15881 | 141 #if @GNULIB_ASINF@ |
142 # if !@HAVE_ASINF@ | |
143 # undef asinf | |
144 _GL_FUNCDECL_SYS (asinf, float, (float x)); | |
145 # endif | |
146 _GL_CXXALIAS_SYS (asinf, float, (float x)); | |
147 _GL_CXXALIASWARN (asinf); | |
148 #elif defined GNULIB_POSIXCHECK | |
149 # undef asinf | |
150 # if HAVE_RAW_DECL_ASINF | |
151 _GL_WARN_ON_USE (asinf, "asinf is unportable - " | |
152 "use gnulib module asinf for portability"); | |
153 # endif | |
154 #endif | |
155 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
156 #if @GNULIB_ASINL@ |
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
157 # if !@HAVE_ASINL@ || !@HAVE_DECL_ASINL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
158 _GL_FUNCDECL_SYS (asinl, long double, (long double x)); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
159 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
160 _GL_CXXALIAS_SYS (asinl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
161 _GL_CXXALIASWARN (asinl); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
162 #elif defined GNULIB_POSIXCHECK |
9255 | 163 # undef asinl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
164 # if HAVE_RAW_DECL_ASINL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
165 _GL_WARN_ON_USE (asinl, "asinl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
166 "use gnulib module mathl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
167 # endif |
9255 | 168 #endif |
169 | |
9285 | 170 |
15887 | 171 #if @GNULIB_ATANF@ |
172 # if !@HAVE_ATANF@ | |
173 # undef atanf | |
174 _GL_FUNCDECL_SYS (atanf, float, (float x)); | |
175 # endif | |
176 _GL_CXXALIAS_SYS (atanf, float, (float x)); | |
177 _GL_CXXALIASWARN (atanf); | |
178 #elif defined GNULIB_POSIXCHECK | |
179 # undef atanf | |
180 # if HAVE_RAW_DECL_ATANF | |
181 _GL_WARN_ON_USE (atanf, "atanf is unportable - " | |
182 "use gnulib module atanf for portability"); | |
183 # endif | |
184 #endif | |
185 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
186 #if @GNULIB_ATANL@ |
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
187 # if !@HAVE_ATANL@ || !@HAVE_DECL_ATANL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
188 _GL_FUNCDECL_SYS (atanl, long double, (long double x)); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
189 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
190 _GL_CXXALIAS_SYS (atanl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
191 _GL_CXXALIASWARN (atanl); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
192 #elif defined GNULIB_POSIXCHECK |
9255 | 193 # undef atanl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
194 # if HAVE_RAW_DECL_ATANL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
195 _GL_WARN_ON_USE (atanl, "atanl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
196 "use gnulib module mathl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
197 # endif |
9255 | 198 #endif |
199 | |
9285 | 200 |
15890 | 201 #if @GNULIB_ATAN2F@ |
202 # if !@HAVE_ATAN2F@ | |
203 # undef atan2f | |
204 _GL_FUNCDECL_SYS (atan2f, float, (float y, float x)); | |
205 # endif | |
206 _GL_CXXALIAS_SYS (atan2f, float, (float y, float x)); | |
207 _GL_CXXALIASWARN (atan2f); | |
208 #elif defined GNULIB_POSIXCHECK | |
209 # undef atan2f | |
210 # if HAVE_RAW_DECL_ATAN2F | |
211 _GL_WARN_ON_USE (atan2f, "atan2f is unportable - " | |
212 "use gnulib module atan2f for portability"); | |
213 # endif | |
214 #endif | |
215 | |
216 | |
9295 | 217 #if @GNULIB_CEILF@ |
9420
9e0484f26251
Fix link errors with Sun C 5.0 on Solaris 10.
Bruno Haible <bruno@clisp.org>
parents:
9418
diff
changeset
|
218 # if @REPLACE_CEILF@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
219 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
220 # undef ceilf |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
221 # define ceilf rpl_ceilf |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
222 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
223 _GL_FUNCDECL_RPL (ceilf, float, (float x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
224 _GL_CXXALIAS_RPL (ceilf, float, (float x)); |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
225 # else |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
226 # if !@HAVE_DECL_CEILF@ |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
227 _GL_FUNCDECL_SYS (ceilf, float, (float x)); |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
228 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
229 _GL_CXXALIAS_SYS (ceilf, float, (float x)); |
9295 | 230 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
231 _GL_CXXALIASWARN (ceilf); |
9295 | 232 #elif defined GNULIB_POSIXCHECK |
233 # undef ceilf | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
234 # if HAVE_RAW_DECL_CEILF |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
235 _GL_WARN_ON_USE (ceilf, "ceilf is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
236 "use gnulib module ceilf for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
237 # endif |
9295 | 238 #endif |
239 | |
13982 | 240 #if @GNULIB_CEIL@ |
241 # if @REPLACE_CEIL@ | |
242 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
243 # define ceil rpl_ceil | |
244 # endif | |
245 _GL_FUNCDECL_RPL (ceil, double, (double x)); | |
246 _GL_CXXALIAS_RPL (ceil, double, (double x)); | |
247 # else | |
248 _GL_CXXALIAS_SYS (ceil, double, (double x)); | |
249 # endif | |
250 _GL_CXXALIASWARN (ceil); | |
251 #endif | |
252 | |
9297 | 253 #if @GNULIB_CEILL@ |
9420
9e0484f26251
Fix link errors with Sun C 5.0 on Solaris 10.
Bruno Haible <bruno@clisp.org>
parents:
9418
diff
changeset
|
254 # if @REPLACE_CEILL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
255 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
256 # undef ceill |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
257 # define ceill rpl_ceill |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
258 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
259 _GL_FUNCDECL_RPL (ceill, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
260 _GL_CXXALIAS_RPL (ceill, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
261 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
262 # if !@HAVE_DECL_CEILL@ |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
263 _GL_FUNCDECL_SYS (ceill, long double, (long double x)); |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
264 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
265 _GL_CXXALIAS_SYS (ceill, long double, (long double x)); |
9297 | 266 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
267 _GL_CXXALIASWARN (ceill); |
9297 | 268 #elif defined GNULIB_POSIXCHECK |
9255 | 269 # undef ceill |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
270 # if HAVE_RAW_DECL_CEILL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
271 _GL_WARN_ON_USE (ceill, "ceill is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
272 "use gnulib module ceill for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
273 # endif |
9255 | 274 #endif |
275 | |
9285 | 276 |
15875 | 277 #if @GNULIB_COSF@ |
278 # if !@HAVE_COSF@ | |
279 # undef cosf | |
280 _GL_FUNCDECL_SYS (cosf, float, (float x)); | |
281 # endif | |
282 _GL_CXXALIAS_SYS (cosf, float, (float x)); | |
283 _GL_CXXALIASWARN (cosf); | |
284 #elif defined GNULIB_POSIXCHECK | |
285 # undef cosf | |
286 # if HAVE_RAW_DECL_COSF | |
287 _GL_WARN_ON_USE (cosf, "cosf is unportable - " | |
288 "use gnulib module cosf for portability"); | |
289 # endif | |
290 #endif | |
291 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
292 #if @GNULIB_COSL@ |
13145
0ac425232626
math: Fix some C++ test errors on Solaris 8 and Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13143
diff
changeset
|
293 # if !@HAVE_COSL@ || !@HAVE_DECL_COSL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
294 _GL_FUNCDECL_SYS (cosl, long double, (long double x)); |
13145
0ac425232626
math: Fix some C++ test errors on Solaris 8 and Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13143
diff
changeset
|
295 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
296 _GL_CXXALIAS_SYS (cosl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
297 _GL_CXXALIASWARN (cosl); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
298 #elif defined GNULIB_POSIXCHECK |
9255 | 299 # undef cosl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
300 # if HAVE_RAW_DECL_COSL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
301 _GL_WARN_ON_USE (cosl, "cosl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
302 "use gnulib module mathl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
303 # endif |
9255 | 304 #endif |
305 | |
9285 | 306 |
15860 | 307 #if @GNULIB_EXPF@ |
308 # if !@HAVE_EXPF@ | |
309 # undef expf | |
310 _GL_FUNCDECL_SYS (expf, float, (float x)); | |
311 # endif | |
312 _GL_CXXALIAS_SYS (expf, float, (float x)); | |
313 _GL_CXXALIASWARN (expf); | |
314 #elif defined GNULIB_POSIXCHECK | |
315 # undef expf | |
316 # if HAVE_RAW_DECL_EXPF | |
317 _GL_WARN_ON_USE (expf, "expf is unportable - " | |
318 "use gnulib module expf for portability"); | |
319 # endif | |
320 #endif | |
321 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
322 #if @GNULIB_EXPL@ |
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
323 # if !@HAVE_EXPL@ || !@HAVE_DECL_EXPL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
324 _GL_FUNCDECL_SYS (expl, long double, (long double x)); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
325 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
326 _GL_CXXALIAS_SYS (expl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
327 _GL_CXXALIASWARN (expl); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
328 #elif defined GNULIB_POSIXCHECK |
9255 | 329 # undef expl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
330 # if HAVE_RAW_DECL_EXPL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
331 _GL_WARN_ON_USE (expl, "expl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
332 "use gnulib module mathl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
333 # endif |
9255 | 334 #endif |
335 | |
9285 | 336 |
15828 | 337 #if @GNULIB_FABSF@ |
338 # if !@HAVE_FABSF@ | |
339 # undef fabsf | |
340 _GL_FUNCDECL_SYS (fabsf, float, (float x)); | |
341 # endif | |
342 _GL_CXXALIAS_SYS (fabsf, float, (float x)); | |
343 _GL_CXXALIASWARN (fabsf); | |
344 #elif defined GNULIB_POSIXCHECK | |
345 # undef fabsf | |
346 # if HAVE_RAW_DECL_FABSF | |
347 _GL_WARN_ON_USE (fabsf, "fabsf is unportable - " | |
348 "use gnulib module fabsf for portability"); | |
349 # endif | |
350 #endif | |
351 | |
352 | |
9291 | 353 #if @GNULIB_FLOORF@ |
9420
9e0484f26251
Fix link errors with Sun C 5.0 on Solaris 10.
Bruno Haible <bruno@clisp.org>
parents:
9418
diff
changeset
|
354 # if @REPLACE_FLOORF@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
355 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
356 # undef floorf |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
357 # define floorf rpl_floorf |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
358 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
359 _GL_FUNCDECL_RPL (floorf, float, (float x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
360 _GL_CXXALIAS_RPL (floorf, float, (float x)); |
13973 | 361 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
362 # if !@HAVE_DECL_FLOORF@ |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
363 _GL_FUNCDECL_SYS (floorf, float, (float x)); |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
364 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
365 _GL_CXXALIAS_SYS (floorf, float, (float x)); |
9291 | 366 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
367 _GL_CXXALIASWARN (floorf); |
9291 | 368 #elif defined GNULIB_POSIXCHECK |
369 # undef floorf | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
370 # if HAVE_RAW_DECL_FLOORF |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
371 _GL_WARN_ON_USE (floorf, "floorf is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
372 "use gnulib module floorf for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
373 # endif |
9291 | 374 #endif |
375 | |
13981 | 376 #if @GNULIB_FLOOR@ |
377 # if @REPLACE_FLOOR@ | |
378 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
379 # define floor rpl_floor | |
380 # endif | |
381 _GL_FUNCDECL_RPL (floor, double, (double x)); | |
382 _GL_CXXALIAS_RPL (floor, double, (double x)); | |
383 # else | |
384 _GL_CXXALIAS_SYS (floor, double, (double x)); | |
385 # endif | |
386 _GL_CXXALIASWARN (floor); | |
387 #endif | |
388 | |
9293 | 389 #if @GNULIB_FLOORL@ |
9420
9e0484f26251
Fix link errors with Sun C 5.0 on Solaris 10.
Bruno Haible <bruno@clisp.org>
parents:
9418
diff
changeset
|
390 # if @REPLACE_FLOORL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
391 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
392 # undef floorl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
393 # define floorl rpl_floorl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
394 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
395 _GL_FUNCDECL_RPL (floorl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
396 _GL_CXXALIAS_RPL (floorl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
397 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
398 # if !@HAVE_DECL_FLOORL@ |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
399 _GL_FUNCDECL_SYS (floorl, long double, (long double x)); |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
400 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
401 _GL_CXXALIAS_SYS (floorl, long double, (long double x)); |
9293 | 402 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
403 _GL_CXXALIASWARN (floorl); |
9293 | 404 #elif defined GNULIB_POSIXCHECK |
9255 | 405 # undef floorl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
406 # if HAVE_RAW_DECL_FLOORL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
407 _GL_WARN_ON_USE (floorl, "floorl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
408 "use gnulib module floorl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
409 # endif |
9255 | 410 #endif |
411 | |
9285 | 412 |
15832 | 413 #if @GNULIB_FMODF@ |
414 # if !@HAVE_FMODF@ | |
415 # undef fmodf | |
416 _GL_FUNCDECL_SYS (fmodf, float, (float x, float y)); | |
417 # endif | |
418 _GL_CXXALIAS_SYS (fmodf, float, (float x, float y)); | |
419 _GL_CXXALIASWARN (fmodf); | |
420 #elif defined GNULIB_POSIXCHECK | |
421 # undef fmodf | |
422 # if HAVE_RAW_DECL_FMODF | |
423 _GL_WARN_ON_USE (fmodf, "fmodf is unportable - " | |
424 "use gnulib module fmodf for portability"); | |
425 # endif | |
426 #endif | |
427 | |
428 | |
9255 | 429 /* Write x as |
430 x = mantissa * 2^exp | |
431 where | |
432 If x finite and nonzero: 0.5 <= |mantissa| < 1.0. | |
433 If x is zero: mantissa = x, exp = 0. | |
434 If x is infinite or NaN: mantissa = x, exp unspecified. | |
9312
bec01fc15c2f
Rename parameter 'exp' to 'expptr', to avoid gcc warnings.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
435 Store exp in *EXPPTR and return mantissa. */ |
15841 | 436 #if @GNULIB_FREXPF@ |
15845
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
437 # if @REPLACE_FREXPF@ |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
438 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
439 # undef frexpf |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
440 # define frexpf rpl_frexpf |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
441 # endif |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
442 _GL_FUNCDECL_RPL (frexpf, float, (float x, int *expptr) _GL_ARG_NONNULL ((2))); |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
443 _GL_CXXALIAS_RPL (frexpf, float, (float x, int *expptr)); |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
444 # else |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
445 # if !@HAVE_FREXPF@ |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
446 # undef frexpf |
15841 | 447 _GL_FUNCDECL_SYS (frexpf, float, (float x, int *expptr) _GL_ARG_NONNULL ((2))); |
15845
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
448 # endif |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
449 _GL_CXXALIAS_SYS (frexpf, float, (float x, int *expptr)); |
15841 | 450 # endif |
451 _GL_CXXALIASWARN (frexpf); | |
452 #elif defined GNULIB_POSIXCHECK | |
453 # undef frexpf | |
454 # if HAVE_RAW_DECL_FREXPF | |
455 _GL_WARN_ON_USE (frexpf, "frexpf is unportable - " | |
456 "use gnulib module frexpf for portability"); | |
457 # endif | |
458 #endif | |
459 | |
460 /* Write x as | |
461 x = mantissa * 2^exp | |
462 where | |
463 If x finite and nonzero: 0.5 <= |mantissa| < 1.0. | |
464 If x is zero: mantissa = x, exp = 0. | |
465 If x is infinite or NaN: mantissa = x, exp unspecified. | |
466 Store exp in *EXPPTR and return mantissa. */ | |
15840
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
467 #if @GNULIB_FREXP@ |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
468 # if @REPLACE_FREXP@ |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
469 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
470 # define frexp rpl_frexp |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
471 # endif |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
472 _GL_FUNCDECL_RPL (frexp, double, (double x, int *expptr) _GL_ARG_NONNULL ((2))); |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
473 _GL_CXXALIAS_RPL (frexp, double, (double x, int *expptr)); |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
474 # else |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
475 _GL_CXXALIAS_SYS (frexp, double, (double x, int *expptr)); |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
476 # endif |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
477 _GL_CXXALIASWARN (frexp); |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
478 #elif defined GNULIB_POSIXCHECK |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
479 # undef frexp |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
480 /* Assume frexp is always declared. */ |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
481 _GL_WARN_ON_USE (frexp, "frexp is unportable - " |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
482 "use gnulib module frexp for portability"); |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
483 #endif |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
484 |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
485 /* Write x as |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
486 x = mantissa * 2^exp |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
487 where |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
488 If x finite and nonzero: 0.5 <= |mantissa| < 1.0. |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
489 If x is zero: mantissa = x, exp = 0. |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
490 If x is infinite or NaN: mantissa = x, exp unspecified. |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
491 Store exp in *EXPPTR and return mantissa. */ |
9255 | 492 #if @GNULIB_FREXPL@ && @REPLACE_FREXPL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
493 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
494 # undef frexpl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
495 # define frexpl rpl_frexpl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
496 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
497 _GL_FUNCDECL_RPL (frexpl, long double, |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
498 (long double x, int *expptr) _GL_ARG_NONNULL ((2))); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
499 _GL_CXXALIAS_RPL (frexpl, long double, (long double x, int *expptr)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
500 #else |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
501 # if !@HAVE_DECL_FREXPL@ |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
502 _GL_FUNCDECL_SYS (frexpl, long double, |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
503 (long double x, int *expptr) _GL_ARG_NONNULL ((2))); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
504 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
505 # if @GNULIB_FREXPL@ |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
506 _GL_CXXALIAS_SYS (frexpl, long double, (long double x, int *expptr)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
507 # endif |
9255 | 508 #endif |
13164
05d5602815b8
frexpl: Fix a C++ test error on Solaris 8 and Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13145
diff
changeset
|
509 #if @GNULIB_FREXPL@ && !(@REPLACE_FREXPL@ && !@HAVE_DECL_FREXPL@) |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
510 _GL_CXXALIASWARN (frexpl); |
9255 | 511 #endif |
512 #if !@GNULIB_FREXPL@ && defined GNULIB_POSIXCHECK | |
513 # undef frexpl | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
514 # if HAVE_RAW_DECL_FREXPL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
515 _GL_WARN_ON_USE (frexpl, "frexpl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
516 "use gnulib module frexpl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
517 # endif |
9255 | 518 #endif |
519 | |
9285 | 520 |
9255 | 521 /* Return x * 2^exp. */ |
15847 | 522 #if @GNULIB_LDEXPF@ |
523 # if !@HAVE_LDEXPF@ | |
524 # undef ldexpf | |
525 _GL_FUNCDECL_SYS (ldexpf, float, (float x, int exp)); | |
526 # endif | |
527 _GL_CXXALIAS_SYS (ldexpf, float, (float x, int exp)); | |
528 _GL_CXXALIASWARN (ldexpf); | |
529 #elif defined GNULIB_POSIXCHECK | |
530 # undef ldexpf | |
531 # if HAVE_RAW_DECL_LDEXPF | |
532 _GL_WARN_ON_USE (ldexpf, "ldexpf is unportable - " | |
533 "use gnulib module ldexpf for portability"); | |
534 # endif | |
535 #endif | |
536 | |
537 /* Return x * 2^exp. */ | |
9255 | 538 #if @GNULIB_LDEXPL@ && @REPLACE_LDEXPL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
539 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
540 # undef ldexpl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
541 # define ldexpl rpl_ldexpl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
542 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
543 _GL_FUNCDECL_RPL (ldexpl, long double, (long double x, int exp)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
544 _GL_CXXALIAS_RPL (ldexpl, long double, (long double x, int exp)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
545 #else |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
546 # if !@HAVE_DECL_LDEXPL@ |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
547 _GL_FUNCDECL_SYS (ldexpl, long double, (long double x, int exp)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
548 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
549 # if @GNULIB_LDEXPL@ |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
550 _GL_CXXALIAS_SYS (ldexpl, long double, (long double x, int exp)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
551 # endif |
9255 | 552 #endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
553 #if @GNULIB_LDEXPL@ |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
554 _GL_CXXALIASWARN (ldexpl); |
9255 | 555 #endif |
556 #if !@GNULIB_LDEXPL@ && defined GNULIB_POSIXCHECK | |
557 # undef ldexpl | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
558 # if HAVE_RAW_DECL_LDEXPL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
559 _GL_WARN_ON_USE (ldexpl, "ldexpl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
560 "use gnulib module ldexpl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
561 # endif |
9255 | 562 #endif |
563 | |
9285 | 564 |
15840
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
565 #if @GNULIB_LOGB@ |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
566 # if !@HAVE_DECL_LOGB@ |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
567 _GL_EXTERN_C double logb (double x); |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
568 # endif |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
569 #elif defined GNULIB_POSIXCHECK |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
570 # undef logb |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
571 # if HAVE_RAW_DECL_LOGB |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
572 _GL_WARN_ON_USE (logb, "logb is unportable - " |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
573 "use gnulib module logb for portability"); |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
574 # endif |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
575 #endif |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
576 |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
577 |
15863 | 578 #if @GNULIB_LOGF@ |
579 # if !@HAVE_LOGF@ | |
580 # undef logf | |
581 _GL_FUNCDECL_SYS (logf, float, (float x)); | |
582 # endif | |
583 _GL_CXXALIAS_SYS (logf, float, (float x)); | |
584 _GL_CXXALIASWARN (logf); | |
585 #elif defined GNULIB_POSIXCHECK | |
586 # undef logf | |
587 # if HAVE_RAW_DECL_LOGF | |
588 _GL_WARN_ON_USE (logf, "logf is unportable - " | |
589 "use gnulib module logf for portability"); | |
590 # endif | |
591 #endif | |
592 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
593 #if @GNULIB_LOGL@ |
13145
0ac425232626
math: Fix some C++ test errors on Solaris 8 and Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13143
diff
changeset
|
594 # if !@HAVE_LOGL@ || !@HAVE_DECL_LOGL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
595 _GL_FUNCDECL_SYS (logl, long double, (long double x)); |
13145
0ac425232626
math: Fix some C++ test errors on Solaris 8 and Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13143
diff
changeset
|
596 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
597 _GL_CXXALIAS_SYS (logl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
598 _GL_CXXALIASWARN (logl); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
599 #elif defined GNULIB_POSIXCHECK |
9255 | 600 # undef logl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
601 # if HAVE_RAW_DECL_LOGL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
602 _GL_WARN_ON_USE (logl, "logl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
603 "use gnulib module mathl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
604 # endif |
9255 | 605 #endif |
606 | |
9285 | 607 |
15866 | 608 #if @GNULIB_LOG10F@ |
609 # if !@HAVE_LOG10F@ | |
610 # undef log10f | |
611 _GL_FUNCDECL_SYS (log10f, float, (float x)); | |
612 # endif | |
613 _GL_CXXALIAS_SYS (log10f, float, (float x)); | |
614 _GL_CXXALIASWARN (log10f); | |
615 #elif defined GNULIB_POSIXCHECK | |
616 # undef log10f | |
617 # if HAVE_RAW_DECL_LOG10F | |
618 _GL_WARN_ON_USE (log10f, "log10f is unportable - " | |
619 "use gnulib module log10f for portability"); | |
620 # endif | |
621 #endif | |
622 | |
623 | |
15838 | 624 #if @GNULIB_MODFF@ |
625 # if !@HAVE_MODFF@ | |
626 # undef modff | |
627 _GL_FUNCDECL_SYS (modff, float, (float x, float *iptr) _GL_ARG_NONNULL ((2))); | |
628 # endif | |
629 _GL_CXXALIAS_SYS (modff, float, (float x, float *iptr)); | |
630 _GL_CXXALIASWARN (modff); | |
631 #elif defined GNULIB_POSIXCHECK | |
632 # undef modff | |
633 # if HAVE_RAW_DECL_MODFF | |
634 _GL_WARN_ON_USE (modff, "modff is unportable - " | |
635 "use gnulib module modff for portability"); | |
636 # endif | |
637 #endif | |
638 | |
639 | |
15869 | 640 #if @GNULIB_POWF@ |
641 # if !@HAVE_POWF@ | |
642 # undef powf | |
643 _GL_FUNCDECL_SYS (powf, float, (float x, float y)); | |
644 # endif | |
645 _GL_CXXALIAS_SYS (powf, float, (float x, float y)); | |
646 _GL_CXXALIASWARN (powf); | |
647 #elif defined GNULIB_POSIXCHECK | |
648 # undef powf | |
649 # if HAVE_RAW_DECL_POWF | |
650 _GL_WARN_ON_USE (powf, "powf is unportable - " | |
651 "use gnulib module powf for portability"); | |
652 # endif | |
653 #endif | |
654 | |
655 | |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
656 #if @GNULIB_ROUNDF@ |
9465
4a3319c82e39
Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
Bruno Haible <bruno@clisp.org>
parents:
9423
diff
changeset
|
657 # if @REPLACE_ROUNDF@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
658 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
659 # undef roundf |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
660 # define roundf rpl_roundf |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
661 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
662 _GL_FUNCDECL_RPL (roundf, float, (float x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
663 _GL_CXXALIAS_RPL (roundf, float, (float x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
664 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
665 # if !@HAVE_DECL_ROUNDF@ |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
666 _GL_FUNCDECL_SYS (roundf, float, (float x)); |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
667 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
668 _GL_CXXALIAS_SYS (roundf, float, (float x)); |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
669 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
670 _GL_CXXALIASWARN (roundf); |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
671 #elif defined GNULIB_POSIXCHECK |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
672 # undef roundf |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
673 # if HAVE_RAW_DECL_ROUNDF |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
674 _GL_WARN_ON_USE (roundf, "roundf is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
675 "use gnulib module roundf for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
676 # endif |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
677 #endif |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
678 |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
679 #if @GNULIB_ROUND@ |
9465
4a3319c82e39
Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
Bruno Haible <bruno@clisp.org>
parents:
9423
diff
changeset
|
680 # if @REPLACE_ROUND@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
681 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
682 # undef round |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
683 # define round rpl_round |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
684 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
685 _GL_FUNCDECL_RPL (round, double, (double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
686 _GL_CXXALIAS_RPL (round, double, (double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
687 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
688 # if !@HAVE_DECL_ROUND@ |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
689 _GL_FUNCDECL_SYS (round, double, (double x)); |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
690 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
691 _GL_CXXALIAS_SYS (round, double, (double x)); |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
692 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
693 _GL_CXXALIASWARN (round); |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
694 #elif defined GNULIB_POSIXCHECK |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
695 # undef round |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
696 # if HAVE_RAW_DECL_ROUND |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
697 _GL_WARN_ON_USE (round, "round is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
698 "use gnulib module round for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
699 # endif |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
700 #endif |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
701 |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
702 #if @GNULIB_ROUNDL@ |
9465
4a3319c82e39
Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
Bruno Haible <bruno@clisp.org>
parents:
9423
diff
changeset
|
703 # if @REPLACE_ROUNDL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
704 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
705 # undef roundl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
706 # define roundl rpl_roundl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
707 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
708 _GL_FUNCDECL_RPL (roundl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
709 _GL_CXXALIAS_RPL (roundl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
710 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
711 # if !@HAVE_DECL_ROUNDL@ |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
712 _GL_FUNCDECL_SYS (roundl, long double, (long double x)); |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
713 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
714 _GL_CXXALIAS_SYS (roundl, long double, (long double x)); |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
715 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
716 _GL_CXXALIASWARN (roundl); |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
717 #elif defined GNULIB_POSIXCHECK |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
718 # undef roundl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
719 # if HAVE_RAW_DECL_ROUNDL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
720 _GL_WARN_ON_USE (roundl, "roundl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
721 "use gnulib module roundl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
722 # endif |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
723 #endif |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
724 |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
725 |
15872 | 726 #if @GNULIB_SINF@ |
727 # if !@HAVE_SINF@ | |
728 # undef sinf | |
729 _GL_FUNCDECL_SYS (sinf, float, (float x)); | |
730 # endif | |
731 _GL_CXXALIAS_SYS (sinf, float, (float x)); | |
732 _GL_CXXALIASWARN (sinf); | |
733 #elif defined GNULIB_POSIXCHECK | |
734 # undef sinf | |
735 # if HAVE_RAW_DECL_SINF | |
736 _GL_WARN_ON_USE (sinf, "sinf is unportable - " | |
737 "use gnulib module sinf for portability"); | |
738 # endif | |
739 #endif | |
740 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
741 #if @GNULIB_SINL@ |
13145
0ac425232626
math: Fix some C++ test errors on Solaris 8 and Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13143
diff
changeset
|
742 # if !@HAVE_SINL@ || !@HAVE_DECL_SINL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
743 _GL_FUNCDECL_SYS (sinl, long double, (long double x)); |
13145
0ac425232626
math: Fix some C++ test errors on Solaris 8 and Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13143
diff
changeset
|
744 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
745 _GL_CXXALIAS_SYS (sinl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
746 _GL_CXXALIASWARN (sinl); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
747 #elif defined GNULIB_POSIXCHECK |
9255 | 748 # undef sinl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
749 # if HAVE_RAW_DECL_SINL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
750 _GL_WARN_ON_USE (sinl, "sinl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
751 "use gnulib module mathl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
752 # endif |
9255 | 753 #endif |
754 | |
9285 | 755 |
15893 | 756 #if @GNULIB_SINHF@ |
757 # if !@HAVE_SINHF@ | |
758 # undef sinhf | |
759 _GL_FUNCDECL_SYS (sinhf, float, (float x)); | |
760 # endif | |
761 _GL_CXXALIAS_SYS (sinhf, float, (float x)); | |
762 _GL_CXXALIASWARN (sinhf); | |
763 #elif defined GNULIB_POSIXCHECK | |
764 # undef sinhf | |
765 # if HAVE_RAW_DECL_SINHF | |
766 _GL_WARN_ON_USE (sinhf, "sinhf is unportable - " | |
767 "use gnulib module sinhf for portability"); | |
768 # endif | |
769 #endif | |
770 | |
771 | |
15857 | 772 #if @GNULIB_SQRTF@ |
773 # if !@HAVE_SQRTF@ | |
774 # undef sqrtf | |
775 _GL_FUNCDECL_SYS (sqrtf, float, (float x)); | |
776 # endif | |
777 _GL_CXXALIAS_SYS (sqrtf, float, (float x)); | |
778 _GL_CXXALIASWARN (sqrtf); | |
779 #elif defined GNULIB_POSIXCHECK | |
780 # undef sqrtf | |
781 # if HAVE_RAW_DECL_SQRTF | |
782 _GL_WARN_ON_USE (sqrtf, "sqrtf is unportable - " | |
783 "use gnulib module sqrtf for portability"); | |
784 # endif | |
785 #endif | |
786 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
787 #if @GNULIB_SQRTL@ |
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
788 # if !@HAVE_SQRTL@ || !@HAVE_DECL_SQRTL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
789 _GL_FUNCDECL_SYS (sqrtl, long double, (long double x)); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
790 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
791 _GL_CXXALIAS_SYS (sqrtl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
792 _GL_CXXALIASWARN (sqrtl); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
793 #elif defined GNULIB_POSIXCHECK |
9255 | 794 # undef sqrtl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
795 # if HAVE_RAW_DECL_SQRTL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
796 _GL_WARN_ON_USE (sqrtl, "sqrtl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
797 "use gnulib module mathl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
798 # endif |
9255 | 799 #endif |
800 | |
9285 | 801 |
15878 | 802 #if @GNULIB_TANF@ |
803 # if !@HAVE_TANF@ | |
804 # undef tanf | |
805 _GL_FUNCDECL_SYS (tanf, float, (float x)); | |
806 # endif | |
807 _GL_CXXALIAS_SYS (tanf, float, (float x)); | |
808 _GL_CXXALIASWARN (tanf); | |
809 #elif defined GNULIB_POSIXCHECK | |
810 # undef tanf | |
811 # if HAVE_RAW_DECL_TANF | |
812 _GL_WARN_ON_USE (tanf, "tanf is unportable - " | |
813 "use gnulib module tanf for portability"); | |
814 # endif | |
815 #endif | |
816 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
817 #if @GNULIB_TANL@ |
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
818 # if !@HAVE_TANL@ || !@HAVE_DECL_TANL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
819 _GL_FUNCDECL_SYS (tanl, long double, (long double x)); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
820 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
821 _GL_CXXALIAS_SYS (tanl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
822 _GL_CXXALIASWARN (tanl); |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
823 #elif defined GNULIB_POSIXCHECK |
9255 | 824 # undef tanl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
825 # if HAVE_RAW_DECL_TANL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
826 _GL_WARN_ON_USE (tanl, "tanl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
827 "use gnulib module mathl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
828 # endif |
9255 | 829 #endif |
830 | |
9285 | 831 |
832 #if @GNULIB_TRUNCF@ | |
13979 | 833 # if @REPLACE_TRUNCF@ |
834 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
835 # define truncf rpl_truncf | |
836 # endif | |
837 _GL_FUNCDECL_RPL (truncf, float, (float x)); | |
838 _GL_CXXALIAS_RPL (truncf, float, (float x)); | |
839 # else | |
840 # if !@HAVE_DECL_TRUNCF@ | |
13143
cdede380a9a1
math: Fix some C++ test errors on Solaris 8.
Bruno Haible <bruno@clisp.org>
parents:
13142
diff
changeset
|
841 _GL_FUNCDECL_SYS (truncf, float, (float x)); |
13979 | 842 # endif |
843 _GL_CXXALIAS_SYS (truncf, float, (float x)); | |
13143
cdede380a9a1
math: Fix some C++ test errors on Solaris 8.
Bruno Haible <bruno@clisp.org>
parents:
13142
diff
changeset
|
844 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
845 _GL_CXXALIASWARN (truncf); |
9285 | 846 #elif defined GNULIB_POSIXCHECK |
847 # undef truncf | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
848 # if HAVE_RAW_DECL_TRUNCF |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
849 _GL_WARN_ON_USE (truncf, "truncf is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
850 "use gnulib module truncf for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
851 # endif |
9285 | 852 #endif |
853 | |
9282 | 854 #if @GNULIB_TRUNC@ |
13983 | 855 # if @REPLACE_TRUNC@ |
856 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
857 # define trunc rpl_trunc | |
858 # endif | |
859 _GL_FUNCDECL_RPL (trunc, double, (double x)); | |
860 _GL_CXXALIAS_RPL (trunc, double, (double x)); | |
861 # else | |
862 # if !@HAVE_DECL_TRUNC@ | |
13143
cdede380a9a1
math: Fix some C++ test errors on Solaris 8.
Bruno Haible <bruno@clisp.org>
parents:
13142
diff
changeset
|
863 _GL_FUNCDECL_SYS (trunc, double, (double x)); |
13983 | 864 # endif |
865 _GL_CXXALIAS_SYS (trunc, double, (double x)); | |
13143
cdede380a9a1
math: Fix some C++ test errors on Solaris 8.
Bruno Haible <bruno@clisp.org>
parents:
13142
diff
changeset
|
866 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
867 _GL_CXXALIASWARN (trunc); |
9282 | 868 #elif defined GNULIB_POSIXCHECK |
869 # undef trunc | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
870 # if HAVE_RAW_DECL_TRUNC |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
871 _GL_WARN_ON_USE (trunc, "trunc is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
872 "use gnulib module trunc for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
873 # endif |
9282 | 874 #endif |
875 | |
9287 | 876 #if @GNULIB_TRUNCL@ |
9913
d3f5a70dc1ba
Make truncl work on OSF/1 4.0.
Bruno Haible <bruno@clisp.org>
parents:
9898
diff
changeset
|
877 # if @REPLACE_TRUNCL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
878 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
879 # undef truncl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
880 # define truncl rpl_truncl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
881 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
882 _GL_FUNCDECL_RPL (truncl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
883 _GL_CXXALIAS_RPL (truncl, long double, (long double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
884 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
885 # if !@HAVE_DECL_TRUNCL@ |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
886 _GL_FUNCDECL_SYS (truncl, long double, (long double x)); |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
887 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
888 _GL_CXXALIAS_SYS (truncl, long double, (long double x)); |
9287 | 889 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
890 _GL_CXXALIASWARN (truncl); |
9287 | 891 #elif defined GNULIB_POSIXCHECK |
892 # undef truncl | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
893 # if HAVE_RAW_DECL_TRUNCL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
894 _GL_WARN_ON_USE (truncl, "truncl is unportable - " |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
895 "use gnulib module truncl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
896 # endif |
9287 | 897 #endif |
898 | |
9418
5e7b33ec70ff
Add/remove some blank lines.
Bruno Haible <bruno@clisp.org>
parents:
9414
diff
changeset
|
899 |
15840
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
900 /* Definitions of function-like macros come here, after the function |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
901 declarations. */ |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
902 |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
903 |
9414
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
904 #if @GNULIB_ISFINITE@ |
9423
fa47aa8bb105
Use REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
Bruno Haible <bruno@clisp.org>
parents:
9420
diff
changeset
|
905 # if @REPLACE_ISFINITE@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
906 _GL_EXTERN_C int gl_isfinitef (float x); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
907 _GL_EXTERN_C int gl_isfinited (double x); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
908 _GL_EXTERN_C int gl_isfinitel (long double x); |
9414
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
909 # undef isfinite |
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
910 # define isfinite(x) \ |
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
911 (sizeof (x) == sizeof (long double) ? gl_isfinitel (x) : \ |
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
912 sizeof (x) == sizeof (double) ? gl_isfinited (x) : \ |
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
913 gl_isfinitef (x)) |
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
914 # endif |
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
915 #elif defined GNULIB_POSIXCHECK |
12726
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
916 # if defined isfinite |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
917 _GL_WARN_REAL_FLOATING_DECL (isfinite); |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
918 # undef isfinite |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
919 # define isfinite(x) _GL_WARN_REAL_FLOATING_IMPL (isfinite, x) |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
920 # endif |
9414
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
921 #endif |
9255 | 922 |
9418
5e7b33ec70ff
Add/remove some blank lines.
Bruno Haible <bruno@clisp.org>
parents:
9414
diff
changeset
|
923 |
10287 | 924 #if @GNULIB_ISINF@ |
925 # if @REPLACE_ISINF@ | |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
926 _GL_EXTERN_C int gl_isinff (float x); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
927 _GL_EXTERN_C int gl_isinfd (double x); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
928 _GL_EXTERN_C int gl_isinfl (long double x); |
10287 | 929 # undef isinf |
930 # define isinf(x) \ | |
931 (sizeof (x) == sizeof (long double) ? gl_isinfl (x) : \ | |
932 sizeof (x) == sizeof (double) ? gl_isinfd (x) : \ | |
933 gl_isinff (x)) | |
934 # endif | |
935 #elif defined GNULIB_POSIXCHECK | |
12726
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
936 # if defined isinf |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
937 _GL_WARN_REAL_FLOATING_DECL (isinf); |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
938 # undef isinf |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
939 # define isinf(x) _GL_WARN_REAL_FLOATING_IMPL (isinf, x) |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
940 # endif |
10287 | 941 #endif |
942 | |
943 | |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
944 #if @GNULIB_ISNANF@ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
945 /* Test for NaN for 'float' numbers. */ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
946 # if @HAVE_ISNANF@ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
947 /* The original <math.h> included above provides a declaration of isnan macro |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
948 or (older) isnanf function. */ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
949 # if __GNUC__ >= 4 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
950 /* GCC 4.0 and newer provides three built-ins for isnan. */ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
951 # undef isnanf |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
952 # define isnanf(x) __builtin_isnanf ((float)(x)) |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
953 # elif defined isnan |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
954 # undef isnanf |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
955 # define isnanf(x) isnan ((float)(x)) |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
956 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
957 # else |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
958 /* Test whether X is a NaN. */ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
959 # undef isnanf |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
960 # define isnanf rpl_isnanf |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
961 _GL_EXTERN_C int isnanf (float x); |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
962 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
963 #endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
964 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
965 #if @GNULIB_ISNAND@ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
966 /* Test for NaN for 'double' numbers. |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
967 This function is a gnulib extension, unlike isnan() which applied only |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
968 to 'double' numbers earlier but now is a type-generic macro. */ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
969 # if @HAVE_ISNAND@ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
970 /* The original <math.h> included above provides a declaration of isnan |
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
971 macro. */ |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
972 # if __GNUC__ >= 4 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
973 /* GCC 4.0 and newer provides three built-ins for isnan. */ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
974 # undef isnand |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
975 # define isnand(x) __builtin_isnan ((double)(x)) |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
976 # else |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
977 # undef isnand |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
978 # define isnand(x) isnan ((double)(x)) |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
979 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
980 # else |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
981 /* Test whether X is a NaN. */ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
982 # undef isnand |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
983 # define isnand rpl_isnand |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
984 _GL_EXTERN_C int isnand (double x); |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
985 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
986 #endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
987 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
988 #if @GNULIB_ISNANL@ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
989 /* Test for NaN for 'long double' numbers. */ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
990 # if @HAVE_ISNANL@ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
991 /* The original <math.h> included above provides a declaration of isnan |
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
992 macro or (older) isnanl function. */ |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
993 # if __GNUC__ >= 4 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
994 /* GCC 4.0 and newer provides three built-ins for isnan. */ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
995 # undef isnanl |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
996 # define isnanl(x) __builtin_isnanl ((long double)(x)) |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
997 # elif defined isnan |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
998 # undef isnanl |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
999 # define isnanl(x) isnan ((long double)(x)) |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1000 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1001 # else |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1002 /* Test whether X is a NaN. */ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1003 # undef isnanl |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1004 # define isnanl rpl_isnanl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1005 _GL_EXTERN_C int isnanl (long double x); |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1006 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1007 #endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1008 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1009 /* This must come *after* the snippets for GNULIB_ISNANF and GNULIB_ISNANL! */ |
10267 | 1010 #if @GNULIB_ISNAN@ |
1011 # if @REPLACE_ISNAN@ | |
1012 /* We can't just use the isnanf macro (e.g.) as exposed by | |
1013 isnanf.h (e.g.) here, because those may end up being macros | |
1014 that recursively expand back to isnan. So use the gnulib | |
1015 replacements for them directly. */ | |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1016 # if @HAVE_ISNANF@ && __GNUC__ >= 4 |
14060
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
1017 # define gl_isnan_f(x) __builtin_isnanf ((float)(x)) |
10267 | 1018 # else |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1019 _GL_EXTERN_C int rpl_isnanf (float x); |
10267 | 1020 # define gl_isnan_f(x) rpl_isnanf (x) |
1021 # endif | |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1022 # if @HAVE_ISNAND@ && __GNUC__ >= 4 |
10267 | 1023 # define gl_isnan_d(x) __builtin_isnan ((double)(x)) |
1024 # else | |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1025 _GL_EXTERN_C int rpl_isnand (double x); |
10267 | 1026 # define gl_isnan_d(x) rpl_isnand (x) |
1027 # endif | |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
1028 # if @HAVE_ISNANL@ && __GNUC__ >= 4 |
14060
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
1029 # define gl_isnan_l(x) __builtin_isnanl ((long double)(x)) |
10267 | 1030 # else |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1031 _GL_EXTERN_C int rpl_isnanl (long double x); |
10267 | 1032 # define gl_isnan_l(x) rpl_isnanl (x) |
1033 # endif | |
1034 # undef isnan | |
1035 # define isnan(x) \ | |
1036 (sizeof (x) == sizeof (long double) ? gl_isnan_l (x) : \ | |
1037 sizeof (x) == sizeof (double) ? gl_isnan_d (x) : \ | |
1038 gl_isnan_f (x)) | |
14060
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
1039 # elif __GNUC__ >= 4 |
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
1040 # undef isnan |
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
1041 # define isnan(x) \ |
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
1042 (sizeof (x) == sizeof (long double) ? __builtin_isnanl ((long double)(x)) : \ |
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
1043 sizeof (x) == sizeof (double) ? __builtin_isnan ((double)(x)) : \ |
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
1044 __builtin_isnanf ((float)(x))) |
10267 | 1045 # endif |
13960
51218504eb9d
isnan: Ensure it is a macro.
Bruno Haible <bruno@clisp.org>
parents:
13761
diff
changeset
|
1046 /* Ensure isnan is a macro. */ |
51218504eb9d
isnan: Ensure it is a macro.
Bruno Haible <bruno@clisp.org>
parents:
13761
diff
changeset
|
1047 # ifndef isnan |
51218504eb9d
isnan: Ensure it is a macro.
Bruno Haible <bruno@clisp.org>
parents:
13761
diff
changeset
|
1048 # define isnan isnan |
51218504eb9d
isnan: Ensure it is a macro.
Bruno Haible <bruno@clisp.org>
parents:
13761
diff
changeset
|
1049 # endif |
10267 | 1050 #elif defined GNULIB_POSIXCHECK |
12726
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
1051 # if defined isnan |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
1052 _GL_WARN_REAL_FLOATING_DECL (isnan); |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
1053 # undef isnan |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
1054 # define isnan(x) _GL_WARN_REAL_FLOATING_IMPL (isnan, x) |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
1055 # endif |
10267 | 1056 #endif |
1057 | |
1058 | |
9255 | 1059 #if @GNULIB_SIGNBIT@ |
9645
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
1060 # if @REPLACE_SIGNBIT_USING_GCC@ |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
1061 # undef signbit |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
1062 /* GCC 4.0 and newer provides three built-ins for signbit. */ |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
1063 # define signbit(x) \ |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
1064 (sizeof (x) == sizeof (long double) ? __builtin_signbitl (x) : \ |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
1065 sizeof (x) == sizeof (double) ? __builtin_signbit (x) : \ |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
1066 __builtin_signbitf (x)) |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
1067 # endif |
9255 | 1068 # if @REPLACE_SIGNBIT@ |
1069 # undef signbit | |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1070 _GL_EXTERN_C int gl_signbitf (float arg); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1071 _GL_EXTERN_C int gl_signbitd (double arg); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1072 _GL_EXTERN_C int gl_signbitl (long double arg); |
9255 | 1073 # if __GNUC__ >= 2 && !__STRICT_ANSI__ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
1074 # define _GL_NUM_UINT_WORDS(type) \ |
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
1075 ((sizeof (type) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) |
11506
d800366aa3fe
Avoid link error when creating a namespace clean library.
Bruno Haible <bruno@clisp.org>
parents:
10836
diff
changeset
|
1076 # if defined FLT_SIGNBIT_WORD && defined FLT_SIGNBIT_BIT && !defined gl_signbitf |
11525
0b09102d516e
Fix compilation error introduced on 2009-04-25.
Bruno Haible <bruno@clisp.org>
parents:
11506
diff
changeset
|
1077 # define gl_signbitf_OPTIMIZED_MACRO |
9255 | 1078 # define gl_signbitf(arg) \ |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
1079 ({ union { float _value; \ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
1080 unsigned int _word[_GL_NUM_UINT_WORDS (float)]; \ |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
1081 } _m; \ |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
1082 _m._value = (arg); \ |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
1083 (_m._word[FLT_SIGNBIT_WORD] >> FLT_SIGNBIT_BIT) & 1; \ |
9255 | 1084 }) |
1085 # endif | |
11506
d800366aa3fe
Avoid link error when creating a namespace clean library.
Bruno Haible <bruno@clisp.org>
parents:
10836
diff
changeset
|
1086 # if defined DBL_SIGNBIT_WORD && defined DBL_SIGNBIT_BIT && !defined gl_signbitd |
11525
0b09102d516e
Fix compilation error introduced on 2009-04-25.
Bruno Haible <bruno@clisp.org>
parents:
11506
diff
changeset
|
1087 # define gl_signbitd_OPTIMIZED_MACRO |
9255 | 1088 # define gl_signbitd(arg) \ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
1089 ({ union { double _value; \ |
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
1090 unsigned int _word[_GL_NUM_UINT_WORDS (double)]; \ |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
1091 } _m; \ |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
1092 _m._value = (arg); \ |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
1093 (_m._word[DBL_SIGNBIT_WORD] >> DBL_SIGNBIT_BIT) & 1; \ |
9255 | 1094 }) |
1095 # endif | |
11506
d800366aa3fe
Avoid link error when creating a namespace clean library.
Bruno Haible <bruno@clisp.org>
parents:
10836
diff
changeset
|
1096 # if defined LDBL_SIGNBIT_WORD && defined LDBL_SIGNBIT_BIT && !defined gl_signbitl |
11525
0b09102d516e
Fix compilation error introduced on 2009-04-25.
Bruno Haible <bruno@clisp.org>
parents:
11506
diff
changeset
|
1097 # define gl_signbitl_OPTIMIZED_MACRO |
9255 | 1098 # define gl_signbitl(arg) \ |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
1099 ({ union { long double _value; \ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
1100 unsigned int _word[_GL_NUM_UINT_WORDS (long double)]; \ |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
1101 } _m; \ |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
1102 _m._value = (arg); \ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
1103 (_m._word[LDBL_SIGNBIT_WORD] >> LDBL_SIGNBIT_BIT) & 1; \ |
9255 | 1104 }) |
1105 # endif | |
1106 # endif | |
1107 # define signbit(x) \ | |
1108 (sizeof (x) == sizeof (long double) ? gl_signbitl (x) : \ | |
1109 sizeof (x) == sizeof (double) ? gl_signbitd (x) : \ | |
1110 gl_signbitf (x)) | |
1111 # endif | |
1112 #elif defined GNULIB_POSIXCHECK | |
12726
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
1113 # if defined signbit |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
1114 _GL_WARN_REAL_FLOATING_DECL (signbit); |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
1115 # undef signbit |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
1116 # define signbit(x) _GL_WARN_REAL_FLOATING_IMPL (signbit, x) |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
1117 # endif |
9255 | 1118 #endif |
1119 | |
1120 | |
14840
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14274
diff
changeset
|
1121 #endif /* _@GUARD_PREFIX@_MATH_H */ |
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14274
diff
changeset
|
1122 #endif /* _@GUARD_PREFIX@_MATH_H */ |