1 /* $OpenBSD: exp.c,v 1.3 2017/08/06 20:31:58 robert Exp $ */
2
3 /* Written by Otto Moerbeek, 2006, Public domain. */
4
5 #include <math.h>
6 #include <err.h>
7
8 int
main(void)9 main(void)
10 {
11 double rd, bigd = HUGE_VAL;
12 float rf, bigf = HUGE_VALF;
13 long double rl, bigl = HUGE_VALL;
14
15 rd = exp(bigd);
16 if (!isinf(rd))
17 errx(1, "exp(bigd) = %f", rd);
18 rd = exp(-bigd);
19 if (rd != 0.0)
20 errx(1, "exp(-bigd) = %f", rd);
21
22 rf = expf(bigf);
23 if (!isinf(rf))
24 errx(1, "exp(bigf) = %f", rf);
25 rf = expf(-bigf);
26 if (rf != 0.0F)
27 errx(1, "exp(-bigf) = %f", rf);
28
29 rl = expl(bigl);
30 if (!isinf(rl))
31 errx(1, "exp(bigl) = %Lf", rl);
32 rl = expl(-bigl);
33 if (rl != 0.0L)
34 errx(1, "exp(-bigl) = %Lf", rl);
35
36 return (0);
37 }
38