Templates were a problem but not a huge one.  They aren&#x27;t used extensively in the webserver, and in any case they bloat compile-time moreso than link-time.<p>The bigger problem was that we&#x27;d adopted a dependency strategy of &quot;lots of little libraries&quot; instead of &quot;one big library with lots of source files&quot;.  This offloads a lot of the work from the compiler to the linker.  There are various advantages of this strategy - it speeds up incremental rebuilds, it encourages you to explicitly track all your dependencies, it simplifies IWYU, it&#x27;s easier to parallelize - but linker RAM usage is not one of these advantages.