missing exit_with_error function