[concept_check] silence gcc warnings

Hi ! I've started to use Boost.Accumulators and I'm getting tons of ugly warnings when compiling with optimization on. See full "warn.log" for details, This boils down to boost/concept_check.hpp 335: warning: non-static reference ‘const float& boost::UnaryFunction<boost::numeric::functional::as_max<const float, void>, float, const float&>::arg’ in class without a constructor [-Wuninitialized] when the check ist called with a reference parameter. It seems that providing a dummy constructor is sufficient to silence this. Please find a patch attached. Okay to commit ? Or are the better ideas ? Yours, Jürgen -- * Dipl.-Math. Jürgen Hunold ! Ingenieurgesellschaft für * voice: ++49 511 262926 57 ! Verkehrs- und Eisenbahnwesen mbH * fax : ++49 511 262926 99 ! Lister Straße 15 * juergen.hunold@ivembh.de ! www.ivembh.de * * Geschäftsführer: ! Sitz des Unternehmens: Hannover * Prof. Dr.-Ing. Thomas Siefer ! Amtsgericht Hannover, HRB 56965 * PD Dr.-Ing. Alfons Radtke !

Jürgen Hunold a écrit :
Hi !
I've started to use Boost.Accumulators and I'm getting tons of ugly warnings when compiling with optimization on. See full "warn.log" for details, This boils down to boost/concept_check.hpp
335: warning: non-static reference ‘const float& boost::UnaryFunction<boost::numeric::functional::as_max<const float, void>, float, const float&>::arg’ in class without a constructor [-Wuninitialized]
when the check ist called with a reference parameter. It seems that providing a dummy constructor is sufficient to silence this. Please find a patch attached.
Okay to commit ?
Or are the better ideas ?
You don't need to define it, declaring it should be enough (and better). Actually I don't even see how it can work when you define it, since it doesn't know how to initialize the reference member.

Hi Mathias, Op den Middeweken 31 März 2010 Klock 12:11:20 hest Du schreven:
Jürgen Hunold a écrit : You don't need to define it, declaring it should be enough (and better).
Yes, of course. Modified patch attached. Thanks.
Actually I don't even see how it can work when you define it, since it doesn't know how to initialize the reference member.
Well, I think that gcc can not create a sensible default constructor in this case and therefore issues the warning. It does not seem to care if a constructor is provided by the user. And that is all I want ;-)) Yours, Jürgen -- * Dipl.-Math. Jürgen Hunold ! Ingenieurgesellschaft für * voice: ++49 511 262926 57 ! Verkehrs- und Eisenbahnwesen mbH * fax : ++49 511 262926 99 ! Lister Straße 15 * juergen.hunold@ivembh.de ! www.ivembh.de * * Geschäftsführer: ! Sitz des Unternehmens: Hannover * Prof. Dr.-Ing. Thomas Siefer ! Amtsgericht Hannover, HRB 56965 * PD Dr.-Ing. Alfons Radtke !
participants (2)
-
Jürgen Hunold
-
Mathias Gaunard