anchor.diff:          {$e = new MethodReferenceExpression($a);}
   	;
   
  -arrayCreationExpression
  +arrayCreationExpression returns [Expression e]
   	:	'new' primitiveType dimExprs dims?
   	|	'new' classOrInterfaceType dimExprs dims?
   	|	'new' primitiveType dims arrayInitializer
  
positive.code: 		|	(pno = primaryNoNewArray_lfno_arrayAccess '[' i = expression ']'
                  {$e = new ArrayAccessExpression($pno, $i);})
  		)
  		(	p = primaryNoNewArray_lf_arrayAccess '[' i = expression ']'
  		)*
  	;
  
  
negative.code: 	|	'void' {$t = Type.VOID;}
  	;
  
  methodDeclarator [MethodDeclaration m]
  	:	n = Identifier
          '(' p = formalParameterList? ')'
          d = dims?
          {
              $m.setName($n);
              $m.setParameters($p);
          }
  
  	;
  
  formalParameterList returns [List<VariableDeclaration> l]
  