X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/c540b8009e2e13d461ecaa7cf17f68950b3539fb..29036bc0419a7bd0b531370ec066948b49af5602:/src/smpi/smpi_mpi_dt.cpp diff --git a/src/smpi/smpi_mpi_dt.cpp b/src/smpi/smpi_mpi_dt.cpp index 4d53ee274d..43af712336 100644 --- a/src/smpi/smpi_mpi_dt.cpp +++ b/src/smpi/smpi_mpi_dt.cpp @@ -13,6 +13,7 @@ #include "smpi_mpi_dt_private.h" #include "mc/mc.h" #include "xbt/replay.h" +#include #include "simgrid/modelchecker.h" XBT_LOG_NEW_DEFAULT_SUBCATEGORY(smpi_mpi_dt, smpi, "Logging specific to SMPI (datatype)"); @@ -287,7 +288,7 @@ int smpi_datatype_copy(void *sendbuf, int sendcount, MPI_Datatype sendtype, * Copies noncontiguous data into contiguous memory. * @param contiguous_vector - output vector * @param noncontiguous_vector - input vector - * @param type - pointer contening : + * @param type - pointer containing : * - stride - stride of between noncontiguous data * - block_length - the width or height of blocked matrix * - count - the number of rows of matrix @@ -495,7 +496,7 @@ void use_contiguous(MPI_Datatype* d){ } /* Create a Sub type contiguous to be able to serialize and unserialize it the structure s_smpi_mpi_contiguous_t is - * erived from s_smpi_subtype which required the functions unserialize and serialize */ + * derived from s_smpi_subtype which required the functions unserialize and serialize */ s_smpi_mpi_contiguous_t* smpi_datatype_contiguous_create( MPI_Aint lb, int block_count, MPI_Datatype old_type, int size_oldtype){ if(block_count==0) @@ -549,7 +550,7 @@ int smpi_datatype_vector(int count, int blocklen, int stride, MPI_Datatype old_t DT_FLAG_VECTOR); retval=MPI_SUCCESS; }else{ - /* in this situation the data are contignous thus it's not required to serialize and unserialize it*/ + /* in this situation the data are contiguous thus it's not required to serialize and unserialize it*/ smpi_datatype_create(new_type, count * blocklen * smpi_datatype_size(old_type), 0, ((count -1) * stride + blocklen)* smpi_datatype_size(old_type), 0, nullptr, DT_FLAG_VECTOR|DT_FLAG_CONTIGUOUS); retval=MPI_SUCCESS; @@ -1570,7 +1571,7 @@ int smpi_type_attr_delete(MPI_Datatype type, int keyval){ if(elem==nullptr) return MPI_ERR_ARG; if(elem->delete_fn!=MPI_NULL_DELETE_FN){ - void * value; + void * value = nullptr; int flag; if(smpi_type_attr_get(type, keyval, &value, &flag)==MPI_SUCCESS){ int ret = elem->delete_fn(type, keyval, value, &flag); @@ -1590,18 +1591,16 @@ int smpi_type_attr_get(MPI_Datatype type, int keyval, void* attr_value, int* fla static_cast(xbt_dict_get_or_null_ext(smpi_type_keyvals, reinterpret_cast(&keyval), sizeof(int))); if(elem==nullptr) return MPI_ERR_ARG; - xbt_ex_t ex; if(type->attributes==nullptr){ *flag=0; return MPI_SUCCESS; } - TRY { + try { *static_cast(attr_value) = xbt_dict_get_ext(type->attributes, reinterpret_cast(&keyval), sizeof(int)); *flag=1; } - CATCH(ex) { + catch (xbt_ex& ex) { *flag=0; - xbt_ex_free(ex); } return MPI_SUCCESS; } @@ -1614,7 +1613,7 @@ int smpi_type_attr_put(MPI_Datatype type, int keyval, void* attr_value){ if(elem==nullptr) return MPI_ERR_ARG; int flag; - void* value; + void* value = nullptr; smpi_type_attr_get(type, keyval, &value, &flag); if(flag!=0 && elem->delete_fn!=MPI_NULL_DELETE_FN){ int ret = elem->delete_fn(type, keyval, value, &flag);