diff --git a/src/datatype/datatype.h b/src/datatype/datatype.h index da0ea536bd..9ef68bc0af 100644 --- a/src/datatype/datatype.h +++ b/src/datatype/datatype.h @@ -28,7 +28,7 @@ extern ompi_pointer_array_t *ompi_datatype_f_to_c_table; /* if there are more basic datatypes than the number of bytes in the int type * the bdt_used field of the data description struct should be changed to long. */ -#define DT_MAX_PREDEFINED 0x2A +#define DT_MAX_PREDEFINED 0x2B #define DT_INCREASE_STACK 32 diff --git a/src/datatype/datatype_internal.h b/src/datatype/datatype_internal.h index b1c9a39547..90eed4c497 100644 --- a/src/datatype/datatype_internal.h +++ b/src/datatype/datatype_internal.h @@ -69,7 +69,8 @@ #define DT_WCHAR 0x26 #define DT_2COMPLEX 0x27 #define DT_2DOUBLE_COMPLEX 0x28 -#define DT_UNAVAILABLE 0x29 +#define DT_CXX_BOOL 0x29 +#define DT_UNAVAILABLE 0x2A /* If the number of basic datatype should change update * DT_MAX_PREDEFINED in datatype.h */ diff --git a/src/datatype/dt_module.c b/src/datatype/dt_module.c index 5b8bb0d054..3284cde828 100644 --- a/src/datatype/dt_module.c +++ b/src/datatype/dt_module.c @@ -75,6 +75,7 @@ ompi_datatype_t basicDatatypes[DT_MAX_PREDEFINED] = { INIT_BASIC_TYPE( DT_WCHAR, WCHAR ), INIT_BASIC_TYPE( DT_2COMPLEX, 2COMPLEX ), INIT_BASIC_TYPE( DT_2DOUBLE_COMPLEX, 2DOUBLE_COMPLEX ), + INIT_BASIC_DATA( int, OMPI_ALIGNMENT_INT, CXX_BOOL ), INIT_BASIC_TYPE( DT_UNAVAILABLE, UNAVAILABLE ) }; @@ -116,7 +117,7 @@ ompi_datatype_t* ompi_mpi_unsigned_long_long = basicDatatypes + DT_UNSIGNED_LONG ompi_datatype_t* ompi_mpi_cxx_cplex = basicDatatypes + DT_COMPLEX_FLOAT; ompi_datatype_t* ompi_mpi_cxx_dblcplex = basicDatatypes + DT_COMPLEX_DOUBLE; ompi_datatype_t* ompi_mpi_cxx_ldblcplex = basicDatatypes + DT_COMPLEX_LONG_DOUBLE; -ompi_datatype_t* ompi_mpi_cxx_bool; +ompi_datatype_t* ompi_mpi_cxx_bool = basicDatatypes + DT_CXX_BOOL; ompi_datatype_t* ompi_mpi_2cplex = basicDatatypes + DT_2COMPLEX; ompi_datatype_t* ompi_mpi_2dblcplex = basicDatatypes + DT_2DOUBLE_COMPLEX;