anchor.diff:  
     TCommonRecordList<T: record> = class(TList<T>)
     public type
  +    TOnCustomIndexOf = function(constref AValue: T): SizeInt of object;
       TOnForEach = procedure (AIndex: integer;
                               var AItem: T;
                               var ABreak: boolean) of object;
     private
       FDuplicates: TDuplicates;
  +    FCustomIndexOf: TOnCustomIndexOf;
   
       procedure ClearItemProc(AIndex: integer;
                               var AItem: T;
  
positive.code:     end;
  end;
  
  end.
  
  
negative.code: 
      procedure Clear;
      function Add(const Value: T): integer;
      function IndexOf(constref AValue: T): SizeInt;
  
      property IsAvailable: boolean
        read GetIsAvailable;
  