[llvm-commits] CVS: llvm/lib/Linker/LinkArchives.cpp

Chris Lattner lattner at cs.uiuc.edu
Mon Nov 15 22:41:07 PST 2004



Changes in directory llvm/lib/Linker:

LinkArchives.cpp updated: 1.34 -> 1.35
---
Log message:

use an autoptr


---
Diffs of the changes:  (+3 -7)

Index: llvm/lib/Linker/LinkArchives.cpp
diff -u llvm/lib/Linker/LinkArchives.cpp:1.34 llvm/lib/Linker/LinkArchives.cpp:1.35
--- llvm/lib/Linker/LinkArchives.cpp:1.34	Sun Nov 14 17:49:55 2004
+++ llvm/lib/Linker/LinkArchives.cpp	Tue Nov 16 00:40:54 2004
@@ -195,18 +195,14 @@
     for (std::set<ModuleProvider*>::iterator I=Modules.begin(), E=Modules.end();
          I != E; ++I) {
       // Get the module we must link in.
-      Module* aModule = (*I)->releaseModule();
+      std::auto_ptr<Module> aModule((*I)->releaseModule());
 
-      // Link it in
-      if (LinkModules(M, aModule, ErrorMessage)) {
+      // Link it in.
+      if (LinkModules(M, aModule.get(), ErrorMessage)) {
         // don't create a memory leak
-        delete aModule;
         delete arch;
         return true;   // Couldn't link in the right object file...        
       }
-        
-      // Since we have linked in this object, throw it away now.
-      delete aModule;
     }
 
     // We have linked in a set of modules determined by the archive to satisfy






More information about the llvm-commits mailing list