From 1c1870cd107fc5738ecbd511b06a8726e3a7d8a7 Mon Sep 17 00:00:00 2001 From: Chandler Carruth Date: Tue, 14 Jul 2026 18:08:15 -0700 Subject: [PATCH] Remove typed_nodes.h from tree.h and node_stack.h (#7510) Remove toolchain/parse/typed_nodes.h from transitive imports of tree.h and node_stack.h to reduce compile-time overhead in toolchain/check. Add an explicit include of typed_nodes.h to tree_and_subtrees.cpp where it is needed for instantiating templates. Assisted-by: Antigravity with Gemini --- toolchain/check/node_stack.h | 1 - toolchain/parse/tree.h | 1 - toolchain/parse/tree_and_subtrees.cpp | 1 + 3 files changed, 1 insertion(+), 2 deletions(-) diff --git a/toolchain/check/node_stack.h b/toolchain/check/node_stack.h index e97d148f26db..a1ac04c95979 100644 --- a/toolchain/check/node_stack.h +++ b/toolchain/check/node_stack.h @@ -10,7 +10,6 @@ #include "toolchain/parse/node_ids.h" #include "toolchain/parse/node_kind.h" #include "toolchain/parse/tree.h" -#include "toolchain/parse/typed_nodes.h" #include "toolchain/sem_ir/id_kind.h" #include "toolchain/sem_ir/ids.h" diff --git a/toolchain/parse/tree.h b/toolchain/parse/tree.h index b1c2ffdeedf4..aa92e2862989 100644 --- a/toolchain/parse/tree.h +++ b/toolchain/parse/tree.h @@ -17,7 +17,6 @@ #include "toolchain/lex/tokenized_buffer.h" #include "toolchain/parse/node_ids.h" #include "toolchain/parse/node_kind.h" -#include "toolchain/parse/typed_nodes.h" namespace Carbon::Parse { diff --git a/toolchain/parse/tree_and_subtrees.cpp b/toolchain/parse/tree_and_subtrees.cpp index 081dbf4aae37..cbb2e8b2ab34 100644 --- a/toolchain/parse/tree_and_subtrees.cpp +++ b/toolchain/parse/tree_and_subtrees.cpp @@ -9,6 +9,7 @@ #include "toolchain/base/fixed_size_value_store.h" #include "toolchain/lex/token_index.h" +#include "toolchain/parse/typed_nodes.h" namespace Carbon::Parse {