diff --git a/control/auxiliary.c b/control/auxiliary.c index fdc35060bdd9e4f600591169a59cf0a8307e5f02..b8300d76c2190b24ef77db5951cd6f08a7b779e9 100644 --- a/control/auxiliary.c +++ b/control/auxiliary.c @@ -187,19 +187,19 @@ int CHAMELEON_Version(int *ver_major, int *ver_minor, int *ver_micro) * @retval Element size in bytes * */ -int CHAMELEON_Element_Size( cham_flttype_t type ) +ssize_t CHAMELEON_Element_Size( cham_flttype_t type ) { switch( cham_get_flttype(type) ) { - case ChamByte: return 1; - case ChamInteger16: return sizeof(int16_t); - case ChamInteger32: return sizeof(int32_t); - case ChamInteger64: return sizeof(int64_t); - case ChamRealHalf: return 2; - case ChamRealFloat: return sizeof(float); - case ChamRealDouble: return sizeof(double); - case ChamComplexHalf: return 4; - case ChamComplexFloat: return 2*sizeof(float); - case ChamComplexDouble: return 2*sizeof(double); + case ChamByte: return (ssize_t)1; + case ChamInteger16: return sizeof(int16_t); + case ChamInteger32: return sizeof(int32_t); + case ChamInteger64: return sizeof(int64_t); + case ChamRealHalf: return (ssize_t)2; + case ChamRealFloat: return sizeof(float); + case ChamRealDouble: return sizeof(double); + case ChamComplexHalf: return (ssize_t)4; + case ChamComplexFloat: return sizeof(float) * 2; + case ChamComplexDouble: return sizeof(double) * 2; default: chameleon_fatal_error("CHAMELEON_Element_Size", "undefined type"); return CHAMELEON_ERR_ILLEGAL_VALUE; diff --git a/include/chameleon.h b/include/chameleon.h index cb7e23dedaf7330ab0deffef714f6d9bc01fb7b1..82e9efab8108e10c0cec8f39ef36d5440d46d47d 100644 --- a/include/chameleon.h +++ b/include/chameleon.h @@ -141,7 +141,7 @@ int CHAMELEON_Lapack_to_Tile( void *Af77, int LDA, CHAM_desc_t *A ) __attribute_ int CHAMELEON_Tile_to_Lapack( CHAM_desc_t *A, void *Af77, int LDA ) __attribute__((deprecated("Please refer to CHAMELEON_Desc2Lap() instead"))); /* Descriptor */ -int CHAMELEON_Element_Size( cham_flttype_t type ); +ssize_t CHAMELEON_Element_Size( cham_flttype_t type ); int CHAMELEON_Desc_Create_User( CHAM_desc_t **desc, void *mat, cham_flttype_t dtyp, int mb, int nb, int bsiz, int lm, int ln, int i, int j, int m, int n, int p, int q,