aboutsummaryrefslogtreecommitdiff
path: root/src/backend
diff options
context:
space:
mode:
authorPeter Eisentraut <peter@eisentraut.org>2022-09-12 17:35:55 +0200
committerPeter Eisentraut <peter@eisentraut.org>2022-09-12 17:36:26 +0200
commit595836e99bf1ee6d43405b885fb69bb8c6d3ee23 (patch)
tree9af38bcdaab9e75913c66b29f30caf1f9f4e5409 /src/backend
parent8cb2a22bbb2cf4212482ac15021ceaa2e9c52209 (diff)
downloadpostgresql-595836e99bf1ee6d43405b885fb69bb8c6d3ee23.tar.gz
postgresql-595836e99bf1ee6d43405b885fb69bb8c6d3ee23.zip
Convert *GetDatum() and DatumGet*() macros to inline functions
The previous macro implementations just cast the argument to a target type but did not check whether the input type was appropriate. The function implementation can do better type checking of the input type. Reviewed-by: Aleksander Alekseev <aleksander@timescale.com> Discussion: https://www.postgresql.org/message-id/flat/8528fb7e-0aa2-6b54-85fb-0c0886dbd6ed%40enterprisedb.com
Diffstat (limited to 'src/backend')
-rw-r--r--src/backend/access/gist/gistutil.c2
-rw-r--r--src/backend/tsearch/ts_parse.c4
-rw-r--r--src/backend/utils/mb/mbutils.c12
3 files changed, 9 insertions, 9 deletions
diff --git a/src/backend/access/gist/gistutil.c b/src/backend/access/gist/gistutil.c
index d4bf0c7563d..1532462317b 100644
--- a/src/backend/access/gist/gistutil.c
+++ b/src/backend/access/gist/gistutil.c
@@ -280,7 +280,7 @@ gistMakeUnionKey(GISTSTATE *giststate, int attno,
bool
gistKeyIsEQ(GISTSTATE *giststate, int attno, Datum a, Datum b)
{
- bool result;
+ bool result = false; /* silence compiler warning */
FunctionCall3Coll(&giststate->equalFn[attno],
giststate->supportCollation[attno],
diff --git a/src/backend/tsearch/ts_parse.c b/src/backend/tsearch/ts_parse.c
index 27b2cca2dfb..92de1f7141a 100644
--- a/src/backend/tsearch/ts_parse.c
+++ b/src/backend/tsearch/ts_parse.c
@@ -354,7 +354,7 @@ void
parsetext(Oid cfgId, ParsedText *prs, char *buf, int buflen)
{
int type,
- lenlemm;
+ lenlemm = 0; /* silence compiler warning */
char *lemm = NULL;
LexizeData ldata;
TSLexeme *norms;
@@ -529,7 +529,7 @@ void
hlparsetext(Oid cfgId, HeadlineParsedText *prs, TSQuery query, char *buf, int buflen)
{
int type,
- lenlemm;
+ lenlemm = 0; /* silence compiler warning */
char *lemm = NULL;
LexizeData ldata;
TSLexeme *norms;
diff --git a/src/backend/utils/mb/mbutils.c b/src/backend/utils/mb/mbutils.c
index 0543c574c67..474ab476f5f 100644
--- a/src/backend/utils/mb/mbutils.c
+++ b/src/backend/utils/mb/mbutils.c
@@ -409,8 +409,8 @@ pg_do_encoding_conversion(unsigned char *src, int len,
(void) OidFunctionCall6(proc,
Int32GetDatum(src_encoding),
Int32GetDatum(dest_encoding),
- CStringGetDatum(src),
- CStringGetDatum(result),
+ CStringGetDatum((char *) src),
+ CStringGetDatum((char *) result),
Int32GetDatum(len),
BoolGetDatum(false));
@@ -485,8 +485,8 @@ pg_do_encoding_conversion_buf(Oid proc,
result = OidFunctionCall6(proc,
Int32GetDatum(src_encoding),
Int32GetDatum(dest_encoding),
- CStringGetDatum(src),
- CStringGetDatum(dest),
+ CStringGetDatum((char *) src),
+ CStringGetDatum((char *) dest),
Int32GetDatum(srclen),
BoolGetDatum(noError));
return DatumGetInt32(result);
@@ -910,8 +910,8 @@ pg_unicode_to_server(pg_wchar c, unsigned char *s)
FunctionCall6(Utf8ToServerConvProc,
Int32GetDatum(PG_UTF8),
Int32GetDatum(server_encoding),
- CStringGetDatum(c_as_utf8),
- CStringGetDatum(s),
+ CStringGetDatum((char *) c_as_utf8),
+ CStringGetDatum((char *) s),
Int32GetDatum(c_as_utf8_len),
BoolGetDatum(false));
}