Try harder to delete the temporary file.
authorRafael Espindola <rafael.espindola@gmail.com>
Mon, 13 Nov 2017 18:15:22 +0000 (18:15 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Mon, 13 Nov 2017 18:15:22 +0000 (18:15 +0000)
This changes COFF to use the output buffer that is reset by the error
handler.

llvm-svn: 318062

lld/COFF/Writer.cpp

index a10a33f..e22a82a 100644 (file)
@@ -108,6 +108,7 @@ public:
 // The writer writes a SymbolTable result to a file.
 class Writer {
 public:
+  Writer() : Buffer(errorHandler().OutputBuffer) {}
   void run();
 
 private:
@@ -137,7 +138,7 @@ private:
   uint32_t getSizeOfInitializedData();
   std::map<StringRef, std::vector<DefinedImportData *>> binImports();
 
-  std::unique_ptr<FileOutputBuffer> Buffer;
+  std::unique_ptr<FileOutputBuffer> &Buffer;
   std::vector<OutputSection *> OutputSections;
   std::vector<char> Strtab;
   std::vector<llvm::object::coff_symbol16> OutputSymtab;