Hi,

On Thu, 26 Sep 2019, SZEDER Gábor wrote:

> On Thu, Sep 26, 2019 at 01:04:48PM +0200, Johannes Schindelin wrote:
> > > > > > Also, things like the code tracing via `-x` (which relies on Bash
> > > > > > functionality in order to work properly,
> > > > >
> > > > > Not really.
> > > >
> > > > To work properly. What I meant was the trick we need to play with
> > > > `BASH_XTRACEFD`.
> > >
> > > I'm still unsure what BASH_XTRACEFD trick you mean.  AFAICT we don't
> > > play any tricks with it to make '-x' work properly, and indeed '-x'
> > > tracing works properly even without BASH_XTRACEFD (and to achive that
> > > we did have to play some tricks, but not any with BASH_XTRACEFD;
> > > perhaps these tricks are what you meant?).
> >
> > It works okay some of the time.
>
> As far as I can tell it works all the time.

I must be misinterpreting this part of `t/test-lib.sh`, then:

-- snipsnap --
if test -n "$trace" && test -n "$test_untraceable"
then
        # '-x' tracing requested, but this test script can't be reliably
        # traced, unless it is run with a Bash version supporting
        # BASH_XTRACEFD (introduced in Bash v4.1).
        #
        # Perform this version check _after_ the test script was
        # potentially re-executed with $TEST_SHELL_PATH for '--tee' or
        # '--verbose-log', so the right shell is checked and the
        # warning is issued only once.
        if test -n "$BASH_VERSION" && eval '
             test ${BASH_VERSINFO[0]} -gt 4 || {
               test ${BASH_VERSINFO[0]} -eq 4 &&
               test ${BASH_VERSINFO[1]} -ge 1
             }
           '
        then
                : Executed by a Bash version supporting BASH_XTRACEFD.  Good.
        else
                echo >&2 "warning: ignoring -x; '$0' is untraceable without 
BASH_XTRACEFD"
                trace=
        fi
fi

Reply via email to