diff options
Diffstat (limited to 'tools/gccld/gccld.cpp')
-rw-r--r-- | tools/gccld/gccld.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/tools/gccld/gccld.cpp b/tools/gccld/gccld.cpp index db03b208b9..41c176f869 100644 --- a/tools/gccld/gccld.cpp +++ b/tools/gccld/gccld.cpp @@ -173,7 +173,7 @@ static void BuildLinkItems( cl::list<std::string>::const_iterator libIt = Libraries.begin(); int libPos = -1, filePos = -1; - while ( 1 ) { + while ( libIt != Libraries.end() || fileIt != Files.end() ) { if (libIt != Libraries.end()) libPos = Libraries.getPosition(libIt - Libraries.begin()); else @@ -189,11 +189,10 @@ static void BuildLinkItems( } else if (libPos != -1 && (filePos == -1 || libPos < filePos)) { // Add a library Items.push_back(std::make_pair(*libIt++, true)); - } else { - break; // we're done with the list } } } + int main(int argc, char **argv, char **envp) { cl::ParseCommandLineOptions(argc, argv, " llvm linker for GCC\n"); sys::PrintStackTraceOnErrorSignal(); |