SZEDER Gábor wrote: > On Wed, Dec 30, 2020 at 06:17:52PM +0100, René Scharfe wrote: > > > +__git_have_func () { > > > + declare -f $1 >/dev/null 2>/dev/null > > > And then I wondered why use declare -f, which prints the function's > > body, when there is -F, which just prints the function's name. And why > > repeat /dev/null when redirecting stderr when the more shorter 2>&1 > > would do the same? None of hat was introduced by you patch, of course. > > Anyway, this seems to work for me: > > > > __git_have_func () { > > case "$1" in > > -*) return 1 ;; > > esac > > declare -F "$1" >/dev/null 2>&1 > > } > > The Bash completion script should be usable from Zsh as well, and Zsh > only supports 'declare -f' but not '-F', see 06f44c3cc5 (completion: > make compatible with zsh, 2010-09-06). The Zsh version included in > the 16.04 based LTS setup that I have at hand doesn't yet seem to have > a (for us) usable 'declare -F' yet. Ahh. Good catch. declare -f -- "$1" >/dev/null 2>&1 Then. -- Felipe Contreras