<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2016-12-06 23:39 GMT+01:00 Sven Barth <span dir="ltr"><<a href="mailto:pascaldragon@googlemail.com" target="_blank">pascaldragon@googlemail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Most Delphi code probably uses the RTTI unit anyway for this. And when<br>
playing with the RTTI one needs to keep track of FPC vs. Delphi anyway<br>
cause we'll never be 100% compatible (e.g. the Interface RTTI branch<br>
does not keep in mind parameters that might be split across multiple<br>
locations (like two registers), so that needs to be extended compared to<br>
Delphi).<br>
</blockquote><div><br></div><div><div class="gmail_quote"><div>100% agree I don't have problem with a little Delphi incompatible RTTI, the bigger picture is more important than small details, but quote from Jonas Maebe ([fpc-devel] Attributes</div><div> thread): "some people wanted it to be Delphi compatible, other people did not mind if it was not. Both categories of people were in the core team."</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div id="gmail-:adh" class="gmail-a3s gmail-aXjCH gmail-m158d64af3924e3bf">However I think that we'll add the Delphi compatible TAttrEntry, but<br>with an additonal AttrCreate field before the AttrCtor field. The former<br>will then contain a pointer to the generated "fast invoke" function<br>while AttrCtor, ArgLen and ArgData will be Delphi compatible.</div></blockquote></div><br>mostly redundant info, but probably best what we can get.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Okay then, maybe I'll manage that this week (no promise though ;) ).<br>
I personally think that removing TRttiContext for now is the better<br>
choice, so people will know not to use it while they might expect valid<br>
values in the other case...<br></blockquote><div><br></div><div>I am waiting :P. Sure, feel free to remove TRttiContext. IMO almost empty TRttiContext has not many sense yet. </div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
I don't know whether an early implementation of Invoke() would be a good<br>
idea already as it would need a heavy rewrite once parameter location<br>
support is available in the RTTI...</blockquote><div><br></div><div>what you mean by "heavy rewrite once parameter location"? Invoke is extremely usefully even without detailed RTTI info about parameters, for example for scripting purposes. I don't mean only pascal functions, script is able to call external system API. Very handy.</div></div><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div>Best regards,<br>Maciej Izak</div></div></div>
</div></div>