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`.
llvm-svn: 267246
diff --git a/lld/ELF/LinkerScript.cpp b/lld/ELF/LinkerScript.cpp
index 44246f4..5fad6e1 100644
--- a/lld/ELF/LinkerScript.cpp
+++ b/lld/ELF/LinkerScript.cpp
@@ -317,7 +317,7 @@
public:
ScriptParser(StringRef S, bool B) : ScriptParserBase(S), IsUnderSysroot(B) {}
- void run() override;
+ void run();
private:
void addFile(StringRef Path);
diff --git a/lld/ELF/ScriptParser.h b/lld/ELF/ScriptParser.h
index 5da20f0..1f4b6d1 100644
--- a/lld/ELF/ScriptParser.h
+++ b/lld/ELF/ScriptParser.h
@@ -20,9 +20,6 @@
class ScriptParserBase {
public:
ScriptParserBase(StringRef S) : Input(S), Tokens(tokenize(S)) {}
- virtual ~ScriptParserBase() = default;
-
- virtual void run() = 0;
protected:
void setError(const Twine &Msg);
diff --git a/lld/ELF/SymbolListFile.cpp b/lld/ELF/SymbolListFile.cpp
index 8323933..2c23bb4 100644
--- a/lld/ELF/SymbolListFile.cpp
+++ b/lld/ELF/SymbolListFile.cpp
@@ -34,7 +34,7 @@
public:
DynamicListParser(StringRef S) : ScriptParserBase(S) {}
- void run() override;
+ void run();
private:
void readGroup();
@@ -75,7 +75,7 @@
public:
VersionScriptParser(StringRef S) : ScriptParserBase(S) {}
- void run() override;
+ void run();
};
void VersionScriptParser::run() {