diff options
author | Alexey Karyakin <akaryaki@quicinc.com> | 2024-05-22 09:38:44 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-22 09:38:44 -0500 |
commit | 183beb33d7f8847c04870e425d75f27db1cf5847 (patch) | |
tree | 32df120db43a7f4131fac7d90f2ca4769a0c8973 /llvm/tools/llvm-objcopy/ObjcopyOptions.cpp | |
parent | 7630379156ec08c9d7b1ea3c03c09e7dc89ef4ee (diff) | |
download | llvm-183beb33d7f8847c04870e425d75f27db1cf5847.zip llvm-183beb33d7f8847c04870e425d75f27db1cf5847.tar.gz llvm-183beb33d7f8847c04870e425d75f27db1cf5847.tar.bz2 |
[llvm-objcopy] Check for missing argument values (#70710)
Report an error if a required value for a command line argument is
missing.
Diffstat (limited to 'llvm/tools/llvm-objcopy/ObjcopyOptions.cpp')
-rw-r--r-- | llvm/tools/llvm-objcopy/ObjcopyOptions.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/tools/llvm-objcopy/ObjcopyOptions.cpp b/llvm/tools/llvm-objcopy/ObjcopyOptions.cpp index a189733..4ab3b72 100644 --- a/llvm/tools/llvm-objcopy/ObjcopyOptions.cpp +++ b/llvm/tools/llvm-objcopy/ObjcopyOptions.cpp @@ -571,6 +571,12 @@ objcopy::parseObjcopyOptions(ArrayRef<const char *> RawArgsArr, llvm::opt::InputArgList InputArgs = T.ParseArgs(ArgsArr, MissingArgumentIndex, MissingArgumentCount); + if (MissingArgumentCount) + return createStringError( + errc::invalid_argument, + "argument to '%s' is missing (expected %d value(s))", + InputArgs.getArgString(MissingArgumentIndex), MissingArgumentCount); + if (InputArgs.size() == 0 && DashDash == RawArgsArr.end()) { printHelp(T, errs(), ToolType::Objcopy); exit(1); |