Commit d973c2ea authored by Sébastien Villemot's avatar Sébastien Villemot

Preprocessor: give more explicit error message when lead or lag is used inside 'planner_objective'

parent 3218d3c7
......@@ -235,6 +235,9 @@ ParsingDriver::add_model_variable(int symb_id, int lag)
if (type == eModelLocalVariable && lag != 0)
error("Model local variable " + mod_file->symbol_table.getName(symb_id) + " cannot be given a lead or a lag.");
if (dynamic_cast<StaticModel *>(model_tree) != NULL && lag != 0)
error("Leads and lags on variables are forbidden in 'planner_objective'.");
// 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);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment