Forbid model local variables in planner_objective.
Otherwise the preprocessor crashes.time-shift
parent
23134353e3
commit
c45f45f58e
|
@ -323,6 +323,9 @@ ParsingDriver::add_model_variable(int symb_id, int lag)
|
||||||
if (dynamic_cast<StaticModel *>(model_tree) != NULL && lag != 0)
|
if (dynamic_cast<StaticModel *>(model_tree) != NULL && lag != 0)
|
||||||
error("Leads and lags on variables are forbidden in 'planner_objective'.");
|
error("Leads and lags on variables are forbidden in 'planner_objective'.");
|
||||||
|
|
||||||
|
if (dynamic_cast<StaticModel *>(model_tree) != NULL && type == eModelLocalVariable)
|
||||||
|
error("Model local variable " + mod_file->symbol_table.getName(symb_id) + " cannot be used in 'planner_objective'.");
|
||||||
|
|
||||||
// It makes sense to allow a lead/lag on parameters: during steady state calibration, endogenous and parameters can be swapped
|
// It makes sense to allow a lead/lag on parameters: during steady state calibration, endogenous and parameters can be swapped
|
||||||
return model_tree->AddVariable(symb_id, lag);
|
return model_tree->AddVariable(symb_id, lag);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue