abortiferror should not propagate the error to higher levels of the diagnostics
if the abort reaches back to the compiler, the compiler will ensure the error is propaged into the current diagnistics. if the abort doesn't reach back to the compiler, then it was handled and the compile state is clean again.