[lld] r205052 - [ELF] Terminate argv with nullptr.

Rui Ueyama ruiu at google.com
Fri Mar 28 13:51:07 PDT 2014


Author: ruiu
Date: Fri Mar 28 15:51:07 2014
New Revision: 205052

URL: http://llvm.org/viewvc/llvm-project?rev=205052&view=rev
Log:
[ELF] Terminate argv with nullptr.

Also remove unused vector.

Modified:
    lld/trunk/lib/Driver/GnuLdDriver.cpp

Modified: lld/trunk/lib/Driver/GnuLdDriver.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Driver/GnuLdDriver.cpp?rev=205052&r1=205051&r2=205052&view=diff
==============================================================================
--- lld/trunk/lib/Driver/GnuLdDriver.cpp (original)
+++ lld/trunk/lib/Driver/GnuLdDriver.cpp Fri Mar 28 15:51:07 2014
@@ -103,16 +103,11 @@ maybeExpandResponseFiles(int argc, const
   DriverStringSaver saver(alloc);
   llvm::cl::ExpandResponseFiles(saver, llvm::cl::TokenizeGNUCommandLine, smallvec);
 
-  // Pack the results to a C-array.
+  // Pack the results to a C-array and return it.
   argc = smallvec.size();
-  std::vector<const char *> result;
-  for (size_t i = 0, e = smallvec.size(); i < e; ++i)
-    result.push_back(smallvec[i]);
-  result.push_back(nullptr);  // terminate ARGV with NULL
-
-  // Allocate memory for the result and return it.
   const char **copy = alloc.Allocate<const char *>(argc + 1);
   std::copy(smallvec.begin(), smallvec.end(), copy);
+  copy[argc] = nullptr;
   return std::make_tuple(argc, copy);
 }
 





More information about the llvm-commits mailing list