ModifierOptions getModifiers() const { return Modifiers; }
TypeIndex ModifiedType;
- ModifierOptions Modifiers;
+ ModifierOptions Modifiers = ModifierOptions::None;
};
// LF_PROCEDURE
TypeIndex ReturnType;
CallingConvention CallConv;
FunctionOptions Options;
- uint16_t ParameterCount;
+ uint16_t ParameterCount = 0;
TypeIndex ArgumentList;
};
TypeIndex ThisType;
CallingConvention CallConv;
FunctionOptions Options;
- uint16_t ParameterCount;
+ uint16_t ParameterCount = 0;
TypeIndex ArgumentList;
- int32_t ThisPointerAdjustment;
+ int32_t ThisPointerAdjustment = 0;
};
// LF_LABEL
}
TypeIndex ReferentType;
- uint32_t Attrs;
+ uint32_t Attrs = 0;
Optional<MemberPointerInfo> MemberInfo;
void setAttrs(PointerKind PK, PointerMode PM, PointerOptions PO,
TypeIndex ElementType;
TypeIndex IndexType;
- uint64_t Size;
+ uint64_t Size = 0;
StringRef Name;
};
StringRef getName() const { return Name; }
StringRef getUniqueName() const { return UniqueName; }
- uint16_t MemberCount;
+ uint16_t MemberCount = 0;
ClassOptions Options;
TypeIndex FieldList;
StringRef Name;
TypeIndex DerivationList;
TypeIndex VTableShape;
- uint64_t Size;
+ uint64_t Size = 0;
};
// LF_UNION
uint64_t getSize() const { return Size; }
- uint64_t Size;
+ uint64_t Size = 0;
};
// LF_ENUM
uint8_t getBitSize() const { return BitSize; }
TypeIndex Type;
- uint8_t BitSize;
- uint8_t BitOffset;
+ uint8_t BitSize = 0;
+ uint8_t BitOffset = 0;
};
// LF_VTSHAPE
StringRef getName() const { return Name; }
GUID Guid;
- uint32_t Age;
+ uint32_t Age = 0;
StringRef Name;
};
TypeIndex UDT;
TypeIndex SourceFile;
- uint32_t LineNumber;
+ uint32_t LineNumber = 0;
};
// LF_UDT_MOD_SRC_LINE
TypeIndex UDT;
TypeIndex SourceFile;
- uint32_t LineNumber;
- uint16_t Module;
+ uint32_t LineNumber = 0;
+ uint16_t Module = 0;
};
// LF_BUILDINFO
TypeIndex CompleteClass;
TypeIndex OverriddenVFTable;
- uint32_t VFPtrOffset;
+ uint32_t VFPtrOffset = 0;
std::vector<StringRef> MethodNames;
};
TypeIndex Type;
MemberAttributes Attrs;
- int32_t VFTableOffset;
+ int32_t VFTableOffset = 0;
StringRef Name;
};
TypeIndex getMethodList() const { return MethodList; }
StringRef getName() const { return Name; }
- uint16_t NumOverloads;
+ uint16_t NumOverloads = 0;
TypeIndex MethodList;
StringRef Name;
};
MemberAttributes Attrs;
TypeIndex Type;
- uint64_t FieldOffset;
+ uint64_t FieldOffset = 0;
StringRef Name;
};
MemberAttributes Attrs;
TypeIndex Type;
- uint64_t Offset;
+ uint64_t Offset = 0;
};
// LF_VBCLASS, LF_IVBCLASS
MemberAttributes Attrs;
TypeIndex BaseType;
TypeIndex VBPtrType;
- uint64_t VBPtrOffset;
- uint64_t VTableIndex;
+ uint64_t VBPtrOffset = 0;
+ uint64_t VTableIndex = 0;
};
/// LF_INDEX - Used to chain two large LF_FIELDLIST or LF_METHODLIST records
uint32_t getSignature() const { return Signature; }
StringRef getPrecompFilePath() const { return PrecompFilePath; }
- uint32_t StartTypeIndex;
- uint32_t TypesCount;
- uint32_t Signature;
+ uint32_t StartTypeIndex = 0;
+ uint32_t TypesCount = 0;
+ uint32_t Signature = 0;
StringRef PrecompFilePath;
};
uint32_t getSignature() const { return Signature; }
- uint32_t Signature;
+ uint32_t Signature = 0;
};
} // end namespace codeview