From: Peter Eisentraut Date: Wed, 3 Dec 2025 09:22:17 +0000 (+0100) Subject: Change Pointer to void * X-Git-Url: http://git.postgresql.org/gitweb/static/gitweb.js?a=commitdiff_plain;h=1b2bb5077e9e9deac60a3e92e742465e7bcd3a21;p=postgresql.git Change Pointer to void * The comment for the Pointer type said 'XXX Pointer arithmetic is done with this, so it can't be void * under "true" ANSI compilers.'. This has been fixed in the previous commit 756a4368932. This now changes the definition of the type from char * to void *, as envisaged by that comment. Extension code that relies on using Pointer for pointer arithmetic will need to make changes similar to commit 756a4368932, but those changes would be backward compatible. Reviewed-by: Chao Li Reviewed-by: Bertrand Drouvot Discussion: https://www.postgresql.org/message-id/4154950a-47ae-4223-bd01-1235cc50e933%40eisentraut.org --- diff --git a/src/include/c.h b/src/include/c.h index a40f0cf4642..ccd2b654d45 100644 --- a/src/include/c.h +++ b/src/include/c.h @@ -527,11 +527,9 @@ typedef void (*pg_funcptr_t) (void); /* * Pointer * Variable holding address of any memory resident object. - * - * XXX Pointer arithmetic is done with this, so it can't be void * - * under "true" ANSI compilers. + * (obsolescent; use void * or char *) */ -typedef char *Pointer; +typedef void *Pointer; /* Historical names for types in . */ typedef int8_t int8;