boostorg / boostorg/boost

Boost::accumulators [deprecated-copy] warnings GCC11.2

Open
#754 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
HTML
Stars
8.6k
Forks
1.9k
Avg merge
39m
Merged PRs (30d)
2

Description

Hi,

I noticed that at least from Boost 1.79 with GCC 11.2 I get a lot of deprecated-copy warnings when using boost::accumlators library:
```

#include
#include
#include
#include
using namespace boost::accumulators;

int main()
{
accumulator_set > > acc;
return 0;
}
```

Output:

```
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp: In instantiation of 'void boost::accumulators::accumulator_set::visit_if(const UnaryFunction&) [with FilterPred = boost::accumulators::detail::contains_feature_of_ > >; UnaryFunction = boost::accumulators::detail::add_ref_visitor > > > > >; Sample = double; Features = boost::accumulators::stats >; Weight = void]':
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:175:73: required from 'boost::accumulators::accumulator_set::accumulator_set() [with Sample = double; Features = boost::accumulators::stats >; Weight = void]'
prog.cc:9:65: required from here
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:314:25: warning: implicitly-declared 'constexpr boost::accumulators::detail::add_ref_visitor > > > > >::add_ref_visitor(const boost::accumulators::detail::add_ref_visitor > > > > >&)' is deprecated [-Wdeprecated-copy]
314 | fusion::for_each(filtered_accs, func);
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:35,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulators/droppable_accumulator.hpp:52:30: note: because 'boost::accumulators::detail::add_ref_visitor > > > > >' has user-provided 'boost::accumulators::detail::add_ref_visitor& boost::accumulators::detail::add_ref_visitor::operator=(const boost::accumulators::detail::add_ref_visitor&) [with Args = boost::parameter::aux::tagged_argument_list_of_1 > > > >]'
52 | add_ref_visitor &operator =(add_ref_visitor const &);
| ^~~~~~~~
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/include/for_each.hpp:11,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:38,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/for_each.hpp:33:31: note: initializing argument 2 of 'constexpr typename boost::enable_if >::type boost::fusion::for_each(Sequence&, F) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; typename boost::enable_if >::type = void]'
33 | for_each(Sequence& seq, F f)
| ~~^
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp: In instantiation of 'void boost::accumulators::accumulator_set::visit_if(const UnaryFunction&) [with FilterPred = boost::accumulators::detail::contains_feature_of_, 0>, 0> >; UnaryFunction = boost::accumulators::detail::add_ref_visitor > > > > >; Sample = double; Features = boost::accumulators::stats >; Weight = void]':
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulators/droppable_accumulator.hpp:46:74: required from 'void boost::accumulators::detail::add_ref_visitor::operator()(Accumulator&) const [with Accumulator = boost::accumulators::detail::accumulator_wrapper, boost::accumulators::tag::mean>; Args = boost::parameter::aux::tagged_argument_list_of_1 > > > >]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:35:10: required from 'constexpr void boost::fusion::detail::for_each_linear(const First&, const Last&, F&, mpl_::false_) [with First = boost::fusion::filter_iterator, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > > >, boost::fusion::cons_iterator, boost::accumulators::detail::contains_feature_of_ > > >; Last = boost::fusion::filter_iterator, boost::fusion::cons_iterator, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; mpl_::false_ = mpl_::bool_]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:46:32: required from 'constexpr void boost::fusion::detail::for_each_dispatch(Sequence&, F&, Tag) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; Tag = boost::fusion::forward_traversal_tag]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:143:34: required from 'constexpr void boost::fusion::detail::for_each(Sequence&, F&, mpl_::false_) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; mpl_::false_ = mpl_::bool_]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/for_each.hpp:35:25: required from 'constexpr typename boost::enable_if >::type boost::fusion::for_each(Sequence&, F) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; typename boost::enable_if >::type = void]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:314:25: required from 'void boost::accumulators::accumulator_set::visit_if(const UnaryFunction&) [with FilterPred = boost::accumulators::detail::contains_feature_of_ > >; UnaryFunction = boost::accumulators::detail::add_ref_visitor > > > > >; Sample = double; Features = boost::accumulators::stats >; Weight = void]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:175:73: required from 'boost::accumulators::accumulator_set::accumulator_set() [with Sample = double; Features = boost::accumulators::stats >; Weight = void]'
prog.cc:9:65: required from here
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:314:25: warning: implicitly-declared 'constexpr boost::accumulators::detail::add_ref_visitor > > > > >::add_ref_visitor(const boost::accumulators::detail::add_ref_visitor > > > > >&)' is deprecated [-Wdeprecated-copy]
314 | fusion::for_each(filtered_accs, func);
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:35,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulators/droppable_accumulator.hpp:52:30: note: because 'boost::accumulators::detail::add_ref_visitor > > > > >' has user-provided 'boost::accumulators::detail::add_ref_visitor& boost::accumulators::detail::add_ref_visitor::operator=(const boost::accumulators::detail::add_ref_visitor&) [with Args = boost::parameter::aux::tagged_argument_list_of_1 > > > >]'
52 | add_ref_visitor &operator =(add_ref_visitor const &);
| ^~~~~~~~
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/include/for_each.hpp:11,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:38,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/for_each.hpp:33:31: note: initializing argument 2 of 'constexpr typename boost::enable_if >::type boost::fusion::for_each(Sequence&, F) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_, 0>, 0> > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; typename boost::enable_if >::type = void]'
33 | for_each(Sequence& seq, F f)
| ~~^
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp: In instantiation of 'void boost::accumulators::accumulator_set::visit_if(const UnaryFunction&) [with FilterPred = boost::accumulators::detail::contains_feature_of_, 0> >; UnaryFunction = boost::accumulators::detail::add_ref_visitor > > > > >; Sample = double; Features = boost::accumulators::stats >; Weight = void]':
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulators/droppable_accumulator.hpp:46:74: required from 'void boost::accumulators::detail::add_ref_visitor::operator()(Accumulator&) const [with Accumulator = boost::accumulators::detail::accumulator_wrapper, double>, boost::accumulators::tag::moment<2> >; Args = boost::parameter::aux::tagged_argument_list_of_1 > > > >]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:35:10: required from 'constexpr void boost::fusion::detail::for_each_linear(const First&, const Last&, F&, mpl_::false_) [with First = boost::fusion::filter_iterator, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> >, boost::fusion::cons_iterator, boost::accumulators::detail::contains_feature_of_ > > >; Last = boost::fusion::filter_iterator, boost::fusion::cons_iterator, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; mpl_::false_ = mpl_::bool_]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:36:32: required from 'constexpr void boost::fusion::detail::for_each_linear(const First&, const Last&, F&, mpl_::false_) [with First = boost::fusion::filter_iterator, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > > >, boost::fusion::cons_iterator, boost::accumulators::detail::contains_feature_of_ > > >; Last = boost::fusion::filter_iterator, boost::fusion::cons_iterator, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; mpl_::false_ = mpl_::bool_]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:46:32: required from 'constexpr void boost::fusion::detail::for_each_dispatch(Sequence&, F&, Tag) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; Tag = boost::fusion::forward_traversal_tag]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:143:34: required from 'constexpr void boost::fusion::detail::for_each(Sequence&, F&, mpl_::false_) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; mpl_::false_ = mpl_::bool_]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/for_each.hpp:35:25: required from 'constexpr typename boost::enable_if >::type boost::fusion::for_each(Sequence&, F) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; typename boost::enable_if >::type = void]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:314:25: required from 'void boost::accumulators::accumulator_set::visit_if(const UnaryFunction&) [with FilterPred = boost::accumulators::detail::contains_feature_of_ > >; UnaryFunction = boost::accumulators::detail::add_ref_visitor > > > > >; Sample = double; Features = boost::accumulators::stats >; Weight = void]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:175:73: required from 'boost::accumulators::accumulator_set::accumulator_set() [with Sample = double; Features = boost::accumulators::stats >; Weight = void]'
prog.cc:9:65: required from here
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:314:25: warning: implicitly-declared 'constexpr boost::accumulators::detail::add_ref_visitor > > > > >::add_ref_visitor(const boost::accumulators::detail::add_ref_visitor > > > > >&)' is deprecated [-Wdeprecated-copy]
314 | fusion::for_each(filtered_accs, func);
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:35,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulators/droppable_accumulator.hpp:52:30: note: because 'boost::accumulators::detail::add_ref_visitor > > > > >' has user-provided 'boost::accumulators::detail::add_ref_visitor& boost::accumulators::detail::add_ref_visitor::operator=(const boost::accumulators::detail::add_ref_visitor&) [with Args = boost::parameter::aux::tagged_argument_list_of_1 > > > >]'
52 | add_ref_visitor &operator =(add_ref_visitor const &);
| ^~~~~~~~
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/include/for_each.hpp:11,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:38,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/for_each.hpp:33:31: note: initializing argument 2 of 'constexpr typename boost::enable_if >::type boost::fusion::for_each(Sequence&, F) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_, 0> > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; typename boost::enable_if >::type = void]'
33 | for_each(Sequence& seq, F f)
| ~~^
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp: In instantiation of 'void boost::accumulators::accumulator_set::visit_if(const UnaryFunction&) [with FilterPred = boost::accumulators::detail::contains_feature_of_ >; UnaryFunction = boost::accumulators::detail::add_ref_visitor > > > > >; Sample = double; Features = boost::accumulators::stats >; Weight = void]':
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulators/droppable_accumulator.hpp:46:74: required from 'void boost::accumulators::detail::add_ref_visitor::operator()(Accumulator&) const [with Accumulator = boost::accumulators::detail::accumulator_wrapper; Args = boost::parameter::aux::tagged_argument_list_of_1 > > > >]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:35:10: required from 'constexpr void boost::fusion::detail::for_each_linear(const First&, const Last&, F&, mpl_::false_) [with First = boost::fusion::filter_iterator, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > > >, boost::fusion::cons_iterator, boost::accumulators::detail::contains_feature_of_, 0>, 0> > >; Last = boost::fusion::filter_iterator, boost::fusion::cons_iterator, boost::accumulators::detail::contains_feature_of_, 0>, 0> > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; mpl_::false_ = mpl_::bool_]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:46:32: required from 'constexpr void boost::fusion::detail::for_each_dispatch(Sequence&, F&, Tag) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_, 0>, 0> > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; Tag = boost::fusion::forward_traversal_tag]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:143:34: required from 'constexpr void boost::fusion::detail::for_each(Sequence&, F&, mpl_::false_) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_, 0>, 0> > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; mpl_::false_ = mpl_::bool_]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/for_each.hpp:35:25: required from 'constexpr typename boost::enable_if >::type boost::fusion::for_each(Sequence&, F) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_, 0>, 0> > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; typename boost::enable_if >::type = void]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:314:25: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:46:32: required from 'constexpr void boost::fusion::detail::for_each_dispatch(Sequence&, F&, Tag) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; Tag = boost::fusion::forward_traversal_tag]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/detail/for_each.hpp:143:34: required from 'constexpr void boost::fusion::detail::for_each(Sequence&, F&, mpl_::false_) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; mpl_::false_ = mpl_::bool_]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/for_each.hpp:35:25: required from 'constexpr typename boost::enable_if >::type boost::fusion::for_each(Sequence&, F) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_ > > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; typename boost::enable_if >::type = void]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:314:25: required from 'void boost::accumulators::accumulator_set::visit_if(const UnaryFunction&) [with FilterPred = boost::accumulators::detail::contains_feature_of_ > >; UnaryFunction = boost::accumulators::detail::add_ref_visitor > > > > >; Sample = double; Features = boost::accumulators::stats >; Weight = void]'
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:175:73: required from 'boost::accumulators::accumulator_set::accumulator_set() [with Sample = double; Features = boost::accumulators::stats >; Weight = void]'
prog.cc:9:65: required from here
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:314:25: warning: implicitly-declared 'constexpr boost::accumulators::detail::add_ref_visitor > > > > >::add_ref_visitor(const boost::accumulators::detail::add_ref_visitor > > > > >&)' is deprecated [-Wdeprecated-copy]
314 | fusion::for_each(filtered_accs, func);
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:35,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulators/droppable_accumulator.hpp:52:30: note: because 'boost::accumulators::detail::add_ref_visitor > > > > >' has user-provided 'boost::accumulators::detail::add_ref_visitor& boost::accumulators::detail::add_ref_visitor::operator=(const boost::accumulators::detail::add_ref_visitor&) [with Args = boost::parameter::aux::tagged_argument_list_of_1 > > > >]'
52 | add_ref_visitor &operator =(add_ref_visitor const &);
| ^~~~~~~~
In file included from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/include/for_each.hpp:11,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/framework/accumulator_set.hpp:38,
from /opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/accumulators/accumulators.hpp:12,
from prog.cc:1:
/opt/wandbox/boost-1.79.0-gcc-11.1.0/include/boost/fusion/algorithm/iteration/for_each.hpp:33:31: note: initializing argument 2 of 'constexpr typename boost::enable_if >::type boost::fusion::for_each(Sequence&, F) [with Sequence = boost::fusion::filter_view, boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, double>, boost::accumulators::tag::moment<2> >, boost::fusion::nil_> > > >, boost::accumulators::detail::contains_feature_of_ > >; F = boost::accumulators::detail::add_ref_visitor > > > > >; typename boost::enable_if >::type = void]'
33 | for_each(Sequence& seq, F f)
| ~~^

```

Link to test it: https://wandbox.org/permlink/mpeDCpAenEJcQKnW

Any idea who to fix this?

Thanks

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.