[lld] r231033 - Make ArchiveLibraryFile::~ArchiveLibraryFile virtual.

Rui Ueyama ruiu at google.com
Mon Mar 2 15:03:33 PST 2015


Author: ruiu
Date: Mon Mar  2 17:03:33 2015
New Revision: 231033

URL: http://llvm.org/viewvc/llvm-project?rev=231033&view=rev
Log:
Make ArchiveLibraryFile::~ArchiveLibraryFile virtual.

"virtual" was present at a wrong place. FileArchive is a subclass of
ArchiveLibraryFile, and a FileArchive can be deleted through a
pointer of ArchiveLibraryFile. We want to make the destructor of the
base class virtual.

Modified:
    lld/trunk/include/lld/Core/ArchiveLibraryFile.h
    lld/trunk/lib/ReaderWriter/FileArchive.cpp

Modified: lld/trunk/include/lld/Core/ArchiveLibraryFile.h
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/include/lld/Core/ArchiveLibraryFile.h?rev=231033&r1=231032&r2=231033&view=diff
==============================================================================
--- lld/trunk/include/lld/Core/ArchiveLibraryFile.h (original)
+++ lld/trunk/include/lld/Core/ArchiveLibraryFile.h Mon Mar  2 17:03:33 2015
@@ -50,6 +50,8 @@ public:
     return std::set<StringRef>();
   }
 
+  virtual ~ArchiveLibraryFile() {}
+
 protected:
   /// only subclasses of ArchiveLibraryFile can be instantiated
   ArchiveLibraryFile(StringRef path) : File(path, kindArchiveLibrary) {}

Modified: lld/trunk/lib/ReaderWriter/FileArchive.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/FileArchive.cpp?rev=231033&r1=231032&r2=231033&view=diff
==============================================================================
--- lld/trunk/lib/ReaderWriter/FileArchive.cpp (original)
+++ lld/trunk/lib/ReaderWriter/FileArchive.cpp Mon Mar  2 17:03:33 2015
@@ -41,8 +41,6 @@ public:
       : ArchiveLibraryFile(path), _mb(std::shared_ptr<MemoryBuffer>(mb.release())),
         _registry(reg), _logLoading(logLoading) {}
 
-  virtual ~FileArchive() {}
-
   /// \brief Check if any member of the archive contains an Atom with the
   /// specified name and return the File object for that member, or nullptr.
   const File *find(StringRef name, bool dataSymbolOnly) const override {





More information about the llvm-commits mailing list