CommandLine: using cl::Positional with enum

Hi Daniel,

I would like to go deeper with CommandLine and I was asking if you could help me again.

Look, following the same example you put in the last message:

./prog | ( --arg1 --arg2) | ( --arg1 )

What I really really want is the same except I don’t want the “–” prefix is present in any of the arguments.

./prog | ( arg1 arg2) | ( arg1 )

The problem is clear: in this case, the arguments can’t be optional. So I thought to delete all the “cl:opt” and process the arguments before calling:

ClangTool Tool(OptionsParser.getCompilations(), OptionsParser.getSourcePathList());

in order to give an error if the arguments provided were not correct. But, if arguments are correct, then the next error is shown:

warning: /home/user/clang-llvm/build/arg1: ‘linker’ input unused
error: unable to handle compilation, expected exactly one compiler job in ‘’
Error while processing /home/user/clang-llvm/build/arg1

How can I manage this? I was thinking about not calling the ClangTool Tool(OptionsParser.getCompilations(), OptionsParser.getSourcePathList());
but, I don’t know if this would be another problem. In addition, I would have to create my own option --help, isn’t it?

What do you recommend me to do?

Thanks in advance,


El dia 08 may 2013 13:56, Daniel Liew escribió: