Index: include/llvm/DebugInfo/DWARF/DWARFAttribute.h =================================================================== --- include/llvm/DebugInfo/DWARF/DWARFAttribute.h +++ include/llvm/DebugInfo/DWARF/DWARFAttribute.h @@ -27,12 +27,11 @@ /// The debug info/types section byte size of the data for this attribute. uint32_t ByteSize = 0; /// The attribute enumeration of this attribute. - dwarf::Attribute Attr; + dwarf::Attribute Attr = dwarf::Attribute(0); /// The form and value for this attribute. - DWARFFormValue Value; + DWARFFormValue Value = dwarf::Form(0); - DWARFAttribute(uint32_t O, dwarf::Attribute A = dwarf::Attribute(0), - dwarf::Form F = dwarf::Form(0)) : Attr(A), Value(F) {} + DWARFAttribute() = default; bool isValid() const { return Offset != 0 && Attr != dwarf::Attribute(0); Index: lib/DebugInfo/DWARF/DWARFDie.cpp =================================================================== --- lib/DebugInfo/DWARF/DWARFDie.cpp +++ lib/DebugInfo/DWARF/DWARFDie.cpp @@ -663,7 +663,7 @@ } DWARFDie::attribute_iterator::attribute_iterator(DWARFDie D, bool End) - : Die(D), AttrValue(0), Index(0) { + : Die(D), Index(0) { auto AbbrDecl = Die.getAbbreviationDeclarationPtr(); assert(AbbrDecl && "Must have abbreviation declaration"); if (End) {