Raise exception rather than using abort