BUG #18995: Building with GCC 14 fails: incompatible pointer struct pam_message
PG Bug reporting form <noreply@postgresql.org>
From: PG Bug reporting form <noreply@postgresql.org>
To: pgsql-bugs@lists.postgresql.org
Cc: awatkins1966@gmail.com
Date: 2025-07-23T10:00:55Z
Lists: pgsql-bugs
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix build breakage on Solaris-alikes with late-model GCC.
- e6dfd068ed45 19 (unreleased) landed
- e4d585455509 16.10 landed
- b252ce31116f 15.14 landed
- 868b39a544ed 14.19 landed
- 635a856279ef 17.6 landed
- 3d039b53a133 18.0 landed
- 1ccb3851db5d 13.22 landed
The following bug has been logged on the website:
Bug reference: 18995
Logged by: Andrew Watkins
Email address: awatkins1966@gmail.com
PostgreSQL version: 17.5
Operating system: Solaris 11.4
Description:
Hello,
Not sure if a Oracle Solaris problem or not.
First, PostgreSQL 17.5 with GCC v13 builds cleaning and runs on Solaris
11.4, but building with GCC v14 I get the following:
gcc -m64 -Wall -Wmissing-prototypes -Wpointer-arith
-Wdeclaration-after-statement -Werror=vla -Wendif-labels
-Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type
-Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv
-fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation
-O2 -I../../../src/include -D_POSIX_PTHREAD_SEMANTICS
-I/usr/include/libxml2 -c -o auth.o auth.c
auth.c:101:9: error: initialization of 'int (*)(int, struct pam_message **,
struct pam_response **, void *)' from incompatible pointer type 'int
(*)(int, const struct pam_message **, struct pam_response **, void *)'
[-Wincompatible-pointer-types]
101 | &pam_passwd_conv_proc,
| ^
auth.c:101:9: note: (near initialization for 'pam_passw_conv.conv')
gmake[3]: *** [<builtin>: auth.o] Error 1
gmake[3]: Leaving directory
'/home/andrew/src/postgresql-17.5/src/backend/libpq'
gmake[2]: *** [common.mk:37: libpq-recursive] Error 2
gmake[2]: Leaving directory '/home/andrew/src/postgresql-17.5/src/backend'
gmake[1]: *** [Makefile:42: all-backend-recurse] Error 2
gmake[1]: Leaving directory '/home/andrew/src/postgresql-17.5/src'
gmake: *** [GNUmakefile:11: all-src-recurse] Error 2
Thanks,
Andrew