1
1

Add a new macro (CONSTRUCT_ERRCODE) and replace all the error

code initialization with this macro. This make the code a lot small
and less errorprone.

This commit was SVN r17010.
Этот коммит содержится в:
George Bosilca 2007-12-21 06:22:29 +00:00
родитель 42414b27e9
Коммит 6a0e944915

Просмотреть файл

@ -93,6 +93,15 @@ static void ompi_mpi_errcode_destruct(ompi_mpi_errcode_t* errcode);
OBJ_CLASS_INSTANCE(ompi_mpi_errcode_t,opal_object_t,ompi_mpi_errcode_construct, ompi_mpi_errcode_destruct);
#define CONSTRUCT_ERRCODE(VAR, ERRCODE, TXT ) \
do { \
OBJ_CONSTRUCT(&(VAR), ompi_mpi_errcode_t); \
(VAR).code = (ERRCODE); \
(VAR).cls = (ERRCODE); \
strncpy((VAR).errstring, (TXT), MPI_MAX_ERROR_STRING); \
opal_pointer_array_set_item(&ompi_mpi_errcodes, (ERRCODE), &(VAR)); \
} while (0)
int ompi_mpi_errcode_init (void)
{
/* Initialize the pointer array, which will hold the references to
@ -102,341 +111,66 @@ int ompi_mpi_errcode_init (void)
OMPI_FORTRAN_HANDLE_MAX, 64) ) {
return OMPI_ERROR;
}
/* Initialize now each predefined error code and register
it in the pointer-array. */
OBJ_CONSTRUCT(&ompi_success, ompi_mpi_errcode_t);
ompi_success.code = MPI_SUCCESS;
ompi_success.cls = MPI_SUCCESS;
strncpy(ompi_success.errstring, "MPI_SUCCESS: no errors", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_SUCCESS, &ompi_success);
CONSTRUCT_ERRCODE( ompi_success, MPI_SUCCESS, "MPI_SUCCESS: no errors" );
CONSTRUCT_ERRCODE( ompi_err_buffer, MPI_ERR_BUFFER, "MPI_ERR_BUFFER: invalid buffer pointer");
CONSTRUCT_ERRCODE( ompi_err_count, MPI_ERR_COUNT, "MPI_ERR_COUNT: invalid count argument" );
CONSTRUCT_ERRCODE( ompi_err_type, MPI_ERR_TYPE, "MPI_ERR_TYPE: invalid datatype" );
CONSTRUCT_ERRCODE( ompi_err_tag, MPI_ERR_TAG, "MPI_ERR_TAG: invalid tag" );
CONSTRUCT_ERRCODE( ompi_err_comm, MPI_ERR_COMM, "MPI_ERR_COMM: invalid communicator" );
CONSTRUCT_ERRCODE( ompi_err_rank, MPI_ERR_RANK, "MPI_ERR_RANK: invalid rank" );
CONSTRUCT_ERRCODE( ompi_err_request, MPI_ERR_REQUEST, "MPI_ERR_REQUEST: invalid request" );
CONSTRUCT_ERRCODE( ompi_err_root, MPI_ERR_ROOT, "MPI_ERR_ROOT: invalid root" );
CONSTRUCT_ERRCODE( ompi_err_group, MPI_ERR_GROUP, "MPI_ERR_GROUP: invalid group" );
CONSTRUCT_ERRCODE( ompi_err_op, MPI_ERR_OP, "MPI_ERR_OP: invalid reduce operation" );
CONSTRUCT_ERRCODE( ompi_err_topology, MPI_ERR_TOPOLOGY, "MPI_ERR_TOPOLOGY: invalid communicator topology" );
CONSTRUCT_ERRCODE( ompi_err_dims, MPI_ERR_DIMS, "MPI_ERR_DIMS: invalid topology dimension" );
CONSTRUCT_ERRCODE( ompi_err_arg, MPI_ERR_ARG, "MPI_ERR_ARG: invalid argument of some other kind" );
CONSTRUCT_ERRCODE( ompi_err_unknown, MPI_ERR_UNKNOWN, "MPI_ERR_UNKNOWN: unknown error" );
CONSTRUCT_ERRCODE( ompi_err_truncate, MPI_ERR_TRUNCATE, "MPI_ERR_TRUNCATE: message truncated" );
CONSTRUCT_ERRCODE( ompi_err_other, MPI_ERR_OTHER, "MPI_ERR_OTHER: known error not in list" );
CONSTRUCT_ERRCODE( ompi_err_intern, MPI_ERR_INTERN, "MPI_ERR_INTERN: internal error" );
CONSTRUCT_ERRCODE( ompi_err_in_status, MPI_ERR_IN_STATUS, "MPI_ERR_IN_STATUS: error code in status" );
CONSTRUCT_ERRCODE( ompi_err_pending, MPI_ERR_PENDING, "MPI_ERR_PENDING: pending request" );
CONSTRUCT_ERRCODE( ompi_err_access, MPI_ERR_ACCESS, "MPI_ERR_ACCESS: invalid access mode" );
CONSTRUCT_ERRCODE( ompi_err_amode, MPI_ERR_AMODE, "MPI_ERR_AMODE: invalid amode argument" );
CONSTRUCT_ERRCODE( ompi_err_assert, MPI_ERR_ASSERT, "MPI_ERR_ASSERT: invalid assert argument" );
CONSTRUCT_ERRCODE( ompi_err_bad_file, MPI_ERR_BAD_FILE, "MPI_ERR_BAD_FILE: bad file" );
CONSTRUCT_ERRCODE( ompi_err_base, MPI_ERR_BASE, "MPI_ERR_BASE: invalid base" );
CONSTRUCT_ERRCODE( ompi_err_conversion, MPI_ERR_CONVERSION, "MPI_ERR_CONVERSION: error in data conversion" );
CONSTRUCT_ERRCODE( ompi_err_disp, MPI_ERR_DISP, "MPI_ERR_DISP: invalid displacement" );
CONSTRUCT_ERRCODE( ompi_err_dup_datarep, MPI_ERR_DUP_DATAREP, "MPI_ERR_DUP_DATAREP: error while duplicating data representation" );
CONSTRUCT_ERRCODE( ompi_err_file_exists, MPI_ERR_FILE_EXISTS, "MPI_ERR_FILE_EXISTS: file exists alreay" );
CONSTRUCT_ERRCODE( ompi_err_file_in_use, MPI_ERR_FILE_IN_USE, "MPI_ERR_FILE_IN_USE: file already in use" );
CONSTRUCT_ERRCODE( ompi_err_file, MPI_ERR_FILE, "MPI_ERR_FILE: invalid file" );
CONSTRUCT_ERRCODE( ompi_err_info_key, MPI_ERR_INFO_KEY, "MPI_ERR_INFO_KEY: invalid key argument for info object" );
CONSTRUCT_ERRCODE( ompi_err_info_nokey, MPI_ERR_INFO_NOKEY, "MPI_ERR_INFO_NOKEY: unknown key for given info object" );
CONSTRUCT_ERRCODE( ompi_err_info_value, MPI_ERR_INFO_VALUE, "MPI_ERR_INFO_VALUE: invalid value argument for info object" );
CONSTRUCT_ERRCODE( ompi_err_info, MPI_ERR_INFO, "MPI_ERR_INFO: invalid info object" );
CONSTRUCT_ERRCODE( ompi_err_io, MPI_ERR_IO, "MPI_ERR_IO: input/output error" );
CONSTRUCT_ERRCODE( ompi_err_keyval, MPI_ERR_KEYVAL, "MPI_ERR_KEYVAL: invalid key value" );
CONSTRUCT_ERRCODE( ompi_err_locktype, MPI_ERR_LOCKTYPE, "MPI_ERR_LOCKTYPE: invalid lock" );
CONSTRUCT_ERRCODE( ompi_err_name, MPI_ERR_NAME, "MPI_ERR_NAME: invalid name argument" );
CONSTRUCT_ERRCODE( ompi_err_no_mem, MPI_ERR_NO_MEM, "MPI_ERR_NO_MEM: out of memory" );
CONSTRUCT_ERRCODE( ompi_err_not_same, MPI_ERR_NOT_SAME, "MPI_ERR_NOT_SAME: objects are not identical");
CONSTRUCT_ERRCODE( ompi_err_no_space, MPI_ERR_NO_SPACE, "MPI_ERR_NO_SPACE: no space left on device" );
CONSTRUCT_ERRCODE( ompi_err_no_such_file, MPI_ERR_NO_SUCH_FILE, "MPI_ERR_NO_SUCH_FILE: no such file or directory" );
CONSTRUCT_ERRCODE( ompi_err_port, MPI_ERR_PORT, "MPI_ERR_PORT: MPI_ERR_PORT: invalid port" );
CONSTRUCT_ERRCODE( ompi_err_quota, MPI_ERR_QUOTA, "MPI_ERR_QUOTA: out of quota" );
CONSTRUCT_ERRCODE( ompi_err_read_only, MPI_ERR_READ_ONLY, "MPI_ERR_READ_ONLY: file is read only" );
CONSTRUCT_ERRCODE( ompi_err_rma_conflict, MPI_ERR_RMA_CONFLICT, "MPI_ERR_RMA_CONFLICT: rma conflict during operation" );
CONSTRUCT_ERRCODE( ompi_err_rma_sync, MPI_ERR_RMA_SYNC, "MPI_ERR_RMA_SYNC: error while executing rma sync" );
CONSTRUCT_ERRCODE( ompi_err_service, MPI_ERR_SERVICE, "MPI_ERR_SERVICE: unknown service name" );
CONSTRUCT_ERRCODE( ompi_err_size, MPI_ERR_SIZE, "MPI_ERR_SIZE: invalid size" );
CONSTRUCT_ERRCODE( ompi_err_spawn, MPI_ERR_SPAWN, "MPI_ERR_SPAWN: could not spawn processes" );
CONSTRUCT_ERRCODE( ompi_err_unsupported_datarep, MPI_ERR_UNSUPPORTED_DATAREP, "MPI_ERR_UNSUPPORTED_DATAREP: requested data representation not supported" );
CONSTRUCT_ERRCODE( ompi_err_unsupported_operation, MPI_ERR_UNSUPPORTED_OPERATION, "MPI_ERR_UNSUPPORTED_OPERATION: requested operation not suppported" );
CONSTRUCT_ERRCODE( ompi_err_win, MPI_ERR_WIN, "MPI_ERR_WIN:invalid window" );
OBJ_CONSTRUCT(&ompi_err_buffer, ompi_mpi_errcode_t);
ompi_err_buffer.code = MPI_ERR_BUFFER;
ompi_err_buffer.cls = MPI_ERR_BUFFER;
strncpy(ompi_err_buffer.errstring, "MPI_ERR_BUFFER: invalid buffer pointer", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_BUFFER, &ompi_err_buffer);
OBJ_CONSTRUCT(&ompi_err_count, ompi_mpi_errcode_t);
ompi_err_count.code = MPI_ERR_COUNT;
ompi_err_count.cls = MPI_ERR_COUNT;
strncpy(ompi_err_count.errstring, "MPI_ERR_COUNT: invalid count argument", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_COUNT, &ompi_err_count);
OBJ_CONSTRUCT(&ompi_err_type, ompi_mpi_errcode_t);
ompi_err_type.code = MPI_ERR_TYPE;
ompi_err_type.cls = MPI_ERR_TYPE;
strncpy(ompi_err_type.errstring, "MPI_ERR_TYPE: invalid datatype", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_TYPE, &ompi_err_type);
OBJ_CONSTRUCT(&ompi_err_tag, ompi_mpi_errcode_t);
ompi_err_tag.code = MPI_ERR_TAG;
ompi_err_tag.cls = MPI_ERR_TAG;
strncpy(ompi_err_tag.errstring, "MPI_ERR_TAG: invalid tag", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_TAG, &ompi_err_tag);
OBJ_CONSTRUCT(&ompi_err_comm, ompi_mpi_errcode_t);
ompi_err_comm.code = MPI_ERR_COMM;
ompi_err_comm.cls = MPI_ERR_COMM;
strncpy(ompi_err_comm.errstring, "MPI_ERR_COMM: invalid communicator", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_COMM, &ompi_err_comm);
OBJ_CONSTRUCT(&ompi_err_rank, ompi_mpi_errcode_t);
ompi_err_rank.code = MPI_ERR_RANK;
ompi_err_rank.cls = MPI_ERR_RANK;
strncpy(ompi_err_rank.errstring, "MPI_ERR_RANK: invalid rank", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_RANK, &ompi_err_rank);
OBJ_CONSTRUCT(&ompi_err_request, ompi_mpi_errcode_t);
ompi_err_request.code = MPI_ERR_REQUEST;
ompi_err_request.cls = MPI_ERR_REQUEST;
strncpy(ompi_err_request.errstring, "MPI_ERR_REQUEST: invalid request", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_REQUEST, &ompi_err_request);
OBJ_CONSTRUCT(&ompi_err_root, ompi_mpi_errcode_t);
ompi_err_root.code = MPI_ERR_ROOT;
ompi_err_root.cls = MPI_ERR_ROOT;
strncpy(ompi_err_root.errstring, "MPI_ERR_ROOT: invalid root", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_ROOT, &ompi_err_root);
OBJ_CONSTRUCT(&ompi_err_group, ompi_mpi_errcode_t);
ompi_err_group.code = MPI_ERR_GROUP;
ompi_err_group.cls = MPI_ERR_GROUP;
strncpy(ompi_err_group.errstring, "MPI_ERR_GROUP: invalid group", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_GROUP, &ompi_err_group);
OBJ_CONSTRUCT(&ompi_err_op, ompi_mpi_errcode_t);
ompi_err_op.code = MPI_ERR_OP;
ompi_err_op.cls = MPI_ERR_OP;
strncpy(ompi_err_op.errstring, "MPI_ERR_OP: invalid reduce operation", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_OP, &ompi_err_op);
OBJ_CONSTRUCT(&ompi_err_topology, ompi_mpi_errcode_t);
ompi_err_topology.code = MPI_ERR_TOPOLOGY;
ompi_err_topology.cls = MPI_ERR_TOPOLOGY;
strncpy(ompi_err_topology.errstring, "MPI_ERR_TOPOLOGY: invalid communicator topology", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_TOPOLOGY, &ompi_err_topology);
OBJ_CONSTRUCT(&ompi_err_dims, ompi_mpi_errcode_t);
ompi_err_dims.code = MPI_ERR_DIMS;
ompi_err_dims.cls = MPI_ERR_DIMS;
strncpy(ompi_err_dims.errstring, "MPI_ERR_DIMS: invalid topology dimension", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_DIMS, &ompi_err_dims);
OBJ_CONSTRUCT(&ompi_err_arg, ompi_mpi_errcode_t);
ompi_err_arg.code = MPI_ERR_ARG;
ompi_err_arg.cls = MPI_ERR_ARG;
strncpy(ompi_err_arg.errstring, "MPI_ERR_ARG: invalid argument of some other kind", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_ARG, &ompi_err_arg);
OBJ_CONSTRUCT(&ompi_err_unknown, ompi_mpi_errcode_t);
ompi_err_unknown.code = MPI_ERR_UNKNOWN;
ompi_err_unknown.cls = MPI_ERR_UNKNOWN;
strncpy(ompi_err_unknown.errstring, "MPI_ERR_UNKNOWN: unknown error", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_UNKNOWN, &ompi_err_unknown);
OBJ_CONSTRUCT(&ompi_err_truncate, ompi_mpi_errcode_t);
ompi_err_truncate.code = MPI_ERR_TRUNCATE;
ompi_err_truncate.cls = MPI_ERR_TRUNCATE;
strncpy(ompi_err_truncate.errstring, "MPI_ERR_TRUNCATE: message truncated", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_TRUNCATE, &ompi_err_truncate);
OBJ_CONSTRUCT(&ompi_err_other, ompi_mpi_errcode_t);
ompi_err_other.code = MPI_ERR_OTHER;
ompi_err_other.cls = MPI_ERR_OTHER;
strncpy(ompi_err_other.errstring, "MPI_ERR_OTHER: known error not in list", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_OTHER, &ompi_err_other);
OBJ_CONSTRUCT(&ompi_err_intern, ompi_mpi_errcode_t);
ompi_err_intern.code = MPI_ERR_INTERN;
ompi_err_intern.cls = MPI_ERR_INTERN;
strncpy(ompi_err_intern.errstring, "MPI_ERR_INTERN: internal error", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_INTERN, &ompi_err_intern);
OBJ_CONSTRUCT(&ompi_err_in_status, ompi_mpi_errcode_t);
ompi_err_in_status.code = MPI_ERR_IN_STATUS;
ompi_err_in_status.cls = MPI_ERR_IN_STATUS;
strncpy(ompi_err_in_status.errstring, "MPI_ERR_IN_STATUS: error code in status", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_IN_STATUS, &ompi_err_in_status);
OBJ_CONSTRUCT(&ompi_err_pending, ompi_mpi_errcode_t);
ompi_err_pending.code = MPI_ERR_PENDING;
ompi_err_pending.cls = MPI_ERR_PENDING;
strncpy(ompi_err_pending.errstring, "MPI_ERR_PENDING: pending request", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_PENDING, &ompi_err_pending);
OBJ_CONSTRUCT(&ompi_err_access, ompi_mpi_errcode_t);
ompi_err_access.code = MPI_ERR_ACCESS;
ompi_err_access.cls = MPI_ERR_ACCESS;
strncpy(ompi_err_access.errstring, "MPI_ERR_ACCESS: invalid access mode", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_ACCESS, &ompi_err_access);
OBJ_CONSTRUCT(&ompi_err_amode, ompi_mpi_errcode_t);
ompi_err_amode.code = MPI_ERR_AMODE;
ompi_err_amode.cls = MPI_ERR_AMODE;
strncpy(ompi_err_amode.errstring, "MPI_ERR_AMODE: invalid amode argument", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_AMODE, &ompi_err_amode);
OBJ_CONSTRUCT(&ompi_err_assert, ompi_mpi_errcode_t);
ompi_err_assert.code = MPI_ERR_ASSERT;
ompi_err_assert.cls = MPI_ERR_ASSERT;
strncpy(ompi_err_assert.errstring, "MPI_ERR_ASSERT: invalid assert argument", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_ASSERT, &ompi_err_assert);
OBJ_CONSTRUCT(&ompi_err_bad_file, ompi_mpi_errcode_t);
ompi_err_bad_file.code = MPI_ERR_BAD_FILE;
ompi_err_bad_file.cls = MPI_ERR_BAD_FILE;
strncpy(ompi_err_bad_file.errstring, "MPI_ERR_BAD_FILE: bad file", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_BAD_FILE, &ompi_err_bad_file);
OBJ_CONSTRUCT(&ompi_err_base, ompi_mpi_errcode_t);
ompi_err_base.code = MPI_ERR_BASE;
ompi_err_base.cls = MPI_ERR_BASE;
strncpy(ompi_err_base.errstring, "MPI_ERR_BASE: invalid base", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_BASE, &ompi_err_base);
OBJ_CONSTRUCT(&ompi_err_conversion, ompi_mpi_errcode_t);
ompi_err_conversion.code = MPI_ERR_CONVERSION;
ompi_err_conversion.cls = MPI_ERR_CONVERSION;
strncpy(ompi_err_conversion.errstring, "MPI_ERR_CONVERSION: error in data conversion", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_CONVERSION, &ompi_err_conversion);
OBJ_CONSTRUCT(&ompi_err_disp, ompi_mpi_errcode_t);
ompi_err_disp.code = MPI_ERR_DISP;
ompi_err_disp.cls = MPI_ERR_DISP;
strncpy(ompi_err_disp.errstring, "MPI_ERR_DISP: invalid displacement", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_DISP, &ompi_err_disp);
OBJ_CONSTRUCT(&ompi_err_dup_datarep, ompi_mpi_errcode_t);
ompi_err_dup_datarep.code = MPI_ERR_DUP_DATAREP;
ompi_err_dup_datarep.cls = MPI_ERR_DUP_DATAREP;
strncpy(ompi_err_dup_datarep.errstring,
"MPI_ERR_DUP_DATAREP: error while duplicating data representation", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_DUP_DATAREP, &ompi_err_dup_datarep);
OBJ_CONSTRUCT(&ompi_err_file_exists, ompi_mpi_errcode_t);
ompi_err_file_exists.code = MPI_ERR_FILE_EXISTS;
ompi_err_file_exists.cls = MPI_ERR_FILE_EXISTS;
strncpy(ompi_err_file_exists.errstring, "MPI_ERR_FILE_EXISTS: file exists alreay", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_FILE_EXISTS, &ompi_err_file_exists);
OBJ_CONSTRUCT(&ompi_err_file_in_use, ompi_mpi_errcode_t);
ompi_err_file_in_use.code = MPI_ERR_FILE_IN_USE;
ompi_err_file_in_use.cls = MPI_ERR_FILE_IN_USE;
strncpy(ompi_err_file_in_use.errstring, "MPI_ERR_FILE_IN_USE: file already in use", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_FILE_IN_USE, &ompi_err_file_in_use);
OBJ_CONSTRUCT(&ompi_err_file, ompi_mpi_errcode_t);
ompi_err_file.code = MPI_ERR_FILE;
ompi_err_file.cls = MPI_ERR_FILE;
strncpy(ompi_err_file.errstring, "MPI_ERR_FILE: invalid file", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_FILE, &ompi_err_file);
OBJ_CONSTRUCT(&ompi_err_info_key, ompi_mpi_errcode_t);
ompi_err_info_key.code = MPI_ERR_INFO_KEY;
ompi_err_info_key.cls = MPI_ERR_INFO_KEY;
strncpy(ompi_err_info_key.errstring, "MPI_ERR_INFO_KEY: invalid key argument for info object", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_INFO_KEY, &ompi_err_info_key);
OBJ_CONSTRUCT(&ompi_err_info_nokey, ompi_mpi_errcode_t);
ompi_err_info_nokey.code = MPI_ERR_INFO_NOKEY;
ompi_err_info_nokey.cls = MPI_ERR_INFO_NOKEY;
strncpy(ompi_err_info_nokey.errstring, "MPI_ERR_INFO_NOKEY: unknown key for given info object", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_INFO_NOKEY, &ompi_err_info_nokey);
OBJ_CONSTRUCT(&ompi_err_info_value, ompi_mpi_errcode_t);
ompi_err_info_value.code = MPI_ERR_INFO_VALUE;
ompi_err_info_value.cls = MPI_ERR_INFO_VALUE;
strncpy(ompi_err_info_value.errstring,
"MPI_ERR_INFO_VALUE: invalid value argument for info object", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_INFO_VALUE, &ompi_err_info_value);
OBJ_CONSTRUCT(&ompi_err_info, ompi_mpi_errcode_t);
ompi_err_info.code = MPI_ERR_INFO;
ompi_err_info.cls = MPI_ERR_INFO;
strncpy(ompi_err_info.errstring, "MPI_ERR_INFO: invalid info object", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_INFO, &ompi_err_info);
OBJ_CONSTRUCT(&ompi_err_io, ompi_mpi_errcode_t);
ompi_err_io.code = MPI_ERR_IO;
ompi_err_io.cls = MPI_ERR_IO;
strncpy(ompi_err_io.errstring, "MPI_ERR_IO: input/output error", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_IO, &ompi_err_io);
OBJ_CONSTRUCT(&ompi_err_keyval, ompi_mpi_errcode_t);
ompi_err_keyval.code = MPI_ERR_KEYVAL;
ompi_err_keyval.cls = MPI_ERR_KEYVAL;
strncpy(ompi_err_keyval.errstring, "MPI_ERR_KEYVAL: invalid key value", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_KEYVAL, &ompi_err_keyval);
OBJ_CONSTRUCT(&ompi_err_locktype, ompi_mpi_errcode_t);
ompi_err_locktype.code = MPI_ERR_LOCKTYPE;
ompi_err_locktype.cls = MPI_ERR_LOCKTYPE;
strncpy(ompi_err_locktype.errstring, "MPI_ERR_LOCKTYPE: invalid lock", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_LOCKTYPE, &ompi_err_locktype);
OBJ_CONSTRUCT(&ompi_err_name, ompi_mpi_errcode_t);
ompi_err_name.code = MPI_ERR_NAME;
ompi_err_name.cls = MPI_ERR_NAME;
strncpy(ompi_err_name.errstring, "MPI_ERR_NAME: invalid name argument", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_NAME, &ompi_err_name);
OBJ_CONSTRUCT(&ompi_err_no_mem, ompi_mpi_errcode_t);
ompi_err_no_mem.code = MPI_ERR_NO_MEM;
ompi_err_no_mem.cls = MPI_ERR_NO_MEM;
strncpy(ompi_err_no_mem.errstring, "MPI_ERR_NO_MEM: out of memory", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_NO_MEM, &ompi_err_no_mem);
OBJ_CONSTRUCT(&ompi_err_not_same, ompi_mpi_errcode_t);
ompi_err_not_same.code = MPI_ERR_NOT_SAME;
ompi_err_not_same.cls = MPI_ERR_NOT_SAME;
strcpy(ompi_err_not_same.errstring, "MPI_ERR_NOT_SAME: objects are not identical");
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_NOT_SAME, &ompi_err_not_same);
OBJ_CONSTRUCT(&ompi_err_no_space, ompi_mpi_errcode_t);
ompi_err_no_space.code = MPI_ERR_NO_SPACE;
ompi_err_no_space.cls = MPI_ERR_NO_SPACE;
strncpy(ompi_err_no_space.errstring, "MPI_ERR_NO_SPACE: no space left on device", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_NO_SPACE, &ompi_err_no_space);
OBJ_CONSTRUCT(&ompi_err_no_such_file, ompi_mpi_errcode_t);
ompi_err_no_such_file.code = MPI_ERR_NO_SUCH_FILE;
ompi_err_no_such_file.cls = MPI_ERR_NO_SUCH_FILE;
strncpy(ompi_err_no_such_file.errstring, "MPI_ERR_NO_SUCH_FILE: no such file or directory", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_NO_SUCH_FILE, &ompi_err_no_such_file);
OBJ_CONSTRUCT(&ompi_err_port, ompi_mpi_errcode_t);
ompi_err_port.code = MPI_ERR_PORT;
ompi_err_port.cls = MPI_ERR_PORT;
strncpy(ompi_err_port.errstring, "MPI_ERR_PORT: MPI_ERR_PORT: invalid port", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_PORT, &ompi_err_port);
OBJ_CONSTRUCT(&ompi_err_quota, ompi_mpi_errcode_t);
ompi_err_quota.code = MPI_ERR_QUOTA;
ompi_err_quota.cls = MPI_ERR_QUOTA;
strncpy(ompi_err_quota.errstring, "MPI_ERR_QUOTA: out of quota", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_QUOTA, &ompi_err_quota);
OBJ_CONSTRUCT(&ompi_err_read_only, ompi_mpi_errcode_t);
ompi_err_read_only.code = MPI_ERR_READ_ONLY;
ompi_err_read_only.cls = MPI_ERR_READ_ONLY;
strncpy(ompi_err_read_only.errstring, "MPI_ERR_READ_ONLY: file is read only", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_READ_ONLY, &ompi_err_read_only);
OBJ_CONSTRUCT(&ompi_err_rma_conflict, ompi_mpi_errcode_t);
ompi_err_rma_conflict.code = MPI_ERR_RMA_CONFLICT;
ompi_err_rma_conflict.cls = MPI_ERR_RMA_CONFLICT;
strncpy(ompi_err_rma_conflict.errstring, "MPI_ERR_RMA_CONFLICT: rma conflict during operation", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_RMA_CONFLICT, &ompi_err_rma_conflict);
OBJ_CONSTRUCT(&ompi_err_rma_sync, ompi_mpi_errcode_t);
ompi_err_rma_sync.code = MPI_ERR_RMA_SYNC;
ompi_err_rma_sync.cls = MPI_ERR_RMA_SYNC;
strncpy(ompi_err_rma_sync.errstring, "MPI_ERR_RMA_SYNC: error while executing rma sync", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_RMA_SYNC, &ompi_err_rma_sync);
OBJ_CONSTRUCT(&ompi_err_service, ompi_mpi_errcode_t);
ompi_err_service.code = MPI_ERR_SERVICE;
ompi_err_service.cls = MPI_ERR_SERVICE;
strncpy(ompi_err_service.errstring, "MPI_ERR_SERVICE: unknown service name", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_SERVICE, &ompi_err_service);
OBJ_CONSTRUCT(&ompi_err_size, ompi_mpi_errcode_t);
ompi_err_size.code = MPI_ERR_SIZE;
ompi_err_size.cls = MPI_ERR_SIZE;
strncpy(ompi_err_size.errstring, "MPI_ERR_SIZE: invalid size", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_SIZE, &ompi_err_size);
OBJ_CONSTRUCT(&ompi_err_spawn, ompi_mpi_errcode_t);
ompi_err_spawn.code = MPI_ERR_SPAWN;
ompi_err_spawn.cls = MPI_ERR_SPAWN;
strncpy(ompi_err_spawn.errstring, "MPI_ERR_SPAWN: could not spawn processes", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_SPAWN, &ompi_err_spawn);
OBJ_CONSTRUCT(&ompi_err_unsupported_datarep, ompi_mpi_errcode_t);
ompi_err_unsupported_datarep.code = MPI_ERR_UNSUPPORTED_DATAREP;
ompi_err_unsupported_datarep.cls = MPI_ERR_UNSUPPORTED_DATAREP;
strncpy(ompi_err_unsupported_datarep.errstring,
"MPI_ERR_UNSUPPORTED_DATAREP: requested data representation not supported", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_UNSUPPORTED_DATAREP,
&ompi_err_unsupported_datarep);
OBJ_CONSTRUCT(&ompi_err_unsupported_operation, ompi_mpi_errcode_t);
ompi_err_unsupported_operation.code = MPI_ERR_UNSUPPORTED_OPERATION;
ompi_err_unsupported_operation.cls = MPI_ERR_UNSUPPORTED_OPERATION;
strncpy(ompi_err_unsupported_operation.errstring,
"MPI_ERR_UNSUPPORTED_OPERATION: requested operation not suppported", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_UNSUPPORTED_OPERATION,
&ompi_err_unsupported_operation);
OBJ_CONSTRUCT(&ompi_err_win, ompi_mpi_errcode_t);
ompi_err_win.code = MPI_ERR_WIN;
ompi_err_win.cls = MPI_ERR_WIN;
strncpy(ompi_err_win.errstring, "MPI_ERR_WIN:invalid window", MPI_MAX_ERROR_STRING);
opal_pointer_array_set_item(&ompi_mpi_errcodes, MPI_ERR_WIN, &ompi_err_win);
ompi_mpi_errcode_lastused=MPI_ERR_WIN;
ompi_mpi_errcode_lastpredefined=MPI_ERR_WIN;
ompi_mpi_errcode_lastused = MPI_ERR_WIN;
ompi_mpi_errcode_lastpredefined = MPI_ERR_WIN;
return OMPI_SUCCESS;
}