[LLVMdev] required command line options

Reid Spencer rspencer at reidspencer.com
Thu Mar 8 04:50:59 PST 2007


Ryan,

Did you read this: http://llvm.org/docs/CommandLine.html#valrequired ?

On Thu, 2007-03-08 at 06:08 -0600, Ryan M. Lefever wrote:
> In the CommandLine parser there is a way to specify that a command line 
> option is required.  Is there a way to specify that the option is 
> required only if some other option is set?

I don't think it currently handles this, although something like
"cl::MustFollow(OtherOption)" could be added. Alternatively, you could
provide a custom parser. 

> 
> In particular, I want to build a transformation T that opt loads.  So, I 
> when I register T with opt a boolean command line option is created.  If 
> the option is set by the user, then the transformation is run.  However, 
> T requires the user to specify the names of some files.  So, I can use 
> cl::opt<string> to create command line options F1, F2, and F3 with which 
> the user can specify those file names.  If I define F1, F2, and F3 as 
> cl::required, they are required even if transform T is not being run. 
> Is there a way to make the file command line arguments required 
> contingent on the presence of transform T's command line flag?

Not that I know of. However, it would probably be acceptable to make
them optional and emit an error if they aren't given when -T is
specified. 

Reid.

> 
> Thanks in advance,
> Ryan
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list