<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Sun, Mar 22, 2015 at 6:38 AM, Michael Van Canneyt <span dir="ltr"><<a href="mailto:michael@freepascal.org" target="_blank">michael@freepascal.org</a>></span> wrote:<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">
On Sun, 22 Mar 2015, Alfred wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
Hello again to all,<br>
<br>
I am enjoying variant late binding AND interface RTTI for a while now !<br>
Thanks again !<br>
<br>
As far as I know, the patch for RTTI has not yet been included in trunk.<br>
But correct me if I am wrong.<br>
<br>
I would like to ask to include the RTTI patch for i386 in trunk.<br>
With i386 interface RTTI, FPC is on level with Kylix for the RTTI part.<br>
<br>
To ease introduction, I would like to suggest to include a new HASINTERFACERTTI flag, which will let the FPC user know, the new RTTI is available for use.<br>
<br>
At this moment, it will only be i386.<br>
</blockquote>
<br></span>
I can't remember when I last used i386 code. Must have been more than 10 years ago.<span class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
But I hope also ARM will be included in the trunk.<br>
On my Raspberry Pi2, the new RTTI works flawless.<br>
</blockquote>
<br></span>
The core developers are divided on the approach to take. Hence it is not yet included.<br>
The code is highly non-portable, which means that each platform must be maintained separately.<br>
This means additional pressure on people who maintain these other platforms.<br>
<br>
The idea is to use a manager approach (as for instance for threads, locale, widestrings)<br>
using a libffi wrapper as fallback for platforms for which no native manager is available.<br>
(see <a href="https://sourceware.org/libffi/" target="_blank">https://sourceware.org/libffi/</a><u></u>)<br></blockquote><div><br></div><div>It seems that somebody implemented that in FPC:</div><div><br></div><div><a href="https://code.google.com/p/la-pe/">https://code.google.com/p/la-pe/</a><br></div><div><br></div><div>Not tested yet.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
However this means the RTTI info must be written in a format that can be fed directly to libffi.<br>
(or using a conversion routine). In each case, additional work is needed.<br>
<br>
My - and Florian Klaempfl's, if I understood correctly - idea is to include what exists, and then modify the code as needed so it can work with libffi. Others fear that this will mean the ffi wrapper will not get written anytime soon.<span class=""><font color="#888888"><br>
<br>
Michael.</font></span></blockquote><div> </div></div>-- <br><div class="gmail_signature">Silvio Clécio<br>My public projects - <a href="http://github.com/silvioprog" target="_blank">github.com/silvioprog</a></div>
</div></div>