> On Oct 7, 2019, at 12:42 PM, Mattias Gaertner via fpc-pascal 
> <fpc-pascal@lists.freepascal.org> wrote:
> 
>> I mean what happens here? The non-generic functions wins right?
>> 
>> procedure Run<T>(a:T; b: word);
>> procedure Run<T>(a: word; b: T);
>> procedure Run(a: word; b: word);
> 
> Only for
> Run(word(1),word(2));

Ok, then I got this wrong and I need to make significant changes. As I did it 
if there is a non-generic it always wins regardless of parameters. For example:

procedure Run(a: integer; b: string);
begin
end;

generic procedure Run<S,T>(a: S; b: T; c: integer);
begin
end;


// fails because the non-generic Run() will always be picked and the parameter 
count will be wrong.
Run(1,1,1);

Regards,
        Ryan Joseph

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

Reply via email to