Now that there are no doubts about the portability of shell functions (in the sense that there's always a shell on the machine that supports function ---and maybe the documentation should reflect this), I'm curious about the support of "return" and "local". Is there anything known about them? ISTR there were spies about return in the Autoconf test suite, but there seems to be nothing about it today (hum... wrong, there is now something in m4sh.m4 that looks for "return" support, see below). Thanks! # _AS_SHELL_FN_WORK # ----------------- # This is a spy to detect "in the wild" shells that do not support shell # functions correctly. It is based on the m4sh.at Autotest testcases. m4_define([_AS_SHELL_FN_WORK], [as_func_return () { (exit [$]1) } as_func_success () { as_func_return 0 } as_func_failure () { as_func_return 1 } as_func_ret_success () { return 0 } as_func_ret_failure () { return 1 } exitcode=0 AS_IF([as_func_success], [], [exitcode=1 echo as_func_success failed.]) AS_IF([as_func_failure], [exitcode=1 echo as_func_failure succeeded.]) AS_IF([as_func_ret_success], [], [exitcode=1 echo as_func_ret_success failed.]) AS_IF([as_func_ret_failure], [exitcode=1 echo as_func_ret_failure succeeded.]) AS_IF([( set x; as_func_ret_success y && test x = "[$]1" )], [], [exitcode=1 echo positional parameters were not saved.]) test $exitcode = 0]) _______________________________________________ Autoconf mailing list Autoconf@xxxxxxx http://lists.gnu.org/mailman/listinfo/autoconf