From 1279ba68756d636460f03c2509010815b4420776 Mon Sep 17 00:00:00 2001 From: rhaas Date: Thu, 4 Jul 2013 19:15:38 +0000 Subject: use lrint and casts to avoid compiler warnings about type conversion git-svn-id: http://svn.cactuscode.org/flesh/trunk@5030 17b73243-c579-4c4c-a9d2-2d5706c11dac --- src/main/Groups.c | 1 + src/main/Parameters.c | 18 ++++++++---------- src/util/snprintf.c | 3 ++- 3 files changed, 11 insertions(+), 11 deletions(-) (limited to 'src') diff --git a/src/main/Groups.c b/src/main/Groups.c index f8125787..e8bbec23 100644 --- a/src/main/Groups.c +++ b/src/main/Groups.c @@ -168,6 +168,7 @@ typedef struct int n_variables; + /* 1 for scalar groups, number of vector elements for vector groups */ int vectorlength; /* *size[dim] - pointers to parameter data*/ diff --git a/src/main/Parameters.c b/src/main/Parameters.c index 09b3c8b8..a56fab55 100644 --- a/src/main/Parameters.c +++ b/src/main/Parameters.c @@ -2229,7 +2229,7 @@ static int ParameterSetInteger (t_param *param, const char *value) } else if(fabs(round(val.value.rval) - val.value.rval) < 1e-12) /* enforce integer result */ { - inval = (int)rint(round(val.value.rval)); + inval = (int)lrint(val.value.rval); } else { @@ -2388,7 +2388,7 @@ static int ParameterSetReal (t_param *param, const char *value) static int ParameterSetBoolean (t_param *param, const char *value) { - const int type = PARAMETER_BOOLEAN; + int type = PARAMETER_BOOLEAN; int retval, inval; uExpressionValue val; uExpression *expr; @@ -2419,7 +2419,7 @@ static int ParameterSetBoolean (t_param *param, const char *value) } else if(fabs(round(val.value.rval) - val.value.rval) < 1e-12) /* enforce integer result */ { - inval = (int)round(val.value.rval); + inval = (int)lrint(val.value.rval); retval = 0; } else @@ -2590,9 +2590,7 @@ static char *ArrayParamName(const char *basename,int array_index) static int AccVarEvaluator(int nvars, const char * const *vars, uExpressionValue *vals, const void *data) { int i; - uExpressionValue *exps; - - exps = (uExpressionValue *)data; + const uExpressionValue *exps = (const uExpressionValue *)data; for(i=0; i < nvars; i++) { @@ -2661,7 +2659,7 @@ static int AccVarEvaluator(int nvars, const char * const *vars, uExpressionValue @@*/ static int SetVarEvaluator(int nvars, const char * const *vars, uExpressionValue *vals, const void *data) { - const int restype = *(int *)data; + const int restype = *(const int *)data; int retval = 0; for (int i=0; i < nvars; i++) @@ -2684,17 +2682,17 @@ static int SetVarEvaluator(int nvars, const char * const *vars, uExpressionValue { case PARAMETER_REAL: vals[i].type = rval; - vals[i].value.rval = *(CCTK_REAL *)paramval; + vals[i].value.rval = *(const CCTK_REAL *)paramval; ierr = 0; break; case PARAMETER_INT: vals[i].type = ival; - vals[i].value.ival = *(CCTK_INT *)paramval; + vals[i].value.ival = *(const CCTK_INT *)paramval; ierr = 0; break; case PARAMETER_BOOLEAN: vals[i].type = ival; - vals[i].value.ival = *(CCTK_INT *)paramval; + vals[i].value.ival = *(const CCTK_INT *)paramval; ierr = 0; break; default: diff --git a/src/util/snprintf.c b/src/util/snprintf.c index 6ae9e24d..e12740b2 100644 --- a/src/util/snprintf.c +++ b/src/util/snprintf.c @@ -688,8 +688,9 @@ static int fmtfp (char *buffer, size_t *currlen, size_t maxlen, if (fracpart >= mypow10 (max)) { + LDOUBLE fmax = mypow10 (max); intpart++; - fracpart -= (long)mypow10 (max); + fracpart -= (long)fmax; } #ifdef DEBUG_SNPRINTF -- cgit v1.2.3