https://issues.dlang.org/show_bug.cgi?id=16423
Martin Nowak <c...@dawg.eu> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |c...@dawg.eu Resolution|--- |WONTFIX --- Comment #3 from Martin Nowak <c...@dawg.eu> --- It goes against the intention of static libraries to drag unused classes and module into a binary, and that also goes against our permanent fight against giant binaries. In fact there is issue 14555 and a PR (https://github.com/dlang/dmd/pull/4638) in the adverse direction. If you really want to drag in all classes from a static library, one approach is to reference all of them from a common module. Having an explicit list of all classes kind of contradicts the purpose of Object.factory, but I don't see how we can easily achieve both. Another approach is to generate object files for each module and explicitly link against all of them (the linker won't discard object files). Dub supports this as --build-mode=singleFile IIRC. Yet another approach is to use shared libraries instead. --