Michael Van Canneyt
michael at freepascal.org
Wed Nov 25 19:47:31 CET 2015
On Wed, 25 Nov 2015, Sven Barth wrote:
>>> Virtual method interceptors are not implemented, but they are planned
>>> like every other Delphi compatible part of the RTTI. They require a
>>> bit of
>>> platform dependent support though as they'll need to deal with calling
>>> conventions (even if it might only be one as AFAIK we only allow the
>>> default calling convention for virtual methods...).
>> Sounds like the same code as for interface method RTTI can be reused.
> But that will only provide half of it, because a Virtual Method Interceptor
> (VMI) also needs to provide the callee while for the interface method RTTI
> (or later on Invoke()) you only need to provide the necessary means to call
> the function (which a VMI needs to be able to do as well, which is what I
> mean "half").
Hmh. Why does it need to provide the callee ?
I thought it just meant inserting a stub in the VMT and make sure all arguments are passed correctly ?
No doubt you know better :)
More information about the fpc-devel