[fpc-devel] RTTI interface & variant late binding issue (mORMot)
webcontact01 at synopse.info
Sat Feb 7 13:03:37 CET 2015
Just to be clear, because it sounds like there is some confusion in the
1. We do NOT need Invoke() implemented.
2. We do NOT need extended RTTI as available since Delphi 2010, nor
features like attributes.
3. We do NOT need 100% compatibility with Delphi - it is fine to have
some diverse data layout.
4. There should not be huge platform specific work.
1. We have our own low-level Invoke, for x86 and x64 platforms, working
on both Windows and Linux.
Note: you can take a look at how we defined the asm stubs, in mORMot.pas
- much better design than the RTTI.pas or RIO.pas code IMHO - see
2. We need only the RTTI as available since Delphi 6 for IInvokable
3. We already introduced some FPC-specific code, e.g. to follow RTTI
data alignment on platforms which demand it.
4. By design, point 2 is mostly platform-independent, and some details
(like calling conventions) do already exist for other part of the
existing FPC RTTI.
What is needed by this bug report is to have
objectdef_rtti_interface_full(def:tobjectdef) implemented in ncgrtti.pas.
Any new input is welcome!
More information about the fpc-devel