#compdef qpdf
eval $(/usr/bin/qpdf --completion-zsh)
and "/usr/bin/qpdf --completion-zsh" just outputs:
autoload -U +X bashcompinit && bashcompinit && complete -o bashdefault -o default -C "/usr/bin/qpdf" qpdf
Theoretically that "complete -o ..." should invoke the actual completion after everything is set up. Is it possible that bashcompinit is returning nonzero? Or even that "autoload ..." is doing so? Possibly because bashcompinit has previously been run in the current session?