Re: warnings...

Christoph Duelli <[email protected]> Wed, 11 Nov 2009 10:08:30 +0100
Newsgroups gmane.comp.parsers.spirit.general,gmane.comp.parsers.spirit.devel
Message-ID <[email protected]>
Joel de Guzman wrote:

> Lately, there's been talk in the Boost dev about making Boost
> libraries warning free. If anyone here really cares about them
> (most warnings are really nonsense),
I wanted to say that I do really care (strongly).
Reasons (apart from the obvious ones):
1) when I do something with Spirit (which is for me maybe once in 2
months...) and make a little mistake, it is very annoying to sift through
pages of pages of compiler messages just to finally realize it was just a
warning and not the error that caused these pages. That wastes time.
(Maybe things are brighter with MS, but gcc prints lots of (loooong and hard
to read) lines of templated stuff - even if it is just about a unused
variable).

2) if that tons of nonsense are always there, it is difficult to detect if a
new non-nonsense warning was introduced.
(As most boost libs are header only, we always see both our own and boost's
warnings and as a gcc warning for spirit code may well be huge... this is
really important to us end-users. I took the time to measure gcc output: I
got some 3MB (for a simple grammar; ok that included 1 error, too).
I hope this number shows that it is a pain to check for your own warnings
inside all the nonsense.

> we'd appreciate your help 
> in eliminating them. I know this is mechanical and boring work,
> so what I'll ask instead is to fix them incrementally. We'd
> appreciate it a lot if you can build with warnings on and report
> back offending files. It will be a plus if you can provide patches
> too. Thank you!
I will.

2) Some warnings I got: 
boost/spirit/home/support/make_component.hpp:81: warning: unused parameter
'state'
boost/spirit/home/support/modify.hpp:102: warning: unused parameter 'tag'
boost/spirit/home/qi/nonterminal/error_handler.hpp:38: warning: unused
parameter 'it'
boost/spirit/home/qi/string/lit.hpp:91: warning: unused parameter 'context'
boost/spirit/home/support/attributes.hpp:442: warning: unused parameter
'val'
boost/spirit/home/support/attributes.hpp:442: warning: unused parameter
'attr'
boost/spirit/home/qi/auxiliary/eol.hpp:47: warning: unused parameter
'context'
boost/spirit/home/qi/auxiliary/eol.hpp:47: warning: unused parameter 'attr'

boost/spirit/home/qi/detail/assign_to.hpp:90: warning: unused parameter
'attr'
boost/spirit/home/support/info.hpp:130: warning: unused parameter 'depth'
boost/spirit/home/qi/numeric/numeric_utils.hpp:26: warning: unused parameter
'last'

(Is this ok as 'report'? If no: what should I send?)


Maybe I find the time to start porting my "monster grammar" (scripting
language of mine) to Spirit2.1 next weekend(s). That should lead to further
input.

And thans for keeping improving Spirit; the new interface is a definite
improvement over 'classic'.


Best regards
Christoph


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july