diff --git a/orte/mca/errmgr/base/errmgr_private.h b/orte/mca/errmgr/base/errmgr_private.h index 5a439f35ef..8750d4aec5 100644 --- a/orte/mca/errmgr/base/errmgr_private.h +++ b/orte/mca/errmgr/base/errmgr_private.h @@ -62,7 +62,7 @@ ORTE_DECLSPEC void orte_errmgr_base_proc_aborted_not_avail(orte_process_name_ ORTE_DECLSPEC void orte_errmgr_base_incomplete_start_not_avail(orte_jobid_t job, int exit_code); -ORTE_DECLSPEC void orte_errmgr_base_error_abort(int error_code, char *fmt, ...); +ORTE_DECLSPEC void orte_errmgr_base_error_abort(int error_code, char *fmt, ...) __opal_attribute_format__(__printf__, 2, 3) __opal_attribute_noreturn__; ORTE_DECLSPEC int orte_errmgr_base_register_cb_not_avail(orte_jobid_t job, orte_job_state_t state, diff --git a/orte/mca/errmgr/errmgr.h b/orte/mca/errmgr/errmgr.h index 02a3625c47..28255ceb94 100644 --- a/orte/mca/errmgr/errmgr.h +++ b/orte/mca/errmgr/errmgr.h @@ -132,7 +132,7 @@ typedef int (*orte_errmgr_base_module_register_cb_fn_t)(orte_jobid_t job, * itself, and then exit - it takes no other actions. The intent here is to provide * a last-ditch exit procedure that attempts to clean up a little. */ -typedef void (*orte_errmgr_base_module_abort_fn_t)(int error_code, char *fmt, ...); +typedef void (*orte_errmgr_base_module_abort_fn_t)(int error_code, char *fmt, ...) __opal_attribute_format__(__printf__, 2, 3) __opal_attribute_noreturn__; /* * diff --git a/orte/mca/ess/ess.h b/orte/mca/ess/ess.h index 73978ac292..a3277ae90d 100644 --- a/orte/mca/ess/ess.h +++ b/orte/mca/ess/ess.h @@ -56,7 +56,7 @@ typedef int (*orte_ess_base_module_finalize_fn_t)(void); * function should create an appropriate file to alert the local * orted that termination was abnormal. */ -typedef void (*orte_ess_base_module_abort_fn_t)(int status, bool report); +typedef void (*orte_ess_base_module_abort_fn_t)(int status, bool report) __opal_attribute_noreturn__; /** * Determine if a process is local to me