function fact {
local n=$1
if [ "$n" -eq 0 ]; then
return 1
else
fact $(( $n - 1 ))
return $(( $n * $? ))
fi
}for i in `seq 0 11`; do fact $i ; echo $? done 1 1 2 6 24 120 208 176 128 128 0 0 the results are wrong for 6 and above. is this a bug?
