Just tried to compile a short program with that definition of compare: 
TCompareFunc, and that is the wrong type for TFPGList<String> in my program 
(yes there is a better class for strings but I just wanted a quick example 
program to compile). FPC error message says it wants:
function(const ShortString;const ShortString):LongInt,
so only two non-pointer input parameters.  Must be another definition somewhere.

> On Oct 20, 2024, at 2:38 PM, Peter B via fpc-pascal 
> <fpc-pascal@lists.freepascal.org> wrote:
> 
> On 20/10/2024 22:17, ppadilcdx--- via fpc-pascal wrote:
>> I’m a little confused by some references in the docs. Hopefully I can 
>> explain it clearly.
>> 
>> Looking at TFPGList in fgl. The Sort method refers to a TCompareFunc (it 
>> does not link to its definition). TFPGList says it’s methods are the same as 
>> TFPSList or classes.TFPList. So looking in these two other classes their 
>> Sort methods refer to TFPSListCompareFunc (in fgl) and TListSortCompare (in 
>> classes), respectively.
>> 
>> type TListSortCompare = function(
>>   Item1: Pointer;
>>   Item2: Pointer
>> ):Integer;
>> 
>> type TFPSListCompareFunc = function(
>>   Key1: Pointer;
>>   Key2: Pointer
>> ):Integer of object;
>> 
>> Two questions.
>> 1) Should TCompareFunc in TFPGList.Sort be one of the above types, or is 
>> there another definition somewhere?
>> 2) What is an “Integer of object” in TFPSListCompareFunc? (I expect it to be 
>> a typo but then I’m fairly new to free pascal so I might have missed the 
>> memo.)
>> 
>> Thanks,
>> Pete
>> 
>> _______________________________________________
>> fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
>> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
> 
> For question 1, I find the definition of TCompareFunc here
> https://www.freepascal.org/docs-html/fcl/bufdataset/tcomparefunc.html
> 
> 
> 
> 
> _______________________________________________
> fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to