From 78c7d5e46bd64f31e3b983886bc09d27d1acd334 Mon Sep 17 00:00:00 2001
From: roman khapov <r.khapov@ya.ru>
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 <r.khapov@ya.ru>
---
 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)

