<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=UTF-8" http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Marc Weustink пишет:
<blockquote cite="mid:49D5DC7B.7040503@cuperus.nl" type="cite">
<pre wrap="">Alexey S. Smirnov wrote:
</pre>
<blockquote type="cite">
<pre wrap="">SmartLink problem is quite simple. It seems that all units, mentioned in
"Interface->Uses" section will be fully linked. Only units mentioned in
"Implementation->Uses" section can be checked during SmartLink.
So, to enhance linking process and to reduce binary size we shell
check all Interface sections of all LCL units to reduce units list.
</pre>
</blockquote>
<pre wrap=""><!---->
We have all units listed in the interface section to avoid unit circles.
This is needed since the compiler will fail to compile the LCL sooner
or later if there are to many circles.
Marc
</pre>
</blockquote>
I can send you my diffs for several LCL units, where I had removed (or
move to Implementation) a lot of Interface Uses section units. Both my
project and Lazarus are compiled and linked fine.<span
class="moz-smiley-s1"><span> :-) </span></span><br>
<br>
Ones more - the Idea of Smart Linking is closely "linked" with
mentioned experiment (i.e. cleanup of Implementation->Uses section).
Actually, It seems that there are many units listed in both Uses
sections that are unneeded for LCL. I had removed several of them
during my experimental cleanup. All is working fine for me.<br>
<br>
Next thing - may be it is possible to create a small tool that will be
able to analyze Implementation and Interface Uses sections for
understanding the problem of "unit circles". May be it is not so
serious...<br>
<br>
<br>
Regards. Alexey.<br>
</body>
</html>