From e481d26285b160058b093588e062cf3071fea192 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 28 Apr 2019 12:45:55 -0400 Subject: [PATCH] Clean up minor warnings from buildfarm. Be more consistent about use of XXXGetDatum macros in new jsonpath code. This is mostly to avoid having code that looks randomly different from everyplace else that's doing the exact same thing. In pg_regress.c, avoid an unreferenced-function warning from compilers that don't understand pg_attribute_unused(). Putting the function inside the same #ifdef as its only caller is more straightforward coding anyway. In be-secure-openssl.c, avoid use of pg_attribute_unused() on a label. That's pretty creative, but there's no good reason to suppose that it's portable, and there's absolutely no need to use goto's here in the first place. (This wasn't actually causing any buildfarm complaints, but it's new code in v12 so it has no portability track record.) --- src/backend/libpq/be-secure-openssl.c | 8 +++----- src/backend/utils/adt/jsonpath.c | 2 +- src/backend/utils/adt/jsonpath_exec.c | 7 +++---- src/backend/utils/adt/jsonpath_gram.y | 4 +++- src/test/regress/pg_regress.c | 8 +++++--- 5 files changed, 15 insertions(+), 14 deletions(-) diff --git a/src/backend/libpq/be-secure-openssl.c b/src/backend/libpq/be-secure-openssl.c index 4490516b9e..c38a71df58 100644 --- a/src/backend/libpq/be-secure-openssl.c +++ b/src/backend/libpq/be-secure-openssl.c @@ -1287,24 +1287,22 @@ ssl_protocol_version_to_openssl(int v, const char *guc_name, int loglevel) #ifdef TLS1_1_VERSION return TLS1_1_VERSION; #else - goto error; + break; #endif case PG_TLS1_2_VERSION: #ifdef TLS1_2_VERSION return TLS1_2_VERSION; #else - goto error; + break; #endif case PG_TLS1_3_VERSION: #ifdef TLS1_3_VERSION return TLS1_3_VERSION; #else - goto error; + break; #endif } -error: - pg_attribute_unused(); ereport(loglevel, (errmsg("%s setting %s not supported by this build", guc_name, diff --git a/src/backend/utils/adt/jsonpath.c b/src/backend/utils/adt/jsonpath.c index fb9d85213d..d53d6d3311 100644 --- a/src/backend/utils/adt/jsonpath.c +++ b/src/backend/utils/adt/jsonpath.c @@ -499,7 +499,7 @@ printJsonPathItem(StringInfo buf, JsonPathItem *v, bool inKey, case jpiNumeric: appendStringInfoString(buf, DatumGetCString(DirectFunctionCall1(numeric_out, - PointerGetDatum(jspGetNumeric(v))))); + NumericGetDatum(jspGetNumeric(v))))); break; case jpiBool: if (jspGetBool(v)) diff --git a/src/backend/utils/adt/jsonpath_exec.c b/src/backend/utils/adt/jsonpath_exec.c index 074cea24ae..ae61b8fa3e 100644 --- a/src/backend/utils/adt/jsonpath_exec.c +++ b/src/backend/utils/adt/jsonpath_exec.c @@ -1742,8 +1742,7 @@ executeNumericItemMethod(JsonPathExecContext *cxt, JsonPathItem *jsp, "be applied to a numeric value", jspOperationName(jsp->type))))); - datum = NumericGetDatum(jb->val.numeric); - datum = DirectFunctionCall1(func, datum); + datum = DirectFunctionCall1(func, NumericGetDatum(jb->val.numeric)); if (!jspGetNext(jsp, &next) && !found) return jperOk; @@ -2109,8 +2108,8 @@ static int compareNumeric(Numeric a, Numeric b) { return DatumGetInt32(DirectFunctionCall2(numeric_cmp, - PointerGetDatum(a), - PointerGetDatum(b))); + NumericGetDatum(a), + NumericGetDatum(b))); } static JsonbValue * diff --git a/src/backend/utils/adt/jsonpath_gram.y b/src/backend/utils/adt/jsonpath_gram.y index 76155963fc..1534b038dd 100644 --- a/src/backend/utils/adt/jsonpath_gram.y +++ b/src/backend/utils/adt/jsonpath_gram.y @@ -359,7 +359,9 @@ makeItemNumeric(JsonPathString *s) v = makeItemType(jpiNumeric); v->value.numeric = DatumGetNumeric(DirectFunctionCall3(numeric_in, - CStringGetDatum(s->val), 0, -1)); + CStringGetDatum(s->val), + ObjectIdGetDatum(InvalidOid), + Int32GetDatum(-1))); return v; } diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c index 189abbbdf3..0902b1fa97 100644 --- a/src/test/regress/pg_regress.c +++ b/src/test/regress/pg_regress.c @@ -881,7 +881,9 @@ initialize_environment(void) load_resultmap(); } -pg_attribute_unused() +#ifdef ENABLE_SSPI + +/* support for config_sspi_auth() */ static const char * fmtHba(const char *raw) { @@ -904,7 +906,6 @@ fmtHba(const char *raw) return ret; } -#ifdef ENABLE_SSPI /* * Get account and domain/realm names for the current user. This is based on * pg_SSPI_recvauth(). The returned strings use static storage. @@ -1072,7 +1073,8 @@ config_sspi_auth(const char *pgdata) accountname, domainname, fmtHba(sl->str)) >= 0); CW(fclose(ident) == 0); } -#endif + +#endif /* ENABLE_SSPI */ /* * Issue a command via psql, connecting to the specified database