diff --git a/src/DynareBison.yy b/src/DynareBison.yy index fa7ee5d4d865c6744fd291bde5a3111eff90fc41..deabedfa3922ddeddabae1dc95d9d56125a348d2 100644 --- a/src/DynareBison.yy +++ b/src/DynareBison.yy @@ -173,7 +173,8 @@ str_tolower(string s) %token VLISTLOG VLISTPER SPECTRAL_DENSITY INIT2SHOCKS %token RESTRICTION RESTRICTION_FNAME CROSS_RESTRICTIONS NLAGS CONTEMP_REDUCED_FORM REAL_PSEUDO_FORECAST %token DUMMY_OBS NSTATES INDXSCALESSTATES NO_BAYESIAN_PRIOR SPECIFICATION SIMS_ZHA -%token <string> ALPHA BETA ABAND NINV CMS NCMS CNUM GAMMA INV_GAMMA INV_GAMMA1 INV_GAMMA2 NORMAL UNIFORM EPS PDF FIG DR NONE PRIOR PRIOR_VARIANCE HESSIAN IDENTITY_MATRIX DIRICHLET DIAGONAL OPTIMAL MFS RESIDUAL +%token <string> ALPHA BETA ABAND NINV CMS NCMS CNUM GAMMA INV_GAMMA INV_GAMMA1 INV_GAMMA2 NORMAL UNIFORM EPS PDF FIG DR NONE PRIOR DIRICHLET MFS RESIDUAL +%token PRIOR_VARIANCE HESSIAN IDENTITY_MATRIX %token GSIG2_LMDM Q_DIAG FLAT_PRIOR NCSK NSTD WEIBULL WEIBULL_PDF %token INDXPARR INDXOVR INDXAP APBAND INDXIMF INDXFORE FOREBAND INDXGFOREHAT INDXGIMFHAT %token INDXESTIMA INDXGDLS EQ_MS FILTER_COVARIANCE UPDATED_COVARIANCE FILTER_DECOMPOSITION SMOOTHED_STATE_UNCERTAINTY SMOOTHER_REDUX @@ -4354,10 +4355,11 @@ o_analytic_derivation_mode : ANALYTIC_DERIVATION_MODE EQUAL signed_number { driv o_endogenous_prior : ENDOGENOUS_PRIOR { driver.option_num("endogenous_prior", "true"); } o_use_univariate_filters_if_singularity_is_detected : USE_UNIVARIATE_FILTERS_IF_SINGULARITY_IS_DETECTED EQUAL INT_NUMBER { driver.option_num("use_univariate_filters_if_singularity_is_detected", $3); } o_mcmc_jumping_covariance : MCMC_JUMPING_COVARIANCE EQUAL HESSIAN - { driver.option_str("MCMC_jumping_covariance", $3); } | MCMC_JUMPING_COVARIANCE EQUAL PRIOR_VARIANCE - { driver.option_str("MCMC_jumping_covariance", $3); } + { driver.option_str("MCMC_jumping_covariance", "hessian"); } + | MCMC_JUMPING_COVARIANCE EQUAL PRIOR_VARIANCE + { driver.option_str("MCMC_jumping_covariance", "prior_variance"); } | MCMC_JUMPING_COVARIANCE EQUAL IDENTITY_MATRIX - { driver.option_str("MCMC_jumping_covariance", $3); } + { driver.option_str("MCMC_jumping_covariance", "identity_matrix"); } | MCMC_JUMPING_COVARIANCE EQUAL filename { driver.option_str("MCMC_jumping_covariance", $3); } ; diff --git a/src/DynareFlex.ll b/src/DynareFlex.ll index 85f0c9f5dc9fe2eeaa5b97747f1e248ea2ac1e88..8574a94cb0481bfee6f1e7afefde00c308e1c8cf 100644 --- a/src/DynareFlex.ll +++ b/src/DynareFlex.ll @@ -471,10 +471,7 @@ DATE -?[0-9]+([ya]|m([1-9]|1[0-2])|q[1-4]|[sh][12]) yylval->emplace<string>(yytext); return token::DIRICHLET; } -<DYNARE_STATEMENT>weibull { - yylval->emplace<string>(yytext); - return token::WEIBULL; -} +<DYNARE_STATEMENT>weibull {return token::WEIBULL;} <DYNARE_STATEMENT>normal { yylval->emplace<string>(yytext); return token::NORMAL; @@ -607,18 +604,9 @@ DATE -?[0-9]+([ya]|m([1-9]|1[0-2])|q[1-4]|[sh][12]) <DYNARE_STATEMENT>substitute_libs {return token::SUBSTITUTE_LIBS;} <DYNARE_STATEMENT>compiler {return token::COMPILER;} <DYNARE_STATEMENT>instruments {return token::INSTRUMENTS;} -<DYNARE_STATEMENT>hessian { - yylval->emplace<string>(yytext); - return token::HESSIAN; -} -<DYNARE_STATEMENT>prior_variance { - yylval->emplace<string>(yytext); - return token::PRIOR_VARIANCE; -} -<DYNARE_STATEMENT>identity_matrix { - yylval->emplace<string>(yytext); - return token::IDENTITY_MATRIX; -} +<DYNARE_STATEMENT>hessian {return token::HESSIAN;} +<DYNARE_STATEMENT>prior_variance {return token::PRIOR_VARIANCE;} +<DYNARE_STATEMENT>identity_matrix {return token::IDENTITY_MATRIX;} <DYNARE_STATEMENT>mcmc_jumping_covariance {return token::MCMC_JUMPING_COVARIANCE;} /* These four (var, varexo, varexo_det, parameters) are for change_type */ @@ -718,14 +706,6 @@ DATE -?[0-9]+([ya]|m([1-9]|1[0-2])|q[1-4]|[sh][12]) <DYNARE_STATEMENT>lmmcp {return token::LMMCP;} <DYNARE_STATEMENT>additional_optimizer_steps {return token::ADDITIONAL_OPTIMIZER_STEPS;} <DYNARE_STATEMENT>bartlett_kernel_lag {return token::BARTLETT_KERNEL_LAG; } -<DYNARE_STATEMENT>optimal { - yylval->emplace<string>(yytext); - return token::OPTIMAL; -} -<DYNARE_STATEMENT>diagonal { - yylval->emplace<string>(yytext); - return token::DIAGONAL; -} <DYNARE_STATEMENT>gmm {return token::GMM;} <DYNARE_STATEMENT>smm {return token::SMM;} <DYNARE_STATEMENT>irf_matching {return token::IRF_MATCHING;}