[Rivet] Building Rivet 2.5.4 with GCC 8.1.1

Andy Buckley andy.buckley at cern.ch
Fri May 18 15:36:22 BST 2018


Hi,

At least the first of these has been fixed in the upcoming 2.6.1. I'm not
sure about the other -- it may already have been fixed in v2.6.0, but at
least I see no warnings with gcc 7.3.

Andy


On 18 May 2018 at 15:29, Wahid eLoad <wahid.eload at gmail.com> wrote:

> Hi,
>
>   While building CMSSW software with GCC 8.1.1, we get following build
> errors and warnings. Note that we are using River 2.5.4 on CentOS 7. Can we
> get a fix for these?
>
> Thanks,
>
> --Shahzad
>
> [a]  I guess here it is missing just the virtual destructor for
> BoolParticleBaseFunctor?
>
> .../rivet/2.5.4/include/Rivet/Tools/ParticleBaseUtils.hh:23:10: warning:
> 'struct Rivet::BoolParticleBaseFunctor' has virtual functions and
> accessible non-virtual destructor [-Wnon-virtual-dtor]
>    struct BoolParticleBaseFunctor {
>           ^~~~~~~~~~~~~~~~~~~~~~~
> .../rivet/2.5.4/include/Rivet/Tools/ParticleBaseUtils.hh:29:10: warning:
> base class 'struct Rivet::BoolParticleBaseFunctor' has accessible
> non-virtual destructor [-Wnon-virtual-dtor]
>    struct PtGtr : public BoolParticleBaseFunctor {
>           ^~~~~
> .../rivet/2.5.4/include/Rivet/Tools/ParticleBaseUtils.hh:29:10: warning:
> 'struct Rivet::PtGtr' has virtual functions and accessible non-virtual
> destructor [-Wnon-virtual-dtor]
> .../rivet/2.5.4/include/Rivet/Tools/ParticleBaseUtils.hh:38:10: warning:
> base class 'struct Rivet::BoolParticleBaseFunctor' has accessible
> non-virtual destructor [-Wnon-virtual-dtor]
>    struct PtLess : public BoolParticleBaseFunctor {
>
>
> [b] I think here you just need to make "CmpAnaHandle::operator()....."
> const
>
> from/CMSSW_10_2_X_2018-05-15-2300/src/GeneratorInterface/Riv
> etInterface/interface/RivetAnalyzer.h:4,
>
>                  from /CMSSW_10_2_X_2018-05-15-2300/
> src/GeneratorInterface/RivetInterface/plugins/RivetAnalyzer.cc:1:
> .../gcc/8.1.0/include/c++/8.1.1/bits/stl_tree.h: In instantiation of
> 'class std::_Rb_tree<std::shared_ptr<Rivet::Analysis>,
> std::shared_ptr<Rivet::Analysis>, std::_Identity<std::shared_ptr<Rivet::Analysis>
> >, Rivet::CmpAnaHandle, std::allocator<std::shared_ptr<Rivet::Analysis> >
> >':
> .../gcc/8.1.0/include/c++/8.1.1/bits/stl_set.h:133:17:   required from
> 'class std::set<std::shared_ptr<Rivet::Analysis>, Rivet::CmpAnaHandle>'
> .../rivet/2.5.4/include/Rivet/AnalysisHandler.hh:197:34: required from
> here
> .../gcc/8.1.0/include/c++/8.1.1/bits/stl_tree.h:457:21: error: static
> assertion failed: comparison object must be invocable as const
>        static_assert(is_invocable_v<const _Compare&, const _Key&, const
> _Key&>,
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> _______________________________________________
> Rivet mailing list
> Rivet at projects.hepforge.org
> https://www.hepforge.org/lists/listinfo/rivet
>



-- 
Dr Andy Buckley, Lecturer / Royal Society University Research Fellow
Particle Physics Expt Group, University of Glasgow
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.hepforge.org/lists-archive/rivet/attachments/20180518/3563986c/attachment.html>


More information about the Rivet mailing list