[fpc-devel] Delphi smart-linking perspective ( Language change and implementation ... )
jonas.maebe at elis.ugent.be
Sun May 31 10:48:54 CEST 2009
On 31 May 2009, at 10:38, Paul Ishenin wrote:
> Jonas Maebe wrote:
>> I don't think it is very specific to .NET. We use similar
>> techniques for e.g. cthreads and cwstring under Unix. And I also
>> used it in the fix forhttp://bugs.freepascal.org/view.php?id=12704
> So will be this added to the fpc?
I don't know. The way we used that sort of technique currently is
manually (either using unit plugging, or referencing data only the
first time a related function is called, so regular smart linking can
leave it out).
Also, I bet that in spite of the big warning in that blog post saying:
"Beware of cycles! If you have several classes with class
constructors within the same unit and they all refer to one-another,
the ordering may be indeterminate and you may end up with strange
results or even crashes."
that people will still insist that we reverse-engineer and implement
exactly the same indeterminate/undocumented behaviour as Delphi has
(just like when you have cycles in unit dependencies).
>> Yes, the but the results are not very impressive. The reason is due
>> to the way the LCL is constructed, almost every declared class can
>> theoretically be instantiated. On the other hand, I read that
>> recently the LCL was restructured a bit to improve the situation,
>> so maybe the results would be better now.
> Yes, we made a refactoring and as result empty form + button
> application weights 200Kb less now. Can you check, maybe now WPO
> results can be more impressive?
More information about the fpc-devel