1
1

Oops. Need to have a *pointer* to the errhandlers in the mpi.h file,

not the actual struct.  Duh!

This commit was SVN r1054.
Этот коммит содержится в:
Jeff Squyres 2004-04-20 18:30:15 +00:00
родитель 04fc003dd1
Коммит 49ea6ecf4b
3 изменённых файлов: 18 добавлений и 15 удалений

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

@ -318,9 +318,9 @@ extern struct lam_datatype_t *lam_mpi_cxx_cplex, *lam_mpi_cxx_dblcplex;
extern struct lam_datatype_t *lam_mpi_cxx_ldblcplex;
extern struct lam_datatype_t *lam_mpi_cxx_bool;
extern struct lam_errhandler_t lam_mpi_errors_null;
extern struct lam_errhandler_t lam_mpi_errors_are_fatal;
extern struct lam_errhandler_t lam_mpi_errors_return;
extern struct lam_errhandler_t *lam_mpi_errors_null;
extern struct lam_errhandler_t *lam_mpi_errors_are_fatal;
extern struct lam_errhandler_t *lam_mpi_errors_return;
extern MPI_Fint *MPI_F_STATUS_IGNORE;
extern MPI_Fint *MPI_F_STATUSES_IGNORE;

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

@ -36,7 +36,7 @@ static lam_class_t lam_errhandler_t_class = {
/*
* MPI_ERRHANDLER_NULL
*/
lam_errhandler_t lam_mpi_errhandler_null = {
static lam_errhandler_t errhandler_null = {
{ NULL, 0 },
"MPI_ERRHANDLER_NULL",
@ -45,12 +45,13 @@ lam_errhandler_t lam_mpi_errhandler_null = {
LAM_ERRHANDLER_TYPE_COMM,
{ NULL }
};
lam_errhandler_t *lam_mpi_errhandler_null = &errhandler_null;
/*
* MPI_ERRORS_ARE_FATAL
*/
lam_errhandler_t lam_mpi_errors_are_fatal = {
static lam_errhandler_t errors_are_fatal = {
{ NULL, 0 },
"MPI_ERRORS_ARE_FATAL",
@ -60,12 +61,13 @@ lam_errhandler_t lam_mpi_errors_are_fatal = {
{ lam_mpi_errors_are_fatal_handler },
-1
};
lam_errhandler_t *lam_mpi_errors_are_fatal = &errors_are_fatal;
/*
* MPI_ERRORS_RETURN
*/
lam_errhandler_t lam_mpi_errors_return = {
static lam_errhandler_t errors_return = {
{ NULL, 0 },
"MPI_ERRORS_ARE_RETURN",
@ -75,6 +77,7 @@ lam_errhandler_t lam_mpi_errors_return = {
{ lam_mpi_errors_return_handler },
-1
};
lam_errhandler_t *lam_mpi_errors_return = &errors_return;
/*
@ -94,7 +97,7 @@ int lam_errhandler_init(void)
/* Add MPI_ERRHANDLER_NULL to table */
ret_val = lam_pointer_array_add(lam_errhandler_f_to_c_table,
&lam_mpi_errhandler_null);
&errhandler_null);
if (-1 == ret_val){
return LAM_ERROR;
}
@ -104,12 +107,12 @@ int lam_errhandler_init(void)
if (LAM_ERRHANDLER_NULL_FORTRAN != ret_val) {
return LAM_ERROR;
};
lam_mpi_errhandler_null.eh_f_to_c_index = ret_val;
errhandler_null.eh_f_to_c_index = ret_val;
/* Add MPI_ERRORS_ARE_FATAL to table */
ret_val = lam_pointer_array_add(lam_errhandler_f_to_c_table,
&lam_mpi_errors_are_fatal);
&errors_are_fatal);
if (-1 == ret_val){
return LAM_ERROR;
}
@ -120,12 +123,12 @@ int lam_errhandler_init(void)
if (LAM_ERRORS_ARE_FATAL_FORTRAN != ret_val) {
return LAM_ERROR;
};
lam_mpi_errors_are_fatal.eh_f_to_c_index = ret_val;
errors_are_fatal.eh_f_to_c_index = ret_val;
/* Add MPI_ERRORS_RETURN to table */
ret_val = lam_pointer_array_add(lam_errhandler_f_to_c_table,
&lam_mpi_errors_return);
&errors_return);
if (-1 == ret_val){
return LAM_ERROR;
}
@ -135,7 +138,7 @@ int lam_errhandler_init(void)
if (LAM_ERRORS_RETURN_FORTRAN != ret_val) {
return LAM_ERROR;
};
lam_mpi_errors_return.eh_f_to_c_index = ret_val;
errors_return.eh_f_to_c_index = ret_val;
/* All done */

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

@ -76,17 +76,17 @@ typedef struct lam_errhandler_t lam_errhandler_t;
/**
* Global variable for MPI_ERRHANDLER_NULL
*/
extern lam_errhandler_t lam_mpi_errhandler_null;
extern lam_errhandler_t *lam_mpi_errhandler_null;
/**
* Global variable for MPI_ERRORS_ARE_FATAL
*/
extern lam_errhandler_t lam_mpi_errors_are_fatal;
extern lam_errhandler_t *lam_mpi_errors_are_fatal;
/**
* Global variable for MPI_ERRORS_RETURN
*/
extern lam_errhandler_t lam_mpi_errors_return;
extern lam_errhandler_t *lam_mpi_errors_return;
/**
* Table for Fortran <-> C errhandler handle conversion