<div dir="auto"><div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I think the clang modules design makes it somewhere between hard and<br>
impossible for these kinds of tools to work well with them. Support for<br>
distributed builds is one of my major concerns with modules.</blockquote></div></div><div dir="auto"><br></div><div dir="auto">I'm unsure about concurrent builds in general with modules. The extra dependency edges induced by needing to compile, or at least somewhat parse, a module before its clients enforce a more sequential model than the header/source separation does.</div><div dir="auto"><br></div><div dir="auto">I have a suspicion that my codebase is sufficiently coupled that modules will bring the maximum build concurrency down to within the core count of a single server, at which point icecc won't be necessary.</div><div dir="auto"><br></div><div dir="auto">This does however mean that the performance gain from modules has to be spectacular to beat the ccache+icecc system overall.</div><div dir="auto"></div></div>