From 33b1359905fb4bc2448fe3a0ff8ee3c04a5632ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Villemot?= Date: Mon, 4 Jun 2018 12:48:09 +0200 Subject: [PATCH] Port to C++11 emplace_back() method on containers Performed using modernize-use-emplace from clang-tidy. Manual intervention was needed to transform a NULL into nullptr in SymbolTable.cc. https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-emplace.html --- src/DynamicModel.cc | 6 ++-- src/ExprNode.cc | 64 ++++++++++++++++++++--------------------- src/ModelTree.cc | 8 +++--- src/ParsingDriver.cc | 12 ++++---- src/SteadyStateModel.cc | 4 +-- src/SymbolTable.cc | 18 ++++++------ 6 files changed, 56 insertions(+), 56 deletions(-) diff --git a/src/DynamicModel.cc b/src/DynamicModel.cc index 639f78ce..bc3d030a 100644 --- a/src/DynamicModel.cc +++ b/src/DynamicModel.cc @@ -3377,7 +3377,7 @@ DynamicModel::writeOutput(ostream &output, const string &basename, bool block_de if ((i < n_obs) || (i >= nb_diag + n_obs) || (j1 >= nb_diag)) for (int k = n_obs; k < i_nz_state_var[i]; k++) { - v_index_KF.push_back(make_pair(i + j1 * n, make_pair(i + k * n, k + j1_n_state))); + v_index_KF.emplace_back(i + j1 * n, make_pair(i + k * n, k + j1_n_state)); } } int size_v_index_KF = v_index_KF.size(); @@ -3396,7 +3396,7 @@ DynamicModel::writeOutput(ostream &output, const string &basename, bool block_de for (int k = n_obs; k < i_nz_state_var[j]; k++) { int k_n = k * n; - v_index_KF_2.push_back(make_pair(i * n + j, make_pair(i + k_n - n_n_obs, j + k_n))); + v_index_KF_2.emplace_back(i * n + j, make_pair(i + k_n - n_n_obs, j + k_n)); } } int size_v_index_KF_2 = v_index_KF_2.size(); @@ -4351,7 +4351,7 @@ DynamicModel::collectBlockVariables() } } } - block_var_exo.push_back(make_pair(tmp_var_exo, count_col_exo)); + block_var_exo.emplace_back(tmp_var_exo, count_col_exo); } } diff --git a/src/ExprNode.cc b/src/ExprNode.cc index e3715ed8..05f25597 100644 --- a/src/ExprNode.cc +++ b/src/ExprNode.cc @@ -2703,55 +2703,55 @@ UnaryOpNode::normalizeEquation(int var_endo, vectornormalizeEquation(var_endo, List_of_Op_RHS)); + V_arguments.emplace_back(argument->normalizeEquation(var_endo, List_of_Op_RHS)); present = present || V_arguments[V_arguments.size()-1].first; V_expr_t.push_back(V_arguments[V_arguments.size()-1].second); } diff --git a/src/ModelTree.cc b/src/ModelTree.cc index bd6f7360..18468d0c 100644 --- a/src/ModelTree.cc +++ b/src/ModelTree.cc @@ -918,21 +918,21 @@ ModelTree::reduceBlocksAndTypeDetermination(const dynamic_jacob_map_t &dynamic_j { block_type_size_mfs.push_back(make_pair(make_pair(Simulation_Type, eq), make_pair(Blck_Size, MFS_Size))); block_lag_lead.push_back(make_pair(Lag, Lead)); - block_col_type.push_back(make_pair(make_pair(l_n_static, l_n_forward), make_pair(l_n_backward, l_n_mixed))); + block_col_type.emplace_back(make_pair(l_n_static, l_n_forward), make_pair(l_n_backward, l_n_mixed)); } } else { block_type_size_mfs.push_back(make_pair(make_pair(Simulation_Type, eq), make_pair(Blck_Size, MFS_Size))); block_lag_lead.push_back(make_pair(Lag, Lead)); - block_col_type.push_back(make_pair(make_pair(l_n_static, l_n_forward), make_pair(l_n_backward, l_n_mixed))); + block_col_type.emplace_back(make_pair(l_n_static, l_n_forward), make_pair(l_n_backward, l_n_mixed)); } } else { block_type_size_mfs.push_back(make_pair(make_pair(Simulation_Type, eq), make_pair(Blck_Size, MFS_Size))); block_lag_lead.push_back(make_pair(Lag, Lead)); - block_col_type.push_back(make_pair(make_pair(l_n_static, l_n_forward), make_pair(l_n_backward, l_n_mixed))); + block_col_type.emplace_back(make_pair(l_n_static, l_n_forward), make_pair(l_n_backward, l_n_mixed)); } prev_Type = Simulation_Type; eq += Blck_Size; @@ -1745,7 +1745,7 @@ ModelTree::addEquation(expr_t eq, int lineno, const vector { int n = equations.size(); for (const auto & eq_tag : eq_tags) - equation_tags.push_back(make_pair(n, eq_tag)); + equation_tags.emplace_back(n, eq_tag); addEquation(eq, lineno); } diff --git a/src/ParsingDriver.cc b/src/ParsingDriver.cc index caa4caa9..fd132924 100644 --- a/src/ParsingDriver.cc +++ b/src/ParsingDriver.cc @@ -144,7 +144,7 @@ ParsingDriver::create_error_string(const Dynare::parser::location_type &l, const { ostringstream stream; create_error_string(l, m, stream); - model_errors.push_back(make_pair(var, stream.str())); + model_errors.emplace_back(var, stream.str()); } void @@ -173,7 +173,7 @@ ParsingDriver::undeclared_model_variable_error(const string &m, const string &va stream << m; if (nostrict) stream << " automatically declared exogenous."; - undeclared_model_variable_errors.push_back(make_pair(var, stream.str())); + undeclared_model_variable_errors.emplace_back(var, stream.str()); } void @@ -370,7 +370,7 @@ ParsingDriver::add_predetermined_variable(string *name) void ParsingDriver::add_equation_tags(string *key, string *value) { - eq_tags.push_back(make_pair(*key, *value)); + eq_tags.emplace_back(*key, *value); delete key; delete value; } @@ -623,7 +623,7 @@ ParsingDriver::add_VAR_restriction_coeff(string *name1, string *name2, string *l void ParsingDriver::add_VAR_restriction_eq_or_crosseq(expr_t expr) { - var_restriction_eq_or_crosseq.push_back(make_pair(var_restriction_coeff, expr)); + var_restriction_eq_or_crosseq.emplace_back(var_restriction_coeff, expr); } void @@ -1182,7 +1182,7 @@ ParsingDriver::add_period(string *p1, string *p2) int p2_val = atoi(p2->c_str()); if (p1_val > p2_val) error("shocks/conditional_forecast_paths: can't have first period index greater than second index in range specification"); - det_shocks_periods.push_back(make_pair(p1_val, p2_val)); + det_shocks_periods.emplace_back(p1_val, p2_val); delete p1; delete p2; } @@ -1191,7 +1191,7 @@ void ParsingDriver::add_period(string *p1) { int p1_val = atoi(p1->c_str()); - det_shocks_periods.push_back(make_pair(p1_val, p1_val)); + det_shocks_periods.emplace_back(p1_val, p1_val); delete p1; } diff --git a/src/SteadyStateModel.cc b/src/SteadyStateModel.cc index 4f1e40a3..8af23696 100644 --- a/src/SteadyStateModel.cc +++ b/src/SteadyStateModel.cc @@ -39,7 +39,7 @@ SteadyStateModel::addDefinition(int symb_id, expr_t expr) // Add the variable vector v; v.push_back(symb_id); - def_table.push_back(make_pair(v, expr)); + def_table.emplace_back(v, expr); } void @@ -52,7 +52,7 @@ SteadyStateModel::addMultipleDefinitions(const vector &symb_ids, expr_t exp || symbol_table.getType(symb_id) == eModFileLocalVariable || symbol_table.getType(symb_id) == eParameter); } - def_table.push_back(make_pair(symb_ids, expr)); + def_table.emplace_back(symb_ids, expr); } void diff --git a/src/SymbolTable.cc b/src/SymbolTable.cc index 3bbbeef8..484c9f0f 100644 --- a/src/SymbolTable.cc +++ b/src/SymbolTable.cc @@ -624,7 +624,7 @@ SymbolTable::addLeadAuxiliaryVarInternal(bool endo, int index, expr_t expr_arg) exit(EXIT_FAILURE); } - aux_vars.push_back(AuxVarInfo(symb_id, (endo ? avEndoLead : avExoLead), 0, 0, 0, 0, expr_arg)); + aux_vars.emplace_back(symb_id, (endo ? avEndoLead : avExoLead), 0, 0, 0, 0, expr_arg); return symb_id; } @@ -650,7 +650,7 @@ SymbolTable::addLagAuxiliaryVarInternal(bool endo, int orig_symb_id, int orig_le exit(EXIT_FAILURE); } - aux_vars.push_back(AuxVarInfo(symb_id, (endo ? avEndoLag : avExoLag), orig_symb_id, orig_lead_lag, 0, 0, expr_arg)); + aux_vars.emplace_back(symb_id, (endo ? avEndoLag : avExoLag), orig_symb_id, orig_lead_lag, 0, 0, expr_arg); return symb_id; } @@ -698,7 +698,7 @@ SymbolTable::addExpectationAuxiliaryVar(int information_set, int index, expr_t e exit(EXIT_FAILURE); } - aux_vars.push_back(AuxVarInfo(symb_id, avExpectation, 0, 0, 0, information_set, expr_arg)); + aux_vars.emplace_back(symb_id, avExpectation, 0, 0, 0, information_set, expr_arg); return symb_id; } @@ -721,7 +721,7 @@ SymbolTable::addDiffLagAuxiliaryVar(int index, expr_t expr_arg, int orig_symb_id exit(EXIT_FAILURE); } - aux_vars.push_back(AuxVarInfo(symb_id, avDiffLag, orig_symb_id, orig_lag, 0, 0, expr_arg)); + aux_vars.emplace_back(symb_id, avDiffLag, orig_symb_id, orig_lag, 0, 0, expr_arg); return symb_id; } @@ -744,7 +744,7 @@ SymbolTable::addDiffAuxiliaryVar(int index, expr_t expr_arg, int orig_symb_id, i exit(EXIT_FAILURE); } - aux_vars.push_back(AuxVarInfo(symb_id, avDiff, orig_symb_id, orig_lag, 0, 0, expr_arg)); + aux_vars.emplace_back(symb_id, avDiff, orig_symb_id, orig_lag, 0, 0, expr_arg); return symb_id; } @@ -772,7 +772,7 @@ SymbolTable::addUnaryOpAuxiliaryVar(int index, expr_t expr_arg, int orig_symb_id exit(EXIT_FAILURE); } - aux_vars.push_back(AuxVarInfo(symb_id, avUnaryOp, orig_symb_id, orig_lag, 0, 0, expr_arg)); + aux_vars.emplace_back(symb_id, avUnaryOp, orig_symb_id, orig_lag, 0, 0, expr_arg); return symb_id; } @@ -794,7 +794,7 @@ SymbolTable::addVarModelEndoLagAuxiliaryVar(int orig_symb_id, int orig_lead_lag, exit(EXIT_FAILURE); } - aux_vars.push_back(AuxVarInfo(symb_id, avVarModel, orig_symb_id, orig_lead_lag, 0, 0, expr_arg)); + aux_vars.emplace_back(symb_id, avVarModel, orig_symb_id, orig_lead_lag, 0, 0, expr_arg); return symb_id; } @@ -816,7 +816,7 @@ SymbolTable::addMultiplierAuxiliaryVar(int index) throw (FrozenException) exit(EXIT_FAILURE); } - aux_vars.push_back(AuxVarInfo(symb_id, avMultiplier, 0, 0, index, 0, NULL)); + aux_vars.emplace_back(symb_id, avMultiplier, 0, 0, index, 0, nullptr); return symb_id; } @@ -837,7 +837,7 @@ SymbolTable::addDiffForwardAuxiliaryVar(int orig_symb_id, expr_t expr_arg) throw exit(EXIT_FAILURE); } - aux_vars.push_back(AuxVarInfo(symb_id, avDiffForward, orig_symb_id, 0, 0, 0, expr_arg)); + aux_vars.emplace_back(symb_id, avDiffForward, orig_symb_id, 0, 0, 0, expr_arg); return symb_id; } -- GitLab