Jeff King <p...@peff.net> writes: > 2. The "-x" problems aren't specific to test_must_fail at all. They're > a general issue with shell functions. > > I'm not entirely happy with saying "if you want to use -x, please use > bash". But given that it actually solves the problems everywhere with no > further effort, is it really that bad a solution? > > For the error messages from test_must_fail, could we go in the same > direction, and send them to descriptor 4 rather than 2? We've already > staked out descriptor 4 as something magical that must be left alone > (see 9be795fb). If we can rely on that, then it becomes a convenient way > for functions to make sure their output is going to the script's stderr.
That sounds clever and rather attractive. It isn't that much of an layering violation for test-lib-functions.sh::test_must_fail to have such an intimate knowledge on how test_-lib.sh::test_eval_ sets up the file descriptors, either.