Driver: Fix arg_iterator typing to reflect that it is really an iterator over Arg*s.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105838 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Driver/ArgList.cpp b/lib/Driver/ArgList.cpp
index f40413c..1b6ba94 100644
--- a/lib/Driver/ArgList.cpp
+++ b/lib/Driver/ArgList.cpp
@@ -147,8 +147,8 @@
OptSpecifier Id1, OptSpecifier Id2) const {
for (arg_iterator it = filtered_begin(Id0, Id1, Id2),
ie = filtered_end(); it != ie; ++it) {
- it->claim();
- it->render(*this, Output);
+ (*it)->claim();
+ (*it)->render(*this, Output);
}
}
@@ -156,9 +156,9 @@
OptSpecifier Id1, OptSpecifier Id2) const {
for (arg_iterator it = filtered_begin(Id0, Id1, Id2),
ie = filtered_end(); it != ie; ++it) {
- it->claim();
- for (unsigned i = 0, e = it->getNumValues(); i != e; ++i)
- Output.push_back(it->getValue(*this, i));
+ (*it)->claim();
+ for (unsigned i = 0, e = (*it)->getNumValues(); i != e; ++i)
+ Output.push_back((*it)->getValue(*this, i));
}
}
@@ -167,14 +167,14 @@
bool Joined) const {
for (arg_iterator it = filtered_begin(Id0),
ie = filtered_end(); it != ie; ++it) {
- it->claim();
+ (*it)->claim();
if (Joined) {
Output.push_back(MakeArgString(llvm::StringRef(Translation) +
- it->getValue(*this, 0)));
+ (*it)->getValue(*this, 0)));
} else {
Output.push_back(Translation);
- Output.push_back(it->getValue(*this, 0));
+ Output.push_back((*it)->getValue(*this, 0));
}
}
}
@@ -182,7 +182,7 @@
void ArgList::ClaimAllArgs(OptSpecifier Id0) const {
for (arg_iterator it = filtered_begin(Id0),
ie = filtered_end(); it != ie; ++it)
- it->claim();
+ (*it)->claim();
}
const char *ArgList::MakeArgString(const llvm::Twine &T) const {
diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp
index d47efbc..d2c1f2d 100644
--- a/lib/Driver/Tools.cpp
+++ b/lib/Driver/Tools.cpp
@@ -157,18 +157,18 @@
for (arg_iterator it = Args.filtered_begin(options::OPT_MT,
options::OPT_MQ),
ie = Args.filtered_end(); it != ie; ++it) {
+ const Arg *A = *it;
+ A->claim();
- it->claim();
-
- if (it->getOption().matches(options::OPT_MQ)) {
+ if (A->getOption().matches(options::OPT_MQ)) {
CmdArgs.push_back("-MT");
llvm::SmallString<128> Quoted;
- QuoteTarget(it->getValue(Args), Quoted);
+ QuoteTarget(A->getValue(Args), Quoted);
CmdArgs.push_back(Args.MakeArgString(Quoted));
// -MT flag - no change
} else {
- it->render(Args, CmdArgs);
+ A->render(Args, CmdArgs);
}
}
@@ -639,8 +639,8 @@
for (arg_iterator it = Args.filtered_begin(options::OPT_m_x86_Features_Group),
ie = Args.filtered_end(); it != ie; ++it) {
- llvm::StringRef Name = it->getOption().getName();
- it->claim();
+ llvm::StringRef Name = (*it)->getOption().getName();
+ (*it)->claim();
// Skip over "-m".
assert(Name.startswith("-m") && "Invalid feature name.");
@@ -1428,14 +1428,14 @@
Args.AddAllArgValues(CmdArgs, options::OPT_Xclang);
for (arg_iterator it = Args.filtered_begin(options::OPT_mllvm),
ie = Args.filtered_end(); it != ie; ++it) {
- it->claim();
+ (*it)->claim();
// We translate this by hand to the -cc1 argument, since nightly test uses
// it and developers have been trained to spell it with -mllvm.
- if (llvm::StringRef(it->getValue(Args, 0)) == "-disable-llvm-optzns")
+ if (llvm::StringRef((*it)->getValue(Args, 0)) == "-disable-llvm-optzns")
CmdArgs.push_back("-disable-llvm-optzns");
else
- it->render(Args, CmdArgs);
+ (*it)->render(Args, CmdArgs);
}
if (Output.getType() == types::TY_Dependencies) {
@@ -1492,8 +1492,8 @@
// we are allowing compilation to continue.
for (arg_iterator it = Args.filtered_begin(options::OPT_pg),
ie = Args.filtered_end(); it != ie; ++it) {
- it->claim();
- D.Diag(clang::diag::warn_drv_clang_unsupported) << it->getAsString(Args);
+ (*it)->claim();
+ D.Diag(clang::diag::warn_drv_clang_unsupported) << (*it)->getAsString(Args);
}
// Claim some arguments which clang supports automatically.
@@ -1860,10 +1860,10 @@
for (arg_iterator it = Args.filtered_begin(options::OPT_f_Group,
options::OPT_fsyntax_only),
ie = Args.filtered_end(); it != ie; ++it) {
- if (!it->getOption().matches(options::OPT_fbuiltin_strcat) &&
- !it->getOption().matches(options::OPT_fbuiltin_strcpy)) {
- it->claim();
- it->render(Args, CmdArgs);
+ if (!(*it)->getOption().matches(options::OPT_fbuiltin_strcat) &&
+ !(*it)->getOption().matches(options::OPT_fbuiltin_strcpy)) {
+ (*it)->claim();
+ (*it)->render(Args, CmdArgs);
}
}
} else
diff --git a/lib/Frontend/CompilerInvocation.cpp b/lib/Frontend/CompilerInvocation.cpp
index b2f1ec6..450a6de 100644
--- a/lib/Frontend/CompilerInvocation.cpp
+++ b/lib/Frontend/CompilerInvocation.cpp
@@ -1092,33 +1092,34 @@
// Add -I... and -F... options in order.
for (arg_iterator it = Args.filtered_begin(OPT_I, OPT_F),
ie = Args.filtered_end(); it != ie; ++it)
- Opts.AddPath(it->getValue(Args), frontend::Angled, true,
- /*IsFramework=*/ it->getOption().matches(OPT_F));
+ Opts.AddPath((*it)->getValue(Args), frontend::Angled, true,
+ /*IsFramework=*/ (*it)->getOption().matches(OPT_F));
// Add -iprefix/-iwith-prefix/-iwithprefixbefore options.
llvm::StringRef Prefix = ""; // FIXME: This isn't the correct default prefix.
for (arg_iterator it = Args.filtered_begin(OPT_iprefix, OPT_iwithprefix,
OPT_iwithprefixbefore),
ie = Args.filtered_end(); it != ie; ++it) {
- if (it->getOption().matches(OPT_iprefix))
- Prefix = it->getValue(Args);
- else if (it->getOption().matches(OPT_iwithprefix))
- Opts.AddPath(Prefix.str() + it->getValue(Args),
+ const Arg *A = *it;
+ if (A->getOption().matches(OPT_iprefix))
+ Prefix = A->getValue(Args);
+ else if (A->getOption().matches(OPT_iwithprefix))
+ Opts.AddPath(Prefix.str() + A->getValue(Args),
frontend::System, false, false);
else
- Opts.AddPath(Prefix.str() + it->getValue(Args),
+ Opts.AddPath(Prefix.str() + A->getValue(Args),
frontend::Angled, false, false);
}
for (arg_iterator it = Args.filtered_begin(OPT_idirafter),
ie = Args.filtered_end(); it != ie; ++it)
- Opts.AddPath(it->getValue(Args), frontend::After, true, false);
+ Opts.AddPath((*it)->getValue(Args), frontend::After, true, false);
for (arg_iterator it = Args.filtered_begin(OPT_iquote),
ie = Args.filtered_end(); it != ie; ++it)
- Opts.AddPath(it->getValue(Args), frontend::Quoted, true, false);
+ Opts.AddPath((*it)->getValue(Args), frontend::Quoted, true, false);
for (arg_iterator it = Args.filtered_begin(OPT_isystem),
ie = Args.filtered_end(); it != ie; ++it)
- Opts.AddPath(it->getValue(Args), frontend::System, true, false);
+ Opts.AddPath((*it)->getValue(Args), frontend::System, true, false);
// FIXME: Need options for the various environment variables!
}
@@ -1325,10 +1326,10 @@
// Add macros from the command line.
for (arg_iterator it = Args.filtered_begin(OPT_D, OPT_U),
ie = Args.filtered_end(); it != ie; ++it) {
- if (it->getOption().matches(OPT_D))
- Opts.addMacroDef(it->getValue(Args));
+ if ((*it)->getOption().matches(OPT_D))
+ Opts.addMacroDef((*it)->getValue(Args));
else
- Opts.addMacroUndef(it->getValue(Args));
+ Opts.addMacroUndef((*it)->getValue(Args));
}
Opts.MacroIncludes = Args.getAllArgValues(OPT_imacros);
@@ -1337,16 +1338,17 @@
for (arg_iterator it = Args.filtered_begin(OPT_include, OPT_include_pch,
OPT_include_pth),
ie = Args.filtered_end(); it != ie; ++it) {
+ const Arg *A = *it;
// PCH is handled specially, we need to extra the original include path.
- if (it->getOption().matches(OPT_include_pch)) {
+ if (A->getOption().matches(OPT_include_pch)) {
std::string OriginalFile =
- PCHReader::getOriginalSourceFile(it->getValue(Args), Diags);
+ PCHReader::getOriginalSourceFile(A->getValue(Args), Diags);
if (OriginalFile.empty())
continue;
Opts.Includes.push_back(OriginalFile);
} else
- Opts.Includes.push_back(it->getValue(Args));
+ Opts.Includes.push_back(A->getValue(Args));
}
// Include 'altivec.h' if -faltivec option present
@@ -1355,11 +1357,12 @@
for (arg_iterator it = Args.filtered_begin(OPT_remap_file),
ie = Args.filtered_end(); it != ie; ++it) {
+ const Arg *A = *it;
std::pair<llvm::StringRef,llvm::StringRef> Split =
- llvm::StringRef(it->getValue(Args)).split(';');
+ llvm::StringRef(A->getValue(Args)).split(';');
if (Split.second.empty()) {
- Diags.Report(diag::err_drv_invalid_remap_file) << it->getAsString(Args);
+ Diags.Report(diag::err_drv_invalid_remap_file) << A->getAsString(Args);
continue;
}
@@ -1414,7 +1417,7 @@
// Issue errors on unknown arguments.
for (arg_iterator it = Args->filtered_begin(OPT_UNKNOWN),
ie = Args->filtered_end(); it != ie; ++it)
- Diags.Report(diag::err_drv_unknown_argument) << it->getAsString(*Args);
+ Diags.Report(diag::err_drv_unknown_argument) << (*it)->getAsString(*Args);
ParseAnalyzerArgs(Res.getAnalyzerOpts(), *Args, Diags);
ParseCodeGenArgs(Res.getCodeGenOpts(), *Args, Diags);