|
Boost : |
Subject: Re: [boost] [warnings] Are warnings acceptable artifactsfrom builds?
From: Thomas Klimpel (Thomas.Klimpel_at_[hidden])
Date: 2009-09-08 19:26:00
Michael Fawcett wrote:
> Frankly, after just having reviewed (by using) a library that spit out
> 60+ warnings resulting in hundreds of kilobytes worth of warning
> messages, I have to disagree. Those warnings become my business when
> I have to wade through them just to find the bloody error message.
I have also reviewed that library. There were far too many warnings, but some of the warnings really were nonsense (in the sense that fixing the compiler would be more reasonable than trying to work around the warnings).
Thomas Klimpel wrote:
> - It is true that msvc-9 spits out many warnings. However, it is also
> true that "warning C4127: conditional expression is constant" for a code like
> template <typename value_type, typename geometry_type_1, typename geometry_type_2, int op_type>
> void execute_boolean_op(value_type& output_, const geometry_type_1& lvalue_, const geometry_type_2& rvalue_,
> ...
> if(op_type < 2)
> is nonsense, because op_type is a template parameter. So I have the
> impression that the only way to get rid of the msvc warnings is by
> disabling the nonsense warnings with appropriate pragmas.
I don't know what about the boost way to silence warnings, but if it is along the line of
#ifdef BOOST_WARNING_MSVC_WORKAROUND
#pragma warning(push)
#pragma warning(disable:4127)
#endif
...
#ifdef BOOST_WARNING_MSVC_WORKAROUND
#pragma warning(pop)
#endif
then silencing 60+ warnings in this way will add 420+ lines to the source code.
Regards,
Thomas
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk