Our template emission strategy is broken

Martin Nowak via Digitalmars-d digitalmars-d at puremagic.com
Wed Nov 11 06:23:15 PST 2015


On Wednesday, 11 November 2015 at 14:06:43 UTC, Dicebot wrote:
> Note that many of template emission issues that affect "plain" 
> separate compilation are likely to affect package-based static 
> libraties as well, thus in context of this thread distinction 
> is not very important.

Yes, you can get similar issues with package libraries, but only 
if the packages are mutually dependent on each other. Think of 
that for a moment, no package manager allows you to have cycles 
in your dependencies.

The case where you do compile packages with circular dependencies 
seems to mostly come from artificially splitting packages to deal 
with OOM, and we better address that at it's root.

In general you save many troubles with a library b/c you always 
link with all objects that were compiled (so it's only important 
that a template was emitted but not into which object).


More information about the Digitalmars-d mailing list