anchor.diff:  throwStatement
     : 'throw' ';' ;
   
  +emitStatement
  +  : 'emit' functionCall ';' ;
  +
   variableDeclarationStatement
  -  : ( 'var' identifierList | variableDeclaration ) ( '=' expression )? ';';
  +  : ( 'var' identifierList | variableDeclaration | '(' variableDeclarationList ')' ) ( '=' expression )? ';';
  +
  +variableDeclarationList
  +  : variableDeclaration? (',' variableDeclaration? )* ;
   
   identifierList
     : '(' ( identifier? ',' )* identifier? ')' ;
  
positive.code: structDefinition
    : 'struct' identifier
      '{' ( variableDeclaration ';' (variableDeclaration ';')* )? '}' ;
  
  modifierDefinition
    : 'modifier' identifier parameterList? block ;
  
negative.code:   : versionConstraint versionConstraint? ;
  
  versionOperator
    : '^' | '~' | '>=' | '>' | '<' | '<=' | '=' ;
  
  versionConstraint
    : versionOperator? VersionLiteral ;
  