[CommandLine] Don't allow unlimitted dashes for options. Part 1 or 5

Summary:
Prior to this patch, the CommandLine parser would strip an
unlimitted number of dashes from options.  This patch limits it to
two.

Reviewers: rnk

Reviewed By: rnk

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D61229

llvm-svn: 359480
This commit is contained in:
Don Hinton 2019-04-29 18:34:18 +00:00
parent 0a5c2b2449
commit 89e583b843
3 changed files with 6 additions and 6 deletions

View File

@ -1306,8 +1306,8 @@ bool CommandLineParser::ParseCommandLineOptions(int argc,
// option is another positional argument. If so, treat it as an argument,
// otherwise feed it to the eating positional.
ArgName = StringRef(argv[i] + 1);
// Eat leading dashes.
while (!ArgName.empty() && ArgName[0] == '-')
// Eat second dash.
if (!ArgName.empty() && ArgName[0] == '-')
ArgName = ArgName.substr(1);
Handler = LookupOption(*ChosenSubCommand, ArgName, Value);
@ -1318,8 +1318,8 @@ bool CommandLineParser::ParseCommandLineOptions(int argc,
} else { // We start with a '-', must be an argument.
ArgName = StringRef(argv[i] + 1);
// Eat leading dashes.
while (!ArgName.empty() && ArgName[0] == '-')
// Eat second dash.
if (!ArgName.empty() && ArgName[0] == '-')
ArgName = ArgName.substr(1);
Handler = LookupOption(*ChosenSubCommand, ArgName, Value);

View File

@ -13,7 +13,7 @@
; }
;
; RUN: llc -filetype=asm %s -o - | FileCheck %s
; RUN: llc -filetype=obj %s -o - | llvm-dwarfdump -v - ---debug-info | FileCheck %s --check-prefix=DWARF
; RUN: llc -filetype=obj %s -o - | llvm-dwarfdump -v - --debug-info | FileCheck %s --check-prefix=DWARF
; CHECK-LABEL: _main:
; CHECK: movaps {{.*}}, (%rsp)

View File

@ -1,5 +1,5 @@
RUN: llvm-dwarfdump %p/Inputs/dwarfdump.elf-mips64-64-bit-dwarf \
RUN: ---debug-line | FileCheck %s
RUN: --debug-line | FileCheck %s
# FIXME: llvm-dwarfdump's support for 64-bit dwarf is currently limited to
# .debug_line.