pgsql: Various cleanups of the new memory context header code

Поиск
Список
Период
Сортировка
От David Rowley
Тема pgsql: Various cleanups of the new memory context header code
Дата
Msg-id E1oT71A-000eO1-8a@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Various cleanups of the new memory context header code

Robert Haas reported that his older clang compiler didn't like the two
Asserts which were verifying that the given MemoryContextMethodID was <=
MEMORY_CONTEXT_METHODID_MASK when building with
-Wtautological-constant-out-of-range-compare.  In my (David's) opinion,
the compiler is wrong to warn about that.  Newer versions of clang don't
warn about the out of range enum value, so perhaps this was a bug that has
now been fixed.  To keep older clang versions happy, let's just cast the
enum value to int to stop the compiler complaining.

The main reason for the Asserts mentioned above to exist are to inform
future developers which are adding new MemoryContexts if they run out of
bit space in MemoryChunk to store the MemoryContextMethodID.  As pointed
out by Tom Lane, it seems wise to also add a comment to the header for
that enum to document the restriction on these enum values.

Additionally, also fix an incorrect usage of UINT64CONST() which was
introduced in c6e0fe1f2.

Author: Robert Haas, David Rowley
Discussion: https://postgr.es/m/CA+TgmoYGG2C7Vbw1cjkQRRBL3zOk8SmhrQnsJgzscX=N9AwPrw@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/05f90842369538cf94bbd09970a008b9357f4101

Modified Files
--------------
src/include/utils/memutils_internal.h    | 5 ++++-
src/include/utils/memutils_memorychunk.h | 4 ++--
2 files changed, 6 insertions(+), 3 deletions(-)


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

Предыдущее
От: David Rowley
Дата:
Сообщение: pgsql: Revert "Add missing padding from MemoryChunk struct"
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: On NetBSD, force dynamic symbol resolution at postmaster start.