On 22/09/2026 10:47, Peter Eisentraut wrote:
Variable-length catalog columns have been declared like

     text attoptions[1];

but that "1" has always been a fiction.  Before the use of #ifdef CATALOG_VARLEN, these declarations were visible to the C compiler, and this was also before flexible array members were universally available, so this was just a convenient workaround to make this compile.  But these reasons are long gone, and the "1" is now just a confusing relic. Change this to

     text attoptions[];

which more intuitively reflects the actual nature of these fields (while still being syntactically valid but semantically invalid C code).

Catalog.pm could already parse both spellings, but no existing code used bare [].  To enforce future consistency, it is changed to no longer permit digits between the brackets.

+1, looks good to me.

- Heikki



Reply via email to