From 573406a6f5deed046a88eae62becc0bae7b4b24a Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 24 Nov 2025 11:02:35 +0100 Subject: [PATCH 5/6] Remove no longer needed casts to (Pointer) --- contrib/btree_gist/btree_utils_var.h | 2 +- src/backend/access/heap/heaptoast.c | 4 ++-- src/backend/catalog/aclchk.c | 18 +++++++++--------- src/backend/catalog/pg_constraint.c | 12 ++++++------ src/backend/utils/adt/arrayfuncs.c | 2 +- src/backend/utils/adt/datum.c | 6 +++--- src/backend/utils/adt/like_support.c | 4 ++-- src/backend/utils/adt/numeric.c | 6 +++--- src/backend/utils/adt/rangetypes.c | 4 ++-- src/backend/utils/adt/rowtypes.c | 4 ++-- src/backend/utils/cache/evtcache.c | 2 +- src/include/fmgr.h | 2 +- 12 files changed, 33 insertions(+), 33 deletions(-) diff --git a/contrib/btree_gist/btree_utils_var.h b/contrib/btree_gist/btree_utils_var.h index 75ad33d24fc..6cb3aadf3c3 100644 --- a/contrib/btree_gist/btree_utils_var.h +++ b/contrib/btree_gist/btree_utils_var.h @@ -49,7 +49,7 @@ typedef struct */ #define GBT_FREE_IF_COPY(ptr1, ptr2) \ do { \ - if ((Pointer) (ptr1) != DatumGetPointer(ptr2)) \ + if ((ptr1) != DatumGetPointer(ptr2)) \ pfree(ptr1); \ } while (0) diff --git a/src/backend/access/heap/heaptoast.c b/src/backend/access/heap/heaptoast.c index e148c9be482..60e765fbfce 100644 --- a/src/backend/access/heap/heaptoast.c +++ b/src/backend/access/heap/heaptoast.c @@ -569,7 +569,7 @@ toast_build_flattened_tuple(TupleDesc tupleDesc, int num_to_free; int i; Datum new_values[MaxTupleAttributeNumber]; - Pointer freeable_values[MaxTupleAttributeNumber]; + void *freeable_values[MaxTupleAttributeNumber]; /* * We can pass the caller's isnull array directly to heap_form_tuple, but @@ -593,7 +593,7 @@ toast_build_flattened_tuple(TupleDesc tupleDesc, { new_value = detoast_external_attr(new_value); new_values[i] = PointerGetDatum(new_value); - freeable_values[num_to_free++] = (Pointer) new_value; + freeable_values[num_to_free++] = new_value; } } } diff --git a/src/backend/catalog/aclchk.c b/src/backend/catalog/aclchk.c index cd139bd65a6..58d006986b8 100644 --- a/src/backend/catalog/aclchk.c +++ b/src/backend/catalog/aclchk.c @@ -3125,7 +3125,7 @@ object_aclmask_ext(Oid classid, Oid objectid, Oid roleid, result = aclmask(acl, roleid, ownerId, mask, how); /* if we have a detoasted copy, free it */ - if (acl && (Pointer) acl != DatumGetPointer(aclDatum)) + if (acl && acl != DatumGetPointer(aclDatum)) pfree(acl); ReleaseSysCache(tuple); @@ -3255,7 +3255,7 @@ pg_attribute_aclmask_ext(Oid table_oid, AttrNumber attnum, Oid roleid, result = aclmask(acl, roleid, ownerId, mask, how); /* if we have a detoasted copy, free it */ - if (acl && (Pointer) acl != DatumGetPointer(aclDatum)) + if (acl && acl != DatumGetPointer(aclDatum)) pfree(acl); ReleaseSysCache(attTuple); @@ -3362,7 +3362,7 @@ pg_class_aclmask_ext(Oid table_oid, Oid roleid, AclMode mask, result = aclmask(acl, roleid, ownerId, mask, how); /* if we have a detoasted copy, free it */ - if (acl && (Pointer) acl != DatumGetPointer(aclDatum)) + if (acl && acl != DatumGetPointer(aclDatum)) pfree(acl); ReleaseSysCache(tuple); @@ -3454,7 +3454,7 @@ pg_parameter_aclmask(const char *name, Oid roleid, AclMode mask, AclMaskHow how) result = aclmask(acl, roleid, BOOTSTRAP_SUPERUSERID, mask, how); /* if we have a detoasted copy, free it */ - if (acl && (Pointer) acl != DatumGetPointer(aclDatum)) + if (acl && acl != DatumGetPointer(aclDatum)) pfree(acl); ReleaseSysCache(tuple); @@ -3509,7 +3509,7 @@ pg_parameter_acl_aclmask(Oid acl_oid, Oid roleid, AclMode mask, AclMaskHow how) result = aclmask(acl, roleid, BOOTSTRAP_SUPERUSERID, mask, how); /* if we have a detoasted copy, free it */ - if (acl && (Pointer) acl != DatumGetPointer(aclDatum)) + if (acl && acl != DatumGetPointer(aclDatum)) pfree(acl); ReleaseSysCache(tuple); @@ -3589,7 +3589,7 @@ pg_largeobject_aclmask_snapshot(Oid lobj_oid, Oid roleid, result = aclmask(acl, roleid, ownerId, mask, how); /* if we have a detoasted copy, free it */ - if (acl && (Pointer) acl != DatumGetPointer(aclDatum)) + if (acl && acl != DatumGetPointer(aclDatum)) pfree(acl); systable_endscan(scan); @@ -3683,7 +3683,7 @@ pg_namespace_aclmask_ext(Oid nsp_oid, Oid roleid, result = aclmask(acl, roleid, ownerId, mask, how); /* if we have a detoasted copy, free it */ - if (acl && (Pointer) acl != DatumGetPointer(aclDatum)) + if (acl && acl != DatumGetPointer(aclDatum)) pfree(acl); ReleaseSysCache(tuple); @@ -3819,7 +3819,7 @@ pg_type_aclmask_ext(Oid type_oid, Oid roleid, AclMode mask, AclMaskHow how, result = aclmask(acl, roleid, ownerId, mask, how); /* if we have a detoasted copy, free it */ - if (acl && (Pointer) acl != DatumGetPointer(aclDatum)) + if (acl && acl != DatumGetPointer(aclDatum)) pfree(acl); ReleaseSysCache(tuple); @@ -4003,7 +4003,7 @@ pg_attribute_aclcheck_all_ext(Oid table_oid, Oid roleid, attmask = aclmask(acl, roleid, ownerId, mode, ACLMASK_ANY); /* if we have a detoasted copy, free it */ - if ((Pointer) acl != DatumGetPointer(aclDatum)) + if (acl != DatumGetPointer(aclDatum)) pfree(acl); } diff --git a/src/backend/catalog/pg_constraint.c b/src/backend/catalog/pg_constraint.c index 9944e4bd2d1..5b2a8132306 100644 --- a/src/backend/catalog/pg_constraint.c +++ b/src/backend/catalog/pg_constraint.c @@ -1544,7 +1544,7 @@ DeconstructFkConstraintRow(HeapTuple tuple, int *numfks, if (numkeys <= 0 || numkeys > INDEX_MAX_KEYS) elog(ERROR, "foreign key constraint cannot have %d columns", numkeys); memcpy(conkey, ARR_DATA_PTR(arr), numkeys * sizeof(int16)); - if ((Pointer) arr != DatumGetPointer(adatum)) + if (arr != DatumGetPointer(adatum)) pfree(arr); /* free de-toasted copy, if any */ adatum = SysCacheGetAttrNotNull(CONSTROID, tuple, @@ -1556,7 +1556,7 @@ DeconstructFkConstraintRow(HeapTuple tuple, int *numfks, ARR_ELEMTYPE(arr) != INT2OID) elog(ERROR, "confkey is not a 1-D smallint array"); memcpy(confkey, ARR_DATA_PTR(arr), numkeys * sizeof(int16)); - if ((Pointer) arr != DatumGetPointer(adatum)) + if (arr != DatumGetPointer(adatum)) pfree(arr); /* free de-toasted copy, if any */ if (pf_eq_oprs) @@ -1571,7 +1571,7 @@ DeconstructFkConstraintRow(HeapTuple tuple, int *numfks, ARR_ELEMTYPE(arr) != OIDOID) elog(ERROR, "conpfeqop is not a 1-D Oid array"); memcpy(pf_eq_oprs, ARR_DATA_PTR(arr), numkeys * sizeof(Oid)); - if ((Pointer) arr != DatumGetPointer(adatum)) + if (arr != DatumGetPointer(adatum)) pfree(arr); /* free de-toasted copy, if any */ } @@ -1586,7 +1586,7 @@ DeconstructFkConstraintRow(HeapTuple tuple, int *numfks, ARR_ELEMTYPE(arr) != OIDOID) elog(ERROR, "conppeqop is not a 1-D Oid array"); memcpy(pp_eq_oprs, ARR_DATA_PTR(arr), numkeys * sizeof(Oid)); - if ((Pointer) arr != DatumGetPointer(adatum)) + if (arr != DatumGetPointer(adatum)) pfree(arr); /* free de-toasted copy, if any */ } @@ -1601,7 +1601,7 @@ DeconstructFkConstraintRow(HeapTuple tuple, int *numfks, ARR_ELEMTYPE(arr) != OIDOID) elog(ERROR, "conffeqop is not a 1-D Oid array"); memcpy(ff_eq_oprs, ARR_DATA_PTR(arr), numkeys * sizeof(Oid)); - if ((Pointer) arr != DatumGetPointer(adatum)) + if (arr != DatumGetPointer(adatum)) pfree(arr); /* free de-toasted copy, if any */ } @@ -1624,7 +1624,7 @@ DeconstructFkConstraintRow(HeapTuple tuple, int *numfks, elog(ERROR, "confdelsetcols is not a 1-D smallint array"); num_delete_cols = ARR_DIMS(arr)[0]; memcpy(fk_del_set_cols, ARR_DATA_PTR(arr), num_delete_cols * sizeof(int16)); - if ((Pointer) arr != DatumGetPointer(adatum)) + if (arr != DatumGetPointer(adatum)) pfree(arr); /* free de-toasted copy, if any */ *num_fk_del_set_cols = num_delete_cols; diff --git a/src/backend/utils/adt/arrayfuncs.c b/src/backend/utils/adt/arrayfuncs.c index a464349ee33..6dc65d3d4cb 100644 --- a/src/backend/utils/adt/arrayfuncs.c +++ b/src/backend/utils/adt/arrayfuncs.c @@ -5687,7 +5687,7 @@ accumArrayResultArr(ArrayBuildStateArr *astate, MemoryContextSwitchTo(oldcontext); /* Release detoasted copy if any */ - if ((Pointer) arg != DatumGetPointer(dvalue)) + if (arg != DatumGetPointer(dvalue)) pfree(arg); return astate; diff --git a/src/backend/utils/adt/datum.c b/src/backend/utils/adt/datum.c index c2b111b829e..dabcca6f4c5 100644 --- a/src/backend/utils/adt/datum.c +++ b/src/backend/utils/adt/datum.c @@ -299,9 +299,9 @@ datum_image_eq(Datum value1, Datum value2, bool typByVal, int typLen) len1 - VARHDRSZ) == 0); /* Only free memory if it's a copy made here. */ - if ((Pointer) arg1val != DatumGetPointer(value1)) + if (arg1val != DatumGetPointer(value1)) pfree(arg1val); - if ((Pointer) arg2val != DatumGetPointer(value2)) + if (arg2val != DatumGetPointer(value2)) pfree(arg2val); } } @@ -355,7 +355,7 @@ datum_image_hash(Datum value, bool typByVal, int typLen) result = hash_bytes((unsigned char *) VARDATA_ANY(val), len - VARHDRSZ); /* Only free memory if it's a copy made here. */ - if ((Pointer) val != DatumGetPointer(value)) + if (val != DatumGetPointer(value)) pfree(val); } else if (typLen == -2) diff --git a/src/backend/utils/adt/like_support.c b/src/backend/utils/adt/like_support.c index 999f23f86d5..dca1d9be035 100644 --- a/src/backend/utils/adt/like_support.c +++ b/src/backend/utils/adt/like_support.c @@ -1035,7 +1035,7 @@ like_fixed_prefix(Const *patt_const, bool case_insensitive, Oid collation, pattlen = VARSIZE_ANY_EXHDR(bstr); patt = (char *) palloc(pattlen); memcpy(patt, VARDATA_ANY(bstr), pattlen); - Assert((Pointer) bstr == DatumGetPointer(patt_const->constvalue)); + Assert(bstr == DatumGetPointer(patt_const->constvalue)); } match = palloc(pattlen + 1); @@ -1577,7 +1577,7 @@ make_greater_string(const Const *str_const, FmgrInfo *ltproc, Oid collation) len = VARSIZE_ANY_EXHDR(bstr); workstr = (char *) palloc(len); memcpy(workstr, VARDATA_ANY(bstr), len); - Assert((Pointer) bstr == DatumGetPointer(str_const->constvalue)); + Assert(bstr == DatumGetPointer(str_const->constvalue)); cmpstr = str_const->constvalue; } else diff --git a/src/backend/utils/adt/numeric.c b/src/backend/utils/adt/numeric.c index 2501007d981..1d626aecbe7 100644 --- a/src/backend/utils/adt/numeric.c +++ b/src/backend/utils/adt/numeric.c @@ -2194,7 +2194,7 @@ numeric_abbrev_convert(Datum original_datum, SortSupport ssup) } /* should happen only for external/compressed toasts */ - if ((Pointer) original_varatt != DatumGetPointer(original_datum)) + if (original_varatt != DatumGetPointer(original_datum)) pfree(original_varatt); return result; @@ -2284,9 +2284,9 @@ numeric_fast_cmp(Datum x, Datum y, SortSupport ssup) result = cmp_numerics(nx, ny); - if ((Pointer) nx != DatumGetPointer(x)) + if (nx != DatumGetPointer(x)) pfree(nx); - if ((Pointer) ny != DatumGetPointer(y)) + if (ny != DatumGetPointer(y)) pfree(ny); return result; diff --git a/src/backend/utils/adt/rangetypes.c b/src/backend/utils/adt/rangetypes.c index b7e9f6dc0a8..d8e5130d642 100644 --- a/src/backend/utils/adt/rangetypes.c +++ b/src/backend/utils/adt/rangetypes.c @@ -1513,9 +1513,9 @@ range_fast_cmp(Datum a, Datum b, SortSupport ssup) cmp = range_cmp_bounds(typcache, &upper1, &upper2); } - if ((Pointer) range_a != DatumGetPointer(a)) + if (range_a != DatumGetPointer(a)) pfree(range_a); - if ((Pointer) range_b != DatumGetPointer(b)) + if (range_b != DatumGetPointer(b)) pfree(range_b); return cmp; diff --git a/src/backend/utils/adt/rowtypes.c b/src/backend/utils/adt/rowtypes.c index 9e5449f17d7..38e6fe1c43a 100644 --- a/src/backend/utils/adt/rowtypes.c +++ b/src/backend/utils/adt/rowtypes.c @@ -1529,9 +1529,9 @@ record_image_cmp(FunctionCallInfo fcinfo) if ((cmpresult == 0) && (len1 != len2)) cmpresult = (len1 < len2) ? -1 : 1; - if ((Pointer) arg1val != DatumGetPointer(values1[i1])) + if (arg1val != DatumGetPointer(values1[i1])) pfree(arg1val); - if ((Pointer) arg2val != DatumGetPointer(values2[i2])) + if (arg2val != DatumGetPointer(values2[i2])) pfree(arg2val); } else diff --git a/src/backend/utils/cache/evtcache.c b/src/backend/utils/cache/evtcache.c index b9d5a5998be..76ba2db5390 100644 --- a/src/backend/utils/cache/evtcache.c +++ b/src/backend/utils/cache/evtcache.c @@ -240,7 +240,7 @@ DecodeTextArrayToBitmapset(Datum array) } pfree(elems); - if ((Pointer) arr != DatumGetPointer(array)) + if (arr != DatumGetPointer(array)) pfree(arr); return bms; diff --git a/src/include/fmgr.h b/src/include/fmgr.h index 74fe3ea0575..c0dbe85ed1c 100644 --- a/src/include/fmgr.h +++ b/src/include/fmgr.h @@ -259,7 +259,7 @@ extern struct varlena *pg_detoast_datum_packed(struct varlena *datum); */ #define PG_FREE_IF_COPY(ptr,n) \ do { \ - if ((Pointer) (ptr) != PG_GETARG_POINTER(n)) \ + if ((ptr) != PG_GETARG_POINTER(n)) \ pfree(ptr); \ } while (0) -- 2.52.0