* installing *source* package 'phutil' ... ** this is package 'phutil' version '0.0.1' ** package 'phutil' successfully unpacked and MD5 sums checked ** using staged installation ** libs using C++ compiler: 'g++.exe (GCC) 14.2.0' make[1]: Entering directory '/d/temp/2025_06_25_01_50_00_12125/Rtmpmq23EU/R.INSTALL1036c7bcb1f/phutil/src' g++ -std=gnu++17 -I"D:/RCompile/recent/R-4.5.0/include" -DNDEBUG -I../inst/include -I'D:/RCompile/CRANpkg/lib/4.5/BH/include' -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include" -fopenmp -pedantic -O2 -Wall -mfpmath=sse -msse2 -mstackrealign -c bottleneck.cpp -o bottleneck.o In file included from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/foreach.hpp:76, from hera/bottleneck/../dnn/local/../utils.h:5, from hera/bottleneck/../dnn/local/kd-tree.h:4, from hera/bottleneck/neighb_oracle.h:38, from hera/bottleneck/bound_match.h:36, from hera/bottleneck/bottleneck_detail.h:41, from hera/bottleneck.h:40, from bottleneck.cpp:1: D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/mpl/assert.hpp:194:21: warning: unnecessary parentheses in declaration of 'assert_arg' [-Wparentheses] 194 | failed ************ (Pred::************ | ^~~~~~~~~~~~~~~~~~~ 195 | assert_arg( void (*)(Pred), typename assert_arg_pred<Pred>::type ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 196 | ); | ~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/mpl/assert.hpp:194:21: note: remove parentheses 194 | failed ************ (Pred::************ | ^~~~~~~~~~~~~~~~~~~ | - 195 | assert_arg( void (*)(Pred), typename assert_arg_pred<Pred>::type ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 196 | ); | ~ | - D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/mpl/assert.hpp:199:21: warning: unnecessary parentheses in declaration of 'assert_not_arg' [-Wparentheses] 199 | failed ************ (boost::mpl::not_<Pred>::************ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 200 | assert_not_arg( void (*)(Pred), typename assert_arg_pred_not<Pred>::type ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 201 | ); | ~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/mpl/assert.hpp:199:21: note: remove parentheses 199 | failed ************ (boost::mpl::not_<Pred>::************ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | - 200 | assert_not_arg( void (*)(Pred), typename assert_arg_pred_not<Pred>::type ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 201 | ); | ~ | - In file included from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:17, from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/shared_ptr.hpp:17, from hera/bottleneck/../dnn/local/kd-tree.h:11: D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/detail/shared_count.hpp:326:33: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 326 | explicit shared_count( std::auto_ptr<Y> & r ): pi_( new sp_counted_impl_p<Y>( r.get() ) ) | ^~~~~~~~ In file included from D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/memory:78, from hera/bottleneck/bound_match.h:33: D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:354:31: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 354 | explicit shared_ptr( std::auto_ptr<Y> & r ): px(r.get()), pn() | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:365:22: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 365 | shared_ptr( std::auto_ptr<Y> && r ): px(r.get()), pn() | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:423:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 423 | shared_ptr & operator=( std::auto_ptr<Y> & r ) | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:430:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 430 | shared_ptr & operator=( std::auto_ptr<Y> && r ) | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp: In member function 'boost::shared_ptr<T>& boost::shared_ptr<T>::operator=(std::auto_ptr<_Up>&&)': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:432:38: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 432 | this_type( static_cast< std::auto_ptr<Y> && >( r ) ).swap( *this ); | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ In file included from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/bind/mem_fn.hpp:23, from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/bind/bind.hpp:23, from hera/bottleneck/../dnn/local/../parallel/tbb.h:7, from hera/bottleneck/../dnn/local/kd-tree.hpp:8, from hera/bottleneck/../dnn/local/kd-tree.h:182: D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/get_pointer.hpp: At global scope: D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/get_pointer.hpp:48:40: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 48 | template<class T> T * get_pointer(std::auto_ptr<T> const& p) | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ bottleneck.cpp: In function 'cpp11::doubles bottleneckPairwiseDistances(const cpp11::list&, double, unsigned int)': bottleneck.cpp:54:20: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 54 | for (int n = 0;n < N;++n) | ~~^~~ bottleneck.cpp:63:20: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 63 | for (int k = 0;k < K;++k) | ~~^~~ g++ -std=gnu++17 -I"D:/RCompile/recent/R-4.5.0/include" -DNDEBUG -I../inst/include -I'D:/RCompile/CRANpkg/lib/4.5/BH/include' -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include" -fopenmp -pedantic -O2 -Wall -mfpmath=sse -msse2 -mstackrealign -c cpp11.cpp -o cpp11.o g++ -std=gnu++17 -I"D:/RCompile/recent/R-4.5.0/include" -DNDEBUG -I../inst/include -I'D:/RCompile/CRANpkg/lib/4.5/BH/include' -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include" -fopenmp -pedantic -O2 -Wall -mfpmath=sse -msse2 -mstackrealign -c diagram_parser.cpp -o diagram_parser.o g++ -std=gnu++17 -I"D:/RCompile/recent/R-4.5.0/include" -DNDEBUG -I../inst/include -I'D:/RCompile/CRANpkg/lib/4.5/BH/include' -I"d:/rtools45/x86_64-w64-mingw32.static.posix/include" -fopenmp -pedantic -O2 -Wall -mfpmath=sse -msse2 -mstackrealign -c wasserstein.cpp -o wasserstein.o In file included from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/mpl/aux_/na_assert.hpp:23, from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/mpl/arg.hpp:25, from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/mpl/placeholders.hpp:24, from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/iterator/iterator_categories.hpp:16, from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/iterator/iterator_facade.hpp:13, from hera/wasserstein/../dnn/geometry/euclidean-dynamic.h:6, from hera/wasserstein/basic_defs_ws.h:49, from hera/wasserstein.h:37, from wasserstein.cpp:1: D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/mpl/assert.hpp:194:21: warning: unnecessary parentheses in declaration of 'assert_arg' [-Wparentheses] 194 | failed ************ (Pred::************ | ^~~~~~~~~~~~~~~~~~~ 195 | assert_arg( void (*)(Pred), typename assert_arg_pred<Pred>::type ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 196 | ); | ~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/mpl/assert.hpp:194:21: note: remove parentheses 194 | failed ************ (Pred::************ | ^~~~~~~~~~~~~~~~~~~ | - 195 | assert_arg( void (*)(Pred), typename assert_arg_pred<Pred>::type ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 196 | ); | ~ | - D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/mpl/assert.hpp:199:21: warning: unnecessary parentheses in declaration of 'assert_not_arg' [-Wparentheses] 199 | failed ************ (boost::mpl::not_<Pred>::************ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 200 | assert_not_arg( void (*)(Pred), typename assert_arg_pred_not<Pred>::type ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 201 | ); | ~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/mpl/assert.hpp:199:21: note: remove parentheses 199 | failed ************ (boost::mpl::not_<Pred>::************ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | - 200 | assert_not_arg( void (*)(Pred), typename assert_arg_pred_not<Pred>::type ) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 201 | ); | ~ | - In file included from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:17, from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/shared_ptr.hpp:17, from hera/wasserstein/../dnn/local/kd-tree.h:11, from hera/wasserstein/auction_oracle_kdtree_restricted.h:44, from hera/wasserstein/auction_oracle.h:36, from hera/wasserstein/auction_runner_gs.h:37, from hera/wasserstein.h:41: D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/detail/shared_count.hpp:326:33: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 326 | explicit shared_count( std::auto_ptr<Y> & r ): pi_( new sp_counted_impl_p<Y>( r.get() ) ) | ^~~~~~~~ In file included from D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/memory:78, from hera/wasserstein/auction_runner_gs.h:32: D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:354:31: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 354 | explicit shared_ptr( std::auto_ptr<Y> & r ): px(r.get()), pn() | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:365:22: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 365 | shared_ptr( std::auto_ptr<Y> && r ): px(r.get()), pn() | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:423:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 423 | shared_ptr & operator=( std::auto_ptr<Y> & r ) | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:430:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 430 | shared_ptr & operator=( std::auto_ptr<Y> && r ) | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp: In member function 'boost::shared_ptr<T>& boost::shared_ptr<T>::operator=(std::auto_ptr<_Up>&&)': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/smart_ptr/shared_ptr.hpp:432:38: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 432 | this_type( static_cast< std::auto_ptr<Y> && >( r ) ).swap( *this ); | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ In file included from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/bind/mem_fn.hpp:23, from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/bind/bind.hpp:23, from hera/wasserstein/../dnn/local/../parallel/tbb.h:7, from hera/wasserstein/../dnn/local/kd-tree.hpp:8, from hera/wasserstein/../dnn/local/kd-tree.h:182: D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/get_pointer.hpp: At global scope: D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/get_pointer.hpp:48:40: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations] 48 | template<class T> T * get_pointer(std::auto_ptr<T> const& p) | ^~~~~~~~ D:/rtools45/x86_64-w64-mingw32.static.posix/lib/gcc/x86_64-w64-mingw32.static.posix/14.2.0/include/c++/bits/unique_ptr.h:59:28: note: declared here 59 | template<typename> class auto_ptr; | ^~~~~~~~ wasserstein.cpp: In function 'cpp11::doubles wassersteinPairwiseDistances(const cpp11::list&, double, double, unsigned int)': wasserstein.cpp:85:20: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 85 | for (int n = 0;n < N;++n) | ~~^~~ wasserstein.cpp:94:20: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 94 | for (int k = 0;k < K;++k) | ~~^~~ In file included from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/assert.hpp:35, from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:20, from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/algorithm/heap_algorithm.hpp:12, from hera/wasserstein/../dnn/local/search-functors.h:4, from hera/wasserstein/../dnn/local/kd-tree.h:5: D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:167:5: required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:125:16: required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 125 | struct IncrementableIteratorConcept : CopyConstructible<Iterator> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ In file included from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:31: D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/iterator/iterator_concepts.hpp:114:7: [ skipping 20 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/iterator/iterator_concepts.hpp:114:7: required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 208 | BOOST_CONCEPT_USAGE(Convertible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:136:13: required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:233:5: required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:152:13: [ skipping 19 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:152:13: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:278:9: [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 208 | BOOST_CONCEPT_USAGE(Convertible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:158:13: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:278:9: [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:278:9: required from 'struct boost::SinglePassRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:318:12: required from 'struct boost::ForwardRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 318 | struct ForwardRangeConcept : SinglePassRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:352:12: required from 'struct boost::BidirectionalRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 352 | struct BidirectionalRangeConcept : ForwardRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:370:12: required from 'struct boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 370 | struct RandomAccessRangeConcept : BidirectionalRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 158 | BOOST_CONCEPT_USAGE(SinglePassIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:167:5: required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:125:16: required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 125 | struct IncrementableIteratorConcept : CopyConstructible<Iterator> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:136:13: required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:233:5: required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:158:13: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:281:9: [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:281:9: required from 'struct boost::SinglePassRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:318:12: required from 'struct boost::ForwardRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 318 | struct ForwardRangeConcept : SinglePassRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:352:12: required from 'struct boost::BidirectionalRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 352 | struct BidirectionalRangeConcept : ForwardRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:370:12: required from 'struct boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 370 | struct RandomAccessRangeConcept : BidirectionalRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 158 | BOOST_CONCEPT_USAGE(SinglePassIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::SinglePassRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:284:9: required from 'struct boost::SinglePassRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:318:12: required from 'struct boost::ForwardRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 318 | struct ForwardRangeConcept : SinglePassRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:352:12: required from 'struct boost::BidirectionalRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 352 | struct BidirectionalRangeConcept : ForwardRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:370:12: required from 'struct boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 370 | struct RandomAccessRangeConcept : BidirectionalRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::DefaultConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:137:5: required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:181:16: required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 181 | struct ForwardIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::DefaultConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:191:13: [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:191:13: required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:321:9: [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::forward_traversal_tag]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 208 | BOOST_CONCEPT_USAGE(Convertible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:197:13: required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:321:9: [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:321:9: required from 'struct boost::ForwardRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:352:12: required from 'struct boost::BidirectionalRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 352 | struct BidirectionalRangeConcept : ForwardRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:370:12: required from 'struct boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 370 | struct RandomAccessRangeConcept : BidirectionalRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::ForwardIteratorConcept<Iterator>::~ForwardIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 197 | BOOST_CONCEPT_USAGE(ForwardIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:137:5: required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:181:16: required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 181 | struct ForwardIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:197:13: required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:322:9: [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:322:9: required from 'struct boost::ForwardRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:352:12: required from 'struct boost::BidirectionalRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 352 | struct BidirectionalRangeConcept : ForwardRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:370:12: required from 'struct boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 370 | struct RandomAccessRangeConcept : BidirectionalRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::ForwardIteratorConcept<Iterator>::~ForwardIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 197 | BOOST_CONCEPT_USAGE(ForwardIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag> >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag>' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag>]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag> >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag> >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag>)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:218:14: [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag>]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag>]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:218:14: required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:355:9: [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::bidirectional_traversal_tag]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 208 | BOOST_CONCEPT_USAGE(Convertible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:224:14: required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:355:9: [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:355:9: required from 'struct boost::BidirectionalRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:370:12: required from 'struct boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 370 | struct RandomAccessRangeConcept : BidirectionalRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::BidirectionalIteratorConcept<Iterator>::~BidirectionalIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 224 | BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:224:14: required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:356:9: [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:356:9: required from 'struct boost::BidirectionalRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:370:12: required from 'struct boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 370 | struct RandomAccessRangeConcept : BidirectionalRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::BidirectionalIteratorConcept<Iterator>::~BidirectionalIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 224 | BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag> >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag>' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag>]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag> >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag> >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag>)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:239:14: [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag>]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag>]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:239:14: required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:373:9: [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::random_access_traversal_tag]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 208 | BOOST_CONCEPT_USAGE(Convertible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:245:14: required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:373:9: [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:373:9: required from 'struct boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/algorithm/heap_algorithm.hpp:32:5: [ skipping 6 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::RandomAccessIteratorConcept<Iterator>::~RandomAccessIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 245 | BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:245:14: required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:374:9: [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:5: note: in a call to non-static member function 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:374:9: required from 'struct boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: required from 'struct boost::concepts::requirement_<void (*)(boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >)>' 72 | struct requirement_<void(*)(Model)> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/algorithm/heap_algorithm.hpp:32:5: [ skipping 6 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::RandomAccessIteratorConcept<Iterator>::~RandomAccessIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 245 | BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/algorithm/heap_algorithm.hpp:32:5: required from 'RandomAccessRange& boost::range::push_heap(RandomAccessRange&) [with RandomAccessRange = std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > >]' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ hera/wasserstein/../dnn/local/search-functors.h:94:29: required from 'hera::dnn::kNNRecord<HandleDistance>::DistanceType hera::dnn::kNNRecord<HandleDistance>::operator()(PointHandle, DistanceType) [with HandleDistance = hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >; DistanceType = double; PointHandle = const hera::ws::dnn::Point<2, double>*]' 94 | boost::push_heap(result); | ~~~~~~~~~~~~~~~~^~~~~~~~ hera/wasserstein/../dnn/local/kd-tree.hpp:146:15: required from 'void hera::ws::dnn::KDTree<Traits_>::search(PointHandle, ResultsFunctor&) const [with ResultsFunctor = hera::dnn::kNNRecord<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > >; Traits_ = hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> >; PointHandle = const hera::ws::dnn::Point<2, double>*]' 146 | D = rf(*m, dist); | ~~^~~~~~~~~~ hera/wasserstein/../dnn/local/kd-tree.hpp:289:11: required from 'hera::ws::dnn::KDTree<Traits_>::Result hera::ws::dnn::KDTree<Traits_>::findK(PointHandle, size_t) const [with Traits_ = hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> >; Result = std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > >; PointHandle = const hera::ws::dnn::Point<2, double>*; size_t = long long unsigned int]' 289 | search(q, knn); | ~~~~~~^~~~~~~~ hera/wasserstein/../dnn/local/kd-tree.h:66:91: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull] 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ In file included from D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/algorithm/heap_algorithm.hpp:15: D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:370:12: note: in a call to non-static member function 'boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >::~RandomAccessRangeConcept()' 370 | struct RandomAccessRangeConcept : BidirectionalRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:167:5: required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:125:16: required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 125 | struct IncrementableIteratorConcept : CopyConstructible<Iterator> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::CopyConstructible<TT>::~CopyConstructible() [with TT = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:167:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 167 | BOOST_CONCEPT_USAGE(CopyConstructible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag>]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::incrementable_traversal_tag> >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 21 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::incrementable_traversal_tag]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 208 | BOOST_CONCEPT_USAGE(Convertible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:136:13: required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::IncrementableIteratorConcept<Iterator>::~IncrementableIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:136:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 136 | BOOST_CONCEPT_USAGE(IncrementableIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:233:5: required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::EqualityComparable<TT>::~EqualityComparable() [with TT = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:233:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 233 | BOOST_CONCEPT_USAGE(EqualityComparable) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag>]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::single_pass_traversal_tag> >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 20 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::single_pass_traversal_tag]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 208 | BOOST_CONCEPT_USAGE(Convertible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:158:13: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 158 | BOOST_CONCEPT_USAGE(SinglePassIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::CopyConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:167:5: required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:125:16: required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 125 | struct IncrementableIteratorConcept : CopyConstructible<Iterator> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::CopyConstructible<TT>::~CopyConstructible() [with TT = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:167:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 167 | BOOST_CONCEPT_USAGE(CopyConstructible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:136:13: required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::IncrementableIteratorConcept<Iterator>::~IncrementableIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:136:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 136 | BOOST_CONCEPT_USAGE(IncrementableIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::EqualityComparable<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:233:5: required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:147:16: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 147 | struct SinglePassIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::EqualityComparable<TT>::~EqualityComparable() [with TT = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:233:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 233 | BOOST_CONCEPT_USAGE(EqualityComparable) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:158:13: required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::SinglePassIteratorConcept<Iterator>::~SinglePassIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 158 | BOOST_CONCEPT_USAGE(SinglePassIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::SinglePassRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:284:9: required from 'struct boost::SinglePassRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:318:12: required from 'struct boost::ForwardRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 318 | struct ForwardRangeConcept : SinglePassRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:352:12: required from 'struct boost::BidirectionalRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 352 | struct BidirectionalRangeConcept : ForwardRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:370:12: required from 'struct boost::RandomAccessRangeConcept<std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >' 370 | struct RandomAccessRangeConcept : BidirectionalRangeConcept<T> | ^~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: [ skipping 10 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:284:9: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 284 | BOOST_CONCEPT_USAGE(SinglePassRangeConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::DefaultConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::DefaultConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:137:5: required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:181:16: required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 181 | struct ForwardIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::DefaultConstructible<TT>::~DefaultConstructible() [with TT = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:137:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 137 | BOOST_CONCEPT_USAGE(DefaultConstructible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag>]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::forward_traversal_tag> >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 19 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::forward_traversal_tag]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 208 | BOOST_CONCEPT_USAGE(Convertible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:197:13: required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::ForwardIteratorConcept<Iterator>::~ForwardIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 197 | BOOST_CONCEPT_USAGE(ForwardIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:137:5: required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:181:16: required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 181 | struct ForwardIteratorConcept | ^~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::DefaultConstructible<TT>::~DefaultConstructible() [with TT = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:137:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 137 | BOOST_CONCEPT_USAGE(DefaultConstructible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:197:13: required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::ForwardIteratorConcept<Iterator>::~ForwardIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 197 | BOOST_CONCEPT_USAGE(ForwardIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag>]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag> >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag>' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag>]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag> >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::bidirectional_traversal_tag> >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::bidirectional_traversal_tag]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 208 | BOOST_CONCEPT_USAGE(Convertible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:224:14: required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::BidirectionalIteratorConcept<Iterator>::~BidirectionalIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 224 | BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:224:14: required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::BidirectionalIteratorConcept<Iterator>::~BidirectionalIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 224 | BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag>]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag> >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: required from 'struct boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag>' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag>]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag> >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::Convertible<boost::iterators::random_access_traversal_tag, boost::iterators::random_access_traversal_tag> >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::Convertible<X, Y>::~Convertible() [with X = boost::iterators::random_access_traversal_tag; Y = boost::iterators::random_access_traversal_tag]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 208 | BOOST_CONCEPT_USAGE(Convertible) { | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:245:14: required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::RandomAccessIteratorConcept<Iterator>::~RandomAccessIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 245 | BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]': D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:50:47: required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::concepts::usage_requirements<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >]' 50 | static void failed() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:245:14: required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >' 92 | &::boost::concepts::requirement_<ModelFnPtr>::failed> \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:32:62: required by substitution of 'template<class Model> boost::concepts::detail::yes boost::concepts::detail::has_constraints_(Model*, wrap_constraints<Model, (& Model::constraints)>*) [with Model = boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > >]' 32 | inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0); | ^~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:42:5: required from 'const bool boost::concepts::not_satisfied<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >::value' 44 | , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/has_constraints.hpp:45:51: required from 'struct boost::concepts::not_satisfied<boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > > > >' 45 | typedef boost::integral_constant<bool, value> type; | ^~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/detail/general.hpp:72:8: [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] hera/wasserstein/auction_runner_gs.hpp:199:50: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phase() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 199 | auto optimal_bid = oracle.get_optimal_bid(bidder_idx); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:138:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction_phases() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 138 | run_auction_phase(); | ^~~~~~~~~~~~~~~~~ hera/wasserstein/auction_runner_gs.hpp:167:9: required from 'void hera::ws::AuctionRunnerGS<RealType_, AuctionOracle_, PointContainer_>::run_auction() [with RealType_ = double; AuctionOracle_ = hera::ws::AuctionOracleKDTreeRestricted<double, std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > > >; PointContainer_ = std::vector<hera::DiagramPoint<double>, std::allocator<hera::DiagramPoint<double> > >]' 167 | run_auction_phases(); | ^~~~~~~~~~~~~~~~~~ hera/wasserstein.h:222:28: required from 'hera::AuctionResult<Real> hera::ws::wasserstein_cost_vec_detailed(const std::vector<hera::DiagramPoint<Real> >&, const std::vector<hera::DiagramPoint<Real> >&, hera::AuctionParams<Real>) [with RealType = double]' 222 | auction.run_auction(); | ~~~~~~~~~~~~~~~~~~~^~ hera/wasserstein.h:394:84: required from 'hera::AuctionResult<typename hera::DiagramTraits<PairContainer>::RealType> hera::wasserstein_cost_detailed(const PairContainer&, const PairContainer&, const AuctionParams<typename DiagramTraits<PairContainer>::RealType>&) [with PairContainer = std::vector<std::pair<double, double> >; typename DiagramTraits<PairContainer>::RealType = double; typename std::remove_const<typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type>::type = std::pair<double, double>; typename std::remove_reference<decltype (* declval<PairContainer_>().begin())>::type = std::pair<double, double>; decltype (* declval<PairContainer_>().begin()) = std::pair<double, double>&]' 394 | return add_results(infinity_result, hera::ws::wasserstein_cost_vec_detailed(dgm_A, dgm_B, params), params.wasserstein_power); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ wasserstein.cpp:57:45: required from here 57 | auto res = hera::wasserstein_cost_detailed(diagramA, diagramB, params); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull] 20 | ~usage_requirements() { ((Model*)0)->~Model(); } | ~~~~~~~~~~~~~~~~~~~^~ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::range_detail::RandomAccessIteratorConcept<Iterator>::~RandomAccessIteratorConcept() [with Iterator = __gnu_cxx::__normal_iterator<const hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >*, std::vector<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > >, std::allocator<hera::dnn::HandleDistance<hera::ws::dnn::KDTree<hera::ws::dnn::PointTraits<hera::ws::dnn::Point<2, double> > > > > > >]' 37 | ~model() | ^ D:/RCompile/CRANpkg/lib/4.5/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE' 245 | BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept) | ^~~~~~~~~~~~~~~~~~~ g++ -std=gnu++17 -shared -s -static-libgcc -o phutil.dll tmp.def bottleneck.o cpp11.o diagram_parser.o wasserstein.o -fopenmp -Ld:/rtools45/x86_64-w64-mingw32.static.posix/lib/x64 -Ld:/rtools45/x86_64-w64-mingw32.static.posix/lib -LD:/RCompile/recent/R-4.5.0/bin/x64 -lR make[1]: Leaving directory '/d/temp/2025_06_25_01_50_00_12125/Rtmpmq23EU/R.INSTALL1036c7bcb1f/phutil/src' make[1]: Entering directory '/d/temp/2025_06_25_01_50_00_12125/Rtmpmq23EU/R.INSTALL1036c7bcb1f/phutil/src' make[1]: Leaving directory '/d/temp/2025_06_25_01_50_00_12125/Rtmpmq23EU/R.INSTALL1036c7bcb1f/phutil/src' installing to d:/Rcompile/CRANpkg/lib/4.5/00LOCK-phutil/00new/phutil/libs/x64 ** R ** data *** moving datasets to lazyload DB ** inst ** byte-compile and prepare package for lazy loading ** help *** installing help indices ** building package indices ** installing vignettes ** testing if installed package can be loaded from temporary location ** testing if installed package can be loaded from final location ** testing if installed package keeps a record of temporary installation path * MD5 sums packaged installation of 'phutil' as phutil_0.0.1.zip * DONE (phutil)