Add another fma test.
[platform/upstream/glibc.git] / math / bug-tgmath1.c
1 #include <stdio.h>
2 #include <tgmath.h>
3
4
5 int
6 main (void)
7 {
8   int retval = 0;
9
10 #define TEST(expr, res) \
11   if (sizeof (expr) != res)                                                   \
12     {                                                                         \
13       printf ("sizeof(%s) == %zu, expected %zu\n", #expr,                     \
14               sizeof (expr), (size_t) (res));                                 \
15       retval = 1;                                                                     \
16     }
17
18   TEST (creal (1.0), sizeof (double));
19   TEST (creal (1.0 + 1.0i), sizeof (double));
20   TEST (creal (1.0l), sizeof (long double));
21   TEST (creal (1.0l + 1.0li), sizeof (long double));
22   TEST (creal (1.0f), sizeof (float));
23   TEST (creal (1.0f + 1.0fi), sizeof (float));
24
25   TEST (cimag (1.0), sizeof (double));
26   TEST (cimag (1.0 + 1.0i), sizeof (double));
27   TEST (cimag (1.0l), sizeof (long double));
28   TEST (cimag (1.0l + 1.0li), sizeof (long double));
29   TEST (cimag (1.0f), sizeof (float));
30   TEST (cimag (1.0f + 1.0fi), sizeof (float));
31
32   TEST (fabs (1.0), sizeof (double));
33   TEST (fabs (1.0 + 1.0i), sizeof (double));
34   TEST (fabs (1.0l), sizeof (long double));
35   TEST (fabs (1.0l + 1.0li), sizeof (long double));
36   TEST (fabs (1.0f), sizeof (float));
37   TEST (fabs (1.0f + 1.0fi), sizeof (float));
38
39   TEST (carg (1.0), sizeof (double));
40   TEST (carg (1.0 + 1.0i), sizeof (double));
41   TEST (carg (1.0l), sizeof (long double));
42   TEST (carg (1.0l + 1.0li), sizeof (long double));
43   TEST (carg (1.0f), sizeof (float));
44   TEST (carg (1.0f + 1.0fi), sizeof (float));
45
46   return retval;
47 }