[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