This makes me think a bit.
We could do:
“as soon as ‘set -x’ is run, clone stderr, and then use that for any future traces”
We used to do:
“print some parts, do the I/O redir, print some more parts, run the command”, rinse repeat
We now do:
“take note of some parts, do the I/O redir, print everything at once, run the command”, rinse repeat, with minor bugs
We could do either when implementing BASH_XTRACEFD though… (also, just displaying TCOM is probably wrong). This needs serious thought.
This makes me think a bit.
We could do:
“as soon as ‘set -x’ is run, clone stderr, and then use that for any future traces”
We used to do:
“print some parts, do the I/O redir, print some more parts, run the command”, rinse repeat
We now do:
“take note of some parts, do the I/O redir, print everything at once, run the command”, rinse repeat, with minor bugs
We could do either when implementing BASH_XTRACEFD though… (also, just displaying TCOM is probably wrong). This needs serious thought.