----- Original Message ----- 
  
  
  
  Sent: Tuesday, October 02, 2001 2:39 
  PM
  Subject: if/else if
  
  Hi,
   
  Thanks for the help. Now I changed my grammer 
  like the sample java grammer as follows:
   
       if_statement={if_else} 
  if l_par general_expression r_par [true]:statement_no_if else 
  [false]:statement |
          
  {if} if l_par general_expression r_par statement;
     
  if_statement_no_if =
          
  {if_else} if l_par general_expression r_par [true]:statement_no_if else 
  [false]:statement_no_if;
   
  It solves reduce/shift problem. Now I can build 
  the parser. Everything works fine for my code except
  that I can not put "else if" together. For 
  example, all the followings are fine:
   
  1) "if (a>5) {b=5;}"
  2) "if (a>5) {b=5;} else {c=5;}"
  3) "if (a>5) {b=5;} else {if(a>4) 
  {;}}"
   
  But if I put "else if" together, 
like
   
  "if (a>5) {b=5;} else if (a>4) {b=3;}", 
  then I got the following error message:
   
  "parser.ParserException: [1,17] expecting: EOF", 
  the position is pointing to the beginning of
  the "else". Please let me what is your 
  thought.
   
  Thanks a lot.
   
  Yuntao Cui