forked from qt-creator/qt-creator
Merge remote-tracking branch 'gerrit/2.6'
Conflicts: src/libs/utils/environment.cpp src/plugins/android/androidtoolchain.cpp src/plugins/projectexplorer/gcctoolchain.cpp src/plugins/qt4projectmanager/qt4buildconfiguration.cpp src/plugins/qtsupport/baseqtversion.cpp src/shared/proparser/qmakeevaluator.cpp Change-Id: I554e96445a4d2b9ba0cc173ecd766091ee921aa2
This commit is contained in:
@@ -184,7 +184,6 @@ QMakeEvaluator::QMakeEvaluator(QMakeGlobals *option,
|
||||
#ifdef PROEVALUATOR_CUMULATIVE
|
||||
m_skipLevel = 0;
|
||||
#endif
|
||||
m_loopLevel = 0;
|
||||
m_listCount = 0;
|
||||
m_valuemapStack.push(ProValueMap());
|
||||
m_valuemapInited = false;
|
||||
@@ -673,6 +672,21 @@ QMakeEvaluator::VisitReturn QMakeEvaluator::visitProBlock(
|
||||
invert = false;
|
||||
curr.clear();
|
||||
continue;
|
||||
case TokReturn:
|
||||
m_returnValue = curr;
|
||||
curr.clear();
|
||||
ret = ReturnReturn;
|
||||
goto ctrlstm;
|
||||
case TokBreak:
|
||||
ret = ReturnBreak;
|
||||
goto ctrlstm;
|
||||
case TokNext:
|
||||
ret = ReturnNext;
|
||||
ctrlstm:
|
||||
if (!m_skipLevel && okey != or_op)
|
||||
return ret;
|
||||
okey = false, or_op = true; // force next evaluation
|
||||
continue;
|
||||
default: {
|
||||
const ushort *oTokPtr = --tokPtr;
|
||||
evaluateExpression(tokPtr, &curr, false);
|
||||
@@ -752,7 +766,6 @@ QMakeEvaluator::VisitReturn QMakeEvaluator::visitProLoop(
|
||||
else
|
||||
traceMsg("entering loop for %s over %s", dbgKey(variable), dbgStrList(list));
|
||||
|
||||
m_loopLevel++;
|
||||
forever {
|
||||
if (infinite) {
|
||||
if (!variable.isEmpty())
|
||||
@@ -789,7 +802,6 @@ QMakeEvaluator::VisitReturn QMakeEvaluator::visitProLoop(
|
||||
}
|
||||
}
|
||||
do_break:
|
||||
m_loopLevel--;
|
||||
|
||||
traceMsg("done looping");
|
||||
|
||||
@@ -1565,8 +1577,6 @@ ProStringList QMakeEvaluator::evaluateFunction(
|
||||
} else {
|
||||
m_valuemapStack.push(ProValueMap());
|
||||
m_locationStack.push(m_current);
|
||||
int loopLevel = m_loopLevel;
|
||||
m_loopLevel = 0;
|
||||
|
||||
ProStringList args;
|
||||
for (int i = 0; i < argumentsList.count(); ++i) {
|
||||
@@ -1579,7 +1589,6 @@ ProStringList QMakeEvaluator::evaluateFunction(
|
||||
ret = m_returnValue;
|
||||
m_returnValue.clear();
|
||||
|
||||
m_loopLevel = loopLevel;
|
||||
m_current = m_locationStack.pop();
|
||||
m_valuemapStack.pop();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user