diff --git a/lld/lib/ReaderWriter/ELF/ELFFile.h b/lld/lib/ReaderWriter/ELF/ELFFile.h index 662af5373610..1b479ca62ed0 100644 --- a/lld/lib/ReaderWriter/ELF/ELFFile.h +++ b/lld/lib/ReaderWriter/ELF/ELFFile.h @@ -390,6 +390,7 @@ public: symbol->st_name = 0; symbol->st_value = 0; symbol->st_shndx = llvm::ELF::SHN_UNDEF; + symbol->setBindingAndType(llvm::ELF::STB_GLOBAL, llvm::ELF::STT_NOTYPE); symbol->st_other = llvm::ELF::STV_DEFAULT; symbol->st_size = 0; auto newAtom = this->handleUndefinedSymbol(symbolName, symbol); diff --git a/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp b/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp index d47fcf4ee7e7..89a8158c0e92 100644 --- a/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp +++ b/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp @@ -57,10 +57,11 @@ ELFLinkingContext::ELFLinkingContext( : _outputELFType(elf::ET_EXEC), _triple(triple), _targetHandler(std::move(targetHandler)), _baseAddress(0), _isStaticExecutable(false), _noInhibitExec(false), - _mergeCommonStrings(false), _runLayoutPass(true), - _useShlibUndefines(true), _dynamicLinkerArg(false), - _noAllowDynamicLibraries(false), _mergeRODataToTextSegment(true), - _outputMagic(OutputMagic::DEFAULT), _sysrootPath("") {} + _exportDynamic(false), _mergeCommonStrings(false), + _runLayoutPass(true), _useShlibUndefines(true), + _dynamicLinkerArg(false), _noAllowDynamicLibraries(false), + _mergeRODataToTextSegment(true), _outputMagic(OutputMagic::DEFAULT), + _sysrootPath("") {} bool ELFLinkingContext::is64Bits() const { return getTriple().isArch64Bit(); }