anchor.diff:     ;
   
   statement
  -   : ('auto' name constant* (',' name constant*)* ';' statement)
  +   : ('auto' name constant (',' name constant)* ';' statement)
      | ('extrn' name (',' name)* ';' statement)
      | (name ':' statement)
      | ('case' constant ':' statement)
  -   | ('if' '(' rvalue ')' statement ('else' statement)*)
  +   | ( '{' statement* '}')
  +   | ('if' '(' rvalue ')' statement ('else' statement))
      | ('while' '(' rvalue ')' statement)
      | ('switch' rvalue statement)
      | ('goto' rvalue ';')
  
positive.code: 
  definition
     : (name constant? (ival (',' ival)*)* ';')
     | (name (',' name)* statement)
     ;
  
  ival
  
negative.code: 
  
  STRING1
     : '"' ~["\r\n]* '"'
     ;
  
  
  STRING2
     : '\'' ~ [\'\r\n]* '\''
     ;
  
  WS
     : [ \t\r\n] -> skip
  