diff --git a/DynareBison.yy b/DynareBison.yy index 2a9f25fb28d0bdb5d60c4ac266a59f3ecab09ec5..4ca4f619e80e2562917ba083d987a3202d5dfa08 100644 --- a/DynareBison.yy +++ b/DynareBison.yy @@ -89,7 +89,7 @@ class ParsingDriver; #define yylex driver.lexer->lex %} -%token AIM_SOLVER AR AUTOCORR +%token AIM_SOLVER ANALYTIC_DERIVATION AR AUTOCORR %token BAYESIAN_IRF BETA_PDF BLOCK %token BVAR_DENSITY BVAR_FORECAST %token BVAR_PRIOR_DECAY BVAR_PRIOR_FLAT BVAR_PRIOR_LAMBDA @@ -1498,6 +1498,7 @@ estimation_options : o_datafile | o_lyapunov | o_lyapunov_fixed_point_tol | o_lyapunov_doubling_tol + | o_analytic_derivation ; list_optim_option : QUOTED_STRING COMMA QUOTED_STRING @@ -2525,6 +2526,7 @@ o_regimes : REGIMES { driver.option_num("ms.regimes","1"); }; o_regime : REGIME EQUAL INT_NUMBER { driver.option_num("ms.regime",$3); }; o_data_obs_nbr : DATA_OBS_NBR EQUAL INT_NUMBER { driver.option_num("ms.forecast_data_obs",$3); }; o_discretionary_tol: DISCRETIONARY_TOL EQUAL non_negative_number { driver.option_num("discretionary_tol",$3); }; +o_analytic_derivation : ANALYTIC_DERIVATION { driver.option_num("analytic_derivation", "1"); } range : symbol ':' symbol { diff --git a/DynareFlex.ll b/DynareFlex.ll index fe940ba7ab1889ee6504ba60f8b4eb57817885cd..4a4d98f235a5cc4770d9e3db6b71b65fc2e79ed0 100644 --- a/DynareFlex.ll +++ b/DynareFlex.ll @@ -457,6 +457,7 @@ string eofbuff; <DYNARE_STATEMENT>growth_factor {return token::GROWTH_FACTOR;} <DYNARE_STATEMENT>cova_compute {return token::COVA_COMPUTE;} <DYNARE_STATEMENT>discretionary_tol {return token::DISCRETIONARY_TOL;} +<DYNARE_STATEMENT>analytic_derivation {return token::ANALYTIC_DERIVATION;} <DYNARE_STATEMENT>[\$][^$]*[\$] { strtok(yytext+1, "$");