v4 parser: made LOG and LN distinct tokens, but triggering the same actions

git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1487 ac1d8469-bf42-47a9-8791-bf33cf982152
time-shift
sebastien 2007-12-19 10:11:54 +00:00
parent a60ab498f6
commit 53822c7b76
4 changed files with 2059 additions and 2024 deletions

File diff suppressed because it is too large Load Diff

View File

@ -78,7 +78,7 @@ class ParsingDriver;
%left TIMES DIVIDE %left TIMES DIVIDE
%left UMINUS %left UMINUS
%nonassoc POWER %nonassoc POWER
%token EXP LOG LOG10 SIN COS TAN ASIN ACOS ATAN SINH COSH TANH ASINH ACOSH ATANH SQRT %token EXP LOG LN LOG10 SIN COS TAN ASIN ACOS ATAN SINH COSH TANH ASINH ACOSH ATANH SQRT
/* GSA analysis */ /* GSA analysis */
%token DYNARE_SENSITIVITY IDENTIFICATION MORRIS STAB REDFORM PPRIOR PRIOR_RANGE PPOST ILPTAU GLUE MORRIS_NLIV %token DYNARE_SENSITIVITY IDENTIFICATION MORRIS STAB REDFORM PPRIOR PRIOR_RANGE PPOST ILPTAU GLUE MORRIS_NLIV
%token MORRIS_NTRA NSAM LOAD_REDFORM LOAD_RMSE LOAD_STAB ALPHA2_STAB KSSTAT LOGTRANS_REDFORM THRESHOLD_REDFORM %token MORRIS_NTRA NSAM LOAD_REDFORM LOAD_RMSE LOAD_STAB ALPHA2_STAB KSSTAT LOGTRANS_REDFORM THRESHOLD_REDFORM
@ -281,6 +281,8 @@ expression : '(' expression ')'
{ $$ = driver.add_exp($3); } { $$ = driver.add_exp($3); }
| LOG '(' expression ')' | LOG '(' expression ')'
{ $$ = driver.add_log($3); } { $$ = driver.add_log($3); }
| LN '(' expression ')'
{ $$ = driver.add_log($3); }
| LOG10 '(' expression ')' | LOG10 '(' expression ')'
{ $$ = driver.add_log10($3); } { $$ = driver.add_log10($3); }
| SIN '(' expression ')' | SIN '(' expression ')'
@ -428,6 +430,8 @@ hand_side : '(' hand_side ')'
{ $$ = driver.add_exp($3); } { $$ = driver.add_exp($3); }
| LOG '(' hand_side ')' | LOG '(' hand_side ')'
{ $$ = driver.add_log($3); } { $$ = driver.add_log($3); }
| LN '(' hand_side ')'
{ $$ = driver.add_log($3); }
| LOG10 '(' hand_side ')' | LOG10 '(' hand_side ')'
{ $$ = driver.add_log10($3); } { $$ = driver.add_log10($3); }
| SIN '(' hand_side ')' | SIN '(' hand_side ')'

View File

@ -264,7 +264,7 @@ int sigma_e = 0;
<DYNARE_STATEMENT,DYNARE_BLOCK>exp {return token::EXP;} <DYNARE_STATEMENT,DYNARE_BLOCK>exp {return token::EXP;}
<DYNARE_STATEMENT,DYNARE_BLOCK>log {return token::LOG;} <DYNARE_STATEMENT,DYNARE_BLOCK>log {return token::LOG;}
<DYNARE_STATEMENT,DYNARE_BLOCK>log10 {return token::LOG10;} <DYNARE_STATEMENT,DYNARE_BLOCK>log10 {return token::LOG10;}
<DYNARE_STATEMENT,DYNARE_BLOCK>ln {return token::LOG;} <DYNARE_STATEMENT,DYNARE_BLOCK>ln {return token::LN;}
<DYNARE_STATEMENT,DYNARE_BLOCK>sin {return token::SIN;} <DYNARE_STATEMENT,DYNARE_BLOCK>sin {return token::SIN;}
<DYNARE_STATEMENT,DYNARE_BLOCK>cos {return token::COS;} <DYNARE_STATEMENT,DYNARE_BLOCK>cos {return token::COS;}
<DYNARE_STATEMENT,DYNARE_BLOCK>tan {return token::TAN;} <DYNARE_STATEMENT,DYNARE_BLOCK>tan {return token::TAN;}

View File

@ -287,52 +287,53 @@ namespace yy
POWER = 415, POWER = 415,
EXP = 416, EXP = 416,
LOG = 417, LOG = 417,
LOG10 = 418, LN = 418,
SIN = 419, LOG10 = 419,
COS = 420, SIN = 420,
TAN = 421, COS = 421,
ASIN = 422, TAN = 422,
ACOS = 423, ASIN = 423,
ATAN = 424, ACOS = 424,
SINH = 425, ATAN = 425,
COSH = 426, SINH = 426,
TANH = 427, COSH = 427,
ASINH = 428, TANH = 428,
ACOSH = 429, ASINH = 429,
ATANH = 430, ACOSH = 430,
SQRT = 431, ATANH = 431,
DYNARE_SENSITIVITY = 432, SQRT = 432,
IDENTIFICATION = 433, DYNARE_SENSITIVITY = 433,
MORRIS = 434, IDENTIFICATION = 434,
STAB = 435, MORRIS = 435,
REDFORM = 436, STAB = 436,
PPRIOR = 437, REDFORM = 437,
PRIOR_RANGE = 438, PPRIOR = 438,
PPOST = 439, PRIOR_RANGE = 439,
ILPTAU = 440, PPOST = 440,
GLUE = 441, ILPTAU = 441,
MORRIS_NLIV = 442, GLUE = 442,
MORRIS_NTRA = 443, MORRIS_NLIV = 443,
NSAM = 444, MORRIS_NTRA = 444,
LOAD_REDFORM = 445, NSAM = 445,
LOAD_RMSE = 446, LOAD_REDFORM = 446,
LOAD_STAB = 447, LOAD_RMSE = 447,
ALPHA2_STAB = 448, LOAD_STAB = 448,
KSSTAT = 449, ALPHA2_STAB = 449,
LOGTRANS_REDFORM = 450, KSSTAT = 450,
THRESHOLD_REDFORM = 451, LOGTRANS_REDFORM = 451,
KSSTAT_REDFORM = 452, THRESHOLD_REDFORM = 452,
ALPHA2_REDFORM = 453, KSSTAT_REDFORM = 453,
NAMENDO = 454, ALPHA2_REDFORM = 454,
NAMLAGENDO = 455, NAMENDO = 455,
NAMEXO = 456, NAMLAGENDO = 456,
RMSE = 457, NAMEXO = 457,
LIK_ONLY = 458, RMSE = 458,
VAR_RMSE = 459, LIK_ONLY = 459,
PFILT_RMSE = 460, VAR_RMSE = 460,
ISTART_RMSE = 461, PFILT_RMSE = 461,
ALPHA_RMSE = 462, ISTART_RMSE = 462,
ALPHA2_RMSE = 463 ALPHA_RMSE = 463,
ALPHA2_RMSE = 464
}; };
}; };