=================================================================== RCS file: /cvs/djgpp/djgpp/tests/libc/c99/math/t-nan2.c,v retrieving revision 1.1 retrieving revision 1.2 diff -p -u -r1.1 -r1.2 --- djgpp/tests/libc/c99/math/t-nan2.c 2003/10/25 11:22:53 1.1 +++ /cvs/djgpp/djgpp/tests/libc/c99/math/t-nan2.c 2011/03/10 22:19:09 1.2 @@ -11,6 +11,9 @@ #include #include +#include "fp-union.h" + + typedef struct { int valid; @@ -260,11 +263,8 @@ int main (void) { int ok = 1; - double d_res; double_t dt_res; - float f_res; float_t ft_res; - long double ld_res; long_double_t ldt_res; int i; int testcase = 0; @@ -273,10 +273,13 @@ main (void) for (i = 0; testcases[i].valid; testcase++, i++) { + test_float_union_t fu; + test_double_union_t du; + test_long_double_union_t ldu; printf("Testcase %d: nan(): ", testcase); - d_res = nan(testcases[i].input); - dt_res = *(double_t *) &d_res; + du.d = nan(testcases[i].input); + dt_res = du.dt; if (!double_t_equal(&testcases[i].dt_expected, &dt_res, @@ -297,8 +300,8 @@ main (void) printf("Testcase %d: nanf(): ", testcase); - f_res = nanf(testcases[i].input); - ft_res = *(float_t *) &f_res; + fu.f = nanf(testcases[i].input); + ft_res = fu.ft; if (!float_t_equal(&testcases[i].ft_expected, &ft_res, @@ -319,8 +322,8 @@ main (void) printf("Testcase %d: nanl(): ", testcase); - ld_res = nanl(testcases[i].input); - ldt_res = *(long_double_t *) &ld_res; + ldu.ld = nanl(testcases[i].input); + ldt_res = ldu.ldt; if (!long_double_t_equal(&testcases[i].ldt_expected, &ldt_res,