Mercurial > hg > octave-kai > gnulib-hg
annotate lib/math.in.h @ 17160:72f4bab621be
fts: introduce FTS_VERBATIM
This gives clients the option to disable stripping of trailing slashes
from input path names during fts_open initialization.
The recent change v0.0-7611-g3a9002d that made fts_open strip trailing
slashes from input path names had a negative impact on findutils that
relies on the old fts_open behavior to implement POSIX requirement that
each path operand of the find utility shall be evaluated unaltered as it
was provided, including all trailing slash characters.
* lib/fts_.h (FTS_VERBATIM): New bit flag.
(FTS_OPTIONMASK, FTS_NAMEONLY, FTS_STOP): Adjust.
* lib/fts.c (fts_open): Honor it.
author | Dmitry V. Levin <ldv@altlinux.org> |
---|---|
date | Sun, 18 Nov 2012 04:40:18 +0400 |
parents | cd4aba7fcd3e |
children | 1b3c19ad4b17 |
rev | line source |
---|---|
9255 | 1 /* A GNU-like <math.h>. |
2 | |
16201
8250f2777afc
maint: update all copyright year number ranges
Jim Meyering <meyering@redhat.com>
parents:
16128
diff
changeset
|
3 Copyright (C) 2002-2003, 2007-2012 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 |
15982
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
38 #ifdef __cplusplus |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
39 /* Helper macros to define type-generic function FUNC as overloaded functions, |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
40 rather than as macros like in C. POSIX declares these with an argument of |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
41 real-floating (that is, one of float, double, or long double). */ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
42 # define _GL_MATH_CXX_REAL_FLOATING_DECL_1(func) \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
43 static inline int \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
44 _gl_cxx_ ## func ## f (float f) \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
45 { \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
46 return func (f); \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
47 } \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
48 static inline int \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
49 _gl_cxx_ ## func ## d (double d) \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
50 { \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
51 return func (d); \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
52 } \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
53 static inline int \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
54 _gl_cxx_ ## func ## l (long double l) \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
55 { \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
56 return func (l); \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
57 } |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
58 # define _GL_MATH_CXX_REAL_FLOATING_DECL_2(func) \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
59 inline int \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
60 func (float f) \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
61 { \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
62 return _gl_cxx_ ## func ## f (f); \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
63 } \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
64 inline int \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
65 func (double d) \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
66 { \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
67 return _gl_cxx_ ## func ## d (d); \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
68 } \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
69 inline int \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
70 func (long double l) \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
71 { \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
72 return _gl_cxx_ ## func ## l (l); \ |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
73 } |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
74 #endif |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
75 |
12726
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
76 /* 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
|
77 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
|
78 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
|
79 one of float, double, or long double). */ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
80 #define _GL_WARN_REAL_FLOATING_DECL(func) \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
81 static inline int \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
82 rpl_ ## func ## f (float f) \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
83 { \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
84 return func (f); \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
85 } \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
86 static inline int \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
87 rpl_ ## func ## d (double d) \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
88 { \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
89 return func (d); \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
90 } \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
91 static inline int \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
92 rpl_ ## func ## l (long double l) \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
93 { \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
94 return func (l); \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
95 } \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
96 _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
|
97 "use gnulib module " #func " for portability"); \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
98 _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
|
99 "use gnulib module " #func " for portability"); \ |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
100 _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
|
101 "use gnulib module " #func " for portability") |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
102 #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
|
103 (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
|
104 : 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
|
105 : rpl_ ## func ## l (value)) |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
106 |
9255 | 107 |
15803
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
108 #if @REPLACE_ITOLD@ |
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
109 /* 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
|
110 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
|
111 _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
|
112 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
|
113 #endif |
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
114 |
ec6332cd8838
float, math: Fix 'int' to 'long double' conversion on Linux/SPARC64.
Bruno Haible <bruno@clisp.org>
parents:
15638
diff
changeset
|
115 |
9850 | 116 /* POSIX allows platforms that don't support NAN. But all major |
117 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
|
118 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
|
119 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
|
120 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
|
121 #if !defined NAN || @REPLACE_NAN@ |
14274
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
122 # if !GNULIB_defined_NAN |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
123 # undef NAN |
15595
328819af1c02
Support for MSVC compiler: Avoid division by a literal 0.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
124 /* 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
|
125 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
|
126 # if defined __DECC || defined _MSC_VER |
9850 | 127 static float |
128 _NaN () | |
129 { | |
130 static float zero = 0.0f; | |
131 return zero / zero; | |
132 } | |
14274
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
133 # define NAN (_NaN()) |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
134 # else |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
135 # define NAN (0.0f / 0.0f) |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
136 # endif |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
137 # define GNULIB_defined_NAN 1 |
9850 | 138 # endif |
139 #endif | |
140 | |
9898
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
141 /* 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
|
142 than a floating point constant. */ |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
143 #if @REPLACE_HUGE_VAL@ |
16510
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
144 # undef HUGE_VALF |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
145 # define HUGE_VALF (1.0f / 0.0f) |
9898
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
146 # undef HUGE_VAL |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
147 # define HUGE_VAL (1.0 / 0.0) |
16510
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
148 # undef HUGE_VALL |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
149 # define HUGE_VALL (1.0L / 0.0L) |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
150 #endif |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
151 |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
152 /* HUGE_VALF is a 'float' Infinity. */ |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
153 #ifndef HUGE_VALF |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
154 # if defined _MSC_VER |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
155 /* The Microsoft MSVC 9 compiler chokes on the expression 1.0f / 0.0f. */ |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
156 # define HUGE_VALF (1e25f * 1e25f) |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
157 # else |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
158 # define HUGE_VALF (1.0f / 0.0f) |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
159 # endif |
9898
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
160 #endif |
02bfc9acab82
Work around Solaris 10 math.h bug.
Eric Blake <ebb9@byu.net>
parents:
9850
diff
changeset
|
161 |
16510
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
162 /* HUGE_VAL is a 'double' Infinity. */ |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
163 #ifndef HUGE_VAL |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
164 # if defined _MSC_VER |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
165 /* The Microsoft MSVC 9 compiler chokes on the expression 1.0 / 0.0. */ |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
166 # define HUGE_VAL (1e250 * 1e250) |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
167 # else |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
168 # define HUGE_VAL (1.0 / 0.0) |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
169 # endif |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
170 #endif |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
171 |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
172 /* HUGE_VALL is a 'long double' Infinity. */ |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
173 #ifndef HUGE_VALL |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
174 # if defined _MSC_VER |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
175 /* The Microsoft MSVC 9 compiler chokes on the expression 1.0L / 0.0L. */ |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
176 # define HUGE_VALL (1e250L * 1e250L) |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
177 # else |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
178 # define HUGE_VALL (1.0L / 0.0L) |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
179 # endif |
af909bf507e4
math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
Bruno Haible <bruno@clisp.org>
parents:
16499
diff
changeset
|
180 #endif |
12927
d3ea0f2aacfc
logb: Provide missing declaration for Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
12766
diff
changeset
|
181 |
16763
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
182 |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
183 /* Ensure FP_ILOGB0 and FP_ILOGBNAN are defined. */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
184 #if !(defined FP_ILOGB0 && defined FP_ILOGBNAN) |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
185 # if defined __NetBSD__ || defined __sgi |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
186 /* NetBSD, IRIX 6.5: match what ilogb() does */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
187 # define FP_ILOGB0 (- 2147483647 - 1) /* INT_MIN */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
188 # define FP_ILOGBNAN (- 2147483647 - 1) /* INT_MIN */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
189 # elif defined _AIX |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
190 /* AIX 5.1: match what ilogb() does in AIX >= 5.2 */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
191 # define FP_ILOGB0 (- 2147483647 - 1) /* INT_MIN */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
192 # define FP_ILOGBNAN 2147483647 /* INT_MAX */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
193 # elif defined __sun |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
194 /* Solaris 9: match what ilogb() does */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
195 # define FP_ILOGB0 (- 2147483647) /* - INT_MAX */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
196 # define FP_ILOGBNAN 2147483647 /* INT_MAX */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
197 # else |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
198 /* Gnulib defined values. */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
199 # define FP_ILOGB0 (- 2147483647) /* - INT_MAX */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
200 # define FP_ILOGBNAN (- 2147483647 - 1) /* INT_MIN */ |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
201 # endif |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
202 #endif |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
203 |
a56cad559c24
math: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible <bruno@clisp.org>
parents:
16755
diff
changeset
|
204 |
15884 | 205 #if @GNULIB_ACOSF@ |
206 # if !@HAVE_ACOSF@ | |
207 # undef acosf | |
208 _GL_FUNCDECL_SYS (acosf, float, (float x)); | |
209 # endif | |
210 _GL_CXXALIAS_SYS (acosf, float, (float x)); | |
211 _GL_CXXALIASWARN (acosf); | |
212 #elif defined GNULIB_POSIXCHECK | |
213 # undef acosf | |
214 # if HAVE_RAW_DECL_ACOSF | |
215 _GL_WARN_ON_USE (acosf, "acosf is unportable - " | |
216 "use gnulib module acosf for portability"); | |
217 # endif | |
218 #endif | |
219 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
220 #if @GNULIB_ACOSL@ |
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
221 # if !@HAVE_ACOSL@ || !@HAVE_DECL_ACOSL@ |
16401
2e3db69dec4a
acosl: Provide function definition on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16400
diff
changeset
|
222 # undef acosl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
223 _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
|
224 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
225 _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
|
226 _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
|
227 #elif defined GNULIB_POSIXCHECK |
9255 | 228 # undef acosl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
229 # if HAVE_RAW_DECL_ACOSL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
230 _GL_WARN_ON_USE (acosl, "acosl is unportable - " |
16579
de008bfc0e6d
math: Update module names in warnings.
Bruno Haible <bruno@clisp.org>
parents:
16545
diff
changeset
|
231 "use gnulib module acosl for portability"); |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
232 # endif |
9255 | 233 #endif |
234 | |
9285 | 235 |
15881 | 236 #if @GNULIB_ASINF@ |
237 # if !@HAVE_ASINF@ | |
238 # undef asinf | |
239 _GL_FUNCDECL_SYS (asinf, float, (float x)); | |
240 # endif | |
241 _GL_CXXALIAS_SYS (asinf, float, (float x)); | |
242 _GL_CXXALIASWARN (asinf); | |
243 #elif defined GNULIB_POSIXCHECK | |
244 # undef asinf | |
245 # if HAVE_RAW_DECL_ASINF | |
246 _GL_WARN_ON_USE (asinf, "asinf is unportable - " | |
247 "use gnulib module asinf for portability"); | |
248 # endif | |
249 #endif | |
250 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
251 #if @GNULIB_ASINL@ |
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
252 # if !@HAVE_ASINL@ || !@HAVE_DECL_ASINL@ |
16400
7f26a7ed91f4
asinl: Provide function definition on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16399
diff
changeset
|
253 # undef asinl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
254 _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
|
255 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
256 _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
|
257 _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
|
258 #elif defined GNULIB_POSIXCHECK |
9255 | 259 # undef asinl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
260 # if HAVE_RAW_DECL_ASINL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
261 _GL_WARN_ON_USE (asinl, "asinl is unportable - " |
16579
de008bfc0e6d
math: Update module names in warnings.
Bruno Haible <bruno@clisp.org>
parents:
16545
diff
changeset
|
262 "use gnulib module asinl for portability"); |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
263 # endif |
9255 | 264 #endif |
265 | |
9285 | 266 |
15887 | 267 #if @GNULIB_ATANF@ |
268 # if !@HAVE_ATANF@ | |
269 # undef atanf | |
270 _GL_FUNCDECL_SYS (atanf, float, (float x)); | |
271 # endif | |
272 _GL_CXXALIAS_SYS (atanf, float, (float x)); | |
273 _GL_CXXALIASWARN (atanf); | |
274 #elif defined GNULIB_POSIXCHECK | |
275 # undef atanf | |
276 # if HAVE_RAW_DECL_ATANF | |
277 _GL_WARN_ON_USE (atanf, "atanf is unportable - " | |
278 "use gnulib module atanf for portability"); | |
279 # endif | |
280 #endif | |
281 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
282 #if @GNULIB_ATANL@ |
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
283 # if !@HAVE_ATANL@ || !@HAVE_DECL_ATANL@ |
16402
2c3775efa261
atanl: Provide function definition on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16401
diff
changeset
|
284 # undef atanl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
285 _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
|
286 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
287 _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
|
288 _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
|
289 #elif defined GNULIB_POSIXCHECK |
9255 | 290 # undef atanl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
291 # if HAVE_RAW_DECL_ATANL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
292 _GL_WARN_ON_USE (atanl, "atanl is unportable - " |
16579
de008bfc0e6d
math: Update module names in warnings.
Bruno Haible <bruno@clisp.org>
parents:
16545
diff
changeset
|
293 "use gnulib module atanl for portability"); |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
294 # endif |
9255 | 295 #endif |
296 | |
9285 | 297 |
15890 | 298 #if @GNULIB_ATAN2F@ |
299 # if !@HAVE_ATAN2F@ | |
300 # undef atan2f | |
301 _GL_FUNCDECL_SYS (atan2f, float, (float y, float x)); | |
302 # endif | |
303 _GL_CXXALIAS_SYS (atan2f, float, (float y, float x)); | |
304 _GL_CXXALIASWARN (atan2f); | |
305 #elif defined GNULIB_POSIXCHECK | |
306 # undef atan2f | |
307 # if HAVE_RAW_DECL_ATAN2F | |
308 _GL_WARN_ON_USE (atan2f, "atan2f is unportable - " | |
309 "use gnulib module atan2f for portability"); | |
310 # endif | |
311 #endif | |
312 | |
313 | |
16534 | 314 #if @GNULIB_CBRTF@ |
16538
06da3fa23cf9
cbrtf: Work around bug in IRIX 6.5 system function.
Bruno Haible <bruno@clisp.org>
parents:
16536
diff
changeset
|
315 # if @REPLACE_CBRTF@ |
06da3fa23cf9
cbrtf: Work around bug in IRIX 6.5 system function.
Bruno Haible <bruno@clisp.org>
parents:
16536
diff
changeset
|
316 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
06da3fa23cf9
cbrtf: Work around bug in IRIX 6.5 system function.
Bruno Haible <bruno@clisp.org>
parents:
16536
diff
changeset
|
317 # undef cbrtf |
06da3fa23cf9
cbrtf: Work around bug in IRIX 6.5 system function.
Bruno Haible <bruno@clisp.org>
parents:
16536
diff
changeset
|
318 # define cbrtf rpl_cbrtf |
06da3fa23cf9
cbrtf: Work around bug in IRIX 6.5 system function.
Bruno Haible <bruno@clisp.org>
parents:
16536
diff
changeset
|
319 # endif |
06da3fa23cf9
cbrtf: Work around bug in IRIX 6.5 system function.
Bruno Haible <bruno@clisp.org>
parents:
16536
diff
changeset
|
320 _GL_FUNCDECL_RPL (cbrtf, float, (float x)); |
06da3fa23cf9
cbrtf: Work around bug in IRIX 6.5 system function.
Bruno Haible <bruno@clisp.org>
parents:
16536
diff
changeset
|
321 _GL_CXXALIAS_RPL (cbrtf, float, (float x)); |
06da3fa23cf9
cbrtf: Work around bug in IRIX 6.5 system function.
Bruno Haible <bruno@clisp.org>
parents:
16536
diff
changeset
|
322 # else |
06da3fa23cf9
cbrtf: Work around bug in IRIX 6.5 system function.
Bruno Haible <bruno@clisp.org>
parents:
16536
diff
changeset
|
323 # if !@HAVE_DECL_CBRTF@ |
16534 | 324 _GL_FUNCDECL_SYS (cbrtf, float, (float x)); |
16538
06da3fa23cf9
cbrtf: Work around bug in IRIX 6.5 system function.
Bruno Haible <bruno@clisp.org>
parents:
16536
diff
changeset
|
325 # endif |
06da3fa23cf9
cbrtf: Work around bug in IRIX 6.5 system function.
Bruno Haible <bruno@clisp.org>
parents:
16536
diff
changeset
|
326 _GL_CXXALIAS_SYS (cbrtf, float, (float x)); |
16534 | 327 # endif |
328 _GL_CXXALIASWARN (cbrtf); | |
329 #elif defined GNULIB_POSIXCHECK | |
330 # undef cbrtf | |
331 # if HAVE_RAW_DECL_CBRTF | |
332 _GL_WARN_ON_USE (cbrtf, "cbrtf is unportable - " | |
333 "use gnulib module cbrtf for portability"); | |
334 # endif | |
335 #endif | |
336 | |
16533
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
337 #if @GNULIB_CBRT@ |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
338 # if !@HAVE_CBRT@ |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
339 _GL_FUNCDECL_SYS (cbrt, double, (double x)); |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
340 # endif |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
341 _GL_CXXALIAS_SYS (cbrt, double, (double x)); |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
342 _GL_CXXALIASWARN (cbrt); |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
343 #elif defined GNULIB_POSIXCHECK |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
344 # undef cbrt |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
345 # if HAVE_RAW_DECL_CBRT |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
346 _GL_WARN_ON_USE (cbrt, "cbrt is unportable - " |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
347 "use gnulib module cbrt for portability"); |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
348 # endif |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
349 #endif |
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
350 |
16536 | 351 #if @GNULIB_CBRTL@ |
16545
c71947bf23ab
cbrtl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16538
diff
changeset
|
352 # if @REPLACE_CBRTL@ |
c71947bf23ab
cbrtl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16538
diff
changeset
|
353 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
c71947bf23ab
cbrtl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16538
diff
changeset
|
354 # undef cbrtl |
c71947bf23ab
cbrtl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16538
diff
changeset
|
355 # define cbrtl rpl_cbrtl |
c71947bf23ab
cbrtl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16538
diff
changeset
|
356 # endif |
c71947bf23ab
cbrtl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16538
diff
changeset
|
357 _GL_FUNCDECL_RPL (cbrtl, long double, (long double x)); |
c71947bf23ab
cbrtl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16538
diff
changeset
|
358 _GL_CXXALIAS_RPL (cbrtl, long double, (long double x)); |
c71947bf23ab
cbrtl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16538
diff
changeset
|
359 # else |
c71947bf23ab
cbrtl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16538
diff
changeset
|
360 # if !@HAVE_DECL_CBRTL@ |
16536 | 361 _GL_FUNCDECL_SYS (cbrtl, long double, (long double x)); |
16545
c71947bf23ab
cbrtl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16538
diff
changeset
|
362 # endif |
c71947bf23ab
cbrtl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16538
diff
changeset
|
363 _GL_CXXALIAS_SYS (cbrtl, long double, (long double x)); |
16536 | 364 # endif |
365 _GL_CXXALIASWARN (cbrtl); | |
366 #elif defined GNULIB_POSIXCHECK | |
367 # undef cbrtl | |
368 # if HAVE_RAW_DECL_CBRTL | |
369 _GL_WARN_ON_USE (cbrtl, "cbrtl is unportable - " | |
370 "use gnulib module cbrtl for portability"); | |
371 # endif | |
372 #endif | |
373 | |
16533
d91850ca525f
cbrt: Provide replacement on MSVC and Minix.
Bruno Haible <bruno@clisp.org>
parents:
16532
diff
changeset
|
374 |
9295 | 375 #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
|
376 # if @REPLACE_CEILF@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
377 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
378 # undef ceilf |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
379 # define ceilf rpl_ceilf |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
380 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
381 _GL_FUNCDECL_RPL (ceilf, float, (float x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
382 _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
|
383 # else |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
384 # if !@HAVE_DECL_CEILF@ |
16391
4576be79e9e7
ceilf: Provide function definition on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16390
diff
changeset
|
385 # undef ceilf |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
386 _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
|
387 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
388 _GL_CXXALIAS_SYS (ceilf, float, (float x)); |
9295 | 389 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
390 _GL_CXXALIASWARN (ceilf); |
9295 | 391 #elif defined GNULIB_POSIXCHECK |
392 # undef ceilf | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
393 # if HAVE_RAW_DECL_CEILF |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
394 _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
|
395 "use gnulib module ceilf for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
396 # endif |
9295 | 397 #endif |
398 | |
13982 | 399 #if @GNULIB_CEIL@ |
400 # if @REPLACE_CEIL@ | |
401 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
402 # define ceil rpl_ceil | |
403 # endif | |
404 _GL_FUNCDECL_RPL (ceil, double, (double x)); | |
405 _GL_CXXALIAS_RPL (ceil, double, (double x)); | |
406 # else | |
407 _GL_CXXALIAS_SYS (ceil, double, (double x)); | |
408 # endif | |
409 _GL_CXXALIASWARN (ceil); | |
410 #endif | |
411 | |
9297 | 412 #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
|
413 # if @REPLACE_CEILL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
414 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
415 # undef ceill |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
416 # define ceill rpl_ceill |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
417 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
418 _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
|
419 _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
|
420 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
421 # if !@HAVE_DECL_CEILL@ |
16393
43820240f265
ceill: Provide function definition on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16392
diff
changeset
|
422 # undef ceill |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
423 _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
|
424 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
425 _GL_CXXALIAS_SYS (ceill, long double, (long double x)); |
9297 | 426 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
427 _GL_CXXALIASWARN (ceill); |
9297 | 428 #elif defined GNULIB_POSIXCHECK |
9255 | 429 # undef ceill |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
430 # if HAVE_RAW_DECL_CEILL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
431 _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
|
432 "use gnulib module ceill for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
433 # endif |
9255 | 434 #endif |
435 | |
9285 | 436 |
15911 | 437 #if @GNULIB_COPYSIGNF@ |
16599
281cc716033c
copysignf: Don't override undeclared system function on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16588
diff
changeset
|
438 # if !@HAVE_DECL_COPYSIGNF@ |
15911 | 439 _GL_FUNCDECL_SYS (copysignf, float, (float x, float y)); |
440 # endif | |
441 _GL_CXXALIAS_SYS (copysignf, float, (float x, float y)); | |
442 _GL_CXXALIASWARN (copysignf); | |
443 #elif defined GNULIB_POSIXCHECK | |
444 # undef copysignf | |
445 # if HAVE_RAW_DECL_COPYSIGNF | |
446 _GL_WARN_ON_USE (copysignf, "copysignf is unportable - " | |
447 "use gnulib module copysignf for portability"); | |
448 # endif | |
449 #endif | |
450 | |
451 #if @GNULIB_COPYSIGN@ | |
452 # if !@HAVE_COPYSIGN@ | |
453 _GL_FUNCDECL_SYS (copysign, double, (double x, double y)); | |
454 # endif | |
455 _GL_CXXALIAS_SYS (copysign, double, (double x, double y)); | |
456 _GL_CXXALIASWARN (copysign); | |
457 #elif defined GNULIB_POSIXCHECK | |
458 # undef copysign | |
459 # if HAVE_RAW_DECL_COPYSIGN | |
460 _GL_WARN_ON_USE (copysign, "copysign is unportable - " | |
461 "use gnulib module copysign for portability"); | |
462 # endif | |
463 #endif | |
464 | |
15913 | 465 #if @GNULIB_COPYSIGNL@ |
466 # if !@HAVE_COPYSIGNL@ | |
467 _GL_FUNCDECL_SYS (copysignl, long double, (long double x, long double y)); | |
468 # endif | |
469 _GL_CXXALIAS_SYS (copysignl, long double, (long double x, long double y)); | |
470 _GL_CXXALIASWARN (copysignl); | |
471 #elif defined GNULIB_POSIXCHECK | |
472 # undef copysignl | |
473 # if HAVE_RAW_DECL_COPYSIGNL | |
474 _GL_WARN_ON_USE (copysign, "copysignl is unportable - " | |
475 "use gnulib module copysignl for portability"); | |
476 # endif | |
477 #endif | |
478 | |
15911 | 479 |
15875 | 480 #if @GNULIB_COSF@ |
481 # if !@HAVE_COSF@ | |
482 # undef cosf | |
483 _GL_FUNCDECL_SYS (cosf, float, (float x)); | |
484 # endif | |
485 _GL_CXXALIAS_SYS (cosf, float, (float x)); | |
486 _GL_CXXALIASWARN (cosf); | |
487 #elif defined GNULIB_POSIXCHECK | |
488 # undef cosf | |
489 # if HAVE_RAW_DECL_COSF | |
490 _GL_WARN_ON_USE (cosf, "cosf is unportable - " | |
491 "use gnulib module cosf for portability"); | |
492 # endif | |
493 #endif | |
494 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
495 #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
|
496 # if !@HAVE_COSL@ || !@HAVE_DECL_COSL@ |
16398
5c120a4f2e73
cosl: Provide function definition on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16397
diff
changeset
|
497 # undef cosl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
498 _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
|
499 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
500 _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
|
501 _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
|
502 #elif defined GNULIB_POSIXCHECK |
9255 | 503 # undef cosl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
504 # if HAVE_RAW_DECL_COSL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
505 _GL_WARN_ON_USE (cosl, "cosl is unportable - " |
16579
de008bfc0e6d
math: Update module names in warnings.
Bruno Haible <bruno@clisp.org>
parents:
16545
diff
changeset
|
506 "use gnulib module cosl for portability"); |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
507 # endif |
9255 | 508 #endif |
509 | |
9285 | 510 |
15896 | 511 #if @GNULIB_COSHF@ |
512 # if !@HAVE_COSHF@ | |
513 # undef coshf | |
514 _GL_FUNCDECL_SYS (coshf, float, (float x)); | |
515 # endif | |
516 _GL_CXXALIAS_SYS (coshf, float, (float x)); | |
517 _GL_CXXALIASWARN (coshf); | |
518 #elif defined GNULIB_POSIXCHECK | |
519 # undef coshf | |
520 # if HAVE_RAW_DECL_COSHF | |
521 _GL_WARN_ON_USE (coshf, "coshf is unportable - " | |
522 "use gnulib module coshf for portability"); | |
523 # endif | |
524 #endif | |
525 | |
526 | |
15860 | 527 #if @GNULIB_EXPF@ |
528 # if !@HAVE_EXPF@ | |
529 # undef expf | |
530 _GL_FUNCDECL_SYS (expf, float, (float x)); | |
531 # endif | |
532 _GL_CXXALIAS_SYS (expf, float, (float x)); | |
533 _GL_CXXALIASWARN (expf); | |
534 #elif defined GNULIB_POSIXCHECK | |
535 # undef expf | |
536 # if HAVE_RAW_DECL_EXPF | |
537 _GL_WARN_ON_USE (expf, "expf is unportable - " | |
538 "use gnulib module expf for portability"); | |
539 # endif | |
540 #endif | |
541 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
542 #if @GNULIB_EXPL@ |
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
543 # if !@HAVE_EXPL@ || !@HAVE_DECL_EXPL@ |
16395
68bd0cc2f6dd
expl: Provide function definition on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16394
diff
changeset
|
544 # undef expl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
545 _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
|
546 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
547 _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
|
548 _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
|
549 #elif defined GNULIB_POSIXCHECK |
9255 | 550 # undef expl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
551 # if HAVE_RAW_DECL_EXPL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
552 _GL_WARN_ON_USE (expl, "expl is unportable - " |
16579
de008bfc0e6d
math: Update module names in warnings.
Bruno Haible <bruno@clisp.org>
parents:
16545
diff
changeset
|
553 "use gnulib module expl for portability"); |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
554 # endif |
9255 | 555 #endif |
556 | |
9285 | 557 |
16618 | 558 #if @GNULIB_EXP2F@ |
559 # if !@HAVE_DECL_EXP2F@ | |
560 _GL_FUNCDECL_SYS (exp2f, float, (float x)); | |
561 # endif | |
562 _GL_CXXALIAS_SYS (exp2f, float, (float x)); | |
563 _GL_CXXALIASWARN (exp2f); | |
564 #elif defined GNULIB_POSIXCHECK | |
565 # undef exp2f | |
566 # if HAVE_RAW_DECL_EXP2F | |
567 _GL_WARN_ON_USE (exp2f, "exp2f is unportable - " | |
568 "use gnulib module exp2f for portability"); | |
569 # endif | |
570 #endif | |
571 | |
16616 | 572 #if @GNULIB_EXP2@ |
573 # if @REPLACE_EXP2@ | |
574 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
575 # undef exp2 | |
576 # define exp2 rpl_exp2 | |
577 # endif | |
578 _GL_FUNCDECL_RPL (exp2, double, (double x)); | |
579 _GL_CXXALIAS_RPL (exp2, double, (double x)); | |
580 # else | |
581 # if !@HAVE_DECL_EXP2@ | |
582 _GL_FUNCDECL_SYS (exp2, double, (double x)); | |
583 # endif | |
584 _GL_CXXALIAS_SYS (exp2, double, (double x)); | |
585 # endif | |
586 _GL_CXXALIASWARN (exp2); | |
587 #elif defined GNULIB_POSIXCHECK | |
588 # undef exp2 | |
589 # if HAVE_RAW_DECL_EXP2 | |
590 _GL_WARN_ON_USE (exp2, "exp2 is unportable - " | |
591 "use gnulib module exp2 for portability"); | |
592 # endif | |
593 #endif | |
594 | |
16620 | 595 #if @GNULIB_EXP2L@ |
16628
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
596 # if @REPLACE_EXP2L@ |
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
597 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
598 # undef exp2l |
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
599 # define exp2l rpl_exp2l |
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
600 # endif |
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
601 _GL_FUNCDECL_RPL (exp2l, long double, (long double x)); |
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
602 _GL_CXXALIAS_RPL (exp2l, long double, (long double x)); |
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
603 # else |
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
604 # if !@HAVE_DECL_EXP2L@ |
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
605 # undef exp2l |
16620 | 606 _GL_FUNCDECL_SYS (exp2l, long double, (long double x)); |
16628
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
607 # endif |
d19d163c1519
exp2l-ieee: Work around test failure on OpenBSD 4.9 and IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16620
diff
changeset
|
608 _GL_CXXALIAS_SYS (exp2l, long double, (long double x)); |
16620 | 609 # endif |
610 _GL_CXXALIASWARN (exp2l); | |
611 #elif defined GNULIB_POSIXCHECK | |
612 # undef exp2l | |
613 # if HAVE_RAW_DECL_EXP2L | |
614 _GL_WARN_ON_USE (exp2l, "exp2l is unportable - " | |
615 "use gnulib module exp2l for portability"); | |
616 # endif | |
617 #endif | |
618 | |
16616 | 619 |
16583 | 620 #if @GNULIB_EXPM1F@ |
16587
d71dacc1f7e0
Work around expm1f bug on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16585
diff
changeset
|
621 # if @REPLACE_EXPM1F@ |
d71dacc1f7e0
Work around expm1f bug on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16585
diff
changeset
|
622 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
d71dacc1f7e0
Work around expm1f bug on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16585
diff
changeset
|
623 # undef expm1f |
d71dacc1f7e0
Work around expm1f bug on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16585
diff
changeset
|
624 # define expm1f rpl_expm1f |
d71dacc1f7e0
Work around expm1f bug on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16585
diff
changeset
|
625 # endif |
d71dacc1f7e0
Work around expm1f bug on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16585
diff
changeset
|
626 _GL_FUNCDECL_RPL (expm1f, float, (float x)); |
d71dacc1f7e0
Work around expm1f bug on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16585
diff
changeset
|
627 _GL_CXXALIAS_RPL (expm1f, float, (float x)); |
d71dacc1f7e0
Work around expm1f bug on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16585
diff
changeset
|
628 # else |
d71dacc1f7e0
Work around expm1f bug on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16585
diff
changeset
|
629 # if !@HAVE_EXPM1F@ |
16583 | 630 _GL_FUNCDECL_SYS (expm1f, float, (float x)); |
16587
d71dacc1f7e0
Work around expm1f bug on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16585
diff
changeset
|
631 # endif |
d71dacc1f7e0
Work around expm1f bug on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16585
diff
changeset
|
632 _GL_CXXALIAS_SYS (expm1f, float, (float x)); |
16583 | 633 # endif |
634 _GL_CXXALIASWARN (expm1f); | |
635 #elif defined GNULIB_POSIXCHECK | |
636 # undef expm1f | |
637 # if HAVE_RAW_DECL_EXPM1F | |
638 _GL_WARN_ON_USE (expm1f, "expm1f is unportable - " | |
639 "use gnulib module expm1f for portability"); | |
640 # endif | |
641 #endif | |
642 | |
16581 | 643 #if @GNULIB_EXPM1@ |
16588 | 644 # if @REPLACE_EXPM1@ |
645 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
646 # undef expm1 | |
647 # define expm1 rpl_expm1 | |
648 # endif | |
649 _GL_FUNCDECL_RPL (expm1, double, (double x)); | |
650 _GL_CXXALIAS_RPL (expm1, double, (double x)); | |
651 # else | |
652 # if !@HAVE_EXPM1@ | |
16581 | 653 _GL_FUNCDECL_SYS (expm1, double, (double x)); |
16588 | 654 # endif |
655 _GL_CXXALIAS_SYS (expm1, double, (double x)); | |
16581 | 656 # endif |
657 _GL_CXXALIASWARN (expm1); | |
658 #elif defined GNULIB_POSIXCHECK | |
659 # undef expm1 | |
660 # if HAVE_RAW_DECL_EXPM1 | |
661 _GL_WARN_ON_USE (expm1, "expm1 is unportable - " | |
662 "use gnulib module expm1 for portability"); | |
663 # endif | |
664 #endif | |
665 | |
16585 | 666 #if @GNULIB_EXPM1L@ |
16606
c65f617394a7
expm1l: Don't override undeclared system function on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16605
diff
changeset
|
667 # if !@HAVE_DECL_EXPM1L@ |
16607
8b3e493a6849
expm1l: Avoid compilation error on AIX.
Bruno Haible <bruno@clisp.org>
parents:
16606
diff
changeset
|
668 # undef expm1l |
16585 | 669 _GL_FUNCDECL_SYS (expm1l, long double, (long double x)); |
670 # endif | |
671 _GL_CXXALIAS_SYS (expm1l, long double, (long double x)); | |
672 _GL_CXXALIASWARN (expm1l); | |
673 #elif defined GNULIB_POSIXCHECK | |
674 # undef expm1l | |
675 # if HAVE_RAW_DECL_EXPM1L | |
676 _GL_WARN_ON_USE (expm1l, "expm1l is unportable - " | |
677 "use gnulib module expm1l for portability"); | |
678 # endif | |
679 #endif | |
680 | |
16581 | 681 |
15828 | 682 #if @GNULIB_FABSF@ |
683 # if !@HAVE_FABSF@ | |
684 # undef fabsf | |
685 _GL_FUNCDECL_SYS (fabsf, float, (float x)); | |
686 # endif | |
687 _GL_CXXALIAS_SYS (fabsf, float, (float x)); | |
688 _GL_CXXALIASWARN (fabsf); | |
689 #elif defined GNULIB_POSIXCHECK | |
690 # undef fabsf | |
691 # if HAVE_RAW_DECL_FABSF | |
692 _GL_WARN_ON_USE (fabsf, "fabsf is unportable - " | |
693 "use gnulib module fabsf for portability"); | |
694 # endif | |
695 #endif | |
696 | |
16405 | 697 #if @GNULIB_FABSL@ |
698 # if @REPLACE_FABSL@ | |
699 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
700 # undef fabsl | |
701 # define fabsl rpl_fabsl | |
702 # endif | |
703 _GL_FUNCDECL_RPL (fabsl, long double, (long double x)); | |
704 _GL_CXXALIAS_RPL (fabsl, long double, (long double x)); | |
705 # else | |
706 # if !@HAVE_FABSL@ | |
707 # undef fabsl | |
708 _GL_FUNCDECL_SYS (fabsl, long double, (long double x)); | |
709 # endif | |
710 _GL_CXXALIAS_SYS (fabsl, long double, (long double x)); | |
711 # endif | |
712 _GL_CXXALIASWARN (fabsl); | |
713 #elif defined GNULIB_POSIXCHECK | |
714 # undef fabsl | |
715 # if HAVE_RAW_DECL_FABSL | |
716 _GL_WARN_ON_USE (fabsl, "fabsl is unportable - " | |
717 "use gnulib module fabsl for portability"); | |
718 # endif | |
719 #endif | |
720 | |
15828 | 721 |
9291 | 722 #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
|
723 # if @REPLACE_FLOORF@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
724 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
725 # undef floorf |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
726 # define floorf rpl_floorf |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
727 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
728 _GL_FUNCDECL_RPL (floorf, float, (float x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
729 _GL_CXXALIAS_RPL (floorf, float, (float x)); |
13973 | 730 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
731 # if !@HAVE_DECL_FLOORF@ |
16390
60e9584368df
floorf: Provide function definition on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16201
diff
changeset
|
732 # undef floorf |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
733 _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
|
734 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
735 _GL_CXXALIAS_SYS (floorf, float, (float x)); |
9291 | 736 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
737 _GL_CXXALIASWARN (floorf); |
9291 | 738 #elif defined GNULIB_POSIXCHECK |
739 # undef floorf | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
740 # if HAVE_RAW_DECL_FLOORF |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
741 _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
|
742 "use gnulib module floorf for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
743 # endif |
9291 | 744 #endif |
745 | |
13981 | 746 #if @GNULIB_FLOOR@ |
747 # if @REPLACE_FLOOR@ | |
748 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
749 # define floor rpl_floor | |
750 # endif | |
751 _GL_FUNCDECL_RPL (floor, double, (double x)); | |
752 _GL_CXXALIAS_RPL (floor, double, (double x)); | |
753 # else | |
754 _GL_CXXALIAS_SYS (floor, double, (double x)); | |
755 # endif | |
756 _GL_CXXALIASWARN (floor); | |
757 #endif | |
758 | |
9293 | 759 #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
|
760 # if @REPLACE_FLOORL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
761 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
762 # undef floorl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
763 # define floorl rpl_floorl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
764 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
765 _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
|
766 _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
|
767 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
768 # if !@HAVE_DECL_FLOORL@ |
16392
7e35e3b2a920
floorl: Provide function definition on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16391
diff
changeset
|
769 # undef floorl |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
770 _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
|
771 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
772 _GL_CXXALIAS_SYS (floorl, long double, (long double x)); |
9293 | 773 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
774 _GL_CXXALIASWARN (floorl); |
9293 | 775 #elif defined GNULIB_POSIXCHECK |
9255 | 776 # undef floorl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
777 # if HAVE_RAW_DECL_FLOORL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
778 _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
|
779 "use gnulib module floorl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
780 # endif |
9255 | 781 #endif |
782 | |
9285 | 783 |
16040 | 784 #if @GNULIB_FMAF@ |
785 # if @REPLACE_FMAF@ | |
786 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
787 # undef fmaf | |
788 # define fmaf rpl_fmaf | |
789 # endif | |
790 _GL_FUNCDECL_RPL (fmaf, float, (float x, float y, float z)); | |
791 _GL_CXXALIAS_RPL (fmaf, float, (float x, float y, float z)); | |
792 # else | |
793 # if !@HAVE_FMAF@ | |
794 _GL_FUNCDECL_SYS (fmaf, float, (float x, float y, float z)); | |
795 # endif | |
796 _GL_CXXALIAS_SYS (fmaf, float, (float x, float y, float z)); | |
797 # endif | |
798 _GL_CXXALIASWARN (fmaf); | |
799 #elif defined GNULIB_POSIXCHECK | |
800 # undef fmaf | |
801 # if HAVE_RAW_DECL_FMAF | |
802 _GL_WARN_ON_USE (fmaf, "fmaf is unportable - " | |
803 "use gnulib module fmaf for portability"); | |
804 # endif | |
805 #endif | |
806 | |
16038 | 807 #if @GNULIB_FMA@ |
808 # if @REPLACE_FMA@ | |
809 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
810 # undef fma | |
811 # define fma rpl_fma | |
812 # endif | |
813 _GL_FUNCDECL_RPL (fma, double, (double x, double y, double z)); | |
814 _GL_CXXALIAS_RPL (fma, double, (double x, double y, double z)); | |
815 # else | |
816 # if !@HAVE_FMA@ | |
817 _GL_FUNCDECL_SYS (fma, double, (double x, double y, double z)); | |
818 # endif | |
819 _GL_CXXALIAS_SYS (fma, double, (double x, double y, double z)); | |
820 # endif | |
821 _GL_CXXALIASWARN (fma); | |
822 #elif defined GNULIB_POSIXCHECK | |
823 # undef fma | |
824 # if HAVE_RAW_DECL_FMA | |
825 _GL_WARN_ON_USE (fma, "fma is unportable - " | |
826 "use gnulib module fma for portability"); | |
827 # endif | |
828 #endif | |
829 | |
16042 | 830 #if @GNULIB_FMAL@ |
831 # if @REPLACE_FMAL@ | |
832 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
833 # undef fmal | |
834 # define fmal rpl_fmal | |
835 # endif | |
836 _GL_FUNCDECL_RPL (fmal, long double, | |
837 (long double x, long double y, long double z)); | |
838 _GL_CXXALIAS_RPL (fmal, long double, | |
839 (long double x, long double y, long double z)); | |
840 # else | |
841 # if !@HAVE_FMAL@ | |
16612
a3a0882402d7
fmal: Avoid compilation error on AIX.
Bruno Haible <bruno@clisp.org>
parents:
16607
diff
changeset
|
842 # undef fmal |
16042 | 843 _GL_FUNCDECL_SYS (fmal, long double, |
844 (long double x, long double y, long double z)); | |
845 # endif | |
846 _GL_CXXALIAS_SYS (fmal, long double, | |
847 (long double x, long double y, long double z)); | |
848 # endif | |
849 _GL_CXXALIASWARN (fmal); | |
850 #elif defined GNULIB_POSIXCHECK | |
851 # undef fmal | |
852 # if HAVE_RAW_DECL_FMAL | |
853 _GL_WARN_ON_USE (fmal, "fmal is unportable - " | |
854 "use gnulib module fmal for portability"); | |
855 # endif | |
856 #endif | |
857 | |
16038 | 858 |
15832 | 859 #if @GNULIB_FMODF@ |
16488
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
860 # if @REPLACE_FMODF@ |
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
861 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
862 # undef fmodf |
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
863 # define fmodf rpl_fmodf |
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
864 # endif |
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
865 _GL_FUNCDECL_RPL (fmodf, float, (float x, float y)); |
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
866 _GL_CXXALIAS_RPL (fmodf, float, (float x, float y)); |
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
867 # else |
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
868 # if !@HAVE_FMODF@ |
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
869 # undef fmodf |
15832 | 870 _GL_FUNCDECL_SYS (fmodf, float, (float x, float y)); |
16488
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
871 # endif |
8bed60fd8e6c
fmodf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16486
diff
changeset
|
872 _GL_CXXALIAS_SYS (fmodf, float, (float x, float y)); |
15832 | 873 # endif |
874 _GL_CXXALIASWARN (fmodf); | |
875 #elif defined GNULIB_POSIXCHECK | |
876 # undef fmodf | |
877 # if HAVE_RAW_DECL_FMODF | |
878 _GL_WARN_ON_USE (fmodf, "fmodf is unportable - " | |
879 "use gnulib module fmodf for portability"); | |
880 # endif | |
881 #endif | |
882 | |
16486
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
883 #if @GNULIB_FMOD@ |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
884 # if @REPLACE_FMOD@ |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
885 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
886 # undef fmod |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
887 # define fmod rpl_fmod |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
888 # endif |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
889 _GL_FUNCDECL_RPL (fmod, double, (double x, double y)); |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
890 _GL_CXXALIAS_RPL (fmod, double, (double x, double y)); |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
891 # else |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
892 _GL_CXXALIAS_SYS (fmod, double, (double x, double y)); |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
893 # endif |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
894 _GL_CXXALIASWARN (fmod); |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
895 #elif defined GNULIB_POSIXCHECK |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
896 # undef fmod |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
897 # if HAVE_RAW_DECL_FMOD |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
898 _GL_WARN_ON_USE (fmod, "fmod has portability problems - " |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
899 "use gnulib module fmod for portability"); |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
900 # endif |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
901 #endif |
8b3ead70232c
fmod-ieee: Work around test failures on OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16471
diff
changeset
|
902 |
16410 | 903 #if @GNULIB_FMODL@ |
904 # if @REPLACE_FMODL@ | |
905 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
906 # undef fmodl | |
907 # define fmodl rpl_fmodl | |
908 # endif | |
909 _GL_FUNCDECL_RPL (fmodl, long double, (long double x, long double y)); | |
910 _GL_CXXALIAS_RPL (fmodl, long double, (long double x, long double y)); | |
911 # else | |
912 # if !@HAVE_FMODL@ | |
913 # undef fmodl | |
914 _GL_FUNCDECL_SYS (fmodl, long double, (long double x, long double y)); | |
915 # endif | |
916 _GL_CXXALIAS_SYS (fmodl, long double, (long double x, long double y)); | |
917 # endif | |
918 _GL_CXXALIASWARN (fmodl); | |
919 #elif defined GNULIB_POSIXCHECK | |
920 # undef fmodl | |
921 # if HAVE_RAW_DECL_FMODL | |
922 _GL_WARN_ON_USE (fmodl, "fmodl is unportable - " | |
923 "use gnulib module fmodl for portability"); | |
924 # endif | |
925 #endif | |
926 | |
15832 | 927 |
9255 | 928 /* Write x as |
929 x = mantissa * 2^exp | |
930 where | |
931 If x finite and nonzero: 0.5 <= |mantissa| < 1.0. | |
932 If x is zero: mantissa = x, exp = 0. | |
933 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
|
934 Store exp in *EXPPTR and return mantissa. */ |
15841 | 935 #if @GNULIB_FREXPF@ |
15845
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
936 # if @REPLACE_FREXPF@ |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
937 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
938 # undef frexpf |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
939 # define frexpf rpl_frexpf |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
940 # endif |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
941 _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
|
942 _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
|
943 # else |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
944 # if !@HAVE_FREXPF@ |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
945 # undef frexpf |
15841 | 946 _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
|
947 # endif |
622d3734ca5a
frexpf: Work around problems on IRIX and mingw.
Bruno Haible <bruno@clisp.org>
parents:
15841
diff
changeset
|
948 _GL_CXXALIAS_SYS (frexpf, float, (float x, int *expptr)); |
15841 | 949 # endif |
950 _GL_CXXALIASWARN (frexpf); | |
951 #elif defined GNULIB_POSIXCHECK | |
952 # undef frexpf | |
953 # if HAVE_RAW_DECL_FREXPF | |
954 _GL_WARN_ON_USE (frexpf, "frexpf is unportable - " | |
955 "use gnulib module frexpf for portability"); | |
956 # endif | |
957 #endif | |
958 | |
959 /* Write x as | |
960 x = mantissa * 2^exp | |
961 where | |
962 If x finite and nonzero: 0.5 <= |mantissa| < 1.0. | |
963 If x is zero: mantissa = x, exp = 0. | |
964 If x is infinite or NaN: mantissa = x, exp unspecified. | |
965 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
|
966 #if @GNULIB_FREXP@ |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
967 # if @REPLACE_FREXP@ |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
968 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
969 # define frexp rpl_frexp |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
970 # endif |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
971 _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
|
972 _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
|
973 # else |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
974 _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
|
975 # endif |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
976 _GL_CXXALIASWARN (frexp); |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
977 #elif defined GNULIB_POSIXCHECK |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
978 # undef frexp |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
979 /* Assume frexp is always declared. */ |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
980 _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
|
981 "use gnulib module frexp for portability"); |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
982 #endif |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
983 |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
984 /* Write x as |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
985 x = mantissa * 2^exp |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
986 where |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
987 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
|
988 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
|
989 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
|
990 Store exp in *EXPPTR and return mantissa. */ |
9255 | 991 #if @GNULIB_FREXPL@ && @REPLACE_FREXPL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
992 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
993 # undef frexpl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
994 # define frexpl rpl_frexpl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
995 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
996 _GL_FUNCDECL_RPL (frexpl, long double, |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
997 (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
|
998 _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
|
999 #else |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1000 # if !@HAVE_DECL_FREXPL@ |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1001 _GL_FUNCDECL_SYS (frexpl, long double, |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1002 (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
|
1003 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1004 # if @GNULIB_FREXPL@ |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1005 _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
|
1006 # endif |
9255 | 1007 #endif |
13164
05d5602815b8
frexpl: Fix a C++ test error on Solaris 8 and Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13145
diff
changeset
|
1008 #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
|
1009 _GL_CXXALIASWARN (frexpl); |
9255 | 1010 #endif |
1011 #if !@GNULIB_FREXPL@ && defined GNULIB_POSIXCHECK | |
1012 # undef frexpl | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1013 # if HAVE_RAW_DECL_FREXPL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1014 _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
|
1015 "use gnulib module frexpl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1016 # endif |
9255 | 1017 #endif |
1018 | |
9285 | 1019 |
16514 | 1020 /* Return sqrt(x^2+y^2). */ |
1021 #if @GNULIB_HYPOTF@ | |
1022 # if @REPLACE_HYPOTF@ | |
1023 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
1024 # undef hypotf | |
1025 # define hypotf rpl_hypotf | |
1026 # endif | |
1027 _GL_FUNCDECL_RPL (hypotf, float, (float x, float y)); | |
1028 _GL_CXXALIAS_RPL (hypotf, float, (float x, float y)); | |
1029 # else | |
1030 # if !@HAVE_HYPOTF@ | |
1031 _GL_FUNCDECL_SYS (hypotf, float, (float x, float y)); | |
1032 # endif | |
1033 _GL_CXXALIAS_SYS (hypotf, float, (float x, float y)); | |
1034 # endif | |
1035 _GL_CXXALIASWARN (hypotf); | |
1036 #elif defined GNULIB_POSIXCHECK | |
1037 # undef hypotf | |
1038 # if HAVE_RAW_DECL_HYPOTF | |
1039 _GL_WARN_ON_USE (hypotf, "hypotf is unportable - " | |
1040 "use gnulib module hypotf for portability"); | |
1041 # endif | |
1042 #endif | |
1043 | |
16519 | 1044 /* Return sqrt(x^2+y^2). */ |
16530
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1045 #if @GNULIB_HYPOT@ |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1046 # if @REPLACE_HYPOT@ |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1047 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1048 # undef hypot |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1049 # define hypot rpl_hypot |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1050 # endif |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1051 _GL_FUNCDECL_RPL (hypot, double, (double x, double y)); |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1052 _GL_CXXALIAS_RPL (hypot, double, (double x, double y)); |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1053 # else |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1054 _GL_CXXALIAS_SYS (hypot, double, (double x, double y)); |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1055 # endif |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1056 _GL_CXXALIASWARN (hypot); |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1057 #elif defined GNULIB_POSIXCHECK |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1058 # undef hypot |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1059 # if HAVE_RAW_DECL_HYPOT |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1060 _GL_WARN_ON_USE (hypotf, "hypot has portability problems - " |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1061 "use gnulib module hypot for portability"); |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1062 # endif |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1063 #endif |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1064 |
3cae6aa4577f
hypot-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16519
diff
changeset
|
1065 /* Return sqrt(x^2+y^2). */ |
16519 | 1066 #if @GNULIB_HYPOTL@ |
16532
1fcd2cd248a9
hypotl-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16530
diff
changeset
|
1067 # if @REPLACE_HYPOTL@ |
1fcd2cd248a9
hypotl-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16530
diff
changeset
|
1068 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
1fcd2cd248a9
hypotl-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16530
diff
changeset
|
1069 # undef hypotl |
1fcd2cd248a9
hypotl-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16530
diff
changeset
|
1070 # define hypotl rpl_hypotl |
1fcd2cd248a9
hypotl-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16530
diff
changeset
|
1071 # endif |
1fcd2cd248a9
hypotl-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16530
diff
changeset
|
1072 _GL_FUNCDECL_RPL (hypotl, long double, (long double x, long double y)); |
1fcd2cd248a9
hypotl-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16530
diff
changeset
|
1073 _GL_CXXALIAS_RPL (hypotl, long double, (long double x, long double y)); |
1fcd2cd248a9
hypotl-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16530
diff
changeset
|
1074 # else |
1fcd2cd248a9
hypotl-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16530
diff
changeset
|
1075 # if !@HAVE_HYPOTL@ |
16519 | 1076 _GL_FUNCDECL_SYS (hypotl, long double, (long double x, long double y)); |
16532
1fcd2cd248a9
hypotl-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16530
diff
changeset
|
1077 # endif |
1fcd2cd248a9
hypotl-ieee: Work around test failure on OSF/1 and native Windows.
Bruno Haible <bruno@clisp.org>
parents:
16530
diff
changeset
|
1078 _GL_CXXALIAS_SYS (hypotl, long double, (long double x, long double y)); |
16519 | 1079 # endif |
1080 _GL_CXXALIASWARN (hypotl); | |
1081 #elif defined GNULIB_POSIXCHECK | |
1082 # undef hypotl | |
1083 # if HAVE_RAW_DECL_HYPOTL | |
1084 _GL_WARN_ON_USE (hypotl, "hypotl is unportable - " | |
1085 "use gnulib module hypotl for portability"); | |
1086 # endif | |
1087 #endif | |
1088 | |
16514 | 1089 |
16766 | 1090 #if @GNULIB_ILOGBF@ |
1091 # if @REPLACE_ILOGBF@ | |
1092 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
1093 # undef ilogbf | |
1094 # define ilogbf rpl_ilogbf | |
1095 # endif | |
1096 _GL_FUNCDECL_RPL (ilogbf, int, (float x)); | |
1097 _GL_CXXALIAS_RPL (ilogbf, int, (float x)); | |
1098 # else | |
1099 # if !@HAVE_ILOGBF@ | |
1100 _GL_FUNCDECL_SYS (ilogbf, int, (float x)); | |
1101 # endif | |
1102 _GL_CXXALIAS_SYS (ilogbf, int, (float x)); | |
1103 # endif | |
1104 _GL_CXXALIASWARN (ilogbf); | |
1105 #elif defined GNULIB_POSIXCHECK | |
1106 # undef ilogbf | |
1107 # if HAVE_RAW_DECL_ILOGBF | |
1108 _GL_WARN_ON_USE (ilogbf, "ilogbf is unportable - " | |
1109 "use gnulib module ilogbf for portability"); | |
1110 # endif | |
1111 #endif | |
1112 | |
16764 | 1113 #if @GNULIB_ILOGB@ |
1114 # if @REPLACE_ILOGB@ | |
1115 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
1116 # undef ilogb | |
1117 # define ilogb rpl_ilogb | |
1118 # endif | |
1119 _GL_FUNCDECL_RPL (ilogb, int, (double x)); | |
1120 _GL_CXXALIAS_RPL (ilogb, int, (double x)); | |
1121 # else | |
1122 # if !@HAVE_ILOGB@ | |
1123 _GL_FUNCDECL_SYS (ilogb, int, (double x)); | |
1124 # endif | |
1125 _GL_CXXALIAS_SYS (ilogb, int, (double x)); | |
1126 # endif | |
1127 _GL_CXXALIASWARN (ilogb); | |
1128 #elif defined GNULIB_POSIXCHECK | |
1129 # undef ilogb | |
1130 # if HAVE_RAW_DECL_ILOGB | |
1131 _GL_WARN_ON_USE (ilogb, "ilogb is unportable - " | |
1132 "use gnulib module ilogb for portability"); | |
1133 # endif | |
1134 #endif | |
1135 | |
16768 | 1136 #if @GNULIB_ILOGBL@ |
1137 # if !@HAVE_ILOGBL@ | |
1138 _GL_FUNCDECL_SYS (ilogbl, int, (long double x)); | |
1139 # endif | |
1140 _GL_CXXALIAS_SYS (ilogbl, int, (long double x)); | |
1141 _GL_CXXALIASWARN (ilogbl); | |
1142 #elif defined GNULIB_POSIXCHECK | |
1143 # undef ilogbl | |
1144 # if HAVE_RAW_DECL_ILOGBL | |
1145 _GL_WARN_ON_USE (ilogbl, "ilogbl is unportable - " | |
1146 "use gnulib module ilogbl for portability"); | |
1147 # endif | |
1148 #endif | |
1149 | |
16764 | 1150 |
9255 | 1151 /* Return x * 2^exp. */ |
15847 | 1152 #if @GNULIB_LDEXPF@ |
1153 # if !@HAVE_LDEXPF@ | |
1154 # undef ldexpf | |
1155 _GL_FUNCDECL_SYS (ldexpf, float, (float x, int exp)); | |
1156 # endif | |
1157 _GL_CXXALIAS_SYS (ldexpf, float, (float x, int exp)); | |
1158 _GL_CXXALIASWARN (ldexpf); | |
1159 #elif defined GNULIB_POSIXCHECK | |
1160 # undef ldexpf | |
1161 # if HAVE_RAW_DECL_LDEXPF | |
1162 _GL_WARN_ON_USE (ldexpf, "ldexpf is unportable - " | |
1163 "use gnulib module ldexpf for portability"); | |
1164 # endif | |
1165 #endif | |
1166 | |
1167 /* Return x * 2^exp. */ | |
9255 | 1168 #if @GNULIB_LDEXPL@ && @REPLACE_LDEXPL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1169 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
15638
f2a7b56d34a3
math: Avoid macro redefinition warnings on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
15595
diff
changeset
|
1170 # undef ldexpl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1171 # define ldexpl rpl_ldexpl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1172 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1173 _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
|
1174 _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
|
1175 #else |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1176 # if !@HAVE_DECL_LDEXPL@ |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1177 _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
|
1178 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1179 # if @GNULIB_LDEXPL@ |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1180 _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
|
1181 # endif |
9255 | 1182 #endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1183 #if @GNULIB_LDEXPL@ |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1184 _GL_CXXALIASWARN (ldexpl); |
9255 | 1185 #endif |
1186 #if !@GNULIB_LDEXPL@ && defined GNULIB_POSIXCHECK | |
1187 # undef ldexpl | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1188 # if HAVE_RAW_DECL_LDEXPL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1189 _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
|
1190 "use gnulib module ldexpl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1191 # endif |
9255 | 1192 #endif |
1193 | |
9285 | 1194 |
15863 | 1195 #if @GNULIB_LOGF@ |
16632
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1196 # if @REPLACE_LOGF@ |
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1197 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1198 # undef logf |
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1199 # define logf rpl_logf |
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1200 # endif |
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1201 _GL_FUNCDECL_RPL (logf, float, (float x)); |
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1202 _GL_CXXALIAS_RPL (logf, float, (float x)); |
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1203 # else |
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1204 # if !@HAVE_LOGF@ |
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1205 # undef logf |
15863 | 1206 _GL_FUNCDECL_SYS (logf, float, (float x)); |
16632
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1207 # endif |
2450f24b2cbc
logf: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16631
diff
changeset
|
1208 _GL_CXXALIAS_SYS (logf, float, (float x)); |
15863 | 1209 # endif |
1210 _GL_CXXALIASWARN (logf); | |
1211 #elif defined GNULIB_POSIXCHECK | |
1212 # undef logf | |
1213 # if HAVE_RAW_DECL_LOGF | |
1214 _GL_WARN_ON_USE (logf, "logf is unportable - " | |
1215 "use gnulib module logf for portability"); | |
1216 # endif | |
1217 #endif | |
1218 | |
16631
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1219 #if @GNULIB_LOG@ |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1220 # if @REPLACE_LOG@ |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1221 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1222 # undef log |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1223 # define log rpl_log |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1224 # endif |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1225 _GL_FUNCDECL_RPL (log, double, (double x)); |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1226 _GL_CXXALIAS_RPL (log, double, (double x)); |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1227 # else |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1228 _GL_CXXALIAS_SYS (log, double, (double x)); |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1229 # endif |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1230 _GL_CXXALIASWARN (log); |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1231 #elif defined GNULIB_POSIXCHECK |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1232 # undef log |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1233 # if HAVE_RAW_DECL_LOG |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1234 _GL_WARN_ON_USE (log, "log has portability problems - " |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1235 "use gnulib module log for portability"); |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1236 # endif |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1237 #endif |
45443deebb7d
log: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16628
diff
changeset
|
1238 |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
1239 #if @GNULIB_LOGL@ |
16633
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1240 # if @REPLACE_LOGL@ |
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1241 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1242 # undef logl |
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1243 # define logl rpl_logl |
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1244 # endif |
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1245 _GL_FUNCDECL_RPL (logl, long double, (long double x)); |
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1246 _GL_CXXALIAS_RPL (logl, long double, (long double x)); |
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1247 # else |
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1248 # if !@HAVE_LOGL@ || !@HAVE_DECL_LOGL@ |
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1249 # undef logl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1250 _GL_FUNCDECL_SYS (logl, long double, (long double x)); |
16633
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1251 # endif |
833042aa7d55
logl: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16632
diff
changeset
|
1252 _GL_CXXALIAS_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
|
1253 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1254 _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
|
1255 #elif defined GNULIB_POSIXCHECK |
9255 | 1256 # undef logl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1257 # if HAVE_RAW_DECL_LOGL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1258 _GL_WARN_ON_USE (logl, "logl is unportable - " |
16579
de008bfc0e6d
math: Update module names in warnings.
Bruno Haible <bruno@clisp.org>
parents:
16545
diff
changeset
|
1259 "use gnulib module logl for portability"); |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1260 # endif |
9255 | 1261 #endif |
1262 | |
9285 | 1263 |
15866 | 1264 #if @GNULIB_LOG10F@ |
16737
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1265 # if @REPLACE_LOG10F@ |
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1266 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1267 # undef log10f |
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1268 # define log10f rpl_log10f |
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1269 # endif |
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1270 _GL_FUNCDECL_RPL (log10f, float, (float x)); |
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1271 _GL_CXXALIAS_RPL (log10f, float, (float x)); |
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1272 # else |
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1273 # if !@HAVE_LOG10F@ |
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1274 # undef log10f |
15866 | 1275 _GL_FUNCDECL_SYS (log10f, float, (float x)); |
16737
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1276 # endif |
6828b991e3b9
log10f: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16736
diff
changeset
|
1277 _GL_CXXALIAS_SYS (log10f, float, (float x)); |
15866 | 1278 # endif |
1279 _GL_CXXALIASWARN (log10f); | |
1280 #elif defined GNULIB_POSIXCHECK | |
1281 # undef log10f | |
1282 # if HAVE_RAW_DECL_LOG10F | |
1283 _GL_WARN_ON_USE (log10f, "log10f is unportable - " | |
1284 "use gnulib module log10f for portability"); | |
1285 # endif | |
1286 #endif | |
1287 | |
16736
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1288 #if @GNULIB_LOG10@ |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1289 # if @REPLACE_LOG10@ |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1290 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1291 # undef log10 |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1292 # define log10 rpl_log10 |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1293 # endif |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1294 _GL_FUNCDECL_RPL (log10, double, (double x)); |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1295 _GL_CXXALIAS_RPL (log10, double, (double x)); |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1296 # else |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1297 _GL_CXXALIAS_SYS (log10, double, (double x)); |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1298 # endif |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1299 _GL_CXXALIASWARN (log10); |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1300 #elif defined GNULIB_POSIXCHECK |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1301 # undef log10 |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1302 # if HAVE_RAW_DECL_LOG10 |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1303 _GL_WARN_ON_USE (log10, "log10 has portability problems - " |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1304 "use gnulib module log10 for portability"); |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1305 # endif |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1306 #endif |
747e0285fa98
log10: Work around OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16697
diff
changeset
|
1307 |
16419 | 1308 #if @GNULIB_LOG10L@ |
16738
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1309 # if @REPLACE_LOG10L@ |
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1310 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1311 # undef log10l |
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1312 # define log10l rpl_log10l |
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1313 # endif |
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1314 _GL_FUNCDECL_RPL (log10l, long double, (long double x)); |
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1315 _GL_CXXALIAS_RPL (log10l, long double, (long double x)); |
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1316 # else |
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1317 # if !@HAVE_LOG10L@ || !@HAVE_DECL_LOG10L@ |
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1318 # undef log10l |
16419 | 1319 _GL_FUNCDECL_SYS (log10l, long double, (long double x)); |
16738
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1320 # endif |
25dda52366fd
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible <bruno@clisp.org>
parents:
16737
diff
changeset
|
1321 _GL_CXXALIAS_SYS (log10l, long double, (long double x)); |
16419 | 1322 # endif |
1323 _GL_CXXALIASWARN (log10l); | |
1324 #elif defined GNULIB_POSIXCHECK | |
1325 # undef log10l | |
1326 # if HAVE_RAW_DECL_LOG10L | |
1327 _GL_WARN_ON_USE (log10l, "log10l is unportable - " | |
1328 "use gnulib module log10l for portability"); | |
1329 # endif | |
1330 #endif | |
1331 | |
15866 | 1332 |
16657 | 1333 #if @GNULIB_LOG1PF@ |
1334 # if @REPLACE_LOG1PF@ | |
1335 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
1336 # undef log1pf | |
1337 # define log1pf rpl_log1pf | |
1338 # endif | |
1339 _GL_FUNCDECL_RPL (log1pf, float, (float x)); | |
1340 _GL_CXXALIAS_RPL (log1pf, float, (float x)); | |
1341 # else | |
1342 # if !@HAVE_LOG1PF@ | |
1343 _GL_FUNCDECL_SYS (log1pf, float, (float x)); | |
1344 # endif | |
1345 _GL_CXXALIAS_SYS (log1pf, float, (float x)); | |
1346 # endif | |
1347 _GL_CXXALIASWARN (log1pf); | |
1348 #elif defined GNULIB_POSIXCHECK | |
1349 # undef log1pf | |
1350 # if HAVE_RAW_DECL_LOG1PF | |
1351 _GL_WARN_ON_USE (log1pf, "log1pf is unportable - " | |
1352 "use gnulib module log1pf for portability"); | |
1353 # endif | |
1354 #endif | |
1355 | |
16655
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1356 #if @GNULIB_LOG1P@ |
16667
f691c5744fcb
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible <bruno@clisp.org>
parents:
16659
diff
changeset
|
1357 # if @REPLACE_LOG1P@ |
f691c5744fcb
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible <bruno@clisp.org>
parents:
16659
diff
changeset
|
1358 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
f691c5744fcb
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible <bruno@clisp.org>
parents:
16659
diff
changeset
|
1359 # undef log1p |
f691c5744fcb
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible <bruno@clisp.org>
parents:
16659
diff
changeset
|
1360 # define log1p rpl_log1p |
f691c5744fcb
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible <bruno@clisp.org>
parents:
16659
diff
changeset
|
1361 # endif |
f691c5744fcb
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible <bruno@clisp.org>
parents:
16659
diff
changeset
|
1362 _GL_FUNCDECL_RPL (log1p, double, (double x)); |
f691c5744fcb
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible <bruno@clisp.org>
parents:
16659
diff
changeset
|
1363 _GL_CXXALIAS_RPL (log1p, double, (double x)); |
f691c5744fcb
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible <bruno@clisp.org>
parents:
16659
diff
changeset
|
1364 # else |
f691c5744fcb
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible <bruno@clisp.org>
parents:
16659
diff
changeset
|
1365 # if !@HAVE_LOG1P@ |
16655
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1366 _GL_FUNCDECL_SYS (log1p, double, (double x)); |
16667
f691c5744fcb
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible <bruno@clisp.org>
parents:
16659
diff
changeset
|
1367 # endif |
f691c5744fcb
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible <bruno@clisp.org>
parents:
16659
diff
changeset
|
1368 _GL_CXXALIAS_SYS (log1p, double, (double x)); |
16655
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1369 # endif |
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1370 _GL_CXXALIASWARN (log1p); |
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1371 #elif defined GNULIB_POSIXCHECK |
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1372 # undef log1p |
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1373 # if HAVE_RAW_DECL_LOG1P |
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1374 _GL_WARN_ON_USE (log1p, "log1p has portability problems - " |
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1375 "use gnulib module log1p for portability"); |
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1376 # endif |
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1377 #endif |
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1378 |
16659 | 1379 #if @GNULIB_LOG1PL@ |
16670
1fae18345ca0
log1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16667
diff
changeset
|
1380 # if @REPLACE_LOG1PL@ |
1fae18345ca0
log1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16667
diff
changeset
|
1381 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
1fae18345ca0
log1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16667
diff
changeset
|
1382 # undef log1pl |
1fae18345ca0
log1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16667
diff
changeset
|
1383 # define log1pl rpl_log1pl |
1fae18345ca0
log1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16667
diff
changeset
|
1384 # endif |
1fae18345ca0
log1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16667
diff
changeset
|
1385 _GL_FUNCDECL_RPL (log1pl, long double, (long double x)); |
1fae18345ca0
log1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16667
diff
changeset
|
1386 _GL_CXXALIAS_RPL (log1pl, long double, (long double x)); |
1fae18345ca0
log1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16667
diff
changeset
|
1387 # else |
1fae18345ca0
log1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16667
diff
changeset
|
1388 # if !@HAVE_LOG1PL@ |
16659 | 1389 _GL_FUNCDECL_SYS (log1pl, long double, (long double x)); |
16670
1fae18345ca0
log1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16667
diff
changeset
|
1390 # endif |
1fae18345ca0
log1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16667
diff
changeset
|
1391 _GL_CXXALIAS_SYS (log1pl, long double, (long double x)); |
16659 | 1392 # endif |
1393 _GL_CXXALIASWARN (log1pl); | |
1394 #elif defined GNULIB_POSIXCHECK | |
1395 # undef log1pl | |
1396 # if HAVE_RAW_DECL_LOG1PL | |
1397 _GL_WARN_ON_USE (log1pl, "log1pl has portability problems - " | |
1398 "use gnulib module log1pl for portability"); | |
1399 # endif | |
1400 #endif | |
1401 | |
16655
e1c84de792a7
log1p: Provide replacement for Minix and MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16633
diff
changeset
|
1402 |
16678 | 1403 #if @GNULIB_LOG2F@ |
1404 # if @REPLACE_LOG2F@ | |
1405 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
1406 # undef log2f | |
1407 # define log2f rpl_log2f | |
1408 # endif | |
1409 _GL_FUNCDECL_RPL (log2f, float, (float x)); | |
1410 _GL_CXXALIAS_RPL (log2f, float, (float x)); | |
1411 # else | |
1412 # if !@HAVE_DECL_LOG2F@ | |
1413 # undef log2f | |
1414 _GL_FUNCDECL_SYS (log2f, float, (float x)); | |
1415 # endif | |
1416 _GL_CXXALIAS_SYS (log2f, float, (float x)); | |
1417 # endif | |
1418 _GL_CXXALIASWARN (log2f); | |
1419 #elif defined GNULIB_POSIXCHECK | |
1420 # undef log2f | |
1421 # if HAVE_RAW_DECL_LOG2F | |
1422 _GL_WARN_ON_USE (log2f, "log2f is unportable - " | |
1423 "use gnulib module log2f for portability"); | |
1424 # endif | |
1425 #endif | |
1426 | |
16676 | 1427 #if @GNULIB_LOG2@ |
1428 # if @REPLACE_LOG2@ | |
1429 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
1430 # undef log2 | |
1431 # define log2 rpl_log2 | |
1432 # endif | |
1433 _GL_FUNCDECL_RPL (log2, double, (double x)); | |
1434 _GL_CXXALIAS_RPL (log2, double, (double x)); | |
1435 # else | |
1436 # if !@HAVE_DECL_LOG2@ | |
1437 # undef log2 | |
1438 _GL_FUNCDECL_SYS (log2, double, (double x)); | |
1439 # endif | |
1440 _GL_CXXALIAS_SYS (log2, double, (double x)); | |
1441 # endif | |
1442 _GL_CXXALIASWARN (log2); | |
1443 #elif defined GNULIB_POSIXCHECK | |
1444 # undef log2 | |
1445 # if HAVE_RAW_DECL_LOG2 | |
1446 _GL_WARN_ON_USE (log2, "log2 is unportable - " | |
1447 "use gnulib module log2 for portability"); | |
1448 # endif | |
1449 #endif | |
1450 | |
16680 | 1451 #if @GNULIB_LOG2L@ |
1452 # if @REPLACE_LOG2L@ | |
1453 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
1454 # undef log2l | |
1455 # define log2l rpl_log2l | |
1456 # endif | |
1457 _GL_FUNCDECL_RPL (log2l, long double, (long double x)); | |
1458 _GL_CXXALIAS_RPL (log2l, long double, (long double x)); | |
1459 # else | |
1460 # if !@HAVE_DECL_LOG2L@ | |
1461 _GL_FUNCDECL_SYS (log2l, long double, (long double x)); | |
1462 # endif | |
1463 _GL_CXXALIAS_SYS (log2l, long double, (long double x)); | |
1464 # endif | |
1465 _GL_CXXALIASWARN (log2l); | |
1466 #elif defined GNULIB_POSIXCHECK | |
1467 # undef log2l | |
1468 # if HAVE_RAW_DECL_LOG2L | |
1469 _GL_WARN_ON_USE (log2l, "log2l is unportable - " | |
1470 "use gnulib module log2l for portability"); | |
1471 # endif | |
1472 #endif | |
1473 | |
16676 | 1474 |
16753 | 1475 #if @GNULIB_LOGBF@ |
1476 # if @REPLACE_LOGBF@ | |
1477 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
1478 # undef logbf | |
1479 # define logbf rpl_logbf | |
1480 # endif | |
1481 _GL_FUNCDECL_RPL (logbf, float, (float x)); | |
1482 _GL_CXXALIAS_RPL (logbf, float, (float x)); | |
1483 # else | |
1484 # if !@HAVE_LOGBF@ | |
1485 _GL_FUNCDECL_SYS (logbf, float, (float x)); | |
1486 # endif | |
1487 _GL_CXXALIAS_SYS (logbf, float, (float x)); | |
1488 # endif | |
1489 _GL_CXXALIASWARN (logbf); | |
1490 #elif defined GNULIB_POSIXCHECK | |
1491 # undef logbf | |
1492 # if HAVE_RAW_DECL_LOGBF | |
1493 _GL_WARN_ON_USE (logbf, "logbf is unportable - " | |
1494 "use gnulib module logbf for portability"); | |
1495 # endif | |
1496 #endif | |
1497 | |
16751
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1498 #if @GNULIB_LOGB@ |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1499 # if @REPLACE_LOGB@ |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1500 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1501 # undef logb |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1502 # define logb rpl_logb |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1503 # endif |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1504 _GL_FUNCDECL_RPL (logb, double, (double x)); |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1505 _GL_CXXALIAS_RPL (logb, double, (double x)); |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1506 # else |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1507 # if !@HAVE_DECL_LOGB@ |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1508 _GL_FUNCDECL_SYS (logb, double, (double x)); |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1509 # endif |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1510 _GL_CXXALIAS_SYS (logb, double, (double x)); |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1511 # endif |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1512 _GL_CXXALIASWARN (logb); |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1513 #elif defined GNULIB_POSIXCHECK |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1514 # undef logb |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1515 # if HAVE_RAW_DECL_LOGB |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1516 _GL_WARN_ON_USE (logb, "logb is unportable - " |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1517 "use gnulib module logb for portability"); |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1518 # endif |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1519 #endif |
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1520 |
16755 | 1521 #if @GNULIB_LOGBL@ |
1522 # if @REPLACE_LOGBL@ | |
1523 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
1524 # undef logbl | |
1525 # define logbl rpl_logbl | |
1526 # endif | |
1527 _GL_FUNCDECL_RPL (logbl, long double, (long double x)); | |
1528 _GL_CXXALIAS_RPL (logbl, long double, (long double x)); | |
1529 # else | |
1530 # if !@HAVE_LOGBL@ | |
1531 _GL_FUNCDECL_SYS (logbl, long double, (long double x)); | |
1532 # endif | |
1533 _GL_CXXALIAS_SYS (logbl, long double, (long double x)); | |
1534 # endif | |
1535 _GL_CXXALIASWARN (logbl); | |
1536 #elif defined GNULIB_POSIXCHECK | |
1537 # undef logbl | |
1538 # if HAVE_RAW_DECL_LOGBL | |
1539 _GL_WARN_ON_USE (logbl, "logbl is unportable - " | |
1540 "use gnulib module logbl for portability"); | |
1541 # endif | |
1542 #endif | |
1543 | |
16751
9d599e388a0f
logb: Provide replacement and workarounds.
Bruno Haible <bruno@clisp.org>
parents:
16738
diff
changeset
|
1544 |
15838 | 1545 #if @GNULIB_MODFF@ |
16468
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1546 # if @REPLACE_MODFF@ |
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1547 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1548 # undef modff |
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1549 # define modff rpl_modff |
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1550 # endif |
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1551 _GL_FUNCDECL_RPL (modff, float, (float x, float *iptr) _GL_ARG_NONNULL ((2))); |
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1552 _GL_CXXALIAS_RPL (modff, float, (float x, float *iptr)); |
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1553 # else |
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1554 # if !@HAVE_MODFF@ |
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1555 # undef modff |
15838 | 1556 _GL_FUNCDECL_SYS (modff, float, (float x, float *iptr) _GL_ARG_NONNULL ((2))); |
16468
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1557 # endif |
5ad3cc13d9c3
modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
Bruno Haible <bruno@clisp.org>
parents:
16467
diff
changeset
|
1558 _GL_CXXALIAS_SYS (modff, float, (float x, float *iptr)); |
15838 | 1559 # endif |
1560 _GL_CXXALIASWARN (modff); | |
1561 #elif defined GNULIB_POSIXCHECK | |
1562 # undef modff | |
1563 # if HAVE_RAW_DECL_MODFF | |
1564 _GL_WARN_ON_USE (modff, "modff is unportable - " | |
1565 "use gnulib module modff for portability"); | |
1566 # endif | |
1567 #endif | |
1568 | |
16467
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1569 #if @GNULIB_MODF@ |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1570 # if @REPLACE_MODF@ |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1571 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1572 # undef modf |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1573 # define modf rpl_modf |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1574 # endif |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1575 _GL_FUNCDECL_RPL (modf, double, (double x, double *iptr) _GL_ARG_NONNULL ((2))); |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1576 _GL_CXXALIAS_RPL (modf, double, (double x, double *iptr)); |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1577 # else |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1578 _GL_CXXALIAS_SYS (modf, double, (double x, double *iptr)); |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1579 # endif |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1580 _GL_CXXALIASWARN (modf); |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1581 #elif defined GNULIB_POSIXCHECK |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1582 # undef modf |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1583 # if HAVE_RAW_DECL_MODF |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1584 _GL_WARN_ON_USE (modf, "modf has portability problems - " |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1585 "use gnulib module modf for portability"); |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1586 # endif |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1587 #endif |
c5b61bdb6da4
modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
16419
diff
changeset
|
1588 |
16408 | 1589 #if @GNULIB_MODFL@ |
16471
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1590 # if @REPLACE_MODFL@ |
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1591 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1592 # undef modfl |
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1593 # define modfl rpl_modfl |
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1594 # endif |
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1595 _GL_FUNCDECL_RPL (modfl, long double, (long double x, long double *iptr) |
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1596 _GL_ARG_NONNULL ((2))); |
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1597 _GL_CXXALIAS_RPL (modfl, long double, (long double x, long double *iptr)); |
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1598 # else |
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1599 # if !@HAVE_MODFL@ |
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1600 # undef modfl |
16408 | 1601 _GL_FUNCDECL_SYS (modfl, long double, (long double x, long double *iptr) |
1602 _GL_ARG_NONNULL ((2))); | |
16471
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1603 # endif |
1f4605f1f3ae
modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
Bruno Haible <bruno@clisp.org>
parents:
16468
diff
changeset
|
1604 _GL_CXXALIAS_SYS (modfl, long double, (long double x, long double *iptr)); |
16408 | 1605 # endif |
1606 _GL_CXXALIASWARN (modfl); | |
1607 #elif defined GNULIB_POSIXCHECK | |
1608 # undef modfl | |
1609 # if HAVE_RAW_DECL_MODFL | |
1610 _GL_WARN_ON_USE (modfl, "modfl is unportable - " | |
1611 "use gnulib module modfl for portability"); | |
1612 # endif | |
1613 #endif | |
1614 | |
15838 | 1615 |
15869 | 1616 #if @GNULIB_POWF@ |
1617 # if !@HAVE_POWF@ | |
1618 # undef powf | |
1619 _GL_FUNCDECL_SYS (powf, float, (float x, float y)); | |
1620 # endif | |
1621 _GL_CXXALIAS_SYS (powf, float, (float x, float y)); | |
1622 _GL_CXXALIASWARN (powf); | |
1623 #elif defined GNULIB_POSIXCHECK | |
1624 # undef powf | |
1625 # if HAVE_RAW_DECL_POWF | |
1626 _GL_WARN_ON_USE (powf, "powf is unportable - " | |
1627 "use gnulib module powf for portability"); | |
1628 # endif | |
1629 #endif | |
1630 | |
1631 | |
16413 | 1632 #if @GNULIB_REMAINDERF@ |
16498
e04c5a489c44
remainderf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16497
diff
changeset
|
1633 # if @REPLACE_REMAINDERF@ |
e04c5a489c44
remainderf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16497
diff
changeset
|
1634 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
e04c5a489c44
remainderf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16497
diff
changeset
|
1635 # undef remainderf |
e04c5a489c44
remainderf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16497
diff
changeset
|
1636 # define remainderf rpl_remainderf |
e04c5a489c44
remainderf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16497
diff
changeset
|
1637 # endif |
e04c5a489c44
remainderf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16497
diff
changeset
|
1638 _GL_FUNCDECL_RPL (remainderf, float, (float x, float y)); |
e04c5a489c44
remainderf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16497
diff
changeset
|
1639 _GL_CXXALIAS_RPL (remainderf, float, (float x, float y)); |
e04c5a489c44
remainderf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16497
diff
changeset
|
1640 # else |
e04c5a489c44
remainderf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16497
diff
changeset
|
1641 # if !@HAVE_REMAINDERF@ |
16413 | 1642 _GL_FUNCDECL_SYS (remainderf, float, (float x, float y)); |
16498
e04c5a489c44
remainderf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16497
diff
changeset
|
1643 # endif |
e04c5a489c44
remainderf-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16497
diff
changeset
|
1644 _GL_CXXALIAS_SYS (remainderf, float, (float x, float y)); |
16413 | 1645 # endif |
1646 _GL_CXXALIASWARN (remainderf); | |
1647 #elif defined GNULIB_POSIXCHECK | |
1648 # undef remainderf | |
1649 # if HAVE_RAW_DECL_REMAINDERF | |
1650 _GL_WARN_ON_USE (remainderf, "remainderf is unportable - " | |
1651 "use gnulib module remainderf for portability"); | |
1652 # endif | |
1653 #endif | |
1654 | |
16412
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1655 #if @GNULIB_REMAINDER@ |
16497
3843e07f6df5
remainder-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16488
diff
changeset
|
1656 # if @REPLACE_REMAINDER@ |
3843e07f6df5
remainder-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16488
diff
changeset
|
1657 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
3843e07f6df5
remainder-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16488
diff
changeset
|
1658 # undef remainder |
3843e07f6df5
remainder-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16488
diff
changeset
|
1659 # define remainder rpl_remainder |
3843e07f6df5
remainder-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16488
diff
changeset
|
1660 # endif |
3843e07f6df5
remainder-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16488
diff
changeset
|
1661 _GL_FUNCDECL_RPL (remainder, double, (double x, double y)); |
3843e07f6df5
remainder-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16488
diff
changeset
|
1662 _GL_CXXALIAS_RPL (remainder, double, (double x, double y)); |
3843e07f6df5
remainder-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16488
diff
changeset
|
1663 # else |
3843e07f6df5
remainder-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16488
diff
changeset
|
1664 # if !@HAVE_REMAINDER@ || !@HAVE_DECL_REMAINDER@ |
16412
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1665 _GL_FUNCDECL_SYS (remainder, double, (double x, double y)); |
16497
3843e07f6df5
remainder-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16488
diff
changeset
|
1666 # endif |
3843e07f6df5
remainder-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16488
diff
changeset
|
1667 _GL_CXXALIAS_SYS (remainder, double, (double x, double y)); |
16412
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1668 # endif |
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1669 _GL_CXXALIASWARN (remainder); |
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1670 #elif defined GNULIB_POSIXCHECK |
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1671 # undef remainder |
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1672 # if HAVE_RAW_DECL_REMAINDER |
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1673 _GL_WARN_ON_USE (remainder, "remainder is unportable - " |
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1674 "use gnulib module remainder for portability"); |
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1675 # endif |
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1676 #endif |
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1677 |
16415 | 1678 #if @GNULIB_REMAINDERL@ |
16499
65ee7db4e4a7
remainderl-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16498
diff
changeset
|
1679 # if @REPLACE_REMAINDERL@ |
65ee7db4e4a7
remainderl-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16498
diff
changeset
|
1680 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
65ee7db4e4a7
remainderl-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16498
diff
changeset
|
1681 # undef remainderl |
65ee7db4e4a7
remainderl-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16498
diff
changeset
|
1682 # define remainderl rpl_remainderl |
65ee7db4e4a7
remainderl-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16498
diff
changeset
|
1683 # endif |
65ee7db4e4a7
remainderl-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16498
diff
changeset
|
1684 _GL_FUNCDECL_RPL (remainderl, long double, (long double x, long double y)); |
65ee7db4e4a7
remainderl-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16498
diff
changeset
|
1685 _GL_CXXALIAS_RPL (remainderl, long double, (long double x, long double y)); |
65ee7db4e4a7
remainderl-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16498
diff
changeset
|
1686 # else |
16605
65abd231dc80
remainderl: Don't override undeclared system function on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16604
diff
changeset
|
1687 # if !@HAVE_DECL_REMAINDERL@ |
16694
37aa30e20e53
remainderl: Avoid compilation error on AIX >= 5.2.
Bruno Haible <bruno@clisp.org>
parents:
16680
diff
changeset
|
1688 # undef remainderl |
16415 | 1689 _GL_FUNCDECL_SYS (remainderl, long double, (long double x, long double y)); |
16499
65ee7db4e4a7
remainderl-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16498
diff
changeset
|
1690 # endif |
65ee7db4e4a7
remainderl-ieee: Work around test failure on OSF/1.
Bruno Haible <bruno@clisp.org>
parents:
16498
diff
changeset
|
1691 _GL_CXXALIAS_SYS (remainderl, long double, (long double x, long double y)); |
16415 | 1692 # endif |
1693 _GL_CXXALIASWARN (remainderl); | |
1694 #elif defined GNULIB_POSIXCHECK | |
1695 # undef remainderl | |
1696 # if HAVE_RAW_DECL_REMAINDERL | |
1697 _GL_WARN_ON_USE (remainderl, "remainderl is unportable - " | |
1698 "use gnulib module remainderl for portability"); | |
1699 # endif | |
1700 #endif | |
1701 | |
16412
a50ff00ce4ee
remainder: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16410
diff
changeset
|
1702 |
15918 | 1703 #if @GNULIB_RINTF@ |
16604
9ac8499fa137
rintf: Don't override undeclared system function on IRIX 6.5.
Bruno Haible <bruno@clisp.org>
parents:
16603
diff
changeset
|
1704 # if !@HAVE_DECL_RINTF@ |
15918 | 1705 _GL_FUNCDECL_SYS (rintf, float, (float x)); |
1706 # endif | |
1707 _GL_CXXALIAS_SYS (rintf, float, (float x)); | |
1708 _GL_CXXALIASWARN (rintf); | |
1709 #elif defined GNULIB_POSIXCHECK | |
1710 # undef rintf | |
1711 # if HAVE_RAW_DECL_RINTF | |
1712 _GL_WARN_ON_USE (rintf, "rintf is unportable - " | |
1713 "use gnulib module rintf for portability"); | |
1714 # endif | |
1715 #endif | |
1716 | |
15917 | 1717 #if @GNULIB_RINT@ |
1718 # if !@HAVE_RINT@ | |
1719 _GL_FUNCDECL_SYS (rint, double, (double x)); | |
1720 # endif | |
1721 _GL_CXXALIAS_SYS (rint, double, (double x)); | |
1722 _GL_CXXALIASWARN (rint); | |
1723 #elif defined GNULIB_POSIXCHECK | |
1724 # undef rint | |
1725 # if HAVE_RAW_DECL_RINT | |
1726 _GL_WARN_ON_USE (rint, "rint is unportable - " | |
1727 "use gnulib module rint for portability"); | |
1728 # endif | |
1729 #endif | |
1730 | |
15920 | 1731 #if @GNULIB_RINTL@ |
1732 # if !@HAVE_RINTL@ | |
1733 _GL_FUNCDECL_SYS (rintl, long double, (long double x)); | |
1734 # endif | |
1735 _GL_CXXALIAS_SYS (rintl, long double, (long double x)); | |
1736 _GL_CXXALIASWARN (rintl); | |
1737 #elif defined GNULIB_POSIXCHECK | |
1738 # undef rintl | |
1739 # if HAVE_RAW_DECL_RINTL | |
1740 _GL_WARN_ON_USE (rintl, "rintl is unportable - " | |
1741 "use gnulib module rintl for portability"); | |
1742 # endif | |
1743 #endif | |
1744 | |
15917 | 1745 |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1746 #if @GNULIB_ROUNDF@ |
9465
4a3319c82e39
Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
Bruno Haible <bruno@clisp.org>
parents:
9423
diff
changeset
|
1747 # if @REPLACE_ROUNDF@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1748 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1749 # undef roundf |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1750 # define roundf rpl_roundf |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1751 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1752 _GL_FUNCDECL_RPL (roundf, float, (float x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1753 _GL_CXXALIAS_RPL (roundf, float, (float x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1754 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
1755 # if !@HAVE_DECL_ROUNDF@ |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
1756 _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
|
1757 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1758 _GL_CXXALIAS_SYS (roundf, float, (float x)); |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1759 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1760 _GL_CXXALIASWARN (roundf); |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1761 #elif defined GNULIB_POSIXCHECK |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1762 # undef roundf |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1763 # if HAVE_RAW_DECL_ROUNDF |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1764 _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
|
1765 "use gnulib module roundf for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1766 # endif |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1767 #endif |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1768 |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1769 #if @GNULIB_ROUND@ |
9465
4a3319c82e39
Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
Bruno Haible <bruno@clisp.org>
parents:
9423
diff
changeset
|
1770 # if @REPLACE_ROUND@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1771 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1772 # undef round |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1773 # define round rpl_round |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1774 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1775 _GL_FUNCDECL_RPL (round, double, (double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1776 _GL_CXXALIAS_RPL (round, double, (double x)); |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1777 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
1778 # if !@HAVE_DECL_ROUND@ |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
1779 _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
|
1780 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1781 _GL_CXXALIAS_SYS (round, double, (double x)); |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1782 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1783 _GL_CXXALIASWARN (round); |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1784 #elif defined GNULIB_POSIXCHECK |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1785 # undef round |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1786 # if HAVE_RAW_DECL_ROUND |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1787 _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
|
1788 "use gnulib module round for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1789 # endif |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1790 #endif |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1791 |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1792 #if @GNULIB_ROUNDL@ |
9465
4a3319c82e39
Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
Bruno Haible <bruno@clisp.org>
parents:
9423
diff
changeset
|
1793 # if @REPLACE_ROUNDL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1794 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1795 # undef roundl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1796 # define roundl rpl_roundl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1797 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1798 _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
|
1799 _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
|
1800 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
1801 # if !@HAVE_DECL_ROUNDL@ |
16603
f57d6aac15ce
roundl: Avoid compilation error on AIX.
Bruno Haible <bruno@clisp.org>
parents:
16599
diff
changeset
|
1802 # undef roundl |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
1803 _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
|
1804 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1805 _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
|
1806 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1807 _GL_CXXALIASWARN (roundl); |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1808 #elif defined GNULIB_POSIXCHECK |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1809 # undef roundl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1810 # if HAVE_RAW_DECL_ROUNDL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1811 _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
|
1812 "use gnulib module roundl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1813 # endif |
9375
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1814 #endif |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1815 |
96fea5b2eb11
Implement 'round', 'roundf', 'roundl' modules.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9312
diff
changeset
|
1816 |
15872 | 1817 #if @GNULIB_SINF@ |
1818 # if !@HAVE_SINF@ | |
1819 # undef sinf | |
1820 _GL_FUNCDECL_SYS (sinf, float, (float x)); | |
1821 # endif | |
1822 _GL_CXXALIAS_SYS (sinf, float, (float x)); | |
1823 _GL_CXXALIASWARN (sinf); | |
1824 #elif defined GNULIB_POSIXCHECK | |
1825 # undef sinf | |
1826 # if HAVE_RAW_DECL_SINF | |
1827 _GL_WARN_ON_USE (sinf, "sinf is unportable - " | |
1828 "use gnulib module sinf for portability"); | |
1829 # endif | |
1830 #endif | |
1831 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
1832 #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
|
1833 # if !@HAVE_SINL@ || !@HAVE_DECL_SINL@ |
16397
3dd8fb89c3a4
sinl: Provide function definition on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16396
diff
changeset
|
1834 # undef sinl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1835 _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
|
1836 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1837 _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
|
1838 _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
|
1839 #elif defined GNULIB_POSIXCHECK |
9255 | 1840 # undef sinl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1841 # if HAVE_RAW_DECL_SINL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1842 _GL_WARN_ON_USE (sinl, "sinl is unportable - " |
16579
de008bfc0e6d
math: Update module names in warnings.
Bruno Haible <bruno@clisp.org>
parents:
16545
diff
changeset
|
1843 "use gnulib module sinl for portability"); |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1844 # endif |
9255 | 1845 #endif |
1846 | |
9285 | 1847 |
15893 | 1848 #if @GNULIB_SINHF@ |
1849 # if !@HAVE_SINHF@ | |
1850 # undef sinhf | |
1851 _GL_FUNCDECL_SYS (sinhf, float, (float x)); | |
1852 # endif | |
1853 _GL_CXXALIAS_SYS (sinhf, float, (float x)); | |
1854 _GL_CXXALIASWARN (sinhf); | |
1855 #elif defined GNULIB_POSIXCHECK | |
1856 # undef sinhf | |
1857 # if HAVE_RAW_DECL_SINHF | |
1858 _GL_WARN_ON_USE (sinhf, "sinhf is unportable - " | |
1859 "use gnulib module sinhf for portability"); | |
1860 # endif | |
1861 #endif | |
1862 | |
1863 | |
15857 | 1864 #if @GNULIB_SQRTF@ |
1865 # if !@HAVE_SQRTF@ | |
1866 # undef sqrtf | |
1867 _GL_FUNCDECL_SYS (sqrtf, float, (float x)); | |
1868 # endif | |
1869 _GL_CXXALIAS_SYS (sqrtf, float, (float x)); | |
1870 _GL_CXXALIASWARN (sqrtf); | |
1871 #elif defined GNULIB_POSIXCHECK | |
1872 # undef sqrtf | |
1873 # if HAVE_RAW_DECL_SQRTF | |
1874 _GL_WARN_ON_USE (sqrtf, "sqrtf is unportable - " | |
1875 "use gnulib module sqrtf for portability"); | |
1876 # endif | |
1877 #endif | |
1878 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
1879 #if @GNULIB_SQRTL@ |
16697
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1880 # if @REPLACE_SQRTL@ |
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1881 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1882 # undef sqrtl |
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1883 # define sqrtl rpl_sqrtl |
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1884 # endif |
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1885 _GL_FUNCDECL_RPL (sqrtl, long double, (long double x)); |
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1886 _GL_CXXALIAS_RPL (sqrtl, long double, (long double x)); |
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1887 # else |
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1888 # if !@HAVE_SQRTL@ || !@HAVE_DECL_SQRTL@ |
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1889 # undef sqrtl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1890 _GL_FUNCDECL_SYS (sqrtl, long double, (long double x)); |
16697
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1891 # endif |
6b65a767165c
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible <bruno@clisp.org>
parents:
16694
diff
changeset
|
1892 _GL_CXXALIAS_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
|
1893 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1894 _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
|
1895 #elif defined GNULIB_POSIXCHECK |
9255 | 1896 # undef sqrtl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1897 # if HAVE_RAW_DECL_SQRTL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1898 _GL_WARN_ON_USE (sqrtl, "sqrtl is unportable - " |
16579
de008bfc0e6d
math: Update module names in warnings.
Bruno Haible <bruno@clisp.org>
parents:
16545
diff
changeset
|
1899 "use gnulib module sqrtl for portability"); |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1900 # endif |
9255 | 1901 #endif |
1902 | |
9285 | 1903 |
15878 | 1904 #if @GNULIB_TANF@ |
1905 # if !@HAVE_TANF@ | |
1906 # undef tanf | |
1907 _GL_FUNCDECL_SYS (tanf, float, (float x)); | |
1908 # endif | |
1909 _GL_CXXALIAS_SYS (tanf, float, (float x)); | |
1910 _GL_CXXALIASWARN (tanf); | |
1911 #elif defined GNULIB_POSIXCHECK | |
1912 # undef tanf | |
1913 # if HAVE_RAW_DECL_TANF | |
1914 _GL_WARN_ON_USE (tanf, "tanf is unportable - " | |
1915 "use gnulib module tanf for portability"); | |
1916 # endif | |
1917 #endif | |
1918 | |
12752
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
1919 #if @GNULIB_TANL@ |
73d9dd27dc41
New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
Bruno Haible <bruno@clisp.org>
parents:
12726
diff
changeset
|
1920 # if !@HAVE_TANL@ || !@HAVE_DECL_TANL@ |
16399
bffe229960ad
tanl: Provide function definition on MSVC.
Bruno Haible <bruno@clisp.org>
parents:
16398
diff
changeset
|
1921 # undef tanl |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1922 _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
|
1923 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1924 _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
|
1925 _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
|
1926 #elif defined GNULIB_POSIXCHECK |
9255 | 1927 # undef tanl |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1928 # if HAVE_RAW_DECL_TANL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1929 _GL_WARN_ON_USE (tanl, "tanl is unportable - " |
16579
de008bfc0e6d
math: Update module names in warnings.
Bruno Haible <bruno@clisp.org>
parents:
16545
diff
changeset
|
1930 "use gnulib module tanl for portability"); |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1931 # endif |
9255 | 1932 #endif |
1933 | |
9285 | 1934 |
15899 | 1935 #if @GNULIB_TANHF@ |
1936 # if !@HAVE_TANHF@ | |
1937 # undef tanhf | |
1938 _GL_FUNCDECL_SYS (tanhf, float, (float x)); | |
1939 # endif | |
1940 _GL_CXXALIAS_SYS (tanhf, float, (float x)); | |
1941 _GL_CXXALIASWARN (tanhf); | |
1942 #elif defined GNULIB_POSIXCHECK | |
1943 # undef tanhf | |
1944 # if HAVE_RAW_DECL_TANHF | |
1945 _GL_WARN_ON_USE (tanhf, "tanhf is unportable - " | |
1946 "use gnulib module tanhf for portability"); | |
1947 # endif | |
1948 #endif | |
1949 | |
1950 | |
9285 | 1951 #if @GNULIB_TRUNCF@ |
13979 | 1952 # if @REPLACE_TRUNCF@ |
1953 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
1954 # define truncf rpl_truncf | |
1955 # endif | |
1956 _GL_FUNCDECL_RPL (truncf, float, (float x)); | |
1957 _GL_CXXALIAS_RPL (truncf, float, (float x)); | |
1958 # else | |
1959 # if !@HAVE_DECL_TRUNCF@ | |
13143
cdede380a9a1
math: Fix some C++ test errors on Solaris 8.
Bruno Haible <bruno@clisp.org>
parents:
13142
diff
changeset
|
1960 _GL_FUNCDECL_SYS (truncf, float, (float x)); |
13979 | 1961 # endif |
1962 _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
|
1963 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1964 _GL_CXXALIASWARN (truncf); |
9285 | 1965 #elif defined GNULIB_POSIXCHECK |
1966 # undef truncf | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1967 # if HAVE_RAW_DECL_TRUNCF |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1968 _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
|
1969 "use gnulib module truncf for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1970 # endif |
9285 | 1971 #endif |
1972 | |
9282 | 1973 #if @GNULIB_TRUNC@ |
13983 | 1974 # if @REPLACE_TRUNC@ |
1975 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) | |
1976 # define trunc rpl_trunc | |
1977 # endif | |
1978 _GL_FUNCDECL_RPL (trunc, double, (double x)); | |
1979 _GL_CXXALIAS_RPL (trunc, double, (double x)); | |
1980 # else | |
1981 # if !@HAVE_DECL_TRUNC@ | |
13143
cdede380a9a1
math: Fix some C++ test errors on Solaris 8.
Bruno Haible <bruno@clisp.org>
parents:
13142
diff
changeset
|
1982 _GL_FUNCDECL_SYS (trunc, double, (double x)); |
13983 | 1983 # endif |
1984 _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
|
1985 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1986 _GL_CXXALIASWARN (trunc); |
9282 | 1987 #elif defined GNULIB_POSIXCHECK |
1988 # undef trunc | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1989 # if HAVE_RAW_DECL_TRUNC |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1990 _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
|
1991 "use gnulib module trunc for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
1992 # endif |
9282 | 1993 #endif |
1994 | |
9287 | 1995 #if @GNULIB_TRUNCL@ |
9913
d3f5a70dc1ba
Make truncl work on OSF/1 4.0.
Bruno Haible <bruno@clisp.org>
parents:
9898
diff
changeset
|
1996 # if @REPLACE_TRUNCL@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1997 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1998 # undef truncl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
1999 # define truncl rpl_truncl |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
2000 # endif |
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
2001 _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
|
2002 _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
|
2003 # else |
13142
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
2004 # if !@HAVE_DECL_TRUNCL@ |
6b79b839590c
math: Fix some C++ test errors on Cygwin.
Bruno Haible <bruno@clisp.org>
parents:
13094
diff
changeset
|
2005 _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
|
2006 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
2007 _GL_CXXALIAS_SYS (truncl, long double, (long double x)); |
9287 | 2008 # endif |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
2009 _GL_CXXALIASWARN (truncl); |
9287 | 2010 #elif defined GNULIB_POSIXCHECK |
2011 # undef truncl | |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
2012 # if HAVE_RAW_DECL_TRUNCL |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
2013 _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
|
2014 "use gnulib module truncl for portability"); |
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12752
diff
changeset
|
2015 # endif |
9287 | 2016 #endif |
2017 | |
9418
5e7b33ec70ff
Add/remove some blank lines.
Bruno Haible <bruno@clisp.org>
parents:
9414
diff
changeset
|
2018 |
15840
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
2019 /* 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
|
2020 declarations. */ |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
2021 |
61fe30185561
math: Sort function declarations of math.in.h.
Bruno Haible <bruno@clisp.org>
parents:
15838
diff
changeset
|
2022 |
9414
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
2023 #if @GNULIB_ISFINITE@ |
9423
fa47aa8bb105
Use REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
Bruno Haible <bruno@clisp.org>
parents:
9420
diff
changeset
|
2024 # if @REPLACE_ISFINITE@ |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
2025 _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
|
2026 _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
|
2027 _GL_EXTERN_C int gl_isfinitel (long double x); |
9414
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
2028 # undef isfinite |
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
2029 # define isfinite(x) \ |
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
2030 (sizeof (x) == sizeof (long double) ? gl_isfinitel (x) : \ |
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
2031 sizeof (x) == sizeof (double) ? gl_isfinited (x) : \ |
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
2032 gl_isfinitef (x)) |
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
2033 # endif |
15982
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2034 # ifdef __cplusplus |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2035 # ifdef isfinite |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2036 _GL_MATH_CXX_REAL_FLOATING_DECL_1 (isfinite) |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2037 # undef isfinite |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2038 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (isfinite) |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2039 # endif |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2040 # endif |
9414
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
2041 #elif defined GNULIB_POSIXCHECK |
12726
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2042 # if defined isfinite |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2043 _GL_WARN_REAL_FLOATING_DECL (isfinite); |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2044 # undef isfinite |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2045 # 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
|
2046 # endif |
9414
1c5d0b856e8b
Implement 'isfinite' module.
Ben Pfaff <blp@cs.stanford.edu>
parents:
9413
diff
changeset
|
2047 #endif |
9255 | 2048 |
9418
5e7b33ec70ff
Add/remove some blank lines.
Bruno Haible <bruno@clisp.org>
parents:
9414
diff
changeset
|
2049 |
10287 | 2050 #if @GNULIB_ISINF@ |
2051 # if @REPLACE_ISINF@ | |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
2052 _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
|
2053 _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
|
2054 _GL_EXTERN_C int gl_isinfl (long double x); |
10287 | 2055 # undef isinf |
2056 # define isinf(x) \ | |
2057 (sizeof (x) == sizeof (long double) ? gl_isinfl (x) : \ | |
2058 sizeof (x) == sizeof (double) ? gl_isinfd (x) : \ | |
2059 gl_isinff (x)) | |
2060 # endif | |
15982
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2061 # ifdef __cplusplus |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2062 # ifdef isinf |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2063 _GL_MATH_CXX_REAL_FLOATING_DECL_1 (isinf) |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2064 # undef isinf |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2065 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (isinf) |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2066 # endif |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2067 # endif |
10287 | 2068 #elif defined GNULIB_POSIXCHECK |
12726
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2069 # if defined isinf |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2070 _GL_WARN_REAL_FLOATING_DECL (isinf); |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2071 # undef isinf |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2072 # 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
|
2073 # endif |
10287 | 2074 #endif |
2075 | |
2076 | |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2077 #if @GNULIB_ISNANF@ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2078 /* 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
|
2079 # if @HAVE_ISNANF@ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2080 /* 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
|
2081 or (older) isnanf function. */ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2082 # if __GNUC__ >= 4 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2083 /* 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
|
2084 # undef isnanf |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2085 # 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
|
2086 # elif defined isnan |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2087 # undef isnanf |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2088 # 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
|
2089 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2090 # else |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2091 /* 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
|
2092 # undef isnanf |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2093 # define isnanf rpl_isnanf |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
2094 _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
|
2095 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2096 #endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2097 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2098 #if @GNULIB_ISNAND@ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2099 /* 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
|
2100 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
|
2101 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
|
2102 # if @HAVE_ISNAND@ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
2103 /* 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
|
2104 macro. */ |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2105 # if __GNUC__ >= 4 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2106 /* 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
|
2107 # undef isnand |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2108 # 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
|
2109 # else |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2110 # undef isnand |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2111 # 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
|
2112 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2113 # else |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2114 /* 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
|
2115 # undef isnand |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2116 # define isnand rpl_isnand |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
2117 _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
|
2118 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2119 #endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2120 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2121 #if @GNULIB_ISNANL@ |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2122 /* 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
|
2123 # if @HAVE_ISNANL@ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
2124 /* 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
|
2125 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
|
2126 # if __GNUC__ >= 4 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2127 /* 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
|
2128 # undef isnanl |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2129 # 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
|
2130 # elif defined isnan |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2131 # undef isnanl |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2132 # 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
|
2133 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2134 # else |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2135 /* 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
|
2136 # undef isnanl |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2137 # define isnanl rpl_isnanl |
16128
6beadb731202
mark functions with const and pure attributes
Jim Meyering <meyering@redhat.com>
parents:
16042
diff
changeset
|
2138 _GL_EXTERN_C int isnanl (long double x) _GL_ATTRIBUTE_CONST; |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2139 # endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2140 #endif |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2141 |
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2142 /* This must come *after* the snippets for GNULIB_ISNANF and GNULIB_ISNANL! */ |
10267 | 2143 #if @GNULIB_ISNAN@ |
2144 # if @REPLACE_ISNAN@ | |
2145 /* We can't just use the isnanf macro (e.g.) as exposed by | |
2146 isnanf.h (e.g.) here, because those may end up being macros | |
2147 that recursively expand back to isnan. So use the gnulib | |
2148 replacements for them directly. */ | |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2149 # if @HAVE_ISNANF@ && __GNUC__ >= 4 |
14060
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
2150 # define gl_isnan_f(x) __builtin_isnanf ((float)(x)) |
10267 | 2151 # else |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
2152 _GL_EXTERN_C int rpl_isnanf (float x); |
10267 | 2153 # define gl_isnan_f(x) rpl_isnanf (x) |
2154 # endif | |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2155 # if @HAVE_ISNAND@ && __GNUC__ >= 4 |
10267 | 2156 # define gl_isnan_d(x) __builtin_isnan ((double)(x)) |
2157 # else | |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
2158 _GL_EXTERN_C int rpl_isnand (double x); |
10267 | 2159 # define gl_isnan_d(x) rpl_isnand (x) |
2160 # endif | |
10667
678640901735
Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
Bruno Haible <bruno@clisp.org>
parents:
10655
diff
changeset
|
2161 # if @HAVE_ISNANL@ && __GNUC__ >= 4 |
14060
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
2162 # define gl_isnan_l(x) __builtin_isnanl ((long double)(x)) |
10267 | 2163 # else |
16128
6beadb731202
mark functions with const and pure attributes
Jim Meyering <meyering@redhat.com>
parents:
16042
diff
changeset
|
2164 _GL_EXTERN_C int rpl_isnanl (long double x) _GL_ATTRIBUTE_CONST; |
10267 | 2165 # define gl_isnan_l(x) rpl_isnanl (x) |
2166 # endif | |
2167 # undef isnan | |
2168 # define isnan(x) \ | |
2169 (sizeof (x) == sizeof (long double) ? gl_isnan_l (x) : \ | |
2170 sizeof (x) == sizeof (double) ? gl_isnan_d (x) : \ | |
2171 gl_isnan_f (x)) | |
14060
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
2172 # elif __GNUC__ >= 4 |
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
2173 # undef isnan |
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
2174 # define isnan(x) \ |
99b3a26ce54b
isnan: Use GCC built-ins when possible.
Bruno Haible <bruno@clisp.org>
parents:
13983
diff
changeset
|
2175 (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
|
2176 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
|
2177 __builtin_isnanf ((float)(x))) |
10267 | 2178 # endif |
15982
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2179 # ifdef __cplusplus |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2180 # ifdef isnan |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2181 _GL_MATH_CXX_REAL_FLOATING_DECL_1 (isnan) |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2182 # undef isnan |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2183 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (isnan) |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2184 # endif |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2185 # else |
13960
51218504eb9d
isnan: Ensure it is a macro.
Bruno Haible <bruno@clisp.org>
parents:
13761
diff
changeset
|
2186 /* Ensure isnan is a macro. */ |
15982
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2187 # ifndef isnan |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2188 # define isnan isnan |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2189 # endif |
13960
51218504eb9d
isnan: Ensure it is a macro.
Bruno Haible <bruno@clisp.org>
parents:
13761
diff
changeset
|
2190 # endif |
10267 | 2191 #elif defined GNULIB_POSIXCHECK |
12726
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2192 # if defined isnan |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2193 _GL_WARN_REAL_FLOATING_DECL (isnan); |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2194 # undef isnan |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2195 # 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
|
2196 # endif |
10267 | 2197 #endif |
2198 | |
2199 | |
9255 | 2200 #if @GNULIB_SIGNBIT@ |
9645
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
2201 # if @REPLACE_SIGNBIT_USING_GCC@ |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
2202 # undef signbit |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
2203 /* 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
|
2204 # define signbit(x) \ |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
2205 (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
|
2206 sizeof (x) == sizeof (double) ? __builtin_signbit (x) : \ |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
2207 __builtin_signbitf (x)) |
c8174371956e
Exploit the __builtin_signbit GCC built-in.
Bruno Haible <bruno@clisp.org>
parents:
9465
diff
changeset
|
2208 # endif |
9255 | 2209 # if @REPLACE_SIGNBIT@ |
2210 # undef signbit | |
12936
9be4aca41cee
math: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12927
diff
changeset
|
2211 _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
|
2212 _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
|
2213 _GL_EXTERN_C int gl_signbitl (long double arg); |
15962
cfa1d5dbe78c
Support for old NeXTstep 3.3 gcc.
Daniel Richard G <skunk@iskunk.org>
parents:
15920
diff
changeset
|
2214 # if __GNUC__ >= 2 && !defined __STRICT_ANSI__ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
2215 # define _GL_NUM_UINT_WORDS(type) \ |
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
2216 ((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
|
2217 # 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
|
2218 # define gl_signbitf_OPTIMIZED_MACRO |
9255 | 2219 # define gl_signbitf(arg) \ |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
2220 ({ union { float _value; \ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
2221 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
|
2222 } _m; \ |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
2223 _m._value = (arg); \ |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
2224 (_m._word[FLT_SIGNBIT_WORD] >> FLT_SIGNBIT_BIT) & 1; \ |
9255 | 2225 }) |
2226 # endif | |
11506
d800366aa3fe
Avoid link error when creating a namespace clean library.
Bruno Haible <bruno@clisp.org>
parents:
10836
diff
changeset
|
2227 # 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
|
2228 # define gl_signbitd_OPTIMIZED_MACRO |
9255 | 2229 # define gl_signbitd(arg) \ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
2230 ({ union { double _value; \ |
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
2231 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
|
2232 } _m; \ |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
2233 _m._value = (arg); \ |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
2234 (_m._word[DBL_SIGNBIT_WORD] >> DBL_SIGNBIT_BIT) & 1; \ |
9255 | 2235 }) |
2236 # endif | |
11506
d800366aa3fe
Avoid link error when creating a namespace clean library.
Bruno Haible <bruno@clisp.org>
parents:
10836
diff
changeset
|
2237 # 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
|
2238 # define gl_signbitl_OPTIMIZED_MACRO |
9255 | 2239 # define gl_signbitl(arg) \ |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
2240 ({ union { long double _value; \ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
2241 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
|
2242 } _m; \ |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
11741
diff
changeset
|
2243 _m._value = (arg); \ |
13758
e50f7d9e3040
Avoid some lines longer than 80 characters.
Paul Eggert <eggert@cs.ucla.edu>
parents:
13164
diff
changeset
|
2244 (_m._word[LDBL_SIGNBIT_WORD] >> LDBL_SIGNBIT_BIT) & 1; \ |
9255 | 2245 }) |
2246 # endif | |
2247 # endif | |
2248 # define signbit(x) \ | |
2249 (sizeof (x) == sizeof (long double) ? gl_signbitl (x) : \ | |
2250 sizeof (x) == sizeof (double) ? gl_signbitd (x) : \ | |
2251 gl_signbitf (x)) | |
2252 # endif | |
15982
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2253 # ifdef __cplusplus |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2254 # ifdef signbit |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2255 _GL_MATH_CXX_REAL_FLOATING_DECL_1 (signbit) |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2256 # undef signbit |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2257 _GL_MATH_CXX_REAL_FLOATING_DECL_2 (signbit) |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2258 # endif |
a63613865d90
isfinite, isinf, isnan, signbit: Don't define as a macro in C++.
Bruno Haible <bruno@clisp.org>
parents:
15962
diff
changeset
|
2259 # endif |
9255 | 2260 #elif defined GNULIB_POSIXCHECK |
12726
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2261 # if defined signbit |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2262 _GL_WARN_REAL_FLOATING_DECL (signbit); |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2263 # undef signbit |
d6da6e5f2f62
math: add portability warnings for classification macros
Eric Blake <ebb9@byu.net>
parents:
12559
diff
changeset
|
2264 # 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
|
2265 # endif |
9255 | 2266 #endif |
2267 | |
2268 | |
14840
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14274
diff
changeset
|
2269 #endif /* _@GUARD_PREFIX@_MATH_H */ |
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14274
diff
changeset
|
2270 #endif /* _@GUARD_PREFIX@_MATH_H */ |