[lazarus] circular unit reference

Florian Klaempfl Florian.Klaempfl at gmx.de
Sat Nov 15 08:28:35 EST 2003

rstar at mnet-online.de wrote:
> The current thread shows that there a always problems with
> includes, paths, circular refereces etc.

The problem is simply that the fpc 1.9.x win32 rtl comes with a messages 
unit which wasn't the case in 1.0.x.

> One of these guidelines might be helpful:
> - Don't use includes (all in one file); example: CLX from Borland

Really :)? I just imaginge the FPC system unit with ~20 supported 
targets having 100k lines ...

> - Use #ifdef "target" for platform specific things

No. Too much $ifdefs are always a sign for a bad design.

> - One person is responsible for a file
>   (it seems that the lcl stuff is managed by different persons)

This is not possible for open source projects.

> - Use .pas extension only

The primary target of the lcl isn't delphi.

Sorry for my irony but all these points are against all things we 
learned the last 10 years when working on FPC. And FPC isn't a small 
project, recently I generated some statistics about the FPC cvs. The 
whole FPC/lazarus cvs tree is 3.5 Mio lines of code, so FPC/Lazarus 
isn't a small sized project :)

More information about the Lazarus mailing list