On Fri, Jul 27, 2018 at 12:26:06AM -0400, fr...@eec.com wrote: > Repeat-By: > $ cat <<__EOF__ >/tmp/bashbug.bash > > function myfunc { > > echo "Running..." > > } > > declare -fx myfunc > > declare -p -F | grep "myfunc" > > __EOF__ > $ source /tmp/bashbug.bash > > The function is now defined, but is not exported. > And the output of the last command never appears, > but if the same command is executed now -- at > the interactive shell prompt -- it does show that > 'myfunc' is defined.
I cannot reproduce this, either in Debian's bash 4.4, or in bash 5.0-alpha. wooledg:~$ exec bash-5.0-alpha wooledg:~$ cat foo function myfunc { echo "Running" } declare -fx myfunc declare -p -F | grep myfunc wooledg:~$ source ./foo declare -fx myfunc wooledg:~$ bash -c myfunc Running On my system, I see the output from "declare -p -F" upon sourcing the file, and the function is definitely exported. I get the same results using Debian's bash 4.4(.12) as well.