Browse Source

* use a TObject constraint for TFPGObjectList and TFPGObjectMap to ensure that only TObject and its descendants
are used (allows for a better error message)

git-svn-id: trunk@39363 -

svenbarth 7 years ago
parent
commit
ddb501bddf
1 changed files with 2 additions and 2 deletions
  1. 2 2
      rtl/objpas/fgl.pp

+ 2 - 2
rtl/objpas/fgl.pp

@@ -153,7 +153,7 @@ type
     property List: PTypeList read GetList;
   end;
 
-  generic TFPGObjectList<T> = class(TFPSList)
+  generic TFPGObjectList<T: TObject> = class(TFPSList)
   private
     type
       TCompareFunc = function(const Item1, Item2: T): Integer;
@@ -330,7 +330,7 @@ type
     property OnDataCompare: TDataCompareFunc read FOnDataCompare write SetOnDataCompare;
   end;
 
-  generic TFPGMapObject<TKey, TData> = class(TFPSMap)
+  generic TFPGMapObject<TKey; TData: TObject> = class(TFPSMap)
   private
     type
       TKeyCompareFunc = function(const Key1, Key2: TKey): Integer;