From bd2d6e0ce5f33b24547aa114cb475f6b0a3ae7c5 Mon Sep 17 00:00:00 2001
From: Andres Freund <andres@anarazel.de>
Date: Fri, 20 Mar 2026 13:01:49 -0400
Subject: [PATCH v2 7/9] Don't include tupdesc.h in relcache.h

Author:
Reviewed-by:
Discussion: https://postgr.es/m/
Backpatch:
---
 src/include/catalog/catalog.h | 1 +
 src/include/utils/relcache.h  | 4 +++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/include/catalog/catalog.h b/src/include/catalog/catalog.h
index a9d6e8ea986..e7b76b5ffe3 100644
--- a/src/include/catalog/catalog.h
+++ b/src/include/catalog/catalog.h
@@ -14,6 +14,7 @@
 #ifndef CATALOG_H
 #define CATALOG_H
 
+#include "access/attnum.h"
 #include "catalog/pg_class.h"
 #include "utils/relcache.h"
 
diff --git a/src/include/utils/relcache.h b/src/include/utils/relcache.h
index 2700224939a..35944da6577 100644
--- a/src/include/utils/relcache.h
+++ b/src/include/utils/relcache.h
@@ -14,9 +14,9 @@
 #ifndef RELCACHE_H
 #define RELCACHE_H
 
-#include "access/tupdesc.h"
 #include "common/relpath.h"
 #include "nodes/bitmapset.h"
+#include "nodes/pg_list.h"
 
 
 /*
@@ -24,7 +24,9 @@
  */
 #define RELCACHE_INIT_FILENAME	"pg_internal.init"
 
+/* forward references in this file */
 typedef struct RelationData *Relation;
+typedef struct TupleDescData *TupleDesc;
 
 /* ----------------
  *		RelationPtr is used in the executor to support index scans
-- 
2.53.0.1.gb2826b52eb

