pgsql: Mark function arguments of type "Datum *" as "const Datum *" whe

From: Peter Eisentraut <peter(at)eisentraut(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Mark function arguments of type "Datum *" as "const Datum *" whe
Date: 2025-10-31 09:53:38
Message-ID: E1vElpC-004NYf-1U@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Mark function arguments of type "Datum *" as "const Datum *" where possible

Several functions in the codebase accept "Datum *" parameters but do
not modify the pointed-to data. These have been updated to take
"const Datum *" instead, improving type safety and making the
interfaces clearer about their intent. This change helps the compiler
catch accidental modifications and better documents immutability of
arguments.

Most of "Datum *" parameters have a pairing "bool *isnull" parameter,
they are constified as well.

No functional behavior is changed by this patch.

Author: Chao Li <lic(at)highgo(dot)com>
Discussion: https://www.postgresql.org/message-id/flat/CAEoWx2msfT0knvzUa72ZBwu9LR_RLY4on85w2a9YpE-o2By5HQ(at)mail(dot)gmail(dot)com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/8a27d418f8fc08b62f371c1b167efbfbf0a2a24e

Modified Files
--------------
doc/src/sgml/spi.sgml | 6 +--
src/backend/access/brin/brin_minmax_multi.c | 2 +-
src/backend/access/hash/hashutil.c | 2 +-
src/backend/access/heap/heaptoast.c | 4 +-
src/backend/access/nbtree/nbtpreprocesskeys.c | 4 +-
src/backend/access/nbtree/nbtsort.c | 4 +-
src/backend/access/spgist/spgdoinsert.c | 2 +-
src/backend/access/spgist/spgtextproc.c | 2 +-
src/backend/executor/execPartition.c | 14 +++----
src/backend/executor/nodeIndexscan.c | 4 +-
src/backend/executor/spi.c | 12 +++---
src/backend/partitioning/partbounds.c | 6 +--
src/backend/partitioning/partprune.c | 8 ++--
src/backend/statistics/attribute_stats.c | 4 +-
src/backend/tsearch/ts_selfuncs.c | 8 ++--
src/backend/utils/adt/array_selfuncs.c | 48 +++++++++++-----------
src/backend/utils/adt/arrayfuncs.c | 10 ++---
src/backend/utils/adt/json.c | 6 +--
src/backend/utils/adt/jsonfuncs.c | 28 ++++++-------
src/backend/utils/adt/multirangetypes_selfuncs.c | 16 ++++----
src/backend/utils/adt/network_selfuncs.c | 20 ++++-----
src/backend/utils/adt/orderedsetaggs.c | 4 +-
src/backend/utils/adt/rangetypes_selfuncs.c | 16 ++++----
src/backend/utils/adt/xml.c | 4 +-
src/backend/utils/cache/catcache.c | 14 +++----
src/include/access/hash.h | 2 +-
src/include/access/heaptoast.h | 4 +-
src/include/access/spgist_private.h | 2 +-
src/include/executor/spi.h | 8 ++--
src/include/partitioning/partbounds.h | 6 +--
src/include/utils/array.h | 10 ++---
src/include/utils/jsonb.h | 4 +-
src/include/utils/xml.h | 4 +-
src/test/modules/spgist_name_ops/spgist_name_ops.c | 2 +-
34 files changed, 145 insertions(+), 145 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Bruce Momjian 2025-10-31 15:37:18 Re: pgsql: doc: rewrite random_page_cost description
Previous Message Peter Eisentraut 2025-10-31 09:01:20 pgsql: formatting.c cleanup: Change fill_str() return type to void