1*3e3895bfSKrzysztof Piecuch# $FreeBSD: head/bin/sh/tests/expansion/ifs2.0 211341 2010-08-15 17:14:05Z jilles $ 23df4d8b0SPeter Avalos 33df4d8b0SPeter Avalosfailures=0 43df4d8b0SPeter Avalosi=1 53df4d8b0SPeter Avalosset -f 63df4d8b0SPeter Avaloswhile [ "$i" -le 127 ]; do 73df4d8b0SPeter Avalos # A different byte still in the range 1..127. 83df4d8b0SPeter Avalos i2=$((i^2+(i==2))) 93df4d8b0SPeter Avalos # Add a character to work around command substitution's removal of 103df4d8b0SPeter Avalos # final newlines, then remove it again. 113df4d8b0SPeter Avalos c=$(printf \\"$(printf %o@ "$i")") 123df4d8b0SPeter Avalos c=${c%@} 133df4d8b0SPeter Avalos c2=$(printf \\"$(printf %o@ "$i2")") 143df4d8b0SPeter Avalos c2=${c2%@} 153df4d8b0SPeter Avalos IFS=$c 163df4d8b0SPeter Avalos set -- $c2$c$c2$c$c2 173df4d8b0SPeter Avalos if [ "$#" -ne 3 ] || [ "$1" != "$c2" ] || [ "$2" != "$c2" ] || 183df4d8b0SPeter Avalos [ "$3" != "$c2" ]; then 193df4d8b0SPeter Avalos echo "Bad results for separator $i (word $i2)" >&2 203df4d8b0SPeter Avalos : $((failures += 1)) 213df4d8b0SPeter Avalos fi 223df4d8b0SPeter Avalos i=$((i+1)) 233df4d8b0SPeter Avalosdone 243df4d8b0SPeter Avalosexit $((failures > 0)) 25