From: Alvaro Herrera Date: Thu, 26 Sep 2019 17:51:02 -0300 Subject: [PATCH 5/9] Silence 'mixed declarations and code' compiler warnings --- src/backend/utils/adt/multirangetypes.c | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/src/backend/utils/adt/multirangetypes.c b/src/backend/utils/adt/multirangetypes.c index c509994796..359b78d056 100644 --- a/src/backend/utils/adt/multirangetypes.c +++ b/src/backend/utils/adt/multirangetypes.c @@ -351,9 +351,12 @@ multirange_send(PG_FUNCTION_ARGS) for (i = 0; i < range_count; i++) { Datum range = RangeTypePGetDatum(ranges[i]); + uint32 range_len; + char *range_data; + range = PointerGetDatum(SendFunctionCall(&cache->proc, range)); - uint32 range_len = VARSIZE(range) - VARHDRSZ; - char *range_data = VARDATA(range); + range_len = VARSIZE(range) - VARHDRSZ; + *range_data = VARDATA(range); pq_sendint32(buf, range_len); pq_sendbytes(buf, range_data, range_len); @@ -2039,12 +2042,12 @@ bool range_before_multirange_internal(TypeCacheEntry *typcache, RangeType *r, MultirangeType * mr) { - if (RangeIsEmpty(r) || MultirangeIsEmpty(mr)) - return false; - int32 range_count; RangeType **ranges; + if (RangeIsEmpty(r) || MultirangeIsEmpty(mr)) + return false; + multirange_deserialize(mr, &range_count, &ranges); return range_before_internal(typcache->rngtype, r, ranges[0]); @@ -2054,14 +2057,14 @@ bool multirange_before_multirange_internal(TypeCacheEntry *typcache, MultirangeType * mr1, MultirangeType * mr2) { - if (MultirangeIsEmpty(mr1) || MultirangeIsEmpty(mr2)) - return false; - int32 range_count1; int32 range_count2; RangeType **ranges1; RangeType **ranges2; + if (MultirangeIsEmpty(mr1) || MultirangeIsEmpty(mr2)) + return false; + multirange_deserialize(mr1, &range_count1, &ranges1); multirange_deserialize(mr2, &range_count2, &ranges2); @@ -2074,12 +2077,12 @@ bool range_after_multirange_internal(TypeCacheEntry *typcache, RangeType *r, MultirangeType * mr) { - if (RangeIsEmpty(r) || MultirangeIsEmpty(mr)) - return false; - int32 range_count; RangeType **ranges; + if (RangeIsEmpty(r) || MultirangeIsEmpty(mr)) + return false; + multirange_deserialize(mr, &range_count, &ranges); return range_after_internal(typcache->rngtype, r, ranges[range_count - 1]); -- 2.17.1 --G4iJoqBmSsgzjUCe Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-silence-variable-set-but-not-used-compiler-warning.patch"