<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><div dir="ltr">On Tue, Mar 22, 2016 at 5:06 PM Hal Finkel via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank" class="cremed">llvm-dev@lists.llvm.org</a>> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div></div></blockquote></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">I think having -Werror bots is a good idea, at least when self hosting. Non-self-hosting -Werror (i.e. with older versions of Clang, or with GCC, etc.) might also be useful, but I'm less sure (since we can't fix those warnings if the warning is the problem).</blockquote><br></div><div class="gmail_quote">On Tue, Mar 22, 2016 at 5:12 PM, Chandler Carruth <span dir="ltr"><<a href="mailto:chandlerc@google.com" target="_blank" class="cremed">chandlerc@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">My thought was that its reasonable to expect no warnings when building from bootstrap (as you say) and the last release of Clang. Generally, I think we should work around warnings in the last release of Clang if only for the convenience of folks using that release to build stage1 and using Werror.<div><br></div><div>Certainly, we tend to fix warnings even from earlier Clang versions and from GCC in order to keep Werror clean.</div></div></blockquote><div><br></div><div>I've dug around a bit, and it looks to me like separating phase1 and phase2 behavior is going to be a bit tricky (looking at zorg [*]) as long as we want -Wno-error as the default for buildbots.</div><div><br></div><div>So, the first thing I would propose is to add this buildbot and run it for a while, just to see what the current background rate of breakages will be. I think getting a feel for the baseline is going to be a solid first step.</div><div><br></div><div>If that signal is good enough, and folks are happy getting nag mail when they cause regressions :-) , then it probably makes sense to change the zorg build commands to use -Wno-error on phase1 and -Werror on phase 2 by default. That insulates against host compiler issues, but remains strict when self-hosting.</div><div><br></div><div>For Chandler's suggestion to use -Werror on a phase 1 build with the current release, that seems perfectly reasonable; but again, it's probably best encoded with a zorg change specifically for that case. (I don't want to add too many magical layers of CMake option overrides for two-phase builds...)</div><div><br></div><div>[*] I'm specifically looking at <span style="color:rgb(0,0,0);white-space:pre-wrap">_getClangCMakeBuildFactory here:</span></div><div><a href="http://llvm.org/svn/llvm-project/zorg/trunk/zorg/buildbot/builders/ClangBuilder.py">http://llvm.org/svn/llvm-project/zorg/trunk/zorg/buildbot/builders/ClangBuilder.py</a></div></div></div></div>