I'm not sure the reason then, but they're definitely right; it works fine with zsh, doesn't work with bash. I wrote a test script to try it myself.
I don't have fish installed and can't be bothered to go that far, but I suspect they're right about that as well.