//===-- DWARFDebugInfoEntry.h -----------------------------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #ifndef LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_DWARFDEBUGINFOENTRY_H #define LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_DWARFDEBUGINFOENTRY_H #include "SymbolFileDWARF.h" #include "llvm/ADT/SmallVector.h" #include "DWARFAttribute.h" #include "DWARFBaseDIE.h" #include "DWARFDebugRanges.h" #include <map> #include <optional> #include <set> #include <vector> #include "llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h" namespace lldb_private::plugin { namespace dwarf { class DWARFDeclContext; #define DIE_SIBLING_IDX_BITSIZE … /// DWARFDebugInfoEntry objects assume that they are living in one big /// vector and do pointer arithmetic on their this pointers. Don't /// pass them by value. Due to the way they are constructed in a /// std::vector, we cannot delete the copy constructor. class DWARFDebugInfoEntry { … }; } // namespace dwarf } // namespace lldb_private::plugin #endif // LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_DWARFDEBUGINFOENTRY_H