Re: Proposal: Make use of C99 designated initialisers for nulls/values arrays

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Proposal: Make use of C99 designated initialisers for nulls/values arrays
Дата
Msg-id 11568.1570200667@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Proposal: Make use of C99 designated initialisers fornulls/values arrays  (Joe Nelson <joe@begriffs.com>)
Ответы Re: Proposal: Make use of C99 designated initialisers fornulls/values arrays  (Jacob Champion <pchampion@pivotal.io>)
Список pgsql-hackers
Joe Nelson <joe@begriffs.com> writes:
> One might argue that INIT_ALL_ELEMS_FALSE as a synonym for
> INIT_ALL_ELEMS_ZERO is good for readability in the same way that "false"
> is for 0. However I want to avoid creating the impression that there is,
> or can be, a collection of INIT_ALL_ELEMS_xxx macros invoking different
> initializer behavior.

I concur with Joe here.  The reason why some of the existing
memset's use "false" is for symmetry with other places where we use
"memset(p, true, n)" to set an array of bools to all-true.  That
coding is unfortunately a bit dubious --- it would sort-of fail if
bool weren't of width 1, in that the bools would still test as true
but they wouldn't contain the standard bit pattern for true.
I don't want to change those places, but we shouldn't make the
mechanism proposed by this patch look like it can do anything but
initialize to zeroes.

            regards, tom lane



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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Memory Accounting
Следующее
От: Andres Freund
Дата:
Сообщение: Re: refactoring - share str2*int64 functions