<html><head><style type='text/css'>p { margin: 0; }</style></head><body><div style='font-family: Arial; font-size: 10pt; color: #000000'>Hi,<br><br>A few times the latest weeks, I noticed on this list (and the Lazarus list(s)) a "need" for the Delphi rtti extra's and the Delphi meaning of packages (program/library/*package*/unit).<br><br>I am willing to reboot what I started and give it another shot with rtti.<br><br>Both are at least partly intertwined, so I might need some help of you all with a system more exotic than a Wintel machine ;-)<br><br>First off:<br>* Delphi's RTTI starts from package/unit/type tree that is registered on startup/loadup of a binary with the RTL. Be it executable or dynlib. => what units/objects/classes/... in the fpc compiler would I need to alter to allow the following additions on windows, but eventually all platforms:<br>- a smartlinkable "section" per module (=executable/dynlib) for the package info<br> (preferably, here the init/finit block may be expanded/replaced with a link to the unitblock)<br>- a smartlinkable "section" per unit for the typeinfo for when used in a "package" module<br>- a smartlinkable "section" per unit for the typeinfo for when used in a "program" or "library" module<br><br>I know that I might/would need to alter some types in respective typinfo/sysutils to accomodate in the rtl, but I would first like to know how to generate them in the output. :-)<br><br>optimally, one wouldn't need 2 different versions of the unit-typeinfo, but I was thinking that in package we take all the types, in one section. And in the other for program/library, we would allow smartlinking to take out subsections that are not needed.<br><br>So, any help/redirection to documentation or units is greatly appreciated (as well for the "section" and what can be done with them).<br><br>once I get a tree-hierarchy of module/package<->units<->typeinfos working, I intend to go on with the RTTI unit implementation and subsequent questions on that topic.<br><br>kind regards,<br>Dimitri Smits<br></div></body></html>