This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG81cde474e2c5: Cleanup LLVMDebugInfoCodeView headers 
(authored by serge-sans-paille).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D119092/new/

https://reviews.llvm.org/D119092

Files:
  lldb/source/Plugins/SymbolFile/NativePDB/PdbFPOProgramToDWARFExpression.cpp
  llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h
  llvm/include/llvm/DebugInfo/CodeView/CVSymbolVisitor.h
  llvm/include/llvm/DebugInfo/CodeView/CVTypeVisitor.h
  llvm/include/llvm/DebugInfo/CodeView/CodeViewRecordIO.h
  llvm/include/llvm/DebugInfo/CodeView/ContinuationRecordBuilder.h
  llvm/include/llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h
  llvm/include/llvm/DebugInfo/CodeView/DebugCrossExSubsection.h
  llvm/include/llvm/DebugInfo/CodeView/DebugCrossImpSubsection.h
  llvm/include/llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h
  llvm/include/llvm/DebugInfo/CodeView/DebugLinesSubsection.h
  llvm/include/llvm/DebugInfo/CodeView/DebugSubsection.h
  llvm/include/llvm/DebugInfo/CodeView/DebugSubsectionVisitor.h
  llvm/include/llvm/DebugInfo/CodeView/EnumTables.h
  llvm/include/llvm/DebugInfo/CodeView/Formatters.h
  llvm/include/llvm/DebugInfo/CodeView/GlobalTypeTableBuilder.h
  llvm/include/llvm/DebugInfo/CodeView/Line.h
  llvm/include/llvm/DebugInfo/CodeView/MergingTypeTableBuilder.h
  llvm/include/llvm/DebugInfo/CodeView/RecordName.h
  llvm/include/llvm/DebugInfo/CodeView/RecordSerialization.h
  llvm/include/llvm/DebugInfo/CodeView/StringsAndChecksums.h
  llvm/include/llvm/DebugInfo/CodeView/SymbolDumper.h
  llvm/include/llvm/DebugInfo/CodeView/SymbolSerializer.h
  llvm/include/llvm/DebugInfo/CodeView/TypeDumpVisitor.h
  llvm/include/llvm/DebugInfo/CodeView/TypeHashing.h
  llvm/include/llvm/DebugInfo/CodeView/TypeIndex.h
  llvm/include/llvm/DebugInfo/CodeView/TypeIndexDiscovery.h
  llvm/include/llvm/DebugInfo/CodeView/TypeRecordMapping.h
  llvm/include/llvm/DebugInfo/CodeView/TypeStreamMerger.h
  llvm/lib/DebugInfo/CodeView/AppendingTypeTableBuilder.cpp
  llvm/lib/DebugInfo/CodeView/CVSymbolVisitor.cpp
  llvm/lib/DebugInfo/CodeView/CVTypeVisitor.cpp
  llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp
  llvm/lib/DebugInfo/CodeView/DebugCrossExSubsection.cpp
  llvm/lib/DebugInfo/CodeView/DebugFrameDataSubsection.cpp
  llvm/lib/DebugInfo/CodeView/DebugSubsectionRecord.cpp
  llvm/lib/DebugInfo/CodeView/DebugSubsectionVisitor.cpp
  llvm/lib/DebugInfo/CodeView/DebugSymbolsSubsection.cpp
  llvm/lib/DebugInfo/CodeView/Formatters.cpp
  llvm/lib/DebugInfo/CodeView/GlobalTypeTableBuilder.cpp
  llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp
  llvm/lib/DebugInfo/CodeView/MergingTypeTableBuilder.cpp
  llvm/lib/DebugInfo/CodeView/RecordName.cpp
  llvm/lib/DebugInfo/CodeView/RecordSerialization.cpp
  llvm/lib/DebugInfo/CodeView/SimpleTypeSerializer.cpp
  llvm/lib/DebugInfo/CodeView/StringsAndChecksums.cpp
  llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp
  llvm/lib/DebugInfo/CodeView/SymbolRecordHelpers.cpp
  llvm/lib/DebugInfo/CodeView/SymbolSerializer.cpp
  llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp
  llvm/lib/DebugInfo/CodeView/TypeRecordMapping.cpp
  llvm/lib/DebugInfo/CodeView/TypeStreamMerger.cpp
  llvm/lib/DebugInfo/CodeView/TypeTableCollection.cpp
  llvm/lib/ObjectYAML/COFFEmitter.cpp
  llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp

Index: llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
===================================================================
--- llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
+++ llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
@@ -25,6 +25,7 @@
 #include "llvm/ObjectYAML/YAML.h"
 #include "llvm/Support/Allocator.h"
 #include "llvm/Support/Error.h"
+#include "llvm/Support/ScopedPrinter.h"
 #include "llvm/Support/YAMLTraits.h"
 #include <algorithm>
 #include <cstdint>
Index: llvm/lib/ObjectYAML/COFFEmitter.cpp
===================================================================
--- llvm/lib/ObjectYAML/COFFEmitter.cpp
+++ llvm/lib/ObjectYAML/COFFEmitter.cpp
@@ -19,6 +19,7 @@
 #include "llvm/Object/COFF.h"
 #include "llvm/ObjectYAML/ObjectYAML.h"
 #include "llvm/ObjectYAML/yaml2obj.h"
+#include "llvm/Support/BinaryStreamWriter.h"
 #include "llvm/Support/Endian.h"
 #include "llvm/Support/MemoryBuffer.h"
 #include "llvm/Support/SourceMgr.h"
Index: llvm/lib/DebugInfo/CodeView/TypeTableCollection.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/TypeTableCollection.cpp
+++ llvm/lib/DebugInfo/CodeView/TypeTableCollection.cpp
@@ -8,9 +8,10 @@
 
 #include "llvm/DebugInfo/CodeView/TypeTableCollection.h"
 
-#include "llvm/DebugInfo/CodeView/CVTypeVisitor.h"
+#include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/RecordName.h"
-#include "llvm/Support/BinaryStreamReader.h"
+#include "llvm/DebugInfo/CodeView/TypeIndex.h"
+#include "llvm/Support/ErrorHandling.h"
 
 using namespace llvm;
 using namespace llvm::codeview;
Index: llvm/lib/DebugInfo/CodeView/TypeStreamMerger.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/TypeStreamMerger.cpp
+++ llvm/lib/DebugInfo/CodeView/TypeStreamMerger.cpp
@@ -7,8 +7,8 @@
 //===----------------------------------------------------------------------===//
 
 #include "llvm/DebugInfo/CodeView/TypeStreamMerger.h"
-#include "llvm/ADT/SmallString.h"
-#include "llvm/ADT/StringExtras.h"
+#include "llvm/ADT/Optional.h"
+#include "llvm/ADT/SmallVector.h"
 #include "llvm/DebugInfo/CodeView/GlobalTypeTableBuilder.h"
 #include "llvm/DebugInfo/CodeView/MergingTypeTableBuilder.h"
 #include "llvm/DebugInfo/CodeView/TypeDeserializer.h"
Index: llvm/lib/DebugInfo/CodeView/TypeRecordMapping.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/TypeRecordMapping.cpp
+++ llvm/lib/DebugInfo/CodeView/TypeRecordMapping.cpp
@@ -7,10 +7,29 @@
 //===----------------------------------------------------------------------===//
 
 #include "llvm/DebugInfo/CodeView/TypeRecordMapping.h"
-#include "llvm/ADT/StringExtras.h"
-#include "llvm/ADT/Twine.h"
+
+#include "llvm/ADT/ArrayRef.h"
+#include "llvm/ADT/STLExtras.h"
+#include "llvm/ADT/SmallString.h"
+#include "llvm/ADT/SmallVector.h"
+#include "llvm/ADT/StringRef.h"
+#include "llvm/DebugInfo/CodeView/CVTypeVisitor.h"
+#include "llvm/DebugInfo/CodeView/CodeViewRecordIO.h"
 #include "llvm/DebugInfo/CodeView/EnumTables.h"
+#include "llvm/DebugInfo/CodeView/RecordSerialization.h"
+#include "llvm/DebugInfo/CodeView/TypeIndex.h"
+#include "llvm/DebugInfo/CodeView/TypeRecord.h"
+#include "llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h"
+#include "llvm/Support/ErrorHandling.h"
 #include "llvm/Support/MD5.h"
+#include "llvm/Support/ScopedPrinter.h"
+
+#include <algorithm>
+#include <cassert>
+#include <cstddef>
+#include <cstdint>
+#include <string>
+#include <vector>
 
 using namespace llvm;
 using namespace llvm::codeview;
Index: llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp
+++ llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp
@@ -8,14 +8,16 @@
 
 #include "llvm/DebugInfo/CodeView/TypeDumpVisitor.h"
 
-#include "llvm/ADT/SmallString.h"
+#include "llvm/ADT/ArrayRef.h"
 #include "llvm/DebugInfo/CodeView/CVTypeVisitor.h"
-#include "llvm/DebugInfo/CodeView/Formatters.h"
+#include "llvm/DebugInfo/CodeView/RecordSerialization.h"
 #include "llvm/DebugInfo/CodeView/TypeCollection.h"
 #include "llvm/DebugInfo/CodeView/TypeIndex.h"
 #include "llvm/DebugInfo/CodeView/TypeRecord.h"
+#include "llvm/Support/ErrorHandling.h"
 #include "llvm/Support/FormatVariadic.h"
 #include "llvm/Support/ScopedPrinter.h"
+#include "llvm/Support/raw_ostream.h"
 
 using namespace llvm;
 using namespace llvm::codeview;
Index: llvm/lib/DebugInfo/CodeView/SymbolSerializer.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/SymbolSerializer.cpp
+++ llvm/lib/DebugInfo/CodeView/SymbolSerializer.cpp
@@ -8,9 +8,9 @@
 
 #include "llvm/DebugInfo/CodeView/SymbolSerializer.h"
 #include "llvm/ADT/ArrayRef.h"
-#include "llvm/DebugInfo/CodeView/SymbolRecord.h"
 #include "llvm/Support/Endian.h"
 #include "llvm/Support/Error.h"
+#include "llvm/Support/ErrorHandling.h"
 #include <cassert>
 #include <cstdint>
 #include <cstring>
Index: llvm/lib/DebugInfo/CodeView/SymbolRecordHelpers.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/SymbolRecordHelpers.cpp
+++ llvm/lib/DebugInfo/CodeView/SymbolRecordHelpers.cpp
@@ -8,7 +8,7 @@
 
 #include "llvm/DebugInfo/CodeView/SymbolRecordHelpers.h"
 
-#include "llvm/ADT/SmallVector.h"
+#include "llvm/ADT/ArrayRef.h"
 #include "llvm/DebugInfo/CodeView/SymbolDeserializer.h"
 
 using namespace llvm;
Index: llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp
+++ llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp
@@ -7,7 +7,7 @@
 //===----------------------------------------------------------------------===//
 
 #include "llvm/DebugInfo/CodeView/SymbolDumper.h"
-#include "llvm/ADT/SmallString.h"
+#include "llvm/ADT/StringRef.h"
 #include "llvm/DebugInfo/CodeView/CVSymbolVisitor.h"
 #include "llvm/DebugInfo/CodeView/DebugStringTableSubsection.h"
 #include "llvm/DebugInfo/CodeView/EnumTables.h"
@@ -20,8 +20,6 @@
 #include "llvm/Support/Error.h"
 #include "llvm/Support/ScopedPrinter.h"
 
-#include <system_error>
-
 using namespace llvm;
 using namespace llvm::codeview;
 
Index: llvm/lib/DebugInfo/CodeView/StringsAndChecksums.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/StringsAndChecksums.cpp
+++ llvm/lib/DebugInfo/CodeView/StringsAndChecksums.cpp
@@ -7,7 +7,6 @@
 //===----------------------------------------------------------------------===//
 
 #include "llvm/DebugInfo/CodeView/StringsAndChecksums.h"
-#include "llvm/ADT/STLExtras.h"
 #include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h"
 #include "llvm/DebugInfo/CodeView/DebugStringTableSubsection.h"
Index: llvm/lib/DebugInfo/CodeView/SimpleTypeSerializer.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/SimpleTypeSerializer.cpp
+++ llvm/lib/DebugInfo/CodeView/SimpleTypeSerializer.cpp
@@ -7,7 +7,8 @@
 //===----------------------------------------------------------------------===//
 
 #include "llvm/DebugInfo/CodeView/SimpleTypeSerializer.h"
-#include "llvm/DebugInfo/CodeView/TypeRecord.h"
+#include "llvm/DebugInfo/CodeView/CVRecord.h"
+#include "llvm/DebugInfo/CodeView/RecordSerialization.h"
 #include "llvm/DebugInfo/CodeView/TypeRecordMapping.h"
 #include "llvm/Support/BinaryStreamWriter.h"
 
Index: llvm/lib/DebugInfo/CodeView/RecordSerialization.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/RecordSerialization.cpp
+++ llvm/lib/DebugInfo/CodeView/RecordSerialization.cpp
@@ -13,9 +13,9 @@
 #include "llvm/DebugInfo/CodeView/RecordSerialization.h"
 #include "llvm/ADT/APInt.h"
 #include "llvm/ADT/APSInt.h"
+#include "llvm/DebugInfo/CodeView/CVRecord.h"
 #include "llvm/DebugInfo/CodeView/CodeViewError.h"
 #include "llvm/DebugInfo/CodeView/SymbolRecord.h"
-#include "llvm/DebugInfo/CodeView/TypeRecord.h"
 #include "llvm/Support/BinaryByteStream.h"
 
 using namespace llvm;
Index: llvm/lib/DebugInfo/CodeView/RecordName.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/RecordName.cpp
+++ llvm/lib/DebugInfo/CodeView/RecordName.cpp
@@ -10,9 +10,13 @@
 
 #include "llvm/ADT/SmallString.h"
 #include "llvm/ADT/StringExtras.h"
-#include "llvm/DebugInfo/CodeView/CVSymbolVisitor.h"
 #include "llvm/DebugInfo/CodeView/CVTypeVisitor.h"
+#include "llvm/DebugInfo/CodeView/CodeView.h"
+#include "llvm/DebugInfo/CodeView/SymbolRecord.h"
 #include "llvm/DebugInfo/CodeView/SymbolRecordMapping.h"
+#include "llvm/DebugInfo/CodeView/TypeCollection.h"
+#include "llvm/DebugInfo/CodeView/TypeIndex.h"
+#include "llvm/DebugInfo/CodeView/TypeRecord.h"
 #include "llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h"
 #include "llvm/Support/FormatVariadic.h"
 
Index: llvm/lib/DebugInfo/CodeView/MergingTypeTableBuilder.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/MergingTypeTableBuilder.cpp
+++ llvm/lib/DebugInfo/CodeView/MergingTypeTableBuilder.cpp
@@ -8,18 +8,13 @@
 
 #include "llvm/DebugInfo/CodeView/MergingTypeTableBuilder.h"
 #include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/DenseSet.h"
-#include "llvm/ADT/STLExtras.h"
+#include "llvm/ADT/None.h"
 #include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/ContinuationRecordBuilder.h"
-#include "llvm/DebugInfo/CodeView/RecordSerialization.h"
+#include "llvm/DebugInfo/CodeView/TypeHashing.h"
 #include "llvm/DebugInfo/CodeView/TypeIndex.h"
 #include "llvm/Support/Allocator.h"
-#include "llvm/Support/BinaryByteStream.h"
-#include "llvm/Support/BinaryStreamWriter.h"
-#include "llvm/Support/Endian.h"
-#include "llvm/Support/Error.h"
-#include <algorithm>
+#include "llvm/Support/ErrorHandling.h"
 #include <cassert>
 #include <cstdint>
 #include <cstring>
Index: llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp
+++ llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp
@@ -9,11 +9,12 @@
 #include "llvm/DebugInfo/CodeView/LazyRandomTypeCollection.h"
 #include "llvm/ADT/ArrayRef.h"
 #include "llvm/ADT/None.h"
-#include "llvm/ADT/StringExtras.h"
+#include "llvm/ADT/STLExtras.h"
 #include "llvm/ADT/StringRef.h"
+#include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/CodeViewError.h"
 #include "llvm/DebugInfo/CodeView/RecordName.h"
-#include "llvm/DebugInfo/CodeView/TypeRecord.h"
+#include "llvm/DebugInfo/CodeView/RecordSerialization.h"
 #include "llvm/Support/BinaryStreamReader.h"
 #include "llvm/Support/Endian.h"
 #include "llvm/Support/Error.h"
Index: llvm/lib/DebugInfo/CodeView/GlobalTypeTableBuilder.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/GlobalTypeTableBuilder.cpp
+++ llvm/lib/DebugInfo/CodeView/GlobalTypeTableBuilder.cpp
@@ -8,18 +8,12 @@
 
 #include "llvm/DebugInfo/CodeView/GlobalTypeTableBuilder.h"
 #include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/DenseSet.h"
-#include "llvm/ADT/STLExtras.h"
+#include "llvm/ADT/None.h"
 #include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/ContinuationRecordBuilder.h"
-#include "llvm/DebugInfo/CodeView/RecordSerialization.h"
 #include "llvm/DebugInfo/CodeView/TypeIndex.h"
 #include "llvm/Support/Allocator.h"
-#include "llvm/Support/BinaryByteStream.h"
-#include "llvm/Support/BinaryStreamWriter.h"
-#include "llvm/Support/Endian.h"
-#include "llvm/Support/Error.h"
-#include <algorithm>
+#include "llvm/Support/ErrorHandling.h"
 #include <cassert>
 #include <cstdint>
 #include <cstring>
Index: llvm/lib/DebugInfo/CodeView/Formatters.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/Formatters.cpp
+++ llvm/lib/DebugInfo/CodeView/Formatters.cpp
@@ -9,8 +9,10 @@
 #include "llvm/DebugInfo/CodeView/Formatters.h"
 #include "llvm/ADT/ArrayRef.h"
 #include "llvm/DebugInfo/CodeView/GUID.h"
+#include "llvm/Support/Endian.h"
+#include "llvm/Support/ErrorHandling.h"
+#include "llvm/Support/Format.h"
 #include "llvm/Support/raw_ostream.h"
-#include <algorithm>
 #include <cassert>
 
 using namespace llvm;
Index: llvm/lib/DebugInfo/CodeView/DebugSymbolsSubsection.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/DebugSymbolsSubsection.cpp
+++ llvm/lib/DebugInfo/CodeView/DebugSymbolsSubsection.cpp
@@ -7,6 +7,7 @@
 //===----------------------------------------------------------------------===//
 
 #include "llvm/DebugInfo/CodeView/DebugSymbolsSubsection.h"
+#include "llvm/Support/BinaryStreamWriter.h"
 
 using namespace llvm;
 using namespace llvm::codeview;
Index: llvm/lib/DebugInfo/CodeView/DebugSubsectionVisitor.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/DebugSubsectionVisitor.cpp
+++ llvm/lib/DebugInfo/CodeView/DebugSubsectionVisitor.cpp
@@ -8,6 +8,7 @@
 
 #include "llvm/DebugInfo/CodeView/DebugSubsectionVisitor.h"
 
+#include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h"
 #include "llvm/DebugInfo/CodeView/DebugCrossExSubsection.h"
 #include "llvm/DebugInfo/CodeView/DebugCrossImpSubsection.h"
@@ -20,7 +21,7 @@
 #include "llvm/DebugInfo/CodeView/DebugSymbolsSubsection.h"
 #include "llvm/DebugInfo/CodeView/DebugUnknownSubsection.h"
 #include "llvm/Support/BinaryStreamReader.h"
-#include "llvm/Support/BinaryStreamRef.h"
+#include "llvm/Support/SwapByteOrder.h"
 
 using namespace llvm;
 using namespace llvm::codeview;
Index: llvm/lib/DebugInfo/CodeView/DebugSubsectionRecord.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/DebugSubsectionRecord.cpp
+++ llvm/lib/DebugInfo/CodeView/DebugSubsectionRecord.cpp
@@ -13,7 +13,6 @@
 #include "llvm/Support/BinaryStreamWriter.h"
 #include "llvm/Support/Error.h"
 #include "llvm/Support/MathExtras.h"
-#include <algorithm>
 #include <cassert>
 #include <cstdint>
 
Index: llvm/lib/DebugInfo/CodeView/DebugFrameDataSubsection.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/DebugFrameDataSubsection.cpp
+++ llvm/lib/DebugInfo/CodeView/DebugFrameDataSubsection.cpp
@@ -8,6 +8,8 @@
 
 #include "llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h"
 #include "llvm/DebugInfo/CodeView/CodeViewError.h"
+#include "llvm/Support/BinaryStreamReader.h"
+#include "llvm/Support/BinaryStreamWriter.h"
 
 using namespace llvm;
 using namespace llvm::codeview;
Index: llvm/lib/DebugInfo/CodeView/DebugCrossExSubsection.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/DebugCrossExSubsection.cpp
+++ llvm/lib/DebugInfo/CodeView/DebugCrossExSubsection.cpp
@@ -8,6 +8,7 @@
 
 #include "llvm/DebugInfo/CodeView/DebugCrossExSubsection.h"
 #include "llvm/DebugInfo/CodeView/CodeViewError.h"
+#include "llvm/Support/BinaryStreamReader.h"
 #include "llvm/Support/BinaryStreamWriter.h"
 #include "llvm/Support/Error.h"
 #include <cstdint>
Index: llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp
+++ llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp
@@ -8,7 +8,9 @@
 
 #include "llvm/DebugInfo/CodeView/CodeViewRecordIO.h"
 #include "llvm/DebugInfo/CodeView/CodeView.h"
+#include "llvm/DebugInfo/CodeView/GUID.h"
 #include "llvm/DebugInfo/CodeView/RecordSerialization.h"
+#include "llvm/DebugInfo/CodeView/TypeIndex.h"
 #include "llvm/Support/BinaryStreamReader.h"
 #include "llvm/Support/BinaryStreamWriter.h"
 
Index: llvm/lib/DebugInfo/CodeView/CVTypeVisitor.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/CVTypeVisitor.cpp
+++ llvm/lib/DebugInfo/CodeView/CVTypeVisitor.cpp
@@ -8,11 +8,12 @@
 
 #include "llvm/DebugInfo/CodeView/CVTypeVisitor.h"
 
-#include "llvm/DebugInfo/CodeView/CodeViewError.h"
 #include "llvm/DebugInfo/CodeView/TypeCollection.h"
 #include "llvm/DebugInfo/CodeView/TypeDeserializer.h"
-#include "llvm/DebugInfo/CodeView/TypeRecordMapping.h"
+#include "llvm/DebugInfo/CodeView/TypeIndex.h"
+#include "llvm/DebugInfo/CodeView/TypeRecord.h"
 #include "llvm/DebugInfo/CodeView/TypeVisitorCallbackPipeline.h"
+#include "llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h"
 #include "llvm/Support/BinaryByteStream.h"
 #include "llvm/Support/BinaryStreamReader.h"
 
Index: llvm/lib/DebugInfo/CodeView/CVSymbolVisitor.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/CVSymbolVisitor.cpp
+++ llvm/lib/DebugInfo/CodeView/CVSymbolVisitor.cpp
@@ -8,8 +8,11 @@
 
 #include "llvm/DebugInfo/CodeView/CVSymbolVisitor.h"
 
-#include "llvm/DebugInfo/CodeView/CodeViewError.h"
+#include "llvm/DebugInfo/CodeView/CodeView.h"
+#include "llvm/DebugInfo/CodeView/SymbolRecord.h"
 #include "llvm/DebugInfo/CodeView/SymbolVisitorCallbacks.h"
+#include "llvm/Support/BinaryStreamArray.h"
+#include "llvm/Support/ErrorHandling.h"
 
 using namespace llvm;
 using namespace llvm::codeview;
Index: llvm/lib/DebugInfo/CodeView/AppendingTypeTableBuilder.cpp
===================================================================
--- llvm/lib/DebugInfo/CodeView/AppendingTypeTableBuilder.cpp
+++ llvm/lib/DebugInfo/CodeView/AppendingTypeTableBuilder.cpp
@@ -8,18 +8,11 @@
 
 #include "llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h"
 #include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/DenseSet.h"
-#include "llvm/ADT/STLExtras.h"
 #include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/ContinuationRecordBuilder.h"
-#include "llvm/DebugInfo/CodeView/RecordSerialization.h"
 #include "llvm/DebugInfo/CodeView/TypeIndex.h"
 #include "llvm/Support/Allocator.h"
-#include "llvm/Support/BinaryByteStream.h"
-#include "llvm/Support/BinaryStreamWriter.h"
-#include "llvm/Support/Endian.h"
-#include "llvm/Support/Error.h"
-#include <algorithm>
+#include "llvm/Support/ErrorHandling.h"
 #include <cassert>
 #include <cstdint>
 #include <cstring>
Index: llvm/include/llvm/DebugInfo/CodeView/TypeStreamMerger.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/TypeStreamMerger.h
+++ llvm/include/llvm/DebugInfo/CodeView/TypeStreamMerger.h
@@ -10,11 +10,12 @@
 #define LLVM_DEBUGINFO_CODEVIEW_TYPESTREAMMERGER_H
 
 #include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/SmallVector.h"
 #include "llvm/DebugInfo/CodeView/CVRecord.h"
 #include "llvm/Support/Error.h"
 
 namespace llvm {
+template <typename T> class Optional;
+template <typename T> class SmallVectorImpl;
 namespace codeview {
 
 class TypeIndex;
Index: llvm/include/llvm/DebugInfo/CodeView/TypeRecordMapping.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/TypeRecordMapping.h
+++ llvm/include/llvm/DebugInfo/CodeView/TypeRecordMapping.h
@@ -10,7 +10,8 @@
 #define LLVM_DEBUGINFO_CODEVIEW_TYPERECORDMAPPING_H
 
 #include "llvm/ADT/Optional.h"
-#include "llvm/DebugInfo/CodeView/CVTypeVisitor.h"
+#include "llvm/DebugInfo/CodeView/CVRecord.h"
+#include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/CodeViewRecordIO.h"
 #include "llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h"
 #include "llvm/Support/Error.h"
@@ -20,6 +21,8 @@
 class BinaryStreamWriter;
 
 namespace codeview {
+class TypeIndex;
+struct CVMemberRecord;
 class TypeRecordMapping : public TypeVisitorCallbacks {
 public:
   explicit TypeRecordMapping(BinaryStreamReader &Reader) : IO(Reader) {}
Index: llvm/include/llvm/DebugInfo/CodeView/TypeIndexDiscovery.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/TypeIndexDiscovery.h
+++ llvm/include/llvm/DebugInfo/CodeView/TypeIndexDiscovery.h
@@ -9,7 +9,7 @@
 #ifndef LLVM_DEBUGINFO_CODEVIEW_TYPEINDEXDISCOVERY_H
 #define LLVM_DEBUGINFO_CODEVIEW_TYPEINDEXDISCOVERY_H
 
-#include "llvm/ADT/SmallVector.h"
+#include "llvm/ADT/ArrayRef.h"
 #include "llvm/DebugInfo/CodeView/CVRecord.h"
 #include "llvm/DebugInfo/CodeView/TypeIndex.h"
 #include "llvm/Support/Error.h"
Index: llvm/include/llvm/DebugInfo/CodeView/TypeIndex.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/TypeIndex.h
+++ llvm/include/llvm/DebugInfo/CodeView/TypeIndex.h
@@ -13,7 +13,6 @@
 #include "llvm/Support/Endian.h"
 #include <cassert>
 #include <cinttypes>
-#include <functional>
 
 namespace llvm {
 
Index: llvm/include/llvm/DebugInfo/CodeView/TypeHashing.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/TypeHashing.h
+++ llvm/include/llvm/DebugInfo/CodeView/TypeHashing.h
@@ -9,10 +9,12 @@
 #ifndef LLVM_DEBUGINFO_CODEVIEW_TYPEHASHING_H
 #define LLVM_DEBUGINFO_CODEVIEW_TYPEHASHING_H
 
-#include "llvm/ADT/DenseMapInfo.h"
+#include "llvm/ADT/APInt.h"
+#include "llvm/ADT/ArrayRef.h"
 #include "llvm/ADT/Hashing.h"
+#include "llvm/ADT/StringRef.h"
 
-#include "llvm/DebugInfo/CodeView/CodeView.h"
+#include "llvm/DebugInfo/CodeView/CVRecord.h"
 #include "llvm/DebugInfo/CodeView/TypeCollection.h"
 #include "llvm/DebugInfo/CodeView/TypeIndex.h"
 
@@ -21,6 +23,7 @@
 #include <type_traits>
 
 namespace llvm {
+class raw_ostream;
 namespace codeview {
 
 /// A locally hashed type represents a straightforward hash code of a serialized
Index: llvm/include/llvm/DebugInfo/CodeView/TypeDumpVisitor.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/TypeDumpVisitor.h
+++ llvm/include/llvm/DebugInfo/CodeView/TypeDumpVisitor.h
@@ -9,16 +9,18 @@
 #ifndef LLVM_DEBUGINFO_CODEVIEW_TYPEDUMPVISITOR_H
 #define LLVM_DEBUGINFO_CODEVIEW_TYPEDUMPVISITOR_H
 
-#include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/StringSet.h"
-#include "llvm/DebugInfo/CodeView/TypeIndex.h"
-#include "llvm/DebugInfo/CodeView/TypeRecord.h"
+#include "llvm/ADT/StringRef.h"
+#include "llvm/DebugInfo/CodeView/CVRecord.h"
+#include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h"
 
 namespace llvm {
 class ScopedPrinter;
 
 namespace codeview {
+class TypeIndex;
+struct CVMemberRecord;
+struct MemberAttributes;
 
 class TypeCollection;
 
Index: llvm/include/llvm/DebugInfo/CodeView/SymbolSerializer.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/SymbolSerializer.h
+++ llvm/include/llvm/DebugInfo/CodeView/SymbolSerializer.h
@@ -10,15 +10,17 @@
 #define LLVM_DEBUGINFO_CODEVIEW_SYMBOLSERIALIZER_H
 
 #include "llvm/ADT/Optional.h"
+#include "llvm/DebugInfo/CodeView/CVRecord.h"
 #include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/RecordSerialization.h"
-#include "llvm/DebugInfo/CodeView/SymbolRecord.h"
 #include "llvm/DebugInfo/CodeView/SymbolRecordMapping.h"
 #include "llvm/DebugInfo/CodeView/SymbolVisitorCallbacks.h"
 #include "llvm/Support/Allocator.h"
 #include "llvm/Support/BinaryByteStream.h"
 #include "llvm/Support/BinaryStreamWriter.h"
+#include "llvm/Support/Endian.h"
 #include "llvm/Support/Error.h"
+#include <array>
 #include <cstdint>
 
 namespace llvm {
Index: llvm/include/llvm/DebugInfo/CodeView/SymbolDumper.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/SymbolDumper.h
+++ llvm/include/llvm/DebugInfo/CodeView/SymbolDumper.h
@@ -9,11 +9,13 @@
 #ifndef LLVM_DEBUGINFO_CODEVIEW_SYMBOLDUMPER_H
 #define LLVM_DEBUGINFO_CODEVIEW_SYMBOLDUMPER_H
 
-#include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/StringSet.h"
 #include "llvm/DebugInfo/CodeView/CVRecord.h"
+#include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/SymbolDumpDelegate.h"
-#include "llvm/DebugInfo/CodeView/TypeIndex.h"
+#include "llvm/Support/Error.h"
+
+#include <memory>
+#include <utility>
 
 namespace llvm {
 class ScopedPrinter;
Index: llvm/include/llvm/DebugInfo/CodeView/StringsAndChecksums.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/StringsAndChecksums.h
+++ llvm/include/llvm/DebugInfo/CodeView/StringsAndChecksums.h
@@ -10,13 +10,15 @@
 #define LLVM_DEBUGINFO_CODEVIEW_STRINGSANDCHECKSUMS_H
 
 #include "llvm/DebugInfo/CodeView/CodeView.h"
-#include "llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h"
-#include "llvm/DebugInfo/CodeView/DebugStringTableSubsection.h"
 #include "llvm/DebugInfo/CodeView/DebugSubsectionRecord.h"
 #include <memory>
 
 namespace llvm {
 namespace codeview {
+class DebugChecksumsSubsection;
+class DebugChecksumsSubsectionRef;
+class DebugStringTableSubsection;
+class DebugStringTableSubsectionRef;
 
 class StringsAndChecksumsRef {
 public:
Index: llvm/include/llvm/DebugInfo/CodeView/RecordSerialization.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/RecordSerialization.h
+++ llvm/include/llvm/DebugInfo/CodeView/RecordSerialization.h
@@ -9,7 +9,6 @@
 #ifndef LLVM_DEBUGINFO_CODEVIEW_RECORDSERIALIZATION_H
 #define LLVM_DEBUGINFO_CODEVIEW_RECORDSERIALIZATION_H
 
-#include "llvm/ADT/APSInt.h"
 #include "llvm/ADT/ArrayRef.h"
 #include "llvm/ADT/StringRef.h"
 #include "llvm/DebugInfo/CodeView/CodeView.h"
@@ -18,9 +17,9 @@
 #include "llvm/Support/Endian.h"
 #include "llvm/Support/Error.h"
 #include <cinttypes>
-#include <tuple>
 
 namespace llvm {
+class APSInt;
 namespace codeview {
 using llvm::support::little32_t;
 using llvm::support::ulittle16_t;
Index: llvm/include/llvm/DebugInfo/CodeView/RecordName.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/RecordName.h
+++ llvm/include/llvm/DebugInfo/CodeView/RecordName.h
@@ -9,11 +9,14 @@
 #ifndef LLVM_DEBUGINFO_CODEVIEW_RECORDNAME_H
 #define LLVM_DEBUGINFO_CODEVIEW_RECORDNAME_H
 
-#include "llvm/DebugInfo/CodeView/TypeCollection.h"
-#include "llvm/DebugInfo/CodeView/TypeIndex.h"
+#include "llvm/ADT/StringRef.h"
+#include "llvm/DebugInfo/CodeView/CVRecord.h"
+#include <string>
 
 namespace llvm {
 namespace codeview {
+class TypeCollection;
+class TypeIndex;
 std::string computeTypeName(TypeCollection &Types, TypeIndex Index);
 StringRef getSymbolName(CVSymbol Sym);
 } // namespace codeview
Index: llvm/include/llvm/DebugInfo/CodeView/MergingTypeTableBuilder.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/MergingTypeTableBuilder.h
+++ llvm/include/llvm/DebugInfo/CodeView/MergingTypeTableBuilder.h
@@ -10,18 +10,18 @@
 #define LLVM_DEBUGINFO_CODEVIEW_MERGINGTYPETABLEBUILDER_H
 
 #include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/DenseSet.h"
+#include "llvm/ADT/DenseMap.h"
 #include "llvm/ADT/SmallVector.h"
-#include "llvm/DebugInfo/CodeView/CodeView.h"
+#include "llvm/DebugInfo/CodeView/CVRecord.h"
 #include "llvm/DebugInfo/CodeView/SimpleTypeSerializer.h"
 #include "llvm/DebugInfo/CodeView/TypeCollection.h"
-#include "llvm/DebugInfo/CodeView/TypeHashing.h"
 #include "llvm/DebugInfo/CodeView/TypeIndex.h"
 #include "llvm/Support/Allocator.h"
 #include <cstdint>
 
 namespace llvm {
 namespace codeview {
+struct LocallyHashedType;
 
 class ContinuationRecordBuilder;
 
Index: llvm/include/llvm/DebugInfo/CodeView/Line.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/Line.h
+++ llvm/include/llvm/DebugInfo/CodeView/Line.h
@@ -9,7 +9,10 @@
 #ifndef LLVM_DEBUGINFO_CODEVIEW_LINE_H
 #define LLVM_DEBUGINFO_CODEVIEW_LINE_H
 
-#include "llvm/DebugInfo/CodeView/TypeIndex.h"
+#include "llvm/DebugInfo/CodeView/CodeView.h"
+#include "llvm/DebugInfo/CodeView/CodeViewError.h"
+#include "llvm/DebugInfo/CodeView/RecordName.h"
+#include "llvm/DebugInfo/CodeView/RecordSerialization.h"
 #include "llvm/Support/Endian.h"
 #include <cinttypes>
 
Index: llvm/include/llvm/DebugInfo/CodeView/GlobalTypeTableBuilder.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/GlobalTypeTableBuilder.h
+++ llvm/include/llvm/DebugInfo/CodeView/GlobalTypeTableBuilder.h
@@ -10,9 +10,9 @@
 #define LLVM_DEBUGINFO_CODEVIEW_GLOBALTYPETABLEBUILDER_H
 
 #include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/DenseSet.h"
+#include "llvm/ADT/DenseMap.h"
 #include "llvm/ADT/SmallVector.h"
-#include "llvm/DebugInfo/CodeView/CodeView.h"
+#include "llvm/DebugInfo/CodeView/CVRecord.h"
 #include "llvm/DebugInfo/CodeView/SimpleTypeSerializer.h"
 #include "llvm/DebugInfo/CodeView/TypeCollection.h"
 #include "llvm/DebugInfo/CodeView/TypeHashing.h"
Index: llvm/include/llvm/DebugInfo/CodeView/Formatters.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/Formatters.h
+++ llvm/include/llvm/DebugInfo/CodeView/Formatters.h
@@ -22,6 +22,8 @@
 
 namespace codeview {
 
+struct GUID;
+
 namespace detail {
 
 class GuidAdapter final : public FormatAdapter<ArrayRef<uint8_t>> {
Index: llvm/include/llvm/DebugInfo/CodeView/EnumTables.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/EnumTables.h
+++ llvm/include/llvm/DebugInfo/CodeView/EnumTables.h
@@ -12,10 +12,10 @@
 #include "llvm/ADT/ArrayRef.h"
 #include "llvm/BinaryFormat/COFF.h"
 #include "llvm/DebugInfo/CodeView/CodeView.h"
-#include "llvm/Support/ScopedPrinter.h"
 #include <cstdint>
 
 namespace llvm {
+template <typename T> struct EnumEntry;
 namespace codeview {
 
 ArrayRef<EnumEntry<SymbolKind>> getSymbolTypeNames();
Index: llvm/include/llvm/DebugInfo/CodeView/DebugSubsectionVisitor.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/DebugSubsectionVisitor.h
+++ llvm/include/llvm/DebugInfo/CodeView/DebugSubsectionVisitor.h
@@ -9,7 +9,6 @@
 #ifndef LLVM_DEBUGINFO_CODEVIEW_DEBUGSUBSECTIONVISITOR_H
 #define LLVM_DEBUGINFO_CODEVIEW_DEBUGSUBSECTIONVISITOR_H
 
-#include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/StringsAndChecksums.h"
 #include "llvm/Support/Error.h"
 
Index: llvm/include/llvm/DebugInfo/CodeView/DebugSubsection.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/DebugSubsection.h
+++ llvm/include/llvm/DebugInfo/CodeView/DebugSubsection.h
@@ -10,10 +10,12 @@
 #define LLVM_DEBUGINFO_CODEVIEW_DEBUGSUBSECTION_H
 
 #include "llvm/DebugInfo/CodeView/CodeView.h"
-#include "llvm/Support/BinaryStreamWriter.h"
-#include "llvm/Support/Casting.h"
+#include "llvm/Support/Error.h"
+
+#include <cstdint>
 
 namespace llvm {
+class BinaryStreamWriter;
 namespace codeview {
 
 class DebugSubsectionRef {
Index: llvm/include/llvm/DebugInfo/CodeView/DebugLinesSubsection.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/DebugLinesSubsection.h
+++ llvm/include/llvm/DebugInfo/CodeView/DebugLinesSubsection.h
@@ -14,7 +14,6 @@
 #include "llvm/DebugInfo/CodeView/DebugSubsection.h"
 #include "llvm/DebugInfo/CodeView/Line.h"
 #include "llvm/Support/BinaryStreamArray.h"
-#include "llvm/Support/BinaryStreamReader.h"
 #include "llvm/Support/BinaryStreamRef.h"
 #include "llvm/Support/Endian.h"
 #include "llvm/Support/Error.h"
@@ -22,6 +21,8 @@
 #include <vector>
 
 namespace llvm {
+class BinaryStreamReader;
+class BinaryStreamWriter;
 namespace codeview {
 
 class DebugChecksumsSubsection;
Index: llvm/include/llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h
+++ llvm/include/llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h
@@ -11,11 +11,15 @@
 
 #include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/DebugSubsection.h"
-#include "llvm/Support/BinaryStreamReader.h"
+#include "llvm/Support/BinaryStreamArray.h"
+#include "llvm/Support/BinaryStreamRef.h"
 #include "llvm/Support/Endian.h"
 #include "llvm/Support/Error.h"
 
 namespace llvm {
+class BinaryStreamReader;
+class BinaryStreamWriter;
+
 namespace codeview {
 class DebugFrameDataSubsectionRef final : public DebugSubsectionRef {
 public:
Index: llvm/include/llvm/DebugInfo/CodeView/DebugCrossImpSubsection.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/DebugCrossImpSubsection.h
+++ llvm/include/llvm/DebugInfo/CodeView/DebugCrossImpSubsection.h
@@ -14,7 +14,6 @@
 #include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/DebugSubsection.h"
 #include "llvm/Support/BinaryStreamArray.h"
-#include "llvm/Support/BinaryStreamReader.h"
 #include "llvm/Support/BinaryStreamRef.h"
 #include "llvm/Support/Endian.h"
 #include "llvm/Support/Error.h"
@@ -22,6 +21,8 @@
 #include <vector>
 
 namespace llvm {
+class BinaryStreamReader;
+class BinaryStreamWriter;
 
 namespace codeview {
 
Index: llvm/include/llvm/DebugInfo/CodeView/DebugCrossExSubsection.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/DebugCrossExSubsection.h
+++ llvm/include/llvm/DebugInfo/CodeView/DebugCrossExSubsection.h
@@ -12,13 +12,14 @@
 #include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/DebugSubsection.h"
 #include "llvm/Support/BinaryStreamArray.h"
-#include "llvm/Support/BinaryStreamReader.h"
 #include "llvm/Support/BinaryStreamRef.h"
 #include "llvm/Support/Error.h"
 #include <cstdint>
 #include <map>
 
 namespace llvm {
+class BinaryStreamReader;
+class BinaryStreamWriter;
 namespace codeview {
 
 class DebugCrossModuleExportsSubsectionRef final : public DebugSubsectionRef {
Index: llvm/include/llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h
+++ llvm/include/llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h
@@ -16,7 +16,6 @@
 #include "llvm/DebugInfo/CodeView/DebugSubsection.h"
 #include "llvm/Support/Allocator.h"
 #include "llvm/Support/BinaryStreamArray.h"
-#include "llvm/Support/BinaryStreamReader.h"
 #include "llvm/Support/BinaryStreamRef.h"
 #include "llvm/Support/Error.h"
 #include <cstdint>
@@ -24,6 +23,9 @@
 
 namespace llvm {
 
+class BinaryStreamReader;
+class BinaryStreamWriter;
+
 namespace codeview {
 
 class DebugStringTableSubsection;
Index: llvm/include/llvm/DebugInfo/CodeView/ContinuationRecordBuilder.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/ContinuationRecordBuilder.h
+++ llvm/include/llvm/DebugInfo/CodeView/ContinuationRecordBuilder.h
@@ -12,22 +12,16 @@
 #include "llvm/ADT/ArrayRef.h"
 #include "llvm/ADT/Optional.h"
 #include "llvm/ADT/SmallVector.h"
-#include "llvm/DebugInfo/CodeView/CodeView.h"
-#include "llvm/DebugInfo/CodeView/RecordSerialization.h"
-#include "llvm/DebugInfo/CodeView/TypeIndex.h"
-#include "llvm/DebugInfo/CodeView/TypeRecord.h"
+#include "llvm/DebugInfo/CodeView/CVRecord.h"
 #include "llvm/DebugInfo/CodeView/TypeRecordMapping.h"
-#include "llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h"
 #include "llvm/Support/BinaryByteStream.h"
 #include "llvm/Support/BinaryStreamWriter.h"
-#include "llvm/Support/Error.h"
-#include <cassert>
 #include <cstdint>
-#include <memory>
 #include <vector>
 
 namespace llvm {
 namespace codeview {
+class TypeIndex;
 enum class ContinuationRecordKind { FieldList, MethodOverloadList };
 
 class ContinuationRecordBuilder {
Index: llvm/include/llvm/DebugInfo/CodeView/CodeViewRecordIO.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/CodeViewRecordIO.h
+++ llvm/include/llvm/DebugInfo/CodeView/CodeViewRecordIO.h
@@ -9,14 +9,12 @@
 #ifndef LLVM_DEBUGINFO_CODEVIEW_CODEVIEWRECORDIO_H
 #define LLVM_DEBUGINFO_CODEVIEW_CODEVIEWRECORDIO_H
 
-#include "llvm/ADT/APSInt.h"
+#include "llvm/ADT/ArrayRef.h"
 #include "llvm/ADT/None.h"
 #include "llvm/ADT/Optional.h"
 #include "llvm/ADT/SmallVector.h"
 #include "llvm/ADT/StringRef.h"
 #include "llvm/DebugInfo/CodeView/CodeViewError.h"
-#include "llvm/DebugInfo/CodeView/GUID.h"
-#include "llvm/DebugInfo/CodeView/TypeIndex.h"
 #include "llvm/Support/BinaryStreamReader.h"
 #include "llvm/Support/BinaryStreamWriter.h"
 #include "llvm/Support/Error.h"
@@ -26,7 +24,11 @@
 
 namespace llvm {
 
+class APSInt;
+
 namespace codeview {
+class TypeIndex;
+struct GUID;
 
 class CodeViewRecordStreamer {
 public:
Index: llvm/include/llvm/DebugInfo/CodeView/CVTypeVisitor.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/CVTypeVisitor.h
+++ llvm/include/llvm/DebugInfo/CodeView/CVTypeVisitor.h
@@ -9,14 +9,17 @@
 #ifndef LLVM_DEBUGINFO_CODEVIEW_CVTYPEVISITOR_H
 #define LLVM_DEBUGINFO_CODEVIEW_CVTYPEVISITOR_H
 
+#include "llvm/ADT/ArrayRef.h"
 #include "llvm/DebugInfo/CodeView/CVRecord.h"
-#include "llvm/DebugInfo/CodeView/TypeRecord.h"
+#include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/Support/Error.h"
 
 namespace llvm {
 namespace codeview {
+class TypeIndex;
 class TypeCollection;
 class TypeVisitorCallbacks;
+struct CVMemberRecord;
 
 enum VisitorDataSource {
   VDS_BytesPresent, // The record bytes are passed into the visitation
Index: llvm/include/llvm/DebugInfo/CodeView/CVSymbolVisitor.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/CVSymbolVisitor.h
+++ llvm/include/llvm/DebugInfo/CodeView/CVSymbolVisitor.h
@@ -10,7 +10,7 @@
 #define LLVM_DEBUGINFO_CODEVIEW_CVSYMBOLVISITOR_H
 
 #include "llvm/DebugInfo/CodeView/CVRecord.h"
-#include "llvm/Support/ErrorOr.h"
+#include "llvm/Support/Error.h"
 
 namespace llvm {
 namespace codeview {
Index: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h
===================================================================
--- llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h
+++ llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h
@@ -11,7 +11,7 @@
 
 #include "llvm/ADT/ArrayRef.h"
 #include "llvm/ADT/SmallVector.h"
-#include "llvm/DebugInfo/CodeView/CodeView.h"
+#include "llvm/DebugInfo/CodeView/CVRecord.h"
 #include "llvm/DebugInfo/CodeView/SimpleTypeSerializer.h"
 #include "llvm/DebugInfo/CodeView/TypeCollection.h"
 #include "llvm/DebugInfo/CodeView/TypeIndex.h"
Index: lldb/source/Plugins/SymbolFile/NativePDB/PdbFPOProgramToDWARFExpression.cpp
===================================================================
--- lldb/source/Plugins/SymbolFile/NativePDB/PdbFPOProgramToDWARFExpression.cpp
+++ lldb/source/Plugins/SymbolFile/NativePDB/PdbFPOProgramToDWARFExpression.cpp
@@ -18,6 +18,7 @@
 #include "llvm/ADT/StringExtras.h"
 #include "llvm/DebugInfo/CodeView/CodeView.h"
 #include "llvm/DebugInfo/CodeView/EnumTables.h"
+#include "llvm/Support/ScopedPrinter.h"
 
 using namespace lldb;
 using namespace lldb_private;
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to