-h Locate and remember utilities invoked by functions as those functions are defined (the utilities are normally located when the function is executed).
Neither mksh nor ksh93 nor GNU bash (the versions I have on my systems) even have an option remotely like that. Instead, all three have -h as trackall (basically, remember utilities when they’re first executed, instead of only small list (mksh, from pdksh, has cat, cc, chmod, cp, date, ed, emacs, grep, ls, make, mv, pr, rm, sed, sh, vi and who on the list to remember if +h, from ksh88 apparently). In a previous issue this was shaded as optional, but it now is not. Instead, the real-life existing shells’ -h is an option that needs to be enabled by default for nōn-interactive shells. So, where does that rare description for -h stem from, and is it even historical practice in any shell? Function definition should just do that IMHO and not do filesystem lookups, just syntactic analysis and remembering the function itself… bye, //mirabilos -- (gnutls can also be used, but if you are compiling lynx for your own use, there is no reason to consider using that package) -- Thomas E. Dickey on the Lynx mailing list, about OpenSSL