From: Junio C Hamano Date: Fri, 09 Feb 2018 18:36:19 GMT Subject: Re: [PATCH 2/3] t: teach 'test_must_fail' to save the command's stderr to a file Message-ID: In-Reply-To: <20180209142131.GA18701@sigill.intra.peff.net> Jeff King 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.