Driver: Fix off by one in ParseOneArg; this code is ugly but will be

replaced anyway.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66101 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Daniel Dunbar 2009-03-04 23:03:35 +00:00
Родитель f781c4192e
Коммит 5cc8c639cf
1 изменённых файлов: 2 добавлений и 2 удалений

Просмотреть файл

@ -127,11 +127,11 @@ Arg *OptTable::ParseOneArg(const ArgList &Args, unsigned &Index,
return new PositionalArg(getOption(InputOpt), Index++); return new PositionalArg(getOption(InputOpt), Index++);
for (unsigned j = UnknownOpt + 1; j < getNumOptions(); ++j) { for (unsigned j = UnknownOpt + 1; j < getNumOptions(); ++j) {
const char *OptName = getOptionName((options::ID) (j + 1)); const char *OptName = getOptionName((options::ID) j);
// Arguments are only accepted by options which prefix them. // Arguments are only accepted by options which prefix them.
if (memcmp(Str, OptName, strlen(OptName)) == 0) if (memcmp(Str, OptName, strlen(OptName)) == 0)
if (Arg *A = getOption((options::ID) (j + 1))->accept(Args, Index)) if (Arg *A = getOption((options::ID) j)->accept(Args, Index))
return A; return A;
} }