previous versions of bash would happily accept negative values ( treated as a signed integer and masked with like 0xff), but it seems some changes related to option parsing has broken that
$ f(){ return -1; }; f -bash: return: -1: invalid option return: usage: return [n] POSIX states that the return value is an "unsigned decimal integer": http://www.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_24_01 but bash does not say that in the bash(1) man page ... -mike
signature.asc
Description: This is a digitally signed message part.