[llvm-dev] llvm:cl::parser subclasses final in 3.7?

Matthew O'Connor via llvm-dev llvm-dev at lists.llvm.org
Thu Oct 8 15:36:46 PDT 2015


All,

I'm upgrading some code that uses LLVM from 3.6 to 3.7. It looks like the
llvm::cl::parser subclasses are now final?

We had been doing:

struct MaxThreadsParser : public llvm::cl::parser<unsigned> {
  bool parse(llvm::cl::Option &O, llvm::StringRef ArgName, llvm::StringRef
Arg,
             unsigned &Val);
};

But that's now causing:

In file included from
/home/lak/my_svn/llvm-carte/llvm-3.7.0/tools/carte++/tools/ir2v/ThreadSupport.cpp:1:
/home/lak/my_svn/llvm-carte/llvm-3.7.0/tools/carte++/tools/ir2v/ThreadSupport.h:12:34:
error:
      base 'parser' is marked 'final'
struct MaxThreadsParser : public llvm::cl::parser<unsigned> {

What's the new way to do this now? It looks like the documentation at
http://llvm.org/releases/3.7.0/docs/CommandLine.html#custom-parsers
describes a way that doesn't work anymore.

Thanks,
Matt
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151008/7f11841d/attachment.html>


More information about the llvm-dev mailing list