From f14aad5169baa5e2ac25d49f1d18f9d5cb3bc7f2 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Fri, 7 Oct 2022 13:28:38 +0200 Subject: [PATCH] Remove unnecessary uses of Abs() Use C standard abs() or fabs() instead. Reviewed-by: Zhang Mingli Reviewed-by: Tom Lane Discussion: https://www.postgresql.org/message-id/flat/4beb42b5-216b-bce8-d452-d924d5794c63%40enterprisedb.com --- contrib/btree_gist/btree_date.c | 4 ++-- contrib/btree_gist/btree_float8.c | 4 ++-- contrib/btree_gist/btree_int2.c | 2 +- contrib/btree_gist/btree_int4.c | 2 +- contrib/btree_gist/btree_interval.c | 2 +- contrib/btree_gist/btree_time.c | 2 +- contrib/btree_gist/btree_ts.c | 2 +- contrib/btree_gist/btree_utils_num.h | 2 +- contrib/btree_gist/btree_utils_var.c | 2 +- contrib/cube/cube.c | 2 +- contrib/intarray/_int_gist.c | 3 ++- contrib/intarray/_intbig_gist.c | 4 +++- contrib/ltree/_ltree_gist.c | 4 +++- contrib/seg/seg.c | 4 ++-- src/backend/access/gist/gistproc.c | 4 ++-- src/backend/optimizer/geqo/geqo_erx.c | 8 ++++---- src/backend/partitioning/partbounds.c | 4 ++-- src/backend/utils/adt/datetime.c | 8 ++++---- src/backend/utils/adt/numeric.c | 20 ++++++++++---------- src/backend/utils/adt/rangetypes_gist.c | 4 ++-- src/backend/utils/adt/selfuncs.c | 2 +- src/backend/utils/adt/timestamp.c | 4 ++-- src/backend/utils/adt/tsgistidx.c | 2 +- src/backend/utils/adt/tsrank.c | 2 +- src/backend/utils/misc/guc.c | 2 +- src/interfaces/ecpg/pgtypeslib/interval.c | 4 ++-- 26 files changed, 54 insertions(+), 49 deletions(-) diff --git a/contrib/btree_gist/btree_date.c b/contrib/btree_gist/btree_date.c index 455a265a49..68a4107dbf 100644 --- a/contrib/btree_gist/btree_date.c +++ b/contrib/btree_gist/btree_date.c @@ -95,7 +95,7 @@ gdb_date_dist(const void *a, const void *b, FmgrInfo *flinfo) DateADTGetDatum(*((const DateADT *) a)), DateADTGetDatum(*((const DateADT *) b))); - return (float8) Abs(DatumGetInt32(diff)); + return (float8) abs(DatumGetInt32(diff)); } @@ -123,7 +123,7 @@ date_dist(PG_FUNCTION_ARGS) PG_GETARG_DATUM(0), PG_GETARG_DATUM(1)); - PG_RETURN_INT32(Abs(DatumGetInt32(diff))); + PG_RETURN_INT32(abs(DatumGetInt32(diff))); } diff --git a/contrib/btree_gist/btree_float8.c b/contrib/btree_gist/btree_float8.c index b95a08e228..081a719b00 100644 --- a/contrib/btree_gist/btree_float8.c +++ b/contrib/btree_gist/btree_float8.c @@ -79,7 +79,7 @@ gbt_float8_dist(const void *a, const void *b, FmgrInfo *flinfo) r = arg1 - arg2; if (unlikely(isinf(r)) && !isinf(arg1) && !isinf(arg2)) float_overflow_error(); - return Abs(r); + return fabs(r); } @@ -110,7 +110,7 @@ float8_dist(PG_FUNCTION_ARGS) if (unlikely(isinf(r)) && !isinf(a) && !isinf(b)) float_overflow_error(); - PG_RETURN_FLOAT8(Abs(r)); + PG_RETURN_FLOAT8(fabs(r)); } /************************************************** diff --git a/contrib/btree_gist/btree_int2.c b/contrib/btree_gist/btree_int2.c index a91b95ff39..fdbf156586 100644 --- a/contrib/btree_gist/btree_int2.c +++ b/contrib/btree_gist/btree_int2.c @@ -105,7 +105,7 @@ int2_dist(PG_FUNCTION_ARGS) (errcode(ERRCODE_NUMERIC_VALUE_OUT_OF_RANGE), errmsg("smallint out of range"))); - ra = Abs(r); + ra = abs(r); PG_RETURN_INT16(ra); } diff --git a/contrib/btree_gist/btree_int4.c b/contrib/btree_gist/btree_int4.c index 7ea98c478c..8915fb5d08 100644 --- a/contrib/btree_gist/btree_int4.c +++ b/contrib/btree_gist/btree_int4.c @@ -106,7 +106,7 @@ int4_dist(PG_FUNCTION_ARGS) (errcode(ERRCODE_NUMERIC_VALUE_OUT_OF_RANGE), errmsg("integer out of range"))); - ra = Abs(r); + ra = abs(r); PG_RETURN_INT32(ra); } diff --git a/contrib/btree_gist/btree_interval.c b/contrib/btree_gist/btree_interval.c index c2bf82086d..2c98b330cd 100644 --- a/contrib/btree_gist/btree_interval.c +++ b/contrib/btree_gist/btree_interval.c @@ -83,7 +83,7 @@ intr2num(const Interval *i) static float8 gbt_intv_dist(const void *a, const void *b, FmgrInfo *flinfo) { - return (float8) Abs(intr2num((const Interval *) a) - intr2num((const Interval *) b)); + return fabs(intr2num((const Interval *) a) - intr2num((const Interval *) b)); } /* diff --git a/contrib/btree_gist/btree_time.c b/contrib/btree_gist/btree_time.c index fd8774a2f0..d89401c0f5 100644 --- a/contrib/btree_gist/btree_time.c +++ b/contrib/btree_gist/btree_time.c @@ -118,7 +118,7 @@ gbt_time_dist(const void *a, const void *b, FmgrInfo *flinfo) i = DatumGetIntervalP(DirectFunctionCall2(time_mi_time, TimeADTGetDatumFast(*aa), TimeADTGetDatumFast(*bb))); - return (float8) Abs(INTERVAL_TO_SEC(i)); + return fabs(INTERVAL_TO_SEC(i)); } diff --git a/contrib/btree_gist/btree_ts.c b/contrib/btree_gist/btree_ts.c index a51900941e..3f5ba91891 100644 --- a/contrib/btree_gist/btree_ts.c +++ b/contrib/btree_gist/btree_ts.c @@ -123,7 +123,7 @@ gbt_ts_dist(const void *a, const void *b, FmgrInfo *flinfo) i = DatumGetIntervalP(DirectFunctionCall2(timestamp_mi, TimestampGetDatumFast(*aa), TimestampGetDatumFast(*bb))); - return (float8) Abs(INTERVAL_TO_SEC(i)); + return fabs(INTERVAL_TO_SEC(i)); } diff --git a/contrib/btree_gist/btree_utils_num.h b/contrib/btree_gist/btree_utils_num.h index 415a7a6459..11e892311e 100644 --- a/contrib/btree_gist/btree_utils_num.h +++ b/contrib/btree_gist/btree_utils_num.h @@ -87,7 +87,7 @@ typedef struct (ivp)->day * (24.0 * SECS_PER_HOUR) + \ (ivp)->month * (30.0 * SECS_PER_DAY)) -#define GET_FLOAT_DISTANCE(t, arg1, arg2) Abs( ((float8) *((const t *) (arg1))) - ((float8) *((const t *) (arg2))) ) +#define GET_FLOAT_DISTANCE(t, arg1, arg2) fabs( ((float8) *((const t *) (arg1))) - ((float8) *((const t *) (arg2))) ) extern Interval *abs_interval(Interval *a); diff --git a/contrib/btree_gist/btree_utils_var.c b/contrib/btree_gist/btree_utils_var.c index 2886c08b85..3ef82d0e20 100644 --- a/contrib/btree_gist/btree_utils_var.c +++ b/contrib/btree_gist/btree_utils_var.c @@ -426,7 +426,7 @@ gbt_var_penalty(float *res, const GISTENTRY *o, const GISTENTRY *n, tmp[1] = (unsigned char) (((VARSIZE(uk.lower) - VARHDRSZ) <= ul) ? 0 : (VARDATA(uk.lower)[ul])); tmp[2] = (unsigned char) (((VARSIZE(ok.upper) - VARHDRSZ) <= ul) ? 0 : (VARDATA(ok.upper)[ul])); tmp[3] = (unsigned char) (((VARSIZE(uk.upper) - VARHDRSZ) <= ul) ? 0 : (VARDATA(uk.upper)[ul])); - dres = Abs(tmp[0] - tmp[1]) + Abs(tmp[3] - tmp[2]); + dres = abs(tmp[0] - tmp[1]) + abs(tmp[3] - tmp[2]); dres /= 256.0; } diff --git a/contrib/cube/cube.c b/contrib/cube/cube.c index 01c6a9c556..4f32c5dc1d 100644 --- a/contrib/cube/cube.c +++ b/contrib/cube/cube.c @@ -925,7 +925,7 @@ rt_cube_size(NDBOX *a, double *size) { result = 1.0; for (i = 0; i < DIM(a); i++) - result *= Abs(UR_COORD(a, i) - LL_COORD(a, i)); + result *= fabs(UR_COORD(a, i) - LL_COORD(a, i)); } *size = result; } diff --git a/contrib/intarray/_int_gist.c b/contrib/intarray/_int_gist.c index 6378aa74b0..f67699bfcc 100644 --- a/contrib/intarray/_int_gist.c +++ b/contrib/intarray/_int_gist.c @@ -4,6 +4,7 @@ #include "postgres.h" #include +#include #include "_int.h" #include "access/gist.h" @@ -539,7 +540,7 @@ g_int_picksplit(PG_FUNCTION_ARGS) union_d = inner_int_union(datum_r, datum_alpha); rt__int_size(union_d, &size_beta); pfree(union_d); - costvector[i - 1].cost = Abs((size_alpha - size_l) - (size_beta - size_r)); + costvector[i - 1].cost = fabs((size_alpha - size_l) - (size_beta - size_r)); } qsort((void *) costvector, maxoff, sizeof(SPLITCOST), comparecost); diff --git a/contrib/intarray/_intbig_gist.c b/contrib/intarray/_intbig_gist.c index c9d8f9b84d..887940ca35 100644 --- a/contrib/intarray/_intbig_gist.c +++ b/contrib/intarray/_intbig_gist.c @@ -3,6 +3,8 @@ */ #include "postgres.h" +#include + #include "_int.h" #include "access/gist.h" #include "access/reloptions.h" @@ -389,7 +391,7 @@ g_intbig_picksplit(PG_FUNCTION_ARGS) _j = GETENTRY(entryvec, j); size_alpha = hemdist(datum_l, _j, siglen); size_beta = hemdist(datum_r, _j, siglen); - costvector[j - 1].cost = Abs(size_alpha - size_beta); + costvector[j - 1].cost = abs(size_alpha - size_beta); } qsort((void *) costvector, maxoff, sizeof(SPLITCOST), comparecost); diff --git a/contrib/ltree/_ltree_gist.c b/contrib/ltree/_ltree_gist.c index 88d4623621..385a10283b 100644 --- a/contrib/ltree/_ltree_gist.c +++ b/contrib/ltree/_ltree_gist.c @@ -7,6 +7,8 @@ */ #include "postgres.h" +#include + #include "access/gist.h" #include "access/reloptions.h" #include "access/stratnum.h" @@ -315,7 +317,7 @@ _ltree_picksplit(PG_FUNCTION_ARGS) _j = GETENTRY(entryvec, j); size_alpha = hemdist(datum_l, _j, siglen); size_beta = hemdist(datum_r, _j, siglen); - costvector[j - 1].cost = Abs(size_alpha - size_beta); + costvector[j - 1].cost = abs(size_alpha - size_beta); } qsort((void *) costvector, maxoff, sizeof(SPLITCOST), comparecost); diff --git a/contrib/seg/seg.c b/contrib/seg/seg.c index cb677e0ae5..9b58675266 100644 --- a/contrib/seg/seg.c +++ b/contrib/seg/seg.c @@ -952,7 +952,7 @@ restore(char *result, float val, int n) } else { - if (Abs(exp) <= 4) + if (abs(exp) <= 4) { /* * remove the decimal point from the mantissa and write the digits @@ -1039,7 +1039,7 @@ restore(char *result, float val, int n) } } - /* do nothing for Abs(exp) > 4; %e must be OK */ + /* do nothing for abs(exp) > 4; %e must be OK */ /* just get rid of zeroes after [eE]- and +zeroes after [Ee]. */ /* ... this is not done yet. */ diff --git a/src/backend/access/gist/gistproc.c b/src/backend/access/gist/gistproc.c index 22f2c18537..406c65d6ec 100644 --- a/src/backend/access/gist/gistproc.c +++ b/src/backend/access/gist/gistproc.c @@ -797,8 +797,8 @@ gist_box_picksplit(PG_FUNCTION_ARGS) for (i = 0; i < commonEntriesCount; i++) { box = DatumGetBoxP(entryvec->vector[commonEntries[i].index].key); - commonEntries[i].delta = Abs(float8_mi(box_penalty(leftBox, box), - box_penalty(rightBox, box))); + commonEntries[i].delta = fabs(float8_mi(box_penalty(leftBox, box), + box_penalty(rightBox, box))); } /* diff --git a/src/backend/optimizer/geqo/geqo_erx.c b/src/backend/optimizer/geqo/geqo_erx.c index cc0661365f..21ad785411 100644 --- a/src/backend/optimizer/geqo/geqo_erx.c +++ b/src/backend/optimizer/geqo/geqo_erx.c @@ -162,7 +162,7 @@ gimme_edge(PlannerInfo *root, Gene gene1, Gene gene2, Edge *edge_table) for (i = 0; i < edges; i++) { - if ((Gene) Abs(edge_table[city1].edge_list[i]) == city2) + if ((Gene) abs(edge_table[city1].edge_list[i]) == city2) { /* mark shared edges as negative */ @@ -249,14 +249,14 @@ remove_gene(PlannerInfo *root, Gene gene, Edge edge, Edge *edge_table) for (i = 0; i < edge.unused_edges; i++) { - possess_edge = (int) Abs(edge.edge_list[i]); + possess_edge = abs(edge.edge_list[i]); genes_remaining = edge_table[possess_edge].unused_edges; /* find the input gene in all edge_lists and delete it */ for (j = 0; j < genes_remaining; j++) { - if ((Gene) Abs(edge_table[possess_edge].edge_list[j]) == gene) + if ((Gene) abs(edge_table[possess_edge].edge_list[j]) == gene) { edge_table[possess_edge].unused_edges--; @@ -307,7 +307,7 @@ gimme_gene(PlannerInfo *root, Edge edge, Edge *edge_table) * converting to absolute values */ if (friend < 0) - return (Gene) Abs(friend); + return (Gene) abs(friend); /* diff --git a/src/backend/partitioning/partbounds.c b/src/backend/partitioning/partbounds.c index a49e97a225..0823fa7b1d 100644 --- a/src/backend/partitioning/partbounds.c +++ b/src/backend/partitioning/partbounds.c @@ -3206,7 +3206,7 @@ check_new_partition_bound(char *relname, Relation parent, * datums list. */ PartitionRangeDatum *datum = - list_nth(spec->upperdatums, Abs(cmpval) - 1); + list_nth(spec->upperdatums, abs(cmpval) - 1); /* * The new partition overlaps with the @@ -3232,7 +3232,7 @@ check_new_partition_bound(char *relname, Relation parent, * if we have equality, point to the first one. */ datum = cmpval == 0 ? linitial(spec->lowerdatums) : - list_nth(spec->lowerdatums, Abs(cmpval) - 1); + list_nth(spec->lowerdatums, abs(cmpval) - 1); overlap = true; overlap_location = datum->location; with = boundinfo->indexes[offset + 1]; diff --git a/src/backend/utils/adt/datetime.c b/src/backend/utils/adt/datetime.c index 904ac2353c..a8b025f43f 100644 --- a/src/backend/utils/adt/datetime.c +++ b/src/backend/utils/adt/datetime.c @@ -448,14 +448,14 @@ AppendSeconds(char *cp, int sec, fsec_t fsec, int precision, bool fillzeros) Assert(precision >= 0); if (fillzeros) - cp = pg_ultostr_zeropad(cp, Abs(sec), 2); + cp = pg_ultostr_zeropad(cp, abs(sec), 2); else - cp = pg_ultostr(cp, Abs(sec)); + cp = pg_ultostr(cp, abs(sec)); /* fsec_t is just an int32 */ if (fsec != 0) { - int32 value = Abs(fsec); + int32 value = abs(fsec); char *end = &cp[precision + 1]; bool gotnonzero = false; @@ -490,7 +490,7 @@ AppendSeconds(char *cp, int sec, fsec_t fsec, int precision, bool fillzeros) * which will generate a correct answer in the minimum valid width. */ if (value) - return pg_ultostr(cp, Abs(fsec)); + return pg_ultostr(cp, abs(fsec)); return end; } diff --git a/src/backend/utils/adt/numeric.c b/src/backend/utils/adt/numeric.c index 85ee9ec426..cafe1ac47b 100644 --- a/src/backend/utils/adt/numeric.c +++ b/src/backend/utils/adt/numeric.c @@ -8870,7 +8870,7 @@ div_var_fast(const NumericVar *var1, const NumericVar *var2, if (qdigit != 0) { /* Do we need to normalize now? */ - maxdiv += Abs(qdigit); + maxdiv += abs(qdigit); if (maxdiv > (INT_MAX - INT_MAX / NBASE - 1) / (NBASE - 1)) { /* @@ -8923,7 +8923,7 @@ div_var_fast(const NumericVar *var1, const NumericVar *var2, fquotient = fdividend * fdivisorinverse; qdigit = (fquotient >= 0.0) ? ((int) fquotient) : (((int) fquotient) - 1); /* truncate towards -infinity */ - maxdiv += Abs(qdigit); + maxdiv += abs(qdigit); } /* @@ -9107,7 +9107,7 @@ div_var_int(const NumericVar *var, int ival, int ival_weight, * become as large as divisor * NBASE - 1, and so it requires a 64-bit * integer if this exceeds UINT_MAX. */ - divisor = Abs(ival); + divisor = abs(ival); if (divisor <= UINT_MAX / NBASE) { @@ -9948,7 +9948,7 @@ exp_var(const NumericVar *arg, NumericVar *result, int rscale) /* Guard against overflow/underflow */ /* If you change this limit, see also power_var()'s limit */ - if (Abs(val) >= NUMERIC_MAX_RESULT_SCALE * 3) + if (fabs(val) >= NUMERIC_MAX_RESULT_SCALE * 3) { if (val > 0) ereport(ERROR, @@ -9966,15 +9966,15 @@ exp_var(const NumericVar *arg, NumericVar *result, int rscale) * Reduce x to the range -0.01 <= x <= 0.01 (approximately) by dividing by * 2^ndiv2, to improve the convergence rate of the Taylor series. * - * Note that the overflow check above ensures that Abs(x) < 6000, which + * Note that the overflow check above ensures that fabs(x) < 6000, which * means that ndiv2 <= 20 here. */ - if (Abs(val) > 0.01) + if (fabs(val) > 0.01) { ndiv2 = 1; val /= 2; - while (Abs(val) > 0.01) + while (fabs(val) > 0.01) { ndiv2++; val /= 2; @@ -10116,7 +10116,7 @@ estimate_ln_dweight(const NumericVar *var) *---------- */ ln_var = log((double) digits) + dweight * 2.302585092994046; - ln_dweight = (int) log10(Abs(ln_var)); + ln_dweight = (int) log10(fabs(ln_var)); } else { @@ -10427,7 +10427,7 @@ power_var(const NumericVar *base, const NumericVar *exp, NumericVar *result) val = numericvar_to_double_no_overflow(&ln_num); /* initial overflow/underflow test with fuzz factor */ - if (Abs(val) > NUMERIC_MAX_RESULT_SCALE * 3.01) + if (fabs(val) > NUMERIC_MAX_RESULT_SCALE * 3.01) { if (val > 0) ereport(ERROR, @@ -10583,7 +10583,7 @@ power_var_int(const NumericVar *base, int exp, NumericVar *result, int rscale) * Now we can proceed with the multiplications. */ neg = (exp < 0); - mask = Abs(exp); + mask = abs(exp); init_var(&base_prod); set_var_from_var(base, &base_prod); diff --git a/src/backend/utils/adt/rangetypes_gist.c b/src/backend/utils/adt/rangetypes_gist.c index 777fdf0e2e..5996de417d 100644 --- a/src/backend/utils/adt/rangetypes_gist.c +++ b/src/backend/utils/adt/rangetypes_gist.c @@ -743,8 +743,8 @@ range_gist_picksplit(PG_FUNCTION_ARGS) emptyCount = total_count - nonEmptyCount; if (infCount > 0 && nonInfCount > 0 && - (Abs(infCount - nonInfCount) <= - Abs(emptyCount - nonEmptyCount))) + (abs(infCount - nonInfCount) <= + abs(emptyCount - nonEmptyCount))) { classes_groups[CLS_NORMAL] = SPLIT_RIGHT; classes_groups[CLS_CONTAIN_EMPTY] = SPLIT_RIGHT; diff --git a/src/backend/utils/adt/selfuncs.c b/src/backend/utils/adt/selfuncs.c index 234fb66580..69e0fb98f5 100644 --- a/src/backend/utils/adt/selfuncs.c +++ b/src/backend/utils/adt/selfuncs.c @@ -7835,7 +7835,7 @@ brincostestimate(PlannerInfo *root, IndexPath *path, double loop_count, double varCorrelation = 0.0; if (sslot.nnumbers > 0) - varCorrelation = Abs(sslot.numbers[0]); + varCorrelation = fabs(sslot.numbers[0]); if (varCorrelation > *indexCorrelation) *indexCorrelation = varCorrelation; diff --git a/src/backend/utils/adt/timestamp.c b/src/backend/utils/adt/timestamp.c index 9799647e1a..d8552a1f18 100644 --- a/src/backend/utils/adt/timestamp.c +++ b/src/backend/utils/adt/timestamp.c @@ -3290,7 +3290,7 @@ interval_mul(PG_FUNCTION_ARGS) * cascade from months and days. It might still be >24 if the combination * of cascade and the seconds factor operation itself. */ - if (Abs(sec_remainder) >= SECS_PER_DAY) + if (fabs(sec_remainder) >= SECS_PER_DAY) { result->day += (int) (sec_remainder / SECS_PER_DAY); sec_remainder -= (int) (sec_remainder / SECS_PER_DAY) * SECS_PER_DAY; @@ -3347,7 +3347,7 @@ interval_div(PG_FUNCTION_ARGS) sec_remainder = (orig_day / factor - result->day + month_remainder_days - (int) month_remainder_days) * SECS_PER_DAY; sec_remainder = TSROUND(sec_remainder); - if (Abs(sec_remainder) >= SECS_PER_DAY) + if (fabs(sec_remainder) >= SECS_PER_DAY) { result->day += (int) (sec_remainder / SECS_PER_DAY); sec_remainder -= (int) (sec_remainder / SECS_PER_DAY) * SECS_PER_DAY; diff --git a/src/backend/utils/adt/tsgistidx.c b/src/backend/utils/adt/tsgistidx.c index fe438f1c4d..728b5e9e71 100644 --- a/src/backend/utils/adt/tsgistidx.c +++ b/src/backend/utils/adt/tsgistidx.c @@ -700,7 +700,7 @@ gtsvector_picksplit(PG_FUNCTION_ARGS) costvector[j - 1].pos = j; size_alpha = hemdistcache(&(cache[seed_1]), &(cache[j]), siglen); size_beta = hemdistcache(&(cache[seed_2]), &(cache[j]), siglen); - costvector[j - 1].cost = Abs(size_alpha - size_beta); + costvector[j - 1].cost = abs(size_alpha - size_beta); } qsort((void *) costvector, maxoff, sizeof(SPLITCOST), comparecost); diff --git a/src/backend/utils/adt/tsrank.c b/src/backend/utils/adt/tsrank.c index 3858fc5928..e353669dba 100644 --- a/src/backend/utils/adt/tsrank.c +++ b/src/backend/utils/adt/tsrank.c @@ -257,7 +257,7 @@ calc_rank_and(const float *w, TSVector t, TSQuery q) { for (p = 0; p < lenct; p++) { - dist = Abs((int) WEP_GETPOS(post[l]) - (int) WEP_GETPOS(ct[p])); + dist = abs((int) WEP_GETPOS(post[l]) - (int) WEP_GETPOS(ct[p])); if (dist || (dist == 0 && (pos[i] == POSNULL || pos[k] == POSNULL))) { float curw; diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c index 0135766035..f997ec0f82 100644 --- a/src/backend/utils/misc/guc.c +++ b/src/backend/utils/misc/guc.c @@ -5378,7 +5378,7 @@ estimate_variable_size(struct config_generic *gconf) * small values. Maximum value is 2147483647, i.e. 10 chars. * Include one byte for sign. */ - if (Abs(*conf->variable) < 1000) + if (abs(*conf->variable) < 1000) valsize = 3 + 1; else valsize = 10 + 1; diff --git a/src/interfaces/ecpg/pgtypeslib/interval.c b/src/interfaces/ecpg/pgtypeslib/interval.c index 73bde94aaf..dc083c1327 100644 --- a/src/interfaces/ecpg/pgtypeslib/interval.c +++ b/src/interfaces/ecpg/pgtypeslib/interval.c @@ -742,9 +742,9 @@ AppendSeconds(char *cp, int sec, fsec_t fsec, int precision, bool fillzeros) else { if (fillzeros) - sprintf(cp, "%02d.%0*d", abs(sec), precision, (int) Abs(fsec)); + sprintf(cp, "%02d.%0*d", abs(sec), precision, abs(fsec)); else - sprintf(cp, "%d.%0*d", abs(sec), precision, (int) Abs(fsec)); + sprintf(cp, "%d.%0*d", abs(sec), precision, abs(fsec)); TrimTrailingZeros(cp); } }