about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJan-Erik Rediger <janerik@fnordig.de>2016-07-14 21:27:14 +0200
committerJan-Erik Rediger <janerik@fnordig.de>2016-07-29 10:29:44 +0200
commit1bc04472609aec664ce434f7a3b7df7e06e80637 (patch)
treec17f736f3400dcce51e9c8d7d8d51eec707bf7ad
parentdeafab19be13e8cd33e55b211ba8835488747a05 (diff)
downloadrust-1bc04472609aec664ce434f7a3b7df7e06e80637.tar.gz
rust-1bc04472609aec664ce434f7a3b7df7e06e80637.zip
[LLVM-3.9] Maintain backward compatibility in Archiver
-rw-r--r--src/rustllvm/ArchiveWrapper.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/rustllvm/ArchiveWrapper.cpp b/src/rustllvm/ArchiveWrapper.cpp
index 514d25297ee..03b0aaf45b8 100644
--- a/src/rustllvm/ArchiveWrapper.cpp
+++ b/src/rustllvm/ArchiveWrapper.cpp
@@ -158,7 +158,12 @@ LLVMRustWriteArchive(char *Dst,
                      const LLVMRustArchiveMember **NewMembers,
                      bool WriteSymbtab,
                      Archive::Kind Kind) {
+
+#if LLVM_VERSION_MINOR >= 9
   std::vector<NewArchiveMember> Members;
+#else
+  std::vector<NewArchiveIterator> Members;
+#endif
 
   for (size_t i = 0; i < NumMembers; i++) {
     auto Member = NewMembers[i];
@@ -171,6 +176,8 @@ LLVMRustWriteArchive(char *Dst,
         return -1;
       }
       Members.push_back(std::move(*MOrErr));
+#elif LLVM_VERSION_MINOR == 8
+      Members.push_back(NewArchiveIterator(Member->filename));
 #else
       Members.push_back(NewArchiveIterator(Member->filename, Member->name));
 #endif