anchor.diff:  end;
   
   procedure TmCustomVirtualDataset.InternalOpen;
  -var
  -  i : integer;
   begin
     FInternalOpen := True;
     InternalFirst;
  -  BookmarkSize := SizeOf(Integer);
  +  BookmarkSize := SizeOf(Longint);
     FieldDefs.Updated := False;
     FieldDefs.Update;
     Fields.Clear;
  
positive.code:   Result := SizeOf(TRecordInfo);
  end;
  
  function TmCustomVirtualDataset.GetTopIndex: Integer;
  begin
    if BufferCount = 0 then
      Result := -1
  
negative.code: {$ENDREGION}
  
  {$REGION 'non-interfaced routines'}
  function FieldListCheckSum(Dataset: TDataSet): {$IFDEF FPC}PtrUInt{$ELSE}NativeUInt{$ENDIF};
  var
    I: Integer;
  begin
    Result   := 0;
    for I    := 0 to Dataset.Fields.Count - 1 do
      Result := Result + (NativeUInt(pointer(Dataset.Fields[I])) shr (I mod 16));
  end;
  
  { TNotifyEventShell }
  