> On Apr 11, 2023, at 2:58 PM, Marco van de Voort via fpc-devel 
> <fpc-devel@lists.freepascal.org> wrote:
> 
> But the core problem is that you don't have an overview of all other 
> descendants in the compiler. Those can be fragmented over multiple units, and 
> then you touch the problem that whole program optimization like 
> de-virtualization tries to solve.

I didn’t get this at first but I see what you mean. The call site would only 
have access the descendants it knew about that point during compilation. So the 
case may not have a full set of descendants to work from.

I used to write code like this and there was always a way to make things work 
so maybe in practice it’s not as bad as it sounds but the VTable is clearly a 
more general purpose solution.

Regards,
Ryan Joseph

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

Reply via email to