[lld] r267246 - Devirtualize ScriptParserBase. NFC.

Rui Ueyama via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 22 15:59:24 PDT 2016


Author: ruiu
Date: Fri Apr 22 17:59:24 2016
New Revision: 267246

URL: http://llvm.org/viewvc/llvm-project?rev=267246&view=rev
Log:
Devirtualize ScriptParserBase. NFC.

ScriptParserBase class is a container of collection of various methods
to parse linker script-ish text. It had a virtual method `run` to run
the parser. But we don't have to enforce its descendents to implement
that. It's up to them.

This patch removes pure virtual function `run`.

Modified:
    lld/trunk/ELF/LinkerScript.cpp
    lld/trunk/ELF/ScriptParser.h
    lld/trunk/ELF/SymbolListFile.cpp

Modified: lld/trunk/ELF/LinkerScript.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/LinkerScript.cpp?rev=267246&r1=267245&r2=267246&view=diff
==============================================================================
--- lld/trunk/ELF/LinkerScript.cpp (original)
+++ lld/trunk/ELF/LinkerScript.cpp Fri Apr 22 17:59:24 2016
@@ -317,7 +317,7 @@ class elf::ScriptParser : public ScriptP
 public:
   ScriptParser(StringRef S, bool B) : ScriptParserBase(S), IsUnderSysroot(B) {}
 
-  void run() override;
+  void run();
 
 private:
   void addFile(StringRef Path);

Modified: lld/trunk/ELF/ScriptParser.h
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/ScriptParser.h?rev=267246&r1=267245&r2=267246&view=diff
==============================================================================
--- lld/trunk/ELF/ScriptParser.h (original)
+++ lld/trunk/ELF/ScriptParser.h Fri Apr 22 17:59:24 2016
@@ -20,9 +20,6 @@ namespace elf {
 class ScriptParserBase {
 public:
   ScriptParserBase(StringRef S) : Input(S), Tokens(tokenize(S)) {}
-  virtual ~ScriptParserBase() = default;
-
-  virtual void run() = 0;
 
 protected:
   void setError(const Twine &Msg);

Modified: lld/trunk/ELF/SymbolListFile.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/SymbolListFile.cpp?rev=267246&r1=267245&r2=267246&view=diff
==============================================================================
--- lld/trunk/ELF/SymbolListFile.cpp (original)
+++ lld/trunk/ELF/SymbolListFile.cpp Fri Apr 22 17:59:24 2016
@@ -34,7 +34,7 @@ class DynamicListParser final : public S
 public:
   DynamicListParser(StringRef S) : ScriptParserBase(S) {}
 
-  void run() override;
+  void run();
 
 private:
   void readGroup();
@@ -75,7 +75,7 @@ class VersionScriptParser final : public
 public:
   VersionScriptParser(StringRef S) : ScriptParserBase(S) {}
 
-  void run() override;
+  void run();
 };
 
 void VersionScriptParser::run() {




More information about the llvm-commits mailing list