anchor.diff:      : t=type
         n=declarator
       (
  -     (predictFunctioncallStatAssignOneReturnParamAsDecl) => functioncallStatAssignOneReturnParamAsDecl[code, t, n]
  +     (predictFunctioncallDecl) => functioncallDecl[code, t, n]
       | (variableDecl[code,null,null]) => variableDecl[code, t, n]
       | (predictDatasetdecl) => datasetdecl[code, t, n]
       )
  
positive.code:     ;
  
  
  predictFunctioncallStatAssignOneReturnParamAsDecl
  { StringTemplate dummy=template("call"); }
      : ASSIGN functionInvocation[dummy] ;
  
  functioncallStatAssignOneReturnParamAsDecl
    [StringTemplate x, StringTemplate t, StringTemplate d]
    returns [StringTemplate code=template("call")]
  {
  
negative.code:     id=identifier
      ASSIGN
      (
        (predictFunctioncallAssign) => code=functioncallAssign
          { StringTemplate o = template("returnParam");
            o.setAttribute("name",id);
            code.setAttribute("outputs",o);
  