Build portability: enable or disable warnings

Andrew Haley aph at redhat.com
Mon May 16 15:56:37 UTC 2011


On 05/16/2011 04:35 PM, Kelly O'Hair wrote:
> 
> On May 16, 2011, at 7:23 AM, Dr Andrew John Hughes wrote:
> 
>> I think the issue is actually having -Werror enabled for all builds, not
>> just debug builds.  Without that, these additional warnings would just be
>> noise.  Having -Werror on also causes problems just upgrading the version
>> of gcc, regardless of distro-specific patching, as new warnings are
>> introduced or old ones reclassified. 
> 
> The code being compiled is different with debug vs. product builds
> due to assert logic, so I consider it important that all builds use
> -Werror if they use it at all.
> 
> The -Werror option is a blessing and a curse. I find it highly
> commendable that teams (like hotspot) have taken a 'no warnings
> allowed' approach to their code base, more teams should do this.
> Given the critical nature of a VM in the JDK, it only makes sense to
> take all precautions in verifying the code is correct.
> 
> But it only makes 100% sense when using the same compiler, same
> compiler version, and on the same system.  For hotspot, you should
> be able to get rid of -Werror by setting WARNINGS_ARE_ERRORS to
> empty.

The core problem here, I think, is that some warnings really would be
hard errors by any reasonable measure, so you have to use -Werror.
The example that tripped us up this time was totally innocuous,
though.

Andrew.



More information about the build-dev mailing list