- Allowed aliases to nest up to 10 levels.
This commit is contained in:
Paul Beckingham
2011-07-10 17:58:07 -04:00
parent 2d30275889
commit d5849b0160

View File

@@ -566,8 +566,12 @@ void Arguments::apply_overrides ()
void Arguments::resolve_aliases () void Arguments::resolve_aliases ()
{ {
std::vector <std::string> expanded; std::vector <std::string> expanded;
bool something = false; bool something;
int safety_valve = 10;
do
{
something = false;
std::vector <Triple>::iterator arg; std::vector <Triple>::iterator arg;
for (arg = this->begin (); arg != this->end (); ++arg) for (arg = this->begin (); arg != this->end (); ++arg)
{ {
@@ -603,8 +607,11 @@ void Arguments::resolve_aliases ()
for (e = expanded.begin (); e != expanded.end (); ++e) for (e = expanded.begin (); e != expanded.end (); ++e)
this->push_back (Triple (*e, "", "")); this->push_back (Triple (*e, "", ""));
expanded.clear ();
categorize (); categorize ();
} }
}
while (something && --safety_valve > 0);
} }
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////