diff --git a/src/SymbolTable.cc b/src/SymbolTable.cc index d836566dc08272978d9f77e79f1bfc5f4095b897..ead51b0bd8e86d09dd496de0750cce5ea77ffa58 100644 --- a/src/SymbolTable.cc +++ b/src/SymbolTable.cc @@ -437,8 +437,9 @@ SymbolTable::addLeadAuxiliaryVarInternal(bool endo, int index, expr_t expr_arg) exit(EXIT_FAILURE); } - aux_vars.emplace_back(symb_id, (endo ? AuxVarType::endoLead : AuxVarType::exoLead), 0, 0, 0, 0, - expr_arg, ""); + aux_var_info = AuxVarInfo(symb_id, (endo ? AuxVarType::endoLead : AuxVarType::exoLead), 0, 0, 0, + 0, expr_arg, ""); + aux_vars.push_back(aux_var_info); return symb_id; } @@ -461,8 +462,9 @@ SymbolTable::addLagAuxiliaryVarInternal(bool endo, int orig_symb_id, int orig_le exit(EXIT_FAILURE); } - aux_vars.emplace_back(symb_id, (endo ? AuxVarType::endoLag : AuxVarType::exoLag), orig_symb_id, - orig_lead_lag, 0, 0, expr_arg, ""); + aux_var_info = AuxVarInfo(symb_id, (endo ? AuxVarType::endoLag : AuxVarType::exoLag), orig_symb_id, + orig_lead_lag, 0, 0, expr_arg, ""); + aux_vars.push_back(aux_var_info); return symb_id; } @@ -511,7 +513,8 @@ SymbolTable::addExpectationAuxiliaryVar(int information_set, int index, exit(EXIT_FAILURE); } - aux_vars.emplace_back(symb_id, AuxVarType::expectation, 0, 0, 0, information_set, expr_arg, ""); + aux_var_info = AuxVarInfo(symb_id, AuxVarType::expectation, 0, 0, 0, information_set, expr_arg, ""); + aux_vars.emplace_back(aux_var_info); return symb_id; } @@ -534,8 +537,9 @@ SymbolTable::addLogTransformAuxiliaryVar(int orig_symb_id, int orig_lead_lag, exit(EXIT_FAILURE); } - aux_vars.emplace_back(symb_id, AuxVarType::logTransform, orig_symb_id, orig_lead_lag, 0, 0, - expr_arg, ""); + aux_var_info = AuxVarInfo(symb_id, AuxVarType::logTransform, orig_symb_id, orig_lead_lag, 0, 0, + expr_arg, ""); + aux_vars.push_back(aux_var_info); return symb_id; } @@ -557,7 +561,8 @@ SymbolTable::addDiffLagAuxiliaryVar(int index, expr_t expr_arg, int orig_symb_id exit(EXIT_FAILURE); } - aux_vars.emplace_back(symb_id, AuxVarType::diffLag, orig_symb_id, orig_lag, 0, 0, expr_arg, ""); + aux_var_info = AuxVarInfo(symb_id, AuxVarType::diffLag, orig_symb_id, orig_lag, 0, 0, expr_arg, ""); + aux_vars.psuh_back(aux_var_info); return symb_id; } @@ -579,7 +584,8 @@ SymbolTable::addDiffLeadAuxiliaryVar(int index, expr_t expr_arg, int orig_symb_i exit(EXIT_FAILURE); } - aux_vars.emplace_back(symb_id, AuxVarType::diffLead, orig_symb_id, orig_lead, 0, 0, expr_arg, ""); + aux_var_info = AuxVarInfo(symb_id, AuxVarType::diffLead, orig_symb_id, orig_lead, 0, 0, expr_arg, ""); + aux_vars.push_back(aux_var_info); return symb_id; } @@ -646,7 +652,8 @@ SymbolTable::addMultiplierAuxiliaryVar(int index) noexcept(false) exit(EXIT_FAILURE); } - aux_vars.emplace_back(symb_id, AuxVarType::multiplier, 0, 0, index, 0, nullptr, ""); + aux_var_info = AuxVarInfo(symb_id, AuxVarType::multiplier, 0, 0, index, 0, nullptr, ""); + aux_vars.push_back(aux_var_info); return symb_id; } @@ -667,8 +674,9 @@ SymbolTable::addDiffForwardAuxiliaryVar(int orig_symb_id, int orig_lead_lag, exit(EXIT_FAILURE); } - aux_vars.emplace_back(symb_id, AuxVarType::diffForward, orig_symb_id, orig_lead_lag, 0, 0, - expr_arg, ""); + aux_var_info = AuxVarInfo(symb_id, AuxVarType::diffForward, orig_symb_id, orig_lead_lag, 0, 0, + expr_arg, ""); + aux_vars.push_back(aux_var_info); return symb_id; } @@ -689,7 +697,8 @@ SymbolTable::addPacExpectationAuxiliaryVar(const string& name, expr_t expr_arg) exit(EXIT_FAILURE); } - aux_vars.emplace_back(symb_id, AuxVarType::pacExpectation, 0, 0, 0, 0, expr_arg, ""); + aux_var_info = AuxVarInfo(symb_id, AuxVarType::pacExpectation, 0, 0, 0, 0, expr_arg, ""); + aux_vars.push_back(aux_var_info); return symb_id; } @@ -710,7 +719,8 @@ SymbolTable::addPacTargetNonstationaryAuxiliaryVar(const string& name, expr_t ex exit(EXIT_FAILURE); } - aux_vars.emplace_back(symb_id, AuxVarType::pacTargetNonstationary, 0, 0, 0, 0, expr_arg, ""); + aux_var_info = AuxVarInfo(symb_id, AuxVarType::pacTargetNonstationary, 0, 0, 0, 0, expr_arg, ""); + aux_vars.push_back(aux_var_info); return symb_id; }