[cfe-dev] [llvm-dev] New buildbot with -Werror

David Jones via cfe-dev cfe-dev at lists.llvm.org
Tue Mar 22 18:24:21 PDT 2016

On Tue, Mar 22, 2016 at 5:06 PM Hal Finkel via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> 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).

On Tue, Mar 22, 2016 at 5:12 PM, Chandler Carruth <chandlerc at google.com>

> 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.
> Certainly, we tend to fix warnings even from earlier Clang versions and
> from GCC in order to keep Werror clean.

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.

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.

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.

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

[*] I'm specifically looking at _getClangCMakeBuildFactory here:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20160322/11fec36d/attachment.html>

More information about the cfe-dev mailing list