diff --git a/common/check_internal.h b/common/check_internal.h index 75304c927055..9f4ea0e042c7 100644 --- a/common/check_internal.h +++ b/common/check_internal.h @@ -5,8 +5,6 @@ #ifndef CARBON_COMMON_CHECK_INTERNAL_H_ #define CARBON_COMMON_CHECK_INTERNAL_H_ -#include - #include "common/ostream.h" namespace Carbon::Internal { diff --git a/common/command_line.cpp b/common/command_line.cpp index 65f063b8ebb1..b42accabe054 100644 --- a/common/command_line.cpp +++ b/common/command_line.cpp @@ -4,9 +4,10 @@ #include "common/command_line.h" -#include #include +#include "llvm/ADT/DenseMap.h" +#include "llvm/ADT/PointerIntPair.h" #include "llvm/Support/FormatVariadic.h" namespace Carbon::CommandLine { diff --git a/common/command_line.h b/common/command_line.h index 781911501cab..29667214ba73 100644 --- a/common/command_line.h +++ b/common/command_line.h @@ -5,24 +5,17 @@ #ifndef CARBON_COMMON_COMMAND_LINE_H_ #define CARBON_COMMON_COMMAND_LINE_H_ -#include #include -#include -#include #include #include "common/check.h" #include "common/ostream.h" #include "llvm/ADT/ArrayRef.h" -#include "llvm/ADT/DenseMap.h" #include "llvm/ADT/DenseSet.h" -#include "llvm/ADT/PointerIntPair.h" -#include "llvm/ADT/STLForwardCompat.h" #include "llvm/ADT/Sequence.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringExtras.h" #include "llvm/ADT/StringRef.h" -#include "llvm/Support/Allocator.h" // # Command-line argument parsing library. // diff --git a/common/hashing.h b/common/hashing.h index 88479a1bae13..704c0c345081 100644 --- a/common/hashing.h +++ b/common/hashing.h @@ -16,7 +16,6 @@ #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringRef.h" #include "llvm/Support/FormatVariadic.h" -#include "llvm/Support/MathExtras.h" #ifdef __ARM_ACLE #include diff --git a/common/string_helpers_test.cpp b/common/string_helpers_test.cpp index a3145de5cc46..4e5c5871f0a1 100644 --- a/common/string_helpers_test.cpp +++ b/common/string_helpers_test.cpp @@ -9,8 +9,6 @@ #include -#include "llvm/Support/Error.h" - using ::testing::Eq; using ::testing::Optional; diff --git a/toolchain/check/BUILD b/toolchain/check/BUILD index 229b450123cb..535a81819959 100644 --- a/toolchain/check/BUILD +++ b/toolchain/check/BUILD @@ -23,7 +23,7 @@ cc_library( "//common:vlog", "//toolchain/parse:node_kind", "//toolchain/parse:tree", - "//toolchain/sem_ir:inst", + "//toolchain/sem_ir:ids", "@llvm-project//llvm:Support", ], ) diff --git a/toolchain/check/check.cpp b/toolchain/check/check.cpp index 1415f2b7e2b5..17fcc5296c9c 100644 --- a/toolchain/check/check.cpp +++ b/toolchain/check/check.cpp @@ -15,7 +15,6 @@ #include "toolchain/parse/tree_node_location_translator.h" #include "toolchain/sem_ir/file.h" #include "toolchain/sem_ir/ids.h" -#include "toolchain/sem_ir/inst.h" #include "toolchain/sem_ir/typed_insts.h" namespace Carbon::Check { diff --git a/toolchain/check/convert.h b/toolchain/check/convert.h index def08daae988..d0b5fa8d5ba1 100644 --- a/toolchain/check/convert.h +++ b/toolchain/check/convert.h @@ -7,7 +7,6 @@ #include "toolchain/check/context.h" #include "toolchain/check/pending_block.h" -#include "toolchain/parse/tree.h" namespace Carbon::Check { diff --git a/toolchain/check/decl_name_stack.h b/toolchain/check/decl_name_stack.h index f3be62355692..4d2f2b418d81 100644 --- a/toolchain/check/decl_name_stack.h +++ b/toolchain/check/decl_name_stack.h @@ -7,7 +7,7 @@ #include "llvm/ADT/SmallVector.h" #include "toolchain/check/scope_index.h" -#include "toolchain/parse/tree.h" +#include "toolchain/parse/node_ids.h" #include "toolchain/sem_ir/ids.h" namespace Carbon::Check { diff --git a/toolchain/check/decl_state.h b/toolchain/check/decl_state.h index 0813c164a528..a32f33b95df3 100644 --- a/toolchain/check/decl_state.h +++ b/toolchain/check/decl_state.h @@ -6,7 +6,7 @@ #define CARBON_TOOLCHAIN_CHECK_DECL_STATE_H_ #include "llvm/ADT/BitmaskEnum.h" -#include "toolchain/parse/tree.h" +#include "toolchain/parse/node_ids.h" namespace Carbon::Check { diff --git a/toolchain/check/handle_array.cpp b/toolchain/check/handle_array.cpp index bd48358dbc47..cb21bdbb3c19 100644 --- a/toolchain/check/handle_array.cpp +++ b/toolchain/check/handle_array.cpp @@ -5,7 +5,6 @@ #include "toolchain/check/context.h" #include "toolchain/check/convert.h" #include "toolchain/parse/node_kind.h" -#include "toolchain/sem_ir/inst.h" namespace Carbon::Check { diff --git a/toolchain/check/handle_if_statement.cpp b/toolchain/check/handle_if_statement.cpp index 904a738325b0..98bfb18acaf4 100644 --- a/toolchain/check/handle_if_statement.cpp +++ b/toolchain/check/handle_if_statement.cpp @@ -4,7 +4,6 @@ #include "toolchain/check/context.h" #include "toolchain/check/convert.h" -#include "toolchain/sem_ir/inst.h" namespace Carbon::Check { diff --git a/toolchain/check/handle_variable.cpp b/toolchain/check/handle_variable.cpp index d03d356e4b34..d813d2155bd5 100644 --- a/toolchain/check/handle_variable.cpp +++ b/toolchain/check/handle_variable.cpp @@ -5,7 +5,6 @@ #include "toolchain/check/context.h" #include "toolchain/check/convert.h" #include "toolchain/check/modifiers.h" -#include "toolchain/sem_ir/inst.h" namespace Carbon::Check { diff --git a/toolchain/check/lexical_lookup.h b/toolchain/check/lexical_lookup.h index 09ab07e1862f..fad32eda1f0b 100644 --- a/toolchain/check/lexical_lookup.h +++ b/toolchain/check/lexical_lookup.h @@ -7,7 +7,6 @@ #define CARBON_TOOLCHAIN_CHECK_LEXICAL_LOOKUP_H_ #include "toolchain/check/scope_index.h" -#include "toolchain/sem_ir/file.h" #include "toolchain/sem_ir/ids.h" namespace Carbon::Check { diff --git a/toolchain/check/node_stack.cpp b/toolchain/check/node_stack.cpp index c6aa21727c0b..1568a8f58edc 100644 --- a/toolchain/check/node_stack.cpp +++ b/toolchain/check/node_stack.cpp @@ -5,7 +5,6 @@ #include "toolchain/check/node_stack.h" #include "llvm/ADT/STLExtras.h" -#include "toolchain/sem_ir/inst.h" namespace Carbon::Check { diff --git a/toolchain/check/node_stack.h b/toolchain/check/node_stack.h index 424c8e486339..f275187a1d4b 100644 --- a/toolchain/check/node_stack.h +++ b/toolchain/check/node_stack.h @@ -12,7 +12,7 @@ #include "toolchain/parse/node_kind.h" #include "toolchain/parse/tree.h" #include "toolchain/parse/typed_nodes.h" -#include "toolchain/sem_ir/inst.h" +#include "toolchain/sem_ir/ids.h" namespace Carbon::Check { diff --git a/toolchain/check/return.cpp b/toolchain/check/return.cpp index 2674e1b0c92c..24d8ff1919de 100644 --- a/toolchain/check/return.cpp +++ b/toolchain/check/return.cpp @@ -4,8 +4,6 @@ #include "toolchain/check/context.h" #include "toolchain/check/convert.h" -#include "toolchain/parse/tree.h" -#include "toolchain/sem_ir/inst.h" namespace Carbon::Check { diff --git a/toolchain/check/return.h b/toolchain/check/return.h index bb6be2ff52d1..6e78f4ce20c9 100644 --- a/toolchain/check/return.h +++ b/toolchain/check/return.h @@ -6,8 +6,7 @@ #define CARBON_TOOLCHAIN_CHECK_RETURN_H_ #include "toolchain/check/context.h" -#include "toolchain/parse/tree.h" -#include "toolchain/sem_ir/inst.h" +#include "toolchain/parse/node_ids.h" namespace Carbon::Check { diff --git a/toolchain/diagnostics/diagnostic_kind.cpp b/toolchain/diagnostics/diagnostic_kind.cpp index b48ab317fa75..7fe40b692e69 100644 --- a/toolchain/diagnostics/diagnostic_kind.cpp +++ b/toolchain/diagnostics/diagnostic_kind.cpp @@ -2,7 +2,7 @@ // Exceptions. See /LICENSE for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -#include "toolchain/diagnostics/diagnostic_kind.h" +#include "toolchain/diagnostics/diagnostic_kind.h" // IWYU pragma: keep namespace Carbon { diff --git a/toolchain/lower/file_context.h b/toolchain/lower/file_context.h index 35cd459db356..e05ab053641d 100644 --- a/toolchain/lower/file_context.h +++ b/toolchain/lower/file_context.h @@ -9,7 +9,6 @@ #include "llvm/IR/LLVMContext.h" #include "llvm/IR/Module.h" #include "toolchain/sem_ir/file.h" -#include "toolchain/sem_ir/inst.h" namespace Carbon::Lower { diff --git a/toolchain/parse/BUILD b/toolchain/parse/BUILD index b342c5b08d18..2b5322df7e31 100644 --- a/toolchain/parse/BUILD +++ b/toolchain/parse/BUILD @@ -110,8 +110,6 @@ cc_library( "//common:error", "//common:ostream", "//common:struct_reflection", - "//toolchain/base:pretty_stack_trace_function", - "//toolchain/diagnostics:diagnostic_emitter", "//toolchain/lex:tokenized_buffer", "@llvm-project//llvm:Support", ], diff --git a/toolchain/parse/parse.cpp b/toolchain/parse/parse.cpp index 2cd014769fb0..3b8335bd9bcb 100644 --- a/toolchain/parse/parse.cpp +++ b/toolchain/parse/parse.cpp @@ -6,7 +6,6 @@ #include "toolchain/base/pretty_stack_trace_function.h" #include "toolchain/parse/context.h" #include "toolchain/parse/node_kind.h" -#include "toolchain/parse/typed_nodes.h" namespace Carbon::Parse { diff --git a/toolchain/parse/state.cpp b/toolchain/parse/state.cpp index e24d40a866cc..cea263987a3a 100644 --- a/toolchain/parse/state.cpp +++ b/toolchain/parse/state.cpp @@ -2,7 +2,7 @@ // Exceptions. See /LICENSE for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -#include "toolchain/parse/state.h" +#include "toolchain/parse/state.h" // IWYU pragma: keep namespace Carbon::Parse { diff --git a/toolchain/parse/tree.cpp b/toolchain/parse/tree.cpp index 83b5b40a2148..92adb7a36823 100644 --- a/toolchain/parse/tree.cpp +++ b/toolchain/parse/tree.cpp @@ -8,7 +8,6 @@ #include "common/error.h" #include "llvm/ADT/Sequence.h" #include "llvm/ADT/SmallVector.h" -#include "toolchain/base/pretty_stack_trace_function.h" #include "toolchain/lex/tokenized_buffer.h" #include "toolchain/parse/node_kind.h" #include "toolchain/parse/typed_nodes.h" diff --git a/toolchain/parse/tree.h b/toolchain/parse/tree.h index 8cf75a86c9d4..f2f0301273d1 100644 --- a/toolchain/parse/tree.h +++ b/toolchain/parse/tree.h @@ -13,7 +13,6 @@ #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/iterator.h" #include "llvm/ADT/iterator_range.h" -#include "toolchain/diagnostics/diagnostic_emitter.h" #include "toolchain/lex/tokenized_buffer.h" #include "toolchain/parse/node_ids.h" #include "toolchain/parse/node_kind.h" diff --git a/toolchain/parse/typed_nodes_test.cpp b/toolchain/parse/typed_nodes_test.cpp index 7438b74a762c..d1e4bc095521 100644 --- a/toolchain/parse/typed_nodes_test.cpp +++ b/toolchain/parse/typed_nodes_test.cpp @@ -9,7 +9,6 @@ #include -#include "toolchain/diagnostics/mocks.h" #include "toolchain/lex/lex.h" #include "toolchain/lex/tokenized_buffer.h" #include "toolchain/parse/parse.h" diff --git a/toolchain/sem_ir/BUILD b/toolchain/sem_ir/BUILD index e06b57afcc02..74dea017b6a2 100644 --- a/toolchain/sem_ir/BUILD +++ b/toolchain/sem_ir/BUILD @@ -37,7 +37,6 @@ cc_library( deps = [ "//common:enum_base", "//toolchain/parse:node_kind", - "//toolchain/parse:tree", "//toolchain/sem_ir:builtin_kind", "//toolchain/sem_ir:ids", "@llvm-project//llvm:Support", @@ -55,7 +54,6 @@ cc_library( "//common:ostream", "//common:struct_reflection", "//toolchain/base:index_base", - "//toolchain/parse:tree", "@llvm-project//llvm:Support", ], ) @@ -79,6 +77,7 @@ cc_library( ":inst_kind", ":type_info", "//common:check", + "//common:error", "//toolchain/base:value_store", "//toolchain/base:yaml", "//toolchain/lex:token_kind", diff --git a/toolchain/sem_ir/file.h b/toolchain/sem_ir/file.h index 9966015eb570..efb7ab17c5ea 100644 --- a/toolchain/sem_ir/file.h +++ b/toolchain/sem_ir/file.h @@ -5,6 +5,7 @@ #ifndef CARBON_TOOLCHAIN_SEM_IR_FILE_H_ #define CARBON_TOOLCHAIN_SEM_IR_FILE_H_ +#include "common/error.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/iterator_range.h" #include "llvm/Support/Allocator.h" diff --git a/toolchain/sem_ir/formatter.h b/toolchain/sem_ir/formatter.h index 29d4d6f87ce8..c7d744afd0e9 100644 --- a/toolchain/sem_ir/formatter.h +++ b/toolchain/sem_ir/formatter.h @@ -6,6 +6,8 @@ #define CARBON_TOOLCHAIN_SEM_IR_FORMATTER_H_ #include "llvm/Support/raw_ostream.h" +#include "toolchain/lex/tokenized_buffer.h" +#include "toolchain/parse/tree.h" #include "toolchain/sem_ir/file.h" namespace Carbon::SemIR { diff --git a/toolchain/sem_ir/inst.h b/toolchain/sem_ir/inst.h index 9e6a678cdddf..0d9759866f05 100644 --- a/toolchain/sem_ir/inst.h +++ b/toolchain/sem_ir/inst.h @@ -12,7 +12,6 @@ #include "common/ostream.h" #include "common/struct_reflection.h" #include "toolchain/base/index_base.h" -#include "toolchain/parse/tree.h" #include "toolchain/sem_ir/builtin_kind.h" #include "toolchain/sem_ir/inst_kind.h" #include "toolchain/sem_ir/typed_insts.h" diff --git a/toolchain/sem_ir/inst_profile.cpp b/toolchain/sem_ir/inst_profile.cpp index 02979acf9757..2ac034ed7a4f 100644 --- a/toolchain/sem_ir/inst_profile.cpp +++ b/toolchain/sem_ir/inst_profile.cpp @@ -6,7 +6,6 @@ #include "toolchain/sem_ir/file.h" #include "toolchain/sem_ir/inst.h" -#include "toolchain/sem_ir/typed_insts.h" namespace Carbon::SemIR { diff --git a/toolchain/sem_ir/typed_insts.h b/toolchain/sem_ir/typed_insts.h index 2120a264aa43..958f0e5fdb1d 100644 --- a/toolchain/sem_ir/typed_insts.h +++ b/toolchain/sem_ir/typed_insts.h @@ -6,7 +6,6 @@ #define CARBON_TOOLCHAIN_SEM_IR_TYPED_INSTS_H_ #include "toolchain/parse/node_ids.h" -#include "toolchain/parse/tree.h" #include "toolchain/sem_ir/builtin_kind.h" #include "toolchain/sem_ir/ids.h" #include "toolchain/sem_ir/inst_kind.h"