Thanks, Bart. That fixes four of the five failures. All except this one: ../../../src/zsh-2020-07-07/Test/E01options.ztst: starting. This test hangs the shell when it fails... Pattern match failed, line 1: - files in / \[yn\]\? +>nuc2% zsh: sure you want to delete all 15 files in /opt/build/zsh-2020-07-07/Test/options.tmp [yn]? >nuc2% zsh: sure you want to delete all 28 files in / [yn]? On Sun, Jul 5, 2020 at 1:23 PM Bart Schaefer wrote: > On Sun, Jul 5, 2020 at 9:57 AM Bart Schaefer > wrote: > > > > On Sun, Jul 5, 2020 at 9:28 AM Bart Schaefer > wrote: > > > > > > It's the change to supposedly subvert symlink attacks. > > > > Hmm, no, I'm getting random failures even after I revert. Sorry for > > the red herring. > > Ahem. Those failures were something else in my environment. > > It does have to do with the "always" block. All the tests pass if I > just put a "return 0" after the "always". > > A bit of further digging indicates that > zpty_flush After comptesteval > does not always succeed, but it doesn't need to. The "always" is now > preserving that failure status. > > So perhaps this? > > diff --git a/Test/comptest b/Test/comptest > index b14d4c9..a36e301 100644 > --- a/Test/comptest > +++ b/Test/comptest > @@ -128,6 +128,7 @@ comptesteval () { > return 1 > } > zpty_flush After comptesteval > + : Suppress error from zpty_flush > } always { > rm $tmp > } >