On 2021-03-09, Paul Eggert <egg...@cs.ucla.edu> wrote: > On 3/9/21 6:45 PM, Nick Bowler wrote: >> I routinely use heirloom-sh to suss out shell portability > > Does your project also have a problem on Solaris 10 because its /bin/sh > also doesn't grok "if !"?
No idea. I do not presently have the ability to test on Solaris 10. However, what I do know is that testing with heirloom-sh successfully identifies shell portability issues that exist on other (non-Solaris) systems, where configure _will_ pick a shell that has some of the same bugs as heirloom-sh, even if those shells don't happen to have this specific shell bug. For a very recent example, I have found that heirloom-sh appears to share a bug with (some?) HP-UX 11 /bin/sh versions in its handling of IFS='\'. I am not aware of any other free shells that have this particular bug, so I still think there is value in testing this way. I imagine that heirloom-sh has some bug compatibility with the other shells that exist on Solaris too. > If so, how/why does that happen? ./configure is supposed to re-exec > with a working shell, and this works for me when I run GNU Emacs's > ./configure (which has a lot of "if !"s in it) on Solaris 10. > > If not, and if this is a problem only with the way you're using > heirloom-sh to check portability, I wouldn't worry about it. But I do worry about it. The fix is simple; why not fix it? Cheers, Nick