Kurt Roeckx wrote: > On Sun, Sep 27, 2009 at 08:51:48AM +0200, Jim Meyering wrote: >> Thanks for the report. >> Does the following change fix it? >> If so, please tell me what version of bash it's using >> so I can add that to the commit log. > > Note that /bin/sh points to dash, not bash. And the same version > of dash seems to work on other arches. > > Running the test with bash instead of dash seems to work. Adding > the \ also doesn't seem to have any effect. > > Removing the '^?' does fix it. > > If you believe this to be a bug in dash, please reassign the bug. > This was tested using dash 0.5.5.1-3 and bash 4.0-7.
Thanks for the details. Here's a patch that's more likely to work. That this failure is specific to the sparc build is a strong indication that it is a bug in dash or the compiler. Maybe a sign-extension bug? FYI, I couldn't reproduce that failure on sparc64 (sperger/unstable) with dash built from git using gcc version 4.3.4 (Debian 4.3.4-2). Jim >From 6ffca52a1b2d0c43241c101d847a20cf7875c2fd Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyer...@redhat.com> Date: Sun, 27 Sep 2009 08:41:55 +0200 Subject: [PATCH] test-yesno: work around sparc-dash here-document infelicity Without this change, the literal \177 byte in a here document would make Debian's dash 0.5.5.1-3 (sparc only) misbehave. * tests/test-yesno.sh: Don't put the \177 byte in the here document. Instead, use a marker, "@", and filter through tr to create the desired contents. Reported as <http://bugs.debian.org/548493> by Kurt Roeckx. --- ChangeLog | 9 +++++++++ tests/test-yesno.sh | 4 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 12962ec..6043957 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2009-09-27 Jim Meyering <meyer...@redhat.com> + + test-yesno: work around sparc-dash here-document infelicity + Without this change, the literal \177 byte in a here document + would make Debian's dash 0.5.5.1-3 (sparc only) misbehave. + * tests/test-yesno.sh: Don't put the \177 byte in the here document. + Instead, use a marker, "@", and filter through tr to create the desired + contents. Reported as <http://bugs.debian.org/548493> by Kurt Roeckx. + 2009-09-27 Bruno Haible <br...@clisp.org> Disable untested support for new flavours of ACLs on AIX. diff --git a/tests/test-yesno.sh b/tests/test-yesno.sh index 52b94ef..6791f1b 100755 --- a/tests/test-yesno.sh +++ b/tests/test-yesno.sh @@ -19,9 +19,9 @@ else fi # Test with seekable stdin; the followon process must see remaining data. -cat <<EOF > ${p}in.tmp +cat <<EOF |tr @ '\177'> ${p}in.tmp nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn - entire line consumed -yn - backspace does not change result +...@n - backspace does not change result y does not match either yesexpr or noexpr n -- 1.6.5.rc2.177.ga9dd6