bool writeSectionContent(Elf_Shdr &SHeader,
const ELFYAML::DynamicSection &Section,
ContiguousBlobAccumulator &CBA);
- SmallVector<const char *, 5> implicitSectionNames() const;
+ std::vector<StringRef> implicitSectionNames() const;
// - SHT_NULL entry (placed first, i.e. 0'th entry)
// - symbol table (.symtab) (defaults to after last yaml section)
auto SecNo = 1 + Doc.Sections.size();
// Add special sections after input sections, if necessary.
- for (const auto &Name : implicitSectionNames())
+ for (StringRef Name : implicitSectionNames())
if (!SN2I.addName(Name, SecNo)) {
// Account for this section, since it wasn't in the Doc
++SecNo;
return 1;
// Populate SHeaders with implicit sections not present in the Doc
- for (const auto &Name : State.implicitSectionNames())
+ for (StringRef Name : State.implicitSectionNames())
if (State.SN2I.get(Name) >= SHeaders.size())
SHeaders.push_back({});
}
template <class ELFT>
-SmallVector<const char *, 5> ELFState<ELFT>::implicitSectionNames() const {
+std::vector<StringRef> ELFState<ELFT>::implicitSectionNames() const {
if (Doc.DynamicSymbols.empty())
return {".symtab", ".strtab", ".shstrtab"};
return {".symtab", ".strtab", ".shstrtab", ".dynsym", ".dynstr"};