diff options
-rw-r--r-- | llvm/tools/obj2yaml/elf2yaml.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/tools/obj2yaml/elf2yaml.cpp b/llvm/tools/obj2yaml/elf2yaml.cpp index 3f33fbd7d68..b603cb84aea 100644 --- a/llvm/tools/obj2yaml/elf2yaml.cpp +++ b/llvm/tools/obj2yaml/elf2yaml.cpp @@ -80,11 +80,11 @@ ELFDumper<ELFT>::getUniquedSectionName(const Elf_Shdr *Sec) { if (!NameOrErr) return NameOrErr; StringRef Name = *NameOrErr; - std::string Ret = Name; + std::string &Ret = SectionNames[SecIndex]; + Ret = Name; while (!UsedSectionNames.insert(Ret).second) Ret = (Name + to_string(++Suffix)).str(); - SectionNames[SecIndex] = Ret; - return SectionNames[SecIndex]; + return Ret; } template <class ELFT> ErrorOr<ELFYAML::Object *> ELFDumper<ELFT>::dump() { |