[fpc-devel] Compiler trheads
jonas.maebe at elis.ugent.be
Thu Aug 12 09:46:31 CEST 2010
On 12 Aug 2010, at 09:01, Florian Klaempfl wrote:
> The "final" plan is to use a task queue with dependencies and all
> information. Such tasks may be: parse module X, generated code for
> module X, load module Y, search for module Y, assemble module X etc.
> Each task has a list of dependencies which much be done first before
> task can be executed.
One problem with this model currently is inlining: once the
implementation of a unit containing an inline procedure is compiled,
its interface crc changes (because the code of the inlined routine is
part of the interface), and this can trigger recompilations of other
An easy solution is to not let the code of inline routine (and the
flag that indicates that it's available) influence the interface crc,
but in that case it won't be inlinable in units it depends on in its
implementation. Doing that would probably solve a lot of crashes and
other errors that currently exist with the unit loading though.
More information about the fpc-devel