Fix type confusion in guc_var_compare()

Andres Freund <andres@anarazel.de>

Commit: ee89c4fa4b184bd2cc2a2b48fc13f474e6aa2a24
Author: Andres Freund <andres@anarazel.de>
Date: 2024-07-15T16:26:03Z
Releases: 14.13
Fix type confusion in guc_var_compare()

Before this change guc_var_compare() cast the input arguments to
const struct config_generic *.  That's not quite right however, as the input
on one side is often just a char * on one side.

Instead just use char *, the first field in config_generic.

This fixes a -Warray-bounds warning with some versions of gcc. While the
warning is only known to be triggered for <= 15, the issue the warning points
out seems real, so apply the fix everywhere.

Author: Nazir Bilal Yavuz <byavuz81@gmail.com>
Reported-by: Erik Rijkers <er@xs4all.nl>
Suggested-by: Andres Freund <andres@anarazel.de>
Discussion: https://postgr.es/m/a74a1a0d-0fd2-3649-5224-4f754e8f91aa%40xs4all.nl

Files

PathChange+/−
src/backend/utils/misc/guc.c modified +3 −3

Discussion