From 78c7d5e46bd64f31e3b983886bc09d27d1acd334 Mon Sep 17 00:00:00 2001 From: roman khapov Date: Tue, 18 Nov 2025 23:29:23 +0500 Subject: [PATCH v2] move ENUMFOO_NUM definitions inside enums Inspired by 10b7218. To make connectivity of ENUMFOO_NUM definition and the enum more obvious. This helps avoid mistakes in NUM macros when adding new values in enums. Signed-off-by: roman khapov --- contrib/pg_stat_statements/pg_stat_statements.c | 2 +- src/backend/postmaster/autovacuum.c | 2 +- src/bin/pg_dump/pg_backup.h | 2 +- src/include/miscadmin.h | 2 +- src/include/nodes/primnodes.h | 2 +- src/include/storage/pmsignal.h | 4 ++-- src/include/storage/procsignal.h | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/contrib/pg_stat_statements/pg_stat_statements.c b/contrib/pg_stat_statements/pg_stat_statements.c index 39208f80b5b..d4823602452 100644 --- a/contrib/pg_stat_statements/pg_stat_statements.c +++ b/contrib/pg_stat_statements/pg_stat_statements.c @@ -129,9 +129,9 @@ typedef enum pgssStoreKind */ PGSS_PLAN = 0, PGSS_EXEC, -} pgssStoreKind; #define PGSS_NUMKIND (PGSS_EXEC + 1) +} pgssStoreKind; /* * Hashtable key that defines the identity of a hashtable entry. We separate diff --git a/src/backend/postmaster/autovacuum.c b/src/backend/postmaster/autovacuum.c index 1c38488f2cb..2e5c5de3339 100644 --- a/src/backend/postmaster/autovacuum.c +++ b/src/backend/postmaster/autovacuum.c @@ -250,9 +250,9 @@ typedef enum { AutoVacForkFailed, /* failed trying to start a worker */ AutoVacRebalance, /* rebalance the cost limits */ -} AutoVacuumSignal; #define AutoVacNumSignals (AutoVacRebalance + 1) +} AutoVacuumSignal; /* * Autovacuum workitem array, stored in AutoVacuumShmem->av_workItems. This diff --git a/src/bin/pg_dump/pg_backup.h b/src/bin/pg_dump/pg_backup.h index d9041dad720..213078ba054 100644 --- a/src/bin/pg_dump/pg_backup.h +++ b/src/bin/pg_dump/pg_backup.h @@ -75,9 +75,9 @@ enum _dumpPreparedQueries PREPQUERY_GETATTRIBUTESTATS, PREPQUERY_GETCOLUMNACLS, PREPQUERY_GETDOMAINCONSTRAINTS, -}; #define NUM_PREP_QUERIES (PREPQUERY_GETDOMAINCONSTRAINTS + 1) +}; /* Parameters needed by ConnectDatabase; same for dump and restore */ typedef struct _connParams diff --git a/src/include/miscadmin.h b/src/include/miscadmin.h index 9a7d733ddef..bf9b3f02ab2 100644 --- a/src/include/miscadmin.h +++ b/src/include/miscadmin.h @@ -372,9 +372,9 @@ typedef enum BackendType * entry. */ B_LOGGER, -} BackendType; #define BACKEND_NUM_TYPES (B_LOGGER + 1) +} BackendType; extern PGDLLIMPORT BackendType MyBackendType; diff --git a/src/include/nodes/primnodes.h b/src/include/nodes/primnodes.h index 1b4436f2ff6..16f922db2b4 100644 --- a/src/include/nodes/primnodes.h +++ b/src/include/nodes/primnodes.h @@ -2021,9 +2021,9 @@ typedef enum MergeMatchKind MERGE_WHEN_MATCHED, MERGE_WHEN_NOT_MATCHED_BY_SOURCE, MERGE_WHEN_NOT_MATCHED_BY_TARGET -} MergeMatchKind; #define NUM_MERGE_MATCH_KINDS (MERGE_WHEN_NOT_MATCHED_BY_TARGET + 1) +} MergeMatchKind; typedef struct MergeAction { diff --git a/src/include/storage/pmsignal.h b/src/include/storage/pmsignal.h index 428aa3fd68a..9dc7e88476a 100644 --- a/src/include/storage/pmsignal.h +++ b/src/include/storage/pmsignal.h @@ -42,9 +42,9 @@ typedef enum PMSIGNAL_START_WALRECEIVER, /* start a walreceiver */ PMSIGNAL_ADVANCE_STATE_MACHINE, /* advance postmaster's state machine */ PMSIGNAL_XLOG_IS_SHUTDOWN, /* ShutdownXLOG() completed */ -} PMSignalReason; -#define NUM_PMSIGNALS (PMSIGNAL_XLOG_IS_SHUTDOWN+1) +#define NUM_PMSIGNALS (PMSIGNAL_XLOG_IS_SHUTDOWN + 1) +} PMSignalReason; /* * Reasons why the postmaster would send SIGQUIT to its children. diff --git a/src/include/storage/procsignal.h b/src/include/storage/procsignal.h index afeeb1ca019..878c4baa024 100644 --- a/src/include/storage/procsignal.h +++ b/src/include/storage/procsignal.h @@ -47,9 +47,9 @@ typedef enum PROCSIG_RECOVERY_CONFLICT_BUFFERPIN, PROCSIG_RECOVERY_CONFLICT_STARTUP_DEADLOCK, PROCSIG_RECOVERY_CONFLICT_LAST = PROCSIG_RECOVERY_CONFLICT_STARTUP_DEADLOCK, -} ProcSignalReason; #define NUM_PROCSIGNALS (PROCSIG_RECOVERY_CONFLICT_LAST + 1) +} ProcSignalReason; typedef enum { -- 2.50.1 (Apple Git-155)