It would be nice if I could write:
AT_CHECK([command that may fail with status 63],
[], [], [],
[AT_CHECK([test $at_status -ne 63 || exit 77])])
instead of:
AT_CHECK([command that may fail with status 63 || ]dnl
[ { test $? -eq 63 && exit 77; }],
[], [], [])
or even:
AT_CHECK([command that may fail with status 63 || ]dnl
[ { res=$?; test $res -eq 63 && exit 77; exit $res }],
[], [], [])
for mapping an exit status of 63 to a SKIP. The second variant destroys
the information of what value other than 0 or 63 the status had, the
third is even uglier, the former nicely shows the status in the verbose
log and works with Autoconf 2.59+ (at least).
Would you accept a patch to document $at_status being usable in the
RUN-IF-FAIL and RUN-IF-PASS arguments of AT_CHECK (including coverage
of course)?
If not, then we could think about using a 'stdout'-like special
value for the STATUS argument to AT_CHECK that just captures $?,
but IMVHO the status has sufficiently different semantics from
output that I hope we don't need to go this way.
Thanks,
Ralf