Re: Make copyObject work in C++

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: Make copyObject work in C++
Дата
Msg-id 2h2n2gyw2f4ucicbl3drtdkjt2wzf6b2r4wqm7xwks6vpx5j7n@imymv4hkz5jz
обсуждение исходный текст
Ответ на Re: Make copyObject work in C++  ("Jelte Fennema-Nio" <postgres@jeltef.nl>)
Ответы Re: Make copyObject work in C++
Список pgsql-hackers
Hi,

On 2026-01-25 18:52:37 +0100, Jelte Fennema-Nio wrote:
> On Sun Jan 25, 2026 at 5:50 PM CET, Andres Freund wrote:
> > We were going for designated
> > initializers for a reason, namely that we expect more arguments to be added
> > over time and perhaps eventually also to remove some. And this will just lead
> > to that being harder because we have to worry about C++ extensions.
> 
> Adding new arguments (aka fields) should cause no problems. Assuming
> we'd add them at the end of the Pg_magic_struct definition. Removing
> ones seems like even for C you'd need different PG_MODULE_MAGIC_EXT
> invocations depending on PG_VERSION_NUM. I don't see how using
> positional args would make that harder.

Named args make that easier in two ways: First, only extensions using the
to-be-removed option will fail. Second, removal of options reliably generates
errors, rather than bogusly use one field for another, just because the types
are compatible.

Greetings,

Andres Freund



В списке pgsql-hackers по дате отправления: