<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Feb 8, 2019 at 12:33 AM Tom Honermann &lt;<a href="mailto:tom@honermann.net">tom@honermann.net</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  

    
  
  <div bgcolor="#FFFFFF">
A couple of people have countered that build system updates are
      required (presumably in excess of just adding &#39;-fmodules&#39; to Clang
      invocations) in order to enable support for Clang Modules.

This
      seems trivially incorrect to me, so long as one does not consider
      Clang&#39;s module.modulemap files to be part of the build system (I
      don&#39;t; they are tool specific configuration files that the build
      system does not need to be aware of). <br></div></blockquote><div><br></div><div>I would hope you are marking the module.modulemap as an input dependency of every compilation that uses -fmodules. If you don&#39;t then you are risking silent miscompilation which is about the worst thing a build system can do. And if you are, that means that you have either manually added it as an input edge to every compile (unlikely), or you modified your build system to teach it to do that automatically*. I assume you are primarily referring to deeper structural changes, but your implication that you can just add -fmodules to CXXFLAGS and walk away seems trivially incorrect to me.<br></div><div><br></div><div>*Technically there is an additional option: your build system monitors for every file that the compiler opens (eg by LDPRELOAD) and automatically adds the modulemap file as an input edge. But I don&#39;t think you are intending to require every build system to do that.<br></div></div></div>