annotate libgfortran/c99_protos.h @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 1830386684a0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* Declarations of various C99 functions
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
2 Copyright (C) 2004-2020 Free Software Foundation, Inc.
111
kono
parents:
diff changeset
3
kono
parents:
diff changeset
4 This file is part of the GNU Fortran 95 runtime library (libgfortran).
kono
parents:
diff changeset
5
kono
parents:
diff changeset
6 Libgfortran is free software; you can redistribute it and/or modify
kono
parents:
diff changeset
7 it under the terms of the GNU General Public License as published by
kono
parents:
diff changeset
8 the Free Software Foundation; either version 3, or (at your option)
kono
parents:
diff changeset
9 any later version.
kono
parents:
diff changeset
10
kono
parents:
diff changeset
11 Libgfortran is distributed in the hope that it will be useful,
kono
parents:
diff changeset
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
kono
parents:
diff changeset
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
kono
parents:
diff changeset
14 GNU General Public License for more details.
kono
parents:
diff changeset
15
kono
parents:
diff changeset
16 Under Section 7 of GPL version 3, you are granted additional
kono
parents:
diff changeset
17 permissions described in the GCC Runtime Library Exception, version
kono
parents:
diff changeset
18 3.1, as published by the Free Software Foundation.
kono
parents:
diff changeset
19
kono
parents:
diff changeset
20 You should have received a copy of the GNU General Public License and
kono
parents:
diff changeset
21 a copy of the GCC Runtime Library Exception along with this program;
kono
parents:
diff changeset
22 see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
kono
parents:
diff changeset
23 <http://www.gnu.org/licenses/>. */
kono
parents:
diff changeset
24
kono
parents:
diff changeset
25 #ifndef C99_PROTOS_H
kono
parents:
diff changeset
26 #define C99_PROTOS_H 1
kono
parents:
diff changeset
27
kono
parents:
diff changeset
28 /* float variants of libm functions */
kono
parents:
diff changeset
29 #ifndef HAVE_ACOSF
kono
parents:
diff changeset
30 #define HAVE_ACOSF 1
kono
parents:
diff changeset
31 extern float acosf(float);
kono
parents:
diff changeset
32 #endif
kono
parents:
diff changeset
33
kono
parents:
diff changeset
34 #if HAVE_ACOSH && !HAVE_ACOSHF
kono
parents:
diff changeset
35 #define HAVE_ACOSHF 1
kono
parents:
diff changeset
36 extern float acoshf(float);
kono
parents:
diff changeset
37 #endif
kono
parents:
diff changeset
38
kono
parents:
diff changeset
39 #ifndef HAVE_ASINF
kono
parents:
diff changeset
40 #define HAVE_ASINF 1
kono
parents:
diff changeset
41 extern float asinf(float);
kono
parents:
diff changeset
42 #endif
kono
parents:
diff changeset
43
kono
parents:
diff changeset
44 #if HAVE_ASINH && !HAVE_ASINHF
kono
parents:
diff changeset
45 #define HAVE_ASINHF 1
kono
parents:
diff changeset
46 extern float asinhf(float);
kono
parents:
diff changeset
47 #endif
kono
parents:
diff changeset
48
kono
parents:
diff changeset
49 #ifndef HAVE_ATAN2F
kono
parents:
diff changeset
50 #define HAVE_ATAN2F 1
kono
parents:
diff changeset
51 extern float atan2f(float, float);
kono
parents:
diff changeset
52 #endif
kono
parents:
diff changeset
53
kono
parents:
diff changeset
54 #ifndef HAVE_ATANF
kono
parents:
diff changeset
55 #define HAVE_ATANF 1
kono
parents:
diff changeset
56 extern float atanf(float);
kono
parents:
diff changeset
57 #endif
kono
parents:
diff changeset
58
kono
parents:
diff changeset
59 #if HAVE_ATANH && !HAVE_ATANHF
kono
parents:
diff changeset
60 #define HAVE_ATANHF 1
kono
parents:
diff changeset
61 extern float atanhf(float);
kono
parents:
diff changeset
62 #endif
kono
parents:
diff changeset
63
kono
parents:
diff changeset
64 #ifndef HAVE_CEILF
kono
parents:
diff changeset
65 #define HAVE_CEILF 1
kono
parents:
diff changeset
66 extern float ceilf(float);
kono
parents:
diff changeset
67 #endif
kono
parents:
diff changeset
68
kono
parents:
diff changeset
69 #ifndef HAVE_COPYSIGNF
kono
parents:
diff changeset
70 #define HAVE_COPYSIGNF 1
kono
parents:
diff changeset
71 extern float copysignf(float, float);
kono
parents:
diff changeset
72 #endif
kono
parents:
diff changeset
73
kono
parents:
diff changeset
74 #ifndef HAVE_COSF
kono
parents:
diff changeset
75 #define HAVE_COSF 1
kono
parents:
diff changeset
76 extern float cosf(float);
kono
parents:
diff changeset
77 #endif
kono
parents:
diff changeset
78
kono
parents:
diff changeset
79 #ifndef HAVE_COSHF
kono
parents:
diff changeset
80 #define HAVE_COSHF 1
kono
parents:
diff changeset
81 extern float coshf(float);
kono
parents:
diff changeset
82 #endif
kono
parents:
diff changeset
83
kono
parents:
diff changeset
84 #ifndef HAVE_EXPF
kono
parents:
diff changeset
85 #define HAVE_EXPF 1
kono
parents:
diff changeset
86 extern float expf(float);
kono
parents:
diff changeset
87 #endif
kono
parents:
diff changeset
88
kono
parents:
diff changeset
89 #ifndef HAVE_FABSF
kono
parents:
diff changeset
90 #define HAVE_FABSF 1
kono
parents:
diff changeset
91 extern float fabsf(float);
kono
parents:
diff changeset
92 #endif
kono
parents:
diff changeset
93
kono
parents:
diff changeset
94 #ifndef HAVE_FLOORF
kono
parents:
diff changeset
95 #define HAVE_FLOORF 1
kono
parents:
diff changeset
96 extern float floorf(float);
kono
parents:
diff changeset
97 #endif
kono
parents:
diff changeset
98
kono
parents:
diff changeset
99 #ifndef HAVE_FLOORL
kono
parents:
diff changeset
100 #define HAVE_FLOORL 1
kono
parents:
diff changeset
101 extern long double floorl (long double x);
kono
parents:
diff changeset
102 #endif
kono
parents:
diff changeset
103
kono
parents:
diff changeset
104 #ifndef HAVE_FMODF
kono
parents:
diff changeset
105 #define HAVE_FMODF 1
kono
parents:
diff changeset
106 extern float fmodf (float x, float y);
kono
parents:
diff changeset
107 #endif
kono
parents:
diff changeset
108
kono
parents:
diff changeset
109 #ifndef HAVE_FMODL
kono
parents:
diff changeset
110 #define HAVE_FMODL 1
kono
parents:
diff changeset
111 extern long double fmodl (long double x, long double y);
kono
parents:
diff changeset
112 #endif
kono
parents:
diff changeset
113
kono
parents:
diff changeset
114 #ifndef HAVE_FREXPF
kono
parents:
diff changeset
115 #define HAVE_FREXPF 1
kono
parents:
diff changeset
116 extern float frexpf(float, int *);
kono
parents:
diff changeset
117 #endif
kono
parents:
diff changeset
118
kono
parents:
diff changeset
119 #ifndef HAVE_HYPOTF
kono
parents:
diff changeset
120 #define HAVE_HYPOTF 1
kono
parents:
diff changeset
121 extern float hypotf(float, float);
kono
parents:
diff changeset
122 #endif
kono
parents:
diff changeset
123
kono
parents:
diff changeset
124 #ifndef HAVE_LOGF
kono
parents:
diff changeset
125 #define HAVE_LOGF 1
kono
parents:
diff changeset
126 extern float logf(float);
kono
parents:
diff changeset
127 #endif
kono
parents:
diff changeset
128
kono
parents:
diff changeset
129 #ifndef HAVE_LOG10F
kono
parents:
diff changeset
130 #define HAVE_LOG10F 1
kono
parents:
diff changeset
131 extern float log10f(float);
kono
parents:
diff changeset
132 #endif
kono
parents:
diff changeset
133
kono
parents:
diff changeset
134 #ifndef HAVE_SCALBN
kono
parents:
diff changeset
135 #define HAVE_SCALBN 1
kono
parents:
diff changeset
136 extern double scalbn(double, int);
kono
parents:
diff changeset
137 #endif
kono
parents:
diff changeset
138
kono
parents:
diff changeset
139 #ifndef HAVE_SCALBNF
kono
parents:
diff changeset
140 #define HAVE_SCALBNF 1
kono
parents:
diff changeset
141 extern float scalbnf(float, int);
kono
parents:
diff changeset
142 #endif
kono
parents:
diff changeset
143
kono
parents:
diff changeset
144 #ifndef HAVE_SINF
kono
parents:
diff changeset
145 #define HAVE_SINF 1
kono
parents:
diff changeset
146 extern float sinf(float);
kono
parents:
diff changeset
147 #endif
kono
parents:
diff changeset
148
kono
parents:
diff changeset
149 #ifndef HAVE_SINHF
kono
parents:
diff changeset
150 #define HAVE_SINHF 1
kono
parents:
diff changeset
151 extern float sinhf(float);
kono
parents:
diff changeset
152 #endif
kono
parents:
diff changeset
153
kono
parents:
diff changeset
154 #ifndef HAVE_SQRTF
kono
parents:
diff changeset
155 #define HAVE_SQRTF 1
kono
parents:
diff changeset
156 extern float sqrtf(float);
kono
parents:
diff changeset
157 #endif
kono
parents:
diff changeset
158
kono
parents:
diff changeset
159 #ifndef HAVE_TANF
kono
parents:
diff changeset
160 #define HAVE_TANF 1
kono
parents:
diff changeset
161 extern float tanf(float);
kono
parents:
diff changeset
162 #endif
kono
parents:
diff changeset
163
kono
parents:
diff changeset
164 #ifndef HAVE_TANHF
kono
parents:
diff changeset
165 #define HAVE_TANHF 1
kono
parents:
diff changeset
166 extern float tanhf(float);
kono
parents:
diff changeset
167 #endif
kono
parents:
diff changeset
168
kono
parents:
diff changeset
169 #ifndef HAVE_TRUNC
kono
parents:
diff changeset
170 #define HAVE_TRUNC 1
kono
parents:
diff changeset
171 extern double trunc(double);
kono
parents:
diff changeset
172 #endif
kono
parents:
diff changeset
173
kono
parents:
diff changeset
174 #ifndef HAVE_TRUNCF
kono
parents:
diff changeset
175 #define HAVE_TRUNCF 1
kono
parents:
diff changeset
176 extern float truncf(float);
kono
parents:
diff changeset
177 #endif
kono
parents:
diff changeset
178
kono
parents:
diff changeset
179 #ifndef HAVE_NEXTAFTERF
kono
parents:
diff changeset
180 #define HAVE_NEXTAFTERF 1
kono
parents:
diff changeset
181 extern float nextafterf(float, float);
kono
parents:
diff changeset
182 #endif
kono
parents:
diff changeset
183
kono
parents:
diff changeset
184 #ifndef HAVE_POWF
kono
parents:
diff changeset
185 #define HAVE_POWF 1
kono
parents:
diff changeset
186 extern float powf(float, float);
kono
parents:
diff changeset
187 #endif
kono
parents:
diff changeset
188
kono
parents:
diff changeset
189 #ifndef HAVE_ROUND
kono
parents:
diff changeset
190 #define HAVE_ROUND 1
kono
parents:
diff changeset
191 extern double round(double);
kono
parents:
diff changeset
192 #endif
kono
parents:
diff changeset
193
kono
parents:
diff changeset
194 #ifndef HAVE_ROUNDF
kono
parents:
diff changeset
195 #define HAVE_ROUNDF 1
kono
parents:
diff changeset
196 extern float roundf(float);
kono
parents:
diff changeset
197 #endif
kono
parents:
diff changeset
198
kono
parents:
diff changeset
199 #if !defined(HAVE_ROUNDL)
kono
parents:
diff changeset
200 #define HAVE_ROUNDL 1
kono
parents:
diff changeset
201 extern long double roundl(long double);
kono
parents:
diff changeset
202 #endif
kono
parents:
diff changeset
203
kono
parents:
diff changeset
204
kono
parents:
diff changeset
205
kono
parents:
diff changeset
206 #if !defined(HAVE_LROUNDF) && defined(HAVE_ROUNDF)
kono
parents:
diff changeset
207 #define HAVE_LROUNDF 1
kono
parents:
diff changeset
208 long int lroundf (float);
kono
parents:
diff changeset
209 #endif
kono
parents:
diff changeset
210
kono
parents:
diff changeset
211 #if !defined(HAVE_LROUND) && defined(HAVE_ROUND)
kono
parents:
diff changeset
212 #define HAVE_LROUND 1
kono
parents:
diff changeset
213 long int lround (double);
kono
parents:
diff changeset
214 #endif
kono
parents:
diff changeset
215
kono
parents:
diff changeset
216 #if !defined(HAVE_LROUNDL) && defined(HAVE_ROUNDL)
kono
parents:
diff changeset
217 #define HAVE_LROUNDL 1
kono
parents:
diff changeset
218 long int lroundl (long double);
kono
parents:
diff changeset
219 #endif
kono
parents:
diff changeset
220
kono
parents:
diff changeset
221 #if !defined(HAVE_LLROUNDF) && defined(HAVE_ROUNDF)
kono
parents:
diff changeset
222 #define HAVE_LLROUNDF 1
kono
parents:
diff changeset
223 long long int llroundf (float);
kono
parents:
diff changeset
224 #endif
kono
parents:
diff changeset
225
kono
parents:
diff changeset
226 #if !defined(HAVE_LLROUND) && defined(HAVE_ROUND)
kono
parents:
diff changeset
227 #define HAVE_LLROUND 1
kono
parents:
diff changeset
228 long long int llround (double);
kono
parents:
diff changeset
229 #endif
kono
parents:
diff changeset
230
kono
parents:
diff changeset
231 #if !defined(HAVE_LLROUNDL) && defined(HAVE_ROUNDL)
kono
parents:
diff changeset
232 #define HAVE_LLROUNDL 1
kono
parents:
diff changeset
233 long long int llroundl (long double);
kono
parents:
diff changeset
234 #endif
kono
parents:
diff changeset
235
kono
parents:
diff changeset
236 /* Wrappers for systems without the various C99 single precision Bessel
kono
parents:
diff changeset
237 functions. */
kono
parents:
diff changeset
238
kono
parents:
diff changeset
239 #if defined(HAVE_J0) && ! defined(HAVE_J0F)
kono
parents:
diff changeset
240 #define HAVE_J0F 1
kono
parents:
diff changeset
241 extern float j0f (float);
kono
parents:
diff changeset
242 #endif
kono
parents:
diff changeset
243
kono
parents:
diff changeset
244 #if defined(HAVE_J1) && !defined(HAVE_J1F)
kono
parents:
diff changeset
245 #define HAVE_J1F 1
kono
parents:
diff changeset
246 extern float j1f (float);
kono
parents:
diff changeset
247 #endif
kono
parents:
diff changeset
248
kono
parents:
diff changeset
249 #if defined(HAVE_JN) && !defined(HAVE_JNF)
kono
parents:
diff changeset
250 #define HAVE_JNF 1
kono
parents:
diff changeset
251 extern float jnf (int, float);
kono
parents:
diff changeset
252 #endif
kono
parents:
diff changeset
253
kono
parents:
diff changeset
254 #if defined(HAVE_Y0) && !defined(HAVE_Y0F)
kono
parents:
diff changeset
255 #define HAVE_Y0F 1
kono
parents:
diff changeset
256 extern float y0f (float);
kono
parents:
diff changeset
257 #endif
kono
parents:
diff changeset
258
kono
parents:
diff changeset
259 #if defined(HAVE_Y1) && !defined(HAVE_Y1F)
kono
parents:
diff changeset
260 #define HAVE_Y1F 1
kono
parents:
diff changeset
261 extern float y1f (float);
kono
parents:
diff changeset
262 #endif
kono
parents:
diff changeset
263
kono
parents:
diff changeset
264 #if defined(HAVE_YN) && !defined(HAVE_YNF)
kono
parents:
diff changeset
265 #define HAVE_YNF 1
kono
parents:
diff changeset
266 extern float ynf (int, float);
kono
parents:
diff changeset
267 #endif
kono
parents:
diff changeset
268
kono
parents:
diff changeset
269
kono
parents:
diff changeset
270 /* Wrappers for systems without the C99 erff() and erfcf() functions. */
kono
parents:
diff changeset
271
kono
parents:
diff changeset
272 #if defined(HAVE_ERF) && !defined(HAVE_ERFF)
kono
parents:
diff changeset
273 #define HAVE_ERFF 1
kono
parents:
diff changeset
274 extern float erff (float);
kono
parents:
diff changeset
275 #endif
kono
parents:
diff changeset
276
kono
parents:
diff changeset
277 #if defined(HAVE_ERFC) && !defined(HAVE_ERFCF)
kono
parents:
diff changeset
278 #define HAVE_ERFCF 1
kono
parents:
diff changeset
279 extern float erfcf (float);
kono
parents:
diff changeset
280 #endif
kono
parents:
diff changeset
281
kono
parents:
diff changeset
282
kono
parents:
diff changeset
283
kono
parents:
diff changeset
284 /* log10l is needed on all platforms for decimal I/O */
kono
parents:
diff changeset
285 #ifndef HAVE_LOG10L
kono
parents:
diff changeset
286 #define HAVE_LOG10L 1
kono
parents:
diff changeset
287 extern long double log10l(long double);
kono
parents:
diff changeset
288 #endif
kono
parents:
diff changeset
289
kono
parents:
diff changeset
290
kono
parents:
diff changeset
291 /* complex math functions */
kono
parents:
diff changeset
292
kono
parents:
diff changeset
293 #if !defined(HAVE_CABSF)
kono
parents:
diff changeset
294 #define HAVE_CABSF 1
kono
parents:
diff changeset
295 extern float cabsf (float complex);
kono
parents:
diff changeset
296 #endif
kono
parents:
diff changeset
297
kono
parents:
diff changeset
298 #if !defined(HAVE_CABS)
kono
parents:
diff changeset
299 #define HAVE_CABS 1
kono
parents:
diff changeset
300 extern double cabs (double complex);
kono
parents:
diff changeset
301 #endif
kono
parents:
diff changeset
302
kono
parents:
diff changeset
303 #if !defined(HAVE_CABSL) && defined(HAVE_HYPOTL)
kono
parents:
diff changeset
304 #define HAVE_CABSL 1
kono
parents:
diff changeset
305 extern long double cabsl (long double complex);
kono
parents:
diff changeset
306 #endif
kono
parents:
diff changeset
307
kono
parents:
diff changeset
308
kono
parents:
diff changeset
309 #if !defined(HAVE_CARGF)
kono
parents:
diff changeset
310 #define HAVE_CARGF 1
kono
parents:
diff changeset
311 extern float cargf (float complex);
kono
parents:
diff changeset
312 #endif
kono
parents:
diff changeset
313
kono
parents:
diff changeset
314 #if !defined(HAVE_CARG)
kono
parents:
diff changeset
315 #define HAVE_CARG 1
kono
parents:
diff changeset
316 extern double carg (double complex);
kono
parents:
diff changeset
317 #endif
kono
parents:
diff changeset
318
kono
parents:
diff changeset
319 #if !defined(HAVE_CARGL) && defined(HAVE_ATAN2L)
kono
parents:
diff changeset
320 #define HAVE_CARGL 1
kono
parents:
diff changeset
321 extern long double cargl (long double complex);
kono
parents:
diff changeset
322 #endif
kono
parents:
diff changeset
323
kono
parents:
diff changeset
324
kono
parents:
diff changeset
325 #if !defined(HAVE_CEXPF)
kono
parents:
diff changeset
326 #define HAVE_CEXPF 1
kono
parents:
diff changeset
327 extern float complex cexpf (float complex);
kono
parents:
diff changeset
328 #endif
kono
parents:
diff changeset
329
kono
parents:
diff changeset
330 #if !defined(HAVE_CEXP)
kono
parents:
diff changeset
331 #define HAVE_CEXP 1
kono
parents:
diff changeset
332 extern double complex cexp (double complex);
kono
parents:
diff changeset
333 #endif
kono
parents:
diff changeset
334
kono
parents:
diff changeset
335 #if !defined(HAVE_CEXPL) && defined(HAVE_COSL) && defined(HAVE_SINL) && defined(HAVE_EXPL)
kono
parents:
diff changeset
336 #define HAVE_CEXPL 1
kono
parents:
diff changeset
337 extern long double complex cexpl (long double complex);
kono
parents:
diff changeset
338 #endif
kono
parents:
diff changeset
339
kono
parents:
diff changeset
340
kono
parents:
diff changeset
341 #if !defined(HAVE_CLOGF)
kono
parents:
diff changeset
342 #define HAVE_CLOGF 1
kono
parents:
diff changeset
343 extern float complex clogf (float complex);
kono
parents:
diff changeset
344 #endif
kono
parents:
diff changeset
345
kono
parents:
diff changeset
346 #if !defined(HAVE_CLOG)
kono
parents:
diff changeset
347 #define HAVE_CLOG 1
kono
parents:
diff changeset
348 extern double complex clog (double complex);
kono
parents:
diff changeset
349 #endif
kono
parents:
diff changeset
350
kono
parents:
diff changeset
351 #if !defined(HAVE_CLOGL) && defined(HAVE_LOGL) && defined(HAVE_CABSL) && defined(HAVE_CARGL)
kono
parents:
diff changeset
352 #define HAVE_CLOGL 1
kono
parents:
diff changeset
353 extern long double complex clogl (long double complex);
kono
parents:
diff changeset
354 #endif
kono
parents:
diff changeset
355
kono
parents:
diff changeset
356
kono
parents:
diff changeset
357 #if !defined(HAVE_CLOG10F)
kono
parents:
diff changeset
358 #define HAVE_CLOG10F 1
kono
parents:
diff changeset
359 extern float complex clog10f (float complex);
kono
parents:
diff changeset
360 #endif
kono
parents:
diff changeset
361
kono
parents:
diff changeset
362 #if !defined(HAVE_CLOG10)
kono
parents:
diff changeset
363 #define HAVE_CLOG10 1
kono
parents:
diff changeset
364 extern double complex clog10 (double complex);
kono
parents:
diff changeset
365 #endif
kono
parents:
diff changeset
366
kono
parents:
diff changeset
367 #if !defined(HAVE_CLOG10L) && defined(HAVE_LOG10L) && defined(HAVE_CABSL) && defined(HAVE_CARGL)
kono
parents:
diff changeset
368 #define HAVE_CLOG10L 1
kono
parents:
diff changeset
369 extern long double complex clog10l (long double complex);
kono
parents:
diff changeset
370 #endif
kono
parents:
diff changeset
371
kono
parents:
diff changeset
372
kono
parents:
diff changeset
373 #if !defined(HAVE_CPOWF)
kono
parents:
diff changeset
374 #define HAVE_CPOWF 1
kono
parents:
diff changeset
375 extern float complex cpowf (float complex, float complex);
kono
parents:
diff changeset
376 #endif
kono
parents:
diff changeset
377
kono
parents:
diff changeset
378 #if !defined(HAVE_CPOW)
kono
parents:
diff changeset
379 #define HAVE_CPOW 1
kono
parents:
diff changeset
380 extern double complex cpow (double complex, double complex);
kono
parents:
diff changeset
381 #endif
kono
parents:
diff changeset
382
kono
parents:
diff changeset
383 #if !defined(HAVE_CPOWL) && defined(HAVE_CEXPL) && defined(HAVE_CLOGL)
kono
parents:
diff changeset
384 #define HAVE_CPOWL 1
kono
parents:
diff changeset
385 extern long double complex cpowl (long double complex, long double complex);
kono
parents:
diff changeset
386 #endif
kono
parents:
diff changeset
387
kono
parents:
diff changeset
388
kono
parents:
diff changeset
389 #if !defined(HAVE_CSQRTF)
kono
parents:
diff changeset
390 #define HAVE_CSQRTF 1
kono
parents:
diff changeset
391 extern float complex csqrtf (float complex);
kono
parents:
diff changeset
392 #endif
kono
parents:
diff changeset
393
kono
parents:
diff changeset
394 #if !defined(HAVE_CSQRT)
kono
parents:
diff changeset
395 #define HAVE_CSQRT 1
kono
parents:
diff changeset
396 extern double complex csqrt (double complex);
kono
parents:
diff changeset
397 #endif
kono
parents:
diff changeset
398
kono
parents:
diff changeset
399 #if !defined(HAVE_CSQRTL) && defined(HAVE_COPYSIGNL) && defined(HAVE_SQRTL) && defined(HAVE_FABSL) && defined(HAVE_HYPOTL)
kono
parents:
diff changeset
400 #define HAVE_CSQRTL 1
kono
parents:
diff changeset
401 extern long double complex csqrtl (long double complex);
kono
parents:
diff changeset
402 #endif
kono
parents:
diff changeset
403
kono
parents:
diff changeset
404
kono
parents:
diff changeset
405 #if !defined(HAVE_CSINHF)
kono
parents:
diff changeset
406 #define HAVE_CSINHF 1
kono
parents:
diff changeset
407 extern float complex csinhf (float complex);
kono
parents:
diff changeset
408 #endif
kono
parents:
diff changeset
409
kono
parents:
diff changeset
410 #if !defined(HAVE_CSINH)
kono
parents:
diff changeset
411 #define HAVE_CSINH 1
kono
parents:
diff changeset
412 extern double complex csinh (double complex);
kono
parents:
diff changeset
413 #endif
kono
parents:
diff changeset
414
kono
parents:
diff changeset
415 #if !defined(HAVE_CSINHL) && defined(HAVE_COSL) && defined(HAVE_COSHL) && defined(HAVE_SINL) && defined(HAVE_SINHL)
kono
parents:
diff changeset
416 #define HAVE_CSINHL 1
kono
parents:
diff changeset
417 extern long double complex csinhl (long double complex);
kono
parents:
diff changeset
418 #endif
kono
parents:
diff changeset
419
kono
parents:
diff changeset
420
kono
parents:
diff changeset
421 #if !defined(HAVE_CCOSHF)
kono
parents:
diff changeset
422 #define HAVE_CCOSHF 1
kono
parents:
diff changeset
423 extern float complex ccoshf (float complex);
kono
parents:
diff changeset
424 #endif
kono
parents:
diff changeset
425
kono
parents:
diff changeset
426 #if !defined(HAVE_CCOSH)
kono
parents:
diff changeset
427 #define HAVE_CCOSH 1
kono
parents:
diff changeset
428 extern double complex ccosh (double complex);
kono
parents:
diff changeset
429 #endif
kono
parents:
diff changeset
430
kono
parents:
diff changeset
431 #if !defined(HAVE_CCOSHL) && defined(HAVE_COSL) && defined(HAVE_COSHL) && defined(HAVE_SINL) && defined(HAVE_SINHL)
kono
parents:
diff changeset
432 #define HAVE_CCOSHL 1
kono
parents:
diff changeset
433 extern long double complex ccoshl (long double complex);
kono
parents:
diff changeset
434 #endif
kono
parents:
diff changeset
435
kono
parents:
diff changeset
436
kono
parents:
diff changeset
437 #if !defined(HAVE_CTANHF)
kono
parents:
diff changeset
438 #define HAVE_CTANHF 1
kono
parents:
diff changeset
439 extern float complex ctanhf (float complex);
kono
parents:
diff changeset
440 #endif
kono
parents:
diff changeset
441
kono
parents:
diff changeset
442 #if !defined(HAVE_CTANH)
kono
parents:
diff changeset
443 #define HAVE_CTANH 1
kono
parents:
diff changeset
444 extern double complex ctanh (double complex);
kono
parents:
diff changeset
445 #endif
kono
parents:
diff changeset
446
kono
parents:
diff changeset
447 #if !defined(HAVE_CTANHL) && defined(HAVE_TANL) && defined(HAVE_TANHL)
kono
parents:
diff changeset
448 #define HAVE_CTANHL 1
kono
parents:
diff changeset
449 extern long double complex ctanhl (long double complex);
kono
parents:
diff changeset
450 #endif
kono
parents:
diff changeset
451
kono
parents:
diff changeset
452
kono
parents:
diff changeset
453 #if !defined(HAVE_CSINF)
kono
parents:
diff changeset
454 #define HAVE_CSINF 1
kono
parents:
diff changeset
455 extern float complex csinf (float complex);
kono
parents:
diff changeset
456 #endif
kono
parents:
diff changeset
457
kono
parents:
diff changeset
458 #if !defined(HAVE_CSIN)
kono
parents:
diff changeset
459 #define HAVE_CSIN 1
kono
parents:
diff changeset
460 extern double complex csin (double complex);
kono
parents:
diff changeset
461 #endif
kono
parents:
diff changeset
462
kono
parents:
diff changeset
463 #if !defined(HAVE_CSINL) && defined(HAVE_COSL) && defined(HAVE_COSHL) && defined(HAVE_SINL) && defined(HAVE_SINHL)
kono
parents:
diff changeset
464 #define HAVE_CSINL 1
kono
parents:
diff changeset
465 extern long double complex csinl (long double complex);
kono
parents:
diff changeset
466 #endif
kono
parents:
diff changeset
467
kono
parents:
diff changeset
468
kono
parents:
diff changeset
469 #if !defined(HAVE_CCOSF)
kono
parents:
diff changeset
470 #define HAVE_CCOSF 1
kono
parents:
diff changeset
471 extern float complex ccosf (float complex);
kono
parents:
diff changeset
472 #endif
kono
parents:
diff changeset
473
kono
parents:
diff changeset
474 #if !defined(HAVE_CCOS)
kono
parents:
diff changeset
475 #define HAVE_CCOS 1
kono
parents:
diff changeset
476 extern double complex ccos (double complex);
kono
parents:
diff changeset
477 #endif
kono
parents:
diff changeset
478
kono
parents:
diff changeset
479 #if !defined(HAVE_CCOSL) && defined(HAVE_COSL) && defined(HAVE_COSHL) && defined(HAVE_SINL) && defined(HAVE_SINHL)
kono
parents:
diff changeset
480 #define HAVE_CCOSL 1
kono
parents:
diff changeset
481 extern long double complex ccosl (long double complex);
kono
parents:
diff changeset
482 #endif
kono
parents:
diff changeset
483
kono
parents:
diff changeset
484
kono
parents:
diff changeset
485 #if !defined(HAVE_CTANF)
kono
parents:
diff changeset
486 #define HAVE_CTANF 1
kono
parents:
diff changeset
487 extern float complex ctanf (float complex);
kono
parents:
diff changeset
488 #endif
kono
parents:
diff changeset
489
kono
parents:
diff changeset
490 #if !defined(HAVE_CTAN)
kono
parents:
diff changeset
491 #define HAVE_CTAN 1
kono
parents:
diff changeset
492 extern double complex ctan (double complex);
kono
parents:
diff changeset
493 #endif
kono
parents:
diff changeset
494
kono
parents:
diff changeset
495 #if !defined(HAVE_CTANL) && defined(HAVE_TANL) && defined(HAVE_TANHL)
kono
parents:
diff changeset
496 #define HAVE_CTANL 1
kono
parents:
diff changeset
497 extern long double complex ctanl (long double complex);
kono
parents:
diff changeset
498 #endif
kono
parents:
diff changeset
499
kono
parents:
diff changeset
500
kono
parents:
diff changeset
501 /* Complex ACOS. */
kono
parents:
diff changeset
502
kono
parents:
diff changeset
503 #if !defined(HAVE_CACOSF) && defined(HAVE_CLOGF) && defined(HAVE_CSQRTF)
kono
parents:
diff changeset
504 #define HAVE_CACOSF 1
kono
parents:
diff changeset
505 extern complex float cacosf (complex float z);
kono
parents:
diff changeset
506 #endif
kono
parents:
diff changeset
507
kono
parents:
diff changeset
508 #if !defined(HAVE_CACOS) && defined(HAVE_CLOG) && defined(HAVE_CSQRT)
kono
parents:
diff changeset
509 #define HAVE_CACOS 1
kono
parents:
diff changeset
510 extern complex double cacos (complex double z);
kono
parents:
diff changeset
511 #endif
kono
parents:
diff changeset
512
kono
parents:
diff changeset
513 #if !defined(HAVE_CACOSL) && defined(HAVE_CLOGL) && defined(HAVE_CSQRTL)
kono
parents:
diff changeset
514 #define HAVE_CACOSL 1
kono
parents:
diff changeset
515 extern complex long double cacosl (complex long double z);
kono
parents:
diff changeset
516 #endif
kono
parents:
diff changeset
517
kono
parents:
diff changeset
518
kono
parents:
diff changeset
519 /* Complex ASIN. */
kono
parents:
diff changeset
520
kono
parents:
diff changeset
521 #if !defined(HAVE_CASINF) && defined(HAVE_CLOGF) && defined(HAVE_CSQRTF)
kono
parents:
diff changeset
522 #define HAVE_CASINF 1
kono
parents:
diff changeset
523 extern complex float casinf (complex float z);
kono
parents:
diff changeset
524 #endif
kono
parents:
diff changeset
525
kono
parents:
diff changeset
526 #if !defined(HAVE_CASIN) && defined(HAVE_CLOG) && defined(HAVE_CSQRT)
kono
parents:
diff changeset
527 #define HAVE_CASIN 1
kono
parents:
diff changeset
528 extern complex double casin (complex double z);
kono
parents:
diff changeset
529 #endif
kono
parents:
diff changeset
530
kono
parents:
diff changeset
531 #if !defined(HAVE_CASINL) && defined(HAVE_CLOGL) && defined(HAVE_CSQRTL)
kono
parents:
diff changeset
532 #define HAVE_CASINL 1
kono
parents:
diff changeset
533 extern complex long double casinl (complex long double z);
kono
parents:
diff changeset
534 #endif
kono
parents:
diff changeset
535
kono
parents:
diff changeset
536
kono
parents:
diff changeset
537 /* Complex ATAN. */
kono
parents:
diff changeset
538
kono
parents:
diff changeset
539 #if !defined(HAVE_CATANF) && defined(HAVE_CLOGF)
kono
parents:
diff changeset
540 #define HAVE_CATANF 1
kono
parents:
diff changeset
541 extern complex float catanf (complex float z);
kono
parents:
diff changeset
542 #endif
kono
parents:
diff changeset
543
kono
parents:
diff changeset
544 #if !defined(HAVE_CATAN) && defined(HAVE_CLOG)
kono
parents:
diff changeset
545 #define HAVE_CATAN 1
kono
parents:
diff changeset
546 extern complex double catan (complex double z);
kono
parents:
diff changeset
547 #endif
kono
parents:
diff changeset
548
kono
parents:
diff changeset
549 #if !defined(HAVE_CATANL) && defined(HAVE_CLOGL)
kono
parents:
diff changeset
550 #define HAVE_CATANL 1
kono
parents:
diff changeset
551 extern complex long double catanl (complex long double z);
kono
parents:
diff changeset
552 #endif
kono
parents:
diff changeset
553
kono
parents:
diff changeset
554
kono
parents:
diff changeset
555 /* Complex ASINH. */
kono
parents:
diff changeset
556
kono
parents:
diff changeset
557 #if !defined(HAVE_CASINHF) && defined(HAVE_CLOGF) && defined(HAVE_CSQRTF)
kono
parents:
diff changeset
558 #define HAVE_CASINHF 1
kono
parents:
diff changeset
559 extern complex float casinhf (complex float z);
kono
parents:
diff changeset
560 #endif
kono
parents:
diff changeset
561
kono
parents:
diff changeset
562
kono
parents:
diff changeset
563 #if !defined(HAVE_CASINH) && defined(HAVE_CLOG) && defined(HAVE_CSQRT)
kono
parents:
diff changeset
564 #define HAVE_CASINH 1
kono
parents:
diff changeset
565 extern complex double casinh (complex double z);
kono
parents:
diff changeset
566 #endif
kono
parents:
diff changeset
567
kono
parents:
diff changeset
568 #if !defined(HAVE_CASINHL) && defined(HAVE_CLOGL) && defined(HAVE_CSQRTL)
kono
parents:
diff changeset
569 #define HAVE_CASINHL 1
kono
parents:
diff changeset
570 extern complex long double casinhl (complex long double z);
kono
parents:
diff changeset
571 #endif
kono
parents:
diff changeset
572
kono
parents:
diff changeset
573
kono
parents:
diff changeset
574 /* Complex ACOSH. */
kono
parents:
diff changeset
575
kono
parents:
diff changeset
576 #if !defined(HAVE_CACOSHF) && defined(HAVE_CLOGF) && defined(HAVE_CSQRTF)
kono
parents:
diff changeset
577 #define HAVE_CACOSHF 1
kono
parents:
diff changeset
578 extern complex float cacoshf (complex float z);
kono
parents:
diff changeset
579 #endif
kono
parents:
diff changeset
580
kono
parents:
diff changeset
581 #if !defined(HAVE_CACOSH) && defined(HAVE_CLOG) && defined(HAVE_CSQRT)
kono
parents:
diff changeset
582 #define HAVE_CACOSH 1
kono
parents:
diff changeset
583 extern complex double cacosh (complex double z);
kono
parents:
diff changeset
584 #endif
kono
parents:
diff changeset
585
kono
parents:
diff changeset
586 #if !defined(HAVE_CACOSHL) && defined(HAVE_CLOGL) && defined(HAVE_CSQRTL)
kono
parents:
diff changeset
587 #define HAVE_CACOSHL 1
kono
parents:
diff changeset
588 extern complex long double cacoshl (complex long double z);
kono
parents:
diff changeset
589 #endif
kono
parents:
diff changeset
590
kono
parents:
diff changeset
591
kono
parents:
diff changeset
592 /* Complex ATANH. */
kono
parents:
diff changeset
593
kono
parents:
diff changeset
594 #if !defined(HAVE_CATANHF) && defined(HAVE_CLOGF)
kono
parents:
diff changeset
595 #define HAVE_CATANHF 1
kono
parents:
diff changeset
596 extern complex float catanhf (complex float z);
kono
parents:
diff changeset
597 #endif
kono
parents:
diff changeset
598
kono
parents:
diff changeset
599 #if !defined(HAVE_CATANH) && defined(HAVE_CLOG)
kono
parents:
diff changeset
600 #define HAVE_CATANH 1
kono
parents:
diff changeset
601 extern complex double catanh (complex double z);
kono
parents:
diff changeset
602 #endif
kono
parents:
diff changeset
603
kono
parents:
diff changeset
604 #if !defined(HAVE_CATANHL) && defined(HAVE_CLOGL)
kono
parents:
diff changeset
605 #define HAVE_CATANHL 1
kono
parents:
diff changeset
606 extern complex long double catanhl (complex long double z);
kono
parents:
diff changeset
607 #endif
kono
parents:
diff changeset
608
kono
parents:
diff changeset
609
kono
parents:
diff changeset
610 /* Gamma-related prototypes. */
kono
parents:
diff changeset
611 #if !defined(HAVE_TGAMMA)
kono
parents:
diff changeset
612 #define HAVE_TGAMMA 1
kono
parents:
diff changeset
613 extern double tgamma (double);
kono
parents:
diff changeset
614 #endif
kono
parents:
diff changeset
615
kono
parents:
diff changeset
616 #if !defined(HAVE_LGAMMA)
kono
parents:
diff changeset
617 #define HAVE_LGAMMA 1
kono
parents:
diff changeset
618 extern double lgamma (double);
kono
parents:
diff changeset
619 #endif
kono
parents:
diff changeset
620
kono
parents:
diff changeset
621 #if defined(HAVE_TGAMMA) && !defined(HAVE_TGAMMAF)
kono
parents:
diff changeset
622 #define HAVE_TGAMMAF 1
kono
parents:
diff changeset
623 extern float tgammaf (float);
kono
parents:
diff changeset
624 #endif
kono
parents:
diff changeset
625
kono
parents:
diff changeset
626 #if defined(HAVE_LGAMMA) && !defined(HAVE_LGAMMAF)
kono
parents:
diff changeset
627 #define HAVE_LGAMMAF 1
kono
parents:
diff changeset
628 extern float lgammaf (float);
kono
parents:
diff changeset
629 #endif
kono
parents:
diff changeset
630
kono
parents:
diff changeset
631
kono
parents:
diff changeset
632 #endif /* C99_PROTOS_H */
kono
parents:
diff changeset
633