[llvm] 3b48a7a - [readtapi] add optional --<option>"=" to some cli opts (#72426)

via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 15 15:32:41 PST 2023


Author: Cyndy Ishida
Date: 2023-11-15T15:32:36-08:00
New Revision: 3b48a7a008d7243218322fa816908a4e45455c11

URL: https://github.com/llvm/llvm-project/commit/3b48a7a008d7243218322fa816908a4e45455c11
DIFF: https://github.com/llvm/llvm-project/commit/3b48a7a008d7243218322fa816908a4e45455c11.diff

LOG: [readtapi] add optional --<option>"=" to some cli opts (#72426)

Added: 
    

Modified: 
    llvm/tools/llvm-readtapi/TapiOpts.td
    llvm/tools/llvm-readtapi/llvm-readtapi.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/tools/llvm-readtapi/TapiOpts.td b/llvm/tools/llvm-readtapi/TapiOpts.td
index fd2f96ba57fd41c..932a21f7d071199 100644
--- a/llvm/tools/llvm-readtapi/TapiOpts.td
+++ b/llvm/tools/llvm-readtapi/TapiOpts.td
@@ -2,13 +2,16 @@
 include "llvm/Option/OptParser.td"
 
 class FF<string name, string help>: Flag<["-", "--"], name>, HelpText<help>;
-class JS<string name, string help, string var = ""> : JoinedOrSeparate<["-", "--"], name>, HelpText<help>, MetaVarName<var>;
+multiclass JS<string name, string help, string var = ""> {
+  def NAME #_EQ : Joined<["--"], name #"=">, HelpText<help>, MetaVarName<var>;
+  def : Separate<["-", "--"], name>, Alias<!cast<Joined>(NAME #_EQ)>;
+}
 
 //
 // General Driver options 
 //
 def help : FF<"help", "display this help">;
-def output: JS<"o", "write output to <file>","<file>">;
+defm output: JS<"o", "write output to <file>","<file>">;
 
 //
 // Compare options

diff  --git a/llvm/tools/llvm-readtapi/llvm-readtapi.cpp b/llvm/tools/llvm-readtapi/llvm-readtapi.cpp
index 2aae1c464c0ed23..1307916120e98e6 100644
--- a/llvm/tools/llvm-readtapi/llvm-readtapi.cpp
+++ b/llvm/tools/llvm-readtapi/llvm-readtapi.cpp
@@ -127,7 +127,7 @@ int main(int Argc, char **Argv) {
   for (opt::Arg *A : Args.filtered(OPT_INPUT))
     Ctx.Inputs.push_back(A->getValue());
 
-  if (opt::Arg *A = Args.getLastArg(OPT_output)) {
+  if (opt::Arg *A = Args.getLastArg(OPT_output_EQ)) {
     std::string OutputLoc = std::move(A->getValue());
     std::error_code EC;
     Ctx.OutStream = std::make_unique<llvm::raw_fd_stream>(OutputLoc, EC);


        


More information about the llvm-commits mailing list