Nelson H. F. Beebe wrote: [...there appears to be a hang in "make check" on FreeBSD...] > > PASS: misc/id-groups > SKIP: misc/md5sum > SKIP: misc/md5sum-newline > PASS: misc/md5sum-parallel > PASS: misc/mknod
Hi Nelson, [Cc'ing the list] Thanks for the heads up and for all the testing. The test following that one is "misc/nice", and it is indeed stuck. The shell seems to be the problem (bash-4.1.7) and how it treats IFS. init.cfg saves $IFS and restores it like this: local saved_IFS=$IFS IFS=: set -- $PATH IFS=$saved_IFS but that fails with the bash-4.1.7 on your freebsd system. Compilation problem? Missing patch? It works fine on my F14 desktop which has bash-4.1.7-3.fc14.x86_64. The trouble is that the assignment to saved_IFS above stored the empty string, so "restoring" it set that special variable to the empty string. Oops. Not surprisingly, that caused many tests to fail. Adding the normally-unnecessary quotes, local saved_IFS="$IFS" makes all tests pass once again. For the record, I reduced it to this, where /bin/sh is /usr/local/bin/bash, which is 4.1.7: cat <<\EOF > init.cfg f() { case $IFS in '') exit 91;; esac local s=$IFS case $s in '') exit 97;; esac } f EOF $ /bin/sh -c '. init.cfg' [Exit 97]