1
0
mirror of https://github.com/postgres/postgres.git synced 2026-10-23 13:29:09 +03:00
Peter Eisentraut 16a104073d Declare variable-length catalog columns as [] rather than [1]
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.  But to help developers
transition, it still recognizes the old style and gives an explicit
error message.  (Otherwise it would produce some garbage output and
give confusing errors later.)

Reviewed-by: Heikki Linnakangas <hlinnaka@iki.fi>
Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
Reviewed-by: Chao Li <li.evan.chao@gmail.com>
Discussion: https://www.postgresql.org/message-id/flat/963b2109-833c-4e93-bdb1-546741d893f4%40eisentraut.org
2026-09-25 07:51:20 +02:00
2026-07-17 11:48:35 -04:00
2022-12-04 15:23:00 -05:00
2024-11-05 13:56:02 +01:00
2026-09-24 11:15:27 +02:00
2026-09-24 11:15:27 +02:00
2026-01-01 13:24:10 -05:00
2020-02-10 20:47:50 +01:00
2026-02-23 13:34:22 -05:00
2026-09-24 11:15:27 +02:00

PostgreSQL Database Management System

This directory contains the source code distribution of the PostgreSQL database management system.

PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions. This distribution also contains C language bindings.

Copyright and license information can be found in the file COPYRIGHT.

General documentation about this version of PostgreSQL can be found at https://www.postgresql.org/docs/devel/. In particular, information about building PostgreSQL from the source code can be found at https://www.postgresql.org/docs/devel/installation.html.

The latest version of this software, and related software, may be obtained at https://www.postgresql.org/download/. For more information look at our web site located at https://www.postgresql.org/.

Description
Зеркало официального репозитория PostgreSQL GIT
Readme 1.3 GiB
Languages
C 83.9%
PLpgSQL 6.2%
Perl 5.4%
Yacc 1.2%
Meson 0.7%
Other 2.4%