[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: HEAD: inclusion order wrong for input.c
From: |
Eric Blake |
Subject: |
Re: HEAD: inclusion order wrong for input.c |
Date: |
Tue, 3 Apr 2007 20:28:36 +0000 (UTC) |
User-agent: |
Loom/3.14 (http://gmane.org/) |
Ralf Wildenhues <Ralf.Wildenhues <at> gmx.de> writes:
> > Care to share the testsuite.log?
>
> Certainly. Here you go. Pretty recent versions of most things were
> used for bootstrap.
Are you interested in installing GMP to further test the mpeval module (5 of
the 6 skips)? Also, can you show me tests/testsuite.dir/068/testsuite.log so I
can see why 'stdin seekable' was skipped (hmm, maybe that is an autotest bug,
for not including logs of skipped tests).
The failure in 70 is merely a test suite bug:
| ../../m4/tests/others.at:613: m4 -b -d --help >/dev/full < /dev/null
| stderr:
| /tmp/build/src/.libs/lt-m4: write error
| ../../m4/tests/others.at:613: sed 's/^[^:]*[lt-]*m4[.ex]*:/m4:/
| /^m4debug: module/s/opening file.*/opening file/
| s/\(cannot open module [^:]*\):.*/\1/
| ' stderr >&2
| --- - 2007-04-03 18:13:03.473039000 +0200
| +++ /tmp/build/tests/testsuite.dir/at-stderr 2007-04-03 18:13:03.000000000
+0200
| @@ -1,2 +1,2 @@
| -m4: write error: No space left on device
| +m4: write error
It appears here that Linux explicitly resets errno to 0 rather than leaving
unchanged if ferror can detect that a failure occurred but doesn't remember
why; whereas I wrote the test on cygwin which leaves errno unchanged from its
previous state of ENOSPC. So the test suite needs to be tolerant of a wider
variety of error output. I'm not sure whether the following will catch
everything, but it hopefully lets the test get further; it may take a couple
iterations before we settle on the right patch for the testsuite:
2007-04-03 Eric Blake <address@hidden>
* tests/others.at (stdout full): Make test more robust when errno
is unset after detecting write error.
Reported by Ralf Wildenhues.
The failure in 135 is a failure to port a fix from branch-1_4:
| ../../m4/tests/../m4/doc/m4.texinfo:6322:
| ../../m4/tests/generated.at:3432: m4 -b -d input.m4 < /dev/null
| --- /dev/null 2006-05-22 13:44:12.000000000 +0200
| +++ /tmp/build/tests/testsuite.dir/at-stderr 2007-04-03 18:13:14.000000000
+0200
| @@ -0,0 +1 @@
| +/tmp/build/../m4/tests/testsuite: line 1388: 16652 Floating point exception
(core dumped) m4 -b -d input.m4 </dev/null
And to think that I was the one that originally reported the comparable crash
with x86 and x86_64 architectures in m4 1.4.4 - the bug is that m4 must special
case MIN_INT / -1 and MIN_INT % -1 to avoid FPE on these platforms (and the
autoconf manual even documents the FPE violation of the C standard on MIN_INT
% -1 as a portability pitfall). I'll patch that one shortly.
--
Eric Blake
Index: tests/others.at
===================================================================
RCS file: /sources/m4/m4/tests/others.at,v
retrieving revision 1.31
diff -u -r1.31 others.at
--- tests/others.at 5 Feb 2007 17:31:10 -0000 1.31
+++ tests/others.at 3 Apr 2007 20:24:44 -0000
@@ -610,21 +610,17 @@
}])
dnl detect write failures on --help
-AT_CHECK_M4([--help >/dev/full], [1], [],
-[[m4: write error: No space left on device
-]])
+AT_CHECK_M4([--help >/dev/full], [1], [], [stderr])
+AT_CHECK([grep '^m4: write error' stderr], [0], [ignore])
+mv stderr experr
dnl detect write failures on --version
-AT_CHECK_M4([--version >/dev/full], [1], [],
-[[m4: write error: No space left on device
-]])
+AT_CHECK_M4([--version >/dev/full], [1], [], [experr])
dnl detect ordinary write failures
AT_DATA([in.m4], [[hello world
]])
-AT_CHECK_M4([in.m4 >/dev/full], [1], [],
-[[m4: write error: No space left on device
-]])
+AT_CHECK_M4([in.m4 >/dev/full], [1], [], [experr])
dnl detect stderr write failures
AT_DATA([in.m4], [[dnl(hello world)
- Re: HEAD: inclusion order wrong for input.c, (continued)
- Re: HEAD: inclusion order wrong for input.c, Ralf Wildenhues, 2007/04/02
- Re: HEAD: inclusion order wrong for input.c, Gary V. Vaughan, 2007/04/02
- Re: HEAD: inclusion order wrong for input.c, Eric Blake, 2007/04/02
- Re: HEAD: inclusion order wrong for input.c, Gary V. Vaughan, 2007/04/03
- Re: HEAD: inclusion order wrong for input.c, Eric Blake, 2007/04/03
- Re: HEAD: inclusion order wrong for input.c, Ralf Wildenhues, 2007/04/03
- Re: HEAD: inclusion order wrong for input.c,
Eric Blake <=
- Re: HEAD: inclusion order wrong for input.c, Ralf Wildenhues, 2007/04/06
- Re: HEAD: inclusion order wrong for input.c, Eric Blake, 2007/04/10
- Re: HEAD: inclusion order wrong for input.c, Ralf Wildenhues, 2007/04/10
- stdin seekable failure [was: HEAD: inclusion order wrong for input.c], Eric Blake, 2007/04/11
- Re: stdin seekable failure, Paul Eggert, 2007/04/11
- Re: stdin seekable failure, Eric Blake, 2007/04/12
- Re: stdin seekable failure, Eric Blake, 2007/04/12
- Re: stdin seekable failure, Ralf Wildenhues, 2007/04/13
- Re: stdin seekable failure, Eric Blake, 2007/04/12
- Re: stdin seekable failure, Eric Blake, 2007/04/27