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