diff --git a/llvm/include/llvm/Support/CommandLine.h b/llvm/include/llvm/Support/CommandLine.h --- a/llvm/include/llvm/Support/CommandLine.h +++ b/llvm/include/llvm/Support/CommandLine.h @@ -877,7 +877,7 @@ //-------------------------------------------------- // parser // -template <> class parser final : public basic_parser { +template <> class parser : public basic_parser { public: parser(Option &O) : basic_parser(O) {} @@ -898,6 +898,8 @@ // An out-of-line virtual method to provide a 'home' for this class. void anchor() override; + + virtual ~parser() = default; }; extern template class basic_parser; @@ -905,7 +907,7 @@ //-------------------------------------------------- // parser template <> -class parser final : public basic_parser { +class parser : public basic_parser { public: parser(Option &O) : basic_parser(O) {} @@ -924,6 +926,8 @@ // An out-of-line virtual method to provide a 'home' for this class. void anchor() override; + + virtual ~parser() = default; }; extern template class basic_parser; @@ -931,7 +935,7 @@ //-------------------------------------------------- // parser // -template <> class parser final : public basic_parser { +template <> class parser : public basic_parser { public: parser(Option &O) : basic_parser(O) {} @@ -946,6 +950,8 @@ // An out-of-line virtual method to provide a 'home' for this class. void anchor() override; + + virtual ~parser() = default; }; extern template class basic_parser; @@ -953,7 +959,7 @@ //-------------------------------------------------- // parser // -template <> class parser final : public basic_parser { +template <> class parser : public basic_parser { public: parser(Option &O) : basic_parser(O) {} @@ -968,6 +974,8 @@ // An out-of-line virtual method to provide a 'home' for this class. void anchor() override; + + virtual ~parser() = default; }; extern template class basic_parser; @@ -976,7 +984,7 @@ // parser // template <> -class parser final +class parser : public basic_parser { public: parser(Option &O) : basic_parser(O) {} @@ -993,6 +1001,8 @@ // An out-of-line virtual method to provide a 'home' for this class. void anchor() override; + + virtual ~parser() = default; }; extern template class basic_parser; @@ -1000,7 +1010,7 @@ //-------------------------------------------------- // parser // -template <> class parser final : public basic_parser { +template <> class parser : public basic_parser { public: parser(Option &O) : basic_parser(O) {} @@ -1015,6 +1025,8 @@ // An out-of-line virtual method to provide a 'home' for this class. void anchor() override; + + virtual ~parser() = default; }; extern template class basic_parser; @@ -1022,7 +1034,7 @@ //-------------------------------------------------- // parser // -template <> class parser final : public basic_parser { +template <> class parser : public basic_parser { public: parser(Option &O) : basic_parser(O) {} @@ -1037,6 +1049,8 @@ // An out-of-line virtual method to provide a 'home' for this class. void anchor() override; + + virtual ~parser() = default; }; extern template class basic_parser; @@ -1044,7 +1058,7 @@ //-------------------------------------------------- // parser // -template <> class parser final : public basic_parser { +template <> class parser : public basic_parser { public: parser(Option &O) : basic_parser(O) {} @@ -1062,6 +1076,8 @@ // An out-of-line virtual method to provide a 'home' for this class. void anchor() override; + + virtual ~parser() = default; }; extern template class basic_parser; @@ -1069,7 +1085,7 @@ //-------------------------------------------------- // parser // -template <> class parser final : public basic_parser { +template <> class parser : public basic_parser { public: parser(Option &O) : basic_parser(O) {} @@ -1087,6 +1103,8 @@ // An out-of-line virtual method to provide a 'home' for this class. void anchor() override; + + virtual ~parser() = default; }; extern template class basic_parser;