Index: lld/ELF/Symbols.h =================================================================== --- lld/ELF/Symbols.h +++ lld/ELF/Symbols.h @@ -42,9 +42,9 @@ enum Kind { DefinedFirst, DefinedRegularKind = DefinedFirst, - SharedKind, DefinedCommonKind, DefinedLast = DefinedCommonKind, + SharedKind, UndefinedKind, LazyArchiveKind, LazyObjectKind, @@ -205,7 +205,7 @@ } }; -class SharedSymbol : public Defined { +class SharedSymbol : public SymbolBody { public: static bool classof(const SymbolBody *S) { return S->kind() == SymbolBody::SharedKind; @@ -213,7 +213,8 @@ SharedSymbol(StringRef Name, uint8_t StOther, uint8_t Type, const void *ElfSym, const void *Verdef) - : Defined(SymbolBody::SharedKind, Name, /*IsLocal=*/false, StOther, Type), + : SymbolBody(SymbolBody::SharedKind, Name, /*IsLocal=*/false, StOther, + Type), Verdef(Verdef), ElfSym(ElfSym) { // GNU ifunc is a mechanism to allow user-supplied functions to // resolve PLT slot values at load-time. This is contrary to the