Hi! I just tried the self tests of m4-1.4.10 on NetBSD-4.99.23/amd64. Two failed: test-frexpl.c:167: assertion failed [1] Abort trap (core dumped) EXEEXT="" EXEEXT... FAIL: test-frexpl ... test-printf-frexpl.c:103: assertion failed [1] Abort trap (core dumped) EXEEXT="" EXEEXT... FAIL: test-printf-frexpl
Debugging test-printf-frexpl.c gives: (gdb) bt #0 0x00007f7ffdb30576 in kill () from /usr/lib/libc.so.12 #1 0x00007f7ffdbd0af9 in abort () from /usr/lib/libc.so.12 #2 0x0000000000400d92 in main () at test-printf-frexpl.c:103 (gdb) r Starting program: /usr/obj/devel/m4/work.x86_64/m4-1.4.10/tests/test-printf-frexpl test-printf-frexpl.c:103: assertion failed Program received signal SIGABRT, Aborted. 0x00007f7ffdb30576 in kill () from /usr/lib/libc.so.12 (gdb) l 95 ASSERT (mantissa == my_ldexp (1.0L, i - LDBL_MIN_EXP)); 96 } 97 98 for (i = 1, x = 1.01L; i <= LDBL_MAX_EXP; i++, x *= 2.0L) 99 { 100 int exp = -9999; 101 long double mantissa = printf_frexpl (x, &exp); 102 ASSERT (exp == i - 1); 103 ASSERT (mantissa == 1.01L); 104 } (gdb) br 102 Breakpoint 3 at 0x400d1e: file test-printf-frexpl.c, line 102. (gdb) r The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /usr/obj/devel/m4/work.x86_64/m4-1.4.10/tests/test-printf-frexpl Breakpoint 3, main () at test-printf-frexpl.c:102 102 ASSERT (exp == i - 1); (gdb) p exp $2 = 0 (gdb) n 103 ASSERT (mantissa == 1.01L); (gdb) p mantissa $3 = 1.01 (gdb) n 98 for (i = 1, x = 1.01L; i <= LDBL_MAX_EXP; i++, x *= 2.0L) (gdb) c Continuing. Breakpoint 3, main () at test-printf-frexpl.c:102 102 ASSERT (exp == i - 1); (gdb) p exp $4 = 1 (gdb) p mantissa $5 = 1.01 (gdb) p i $6 = 2 (gdb) c Continuing. test-printf-frexpl.c:103: assertion failed Program received signal SIGABRT, Aborted. I'm confused. Can someone else make heads or tails of it? Thomas _______________________________________________ Bug-m4 mailing list Bug-m4@gnu.org http://lists.gnu.org/mailman/listinfo/bug-m4