Skip to content

Commit ea3164a

Browse files
committed
Silence another gcc 11 warning.
Per buildfarm and local experimentation, bleeding-edge gcc isn't convinced that the MemSet in reorder_function_arguments() is safe. Shut it up by adding an explicit check that pronargs isn't negative, and by changing MemSet to memset. (It appears that either change is enough to quiet the warning at -O2, but let's do both to be sure.)
1 parent edb39e3 commit ea3164a

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/backend/optimizer/util/clauses.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -4068,9 +4068,9 @@ reorder_function_arguments(List *args, HeapTuple func_tuple)
40684068
int i;
40694069

40704070
Assert(nargsprovided <= pronargs);
4071-
if (pronargs > FUNC_MAX_ARGS)
4071+
if (pronargs < 0 || pronargs > FUNC_MAX_ARGS)
40724072
elog(ERROR, "too many function arguments");
4073-
MemSet(argarray, 0, pronargs * sizeof(Node *));
4073+
memset(argarray, 0, pronargs * sizeof(Node *));
40744074

40754075
/* Deconstruct the argument list into an array indexed by argnumber */
40764076
i = 0;

0 commit comments

Comments
 (0)