diff options
Diffstat (limited to 'llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp')
-rw-r--r-- | llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp b/llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp index c0f64a2..9188cad 100644 --- a/llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp +++ b/llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp @@ -11,6 +11,7 @@ //===----------------------------------------------------------------------===// #include "DependencyInfo.h" +#include "llvm/ADT/MapVector.h" #include "llvm/BinaryFormat/Magic.h" #include "llvm/IR/LLVMContext.h" #include "llvm/Object/ArchiveWriter.h" @@ -554,7 +555,7 @@ checkForDuplicates(const MembersPerArchitectureMap &MembersPerArch) { for (const auto &M : MembersPerArch) { ArrayRef<NewArchiveMember> Members = M.second.getMembers(); ArrayRef<StringRef> Files = M.second.getFiles(); - StringMap<std::vector<StringRef>> MembersToFiles; + MapVector<StringRef, SmallVector<StringRef, 1>> MembersToFiles; for (auto Iterators = std::make_pair(Members.begin(), Files.begin()); Iterators.first != Members.end(); ++Iterators.first, ++Iterators.second) { @@ -565,12 +566,11 @@ checkForDuplicates(const MembersPerArchitectureMap &MembersPerArch) { std::string ErrorData; raw_string_ostream ErrorStream(ErrorData); - for (const auto &MemberToFile : MembersToFiles) { - if (MemberToFile.getValue().size() > 1) { - ErrorStream << "file '" << MemberToFile.getKey().str() - << "' was specified multiple times.\n"; + for (const auto &[Key, Value] : MembersToFiles) { + if (Value.size() > 1) { + ErrorStream << "file '" << Key << "' was specified multiple times.\n"; - for (StringRef OriginalFile : MemberToFile.getValue()) + for (StringRef OriginalFile : Value) ErrorStream << "in: " << OriginalFile.str() << '\n'; ErrorStream << '\n'; |