> On Feb 17, 2021, at 8:27 AM, Benito van der Zander via fpc-pascal 
> <fpc-pascal@lists.freepascal.org> wrote:
> 
> var c: ITest;
> begin
>   c := TTest.Create(123);
>   c.println;

So this is where you're getting your performance penalties? Correct me if I'm 
wrong but two things happen here:

1) Implicit cast to ITest which does a runtime lookup (but there's interface 
name so no string comparison like Supports?)
2) calling "println" there is a call to a wrapper function (called "thunks")?

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