> target: prereq > FOO_COMMAND | BAR_COMMAND > st = $status > if (~ $st ?* ^ '|' ^ *) { > echo FOO_COMMAND failed > exit 3 }
i think there a bug in this. a trailing ~ 1 1 or similar is necessary to clear the status from the if. alternately, how about replacing the if with simply ! ~ $st ?* ^ '|' ^ * which should correctly set the status. - erik