diff options
-rw-r--r-- | clang/test/Headers/tgmath.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/clang/test/Headers/tgmath.c b/clang/test/Headers/tgmath.c new file mode 100644 index 00000000000..a95e33a53c4 --- /dev/null +++ b/clang/test/Headers/tgmath.c @@ -0,0 +1,41 @@ +// RUN: %clang -fsyntax-only %s + +#ifdef __STDC_HOSTED__ + +#include <tgmath.h> + +float f; +double d; +long double l; + +float complex fc; +double complex dc; +long double complex lc; + +// creal + +_Static_assert(sizeof(creal(f)) == sizeof(f), ""); +_Static_assert(sizeof(creal(d)) == sizeof(d), ""); +_Static_assert(sizeof(creal(l)) == sizeof(l), ""); + +_Static_assert(sizeof(creal(fc)) == sizeof(f), ""); +_Static_assert(sizeof(creal(dc)) == sizeof(d), ""); +_Static_assert(sizeof(creal(lc)) == sizeof(l), ""); + +// fabs + +_Static_assert(sizeof(fabs(f)) == sizeof(f), ""); +_Static_assert(sizeof(fabs(d)) == sizeof(d), ""); +_Static_assert(sizeof(fabs(l)) == sizeof(l), ""); + +_Static_assert(sizeof(fabs(fc)) == sizeof(f), ""); +_Static_assert(sizeof(fabs(dc)) == sizeof(d), ""); +_Static_assert(sizeof(fabs(lc)) == sizeof(l), ""); + +// logb + +_Static_assert(sizeof(logb(f)) == sizeof(f), ""); +_Static_assert(sizeof(logb(d)) == sizeof(d), ""); +_Static_assert(sizeof(logb(l)) == sizeof(l), ""); + +#endif |